From 15ce9a1454eebac8cfd1eca41da70ae80ece1baa Mon Sep 17 00:00:00 2001 From: "Roberto C. Sanchez" Date: Tue, 21 Oct 2014 22:48:10 -0400 Subject: [PATCH] Imported Upstream version 1.1 --- COPYING | 280 + ChangeLog | 493 + INSTALL | 207 + INSTALL.in | 207 + Makefile.am | 41 + Makefile.cvs | 15 + Makefile.in | 614 ++ NEWS | 39 + NEWS.in | 39 + README | 48 + README.in | 48 + TODO | 34 + TODO.in | 34 + acinclude.m4 | 5330 +++++++++++ aclocal.m4 | 5465 +++++++++++ admin/ChangeLog | 748 ++ admin/Makefile.am | 2 + admin/Makefile.common | 295 + admin/Makefile.in | 362 + admin/acinclude.m4.in | 4141 +++++++++ admin/am_edit | 1937 ++++ admin/am_edit.py | 330 + admin/conf.change.pl | 123 + admin/config.guess | 1368 +++ admin/config.pl | 210 + admin/config.sub | 1360 +++ admin/configure.in.min | 55 + admin/debianrules | 84 + admin/depcomp | 367 + admin/install-sh | 251 + admin/libtool.m4.in | 868 ++ admin/ltcf-c.sh | 796 ++ admin/ltcf-cxx.sh | 1040 +++ admin/ltconfig | 2794 ++++++ admin/ltmain.sh | 5395 +++++++++++ admin/missing | 265 + admin/mkinstalldirs | 40 + admin/ylwrap | 142 + bibletime-doc/INSTALL | 208 + bibletime-doc/INSTALL.in | 208 + bibletime-doc/Makefile.am | 26 + bibletime-doc/Makefile.cvs | 15 + bibletime-doc/Makefile.in | 539 ++ bibletime-doc/README | 60 + bibletime-doc/README.in | 60 + bibletime-doc/acinclude.m4 | 5165 +++++++++++ bibletime-doc/aclocal.m4 | 5278 +++++++++++ bibletime-doc/admin/ChangeLog | 748 ++ bibletime-doc/admin/Makefile.am | 2 + bibletime-doc/admin/Makefile.common | 295 + bibletime-doc/admin/Makefile.in | 358 + bibletime-doc/admin/acinclude.m4.in | 4141 +++++++++ bibletime-doc/admin/am_edit | 1937 ++++ bibletime-doc/admin/am_edit.py | 330 + bibletime-doc/admin/conf.change.pl | 123 + bibletime-doc/admin/config.guess | 1368 +++ bibletime-doc/admin/config.pl | 210 + bibletime-doc/admin/config.sub | 1360 +++ bibletime-doc/admin/configure.in.min | 55 + bibletime-doc/admin/debianrules | 84 + bibletime-doc/admin/depcomp | 367 + bibletime-doc/admin/install-sh | 251 + bibletime-doc/admin/libtool.m4.in | 868 ++ bibletime-doc/admin/ltcf-c.sh | 796 ++ bibletime-doc/admin/ltcf-cxx.sh | 1040 +++ bibletime-doc/admin/ltconfig | 2794 ++++++ bibletime-doc/admin/ltmain.sh | 5395 +++++++++++ bibletime-doc/admin/missing | 265 + bibletime-doc/admin/mkinstalldirs | 40 + bibletime-doc/admin/ylwrap | 142 + bibletime-doc/bibletime-doc.spec | 76 + bibletime-doc/bibletime-doc.spec.in | 76 + bibletime-doc/bibletime.m4 | 156 + bibletime-doc/config.guess | 1321 +++ bibletime-doc/config.sub | 1443 +++ bibletime-doc/configure | 7785 ++++++++++++++++ bibletime-doc/configure.in | 97 + bibletime-doc/configure.in.in | 63 + bibletime-doc/docs/Makefile.am | 4 + bibletime-doc/docs/Makefile.in | 468 + bibletime-doc/docs/de/Makefile.am | 6 + bibletime-doc/docs/de/Makefile.in | 463 + bibletime-doc/docs/de/handbook/Makefile.am | 39 + bibletime-doc/docs/de/handbook/Makefile.in | 495 + .../docs/de/handbook/html/Makefile.am | 31 + .../docs/de/handbook/html/Makefile.in | 390 + .../handbook/html/hdbk-bars-menubar-Help.html | 1 + .../html/hdbk-bars-menubar-Window.html | 1 + .../handbook/html/hdbk-bars-menubar-file.html | 1 + .../html/hdbk-bars-menubar-mainindex.html | 1 + .../html/hdbk-bars-menubar-settings.html | 1 + .../handbook/html/hdbk-bars-menubar-view.html | 2 + .../de/handbook/html/hdbk-bars-menubar.html | 1 + .../html/hdbk-bars-toolbar-Configtoolbar.png | Bin 0 -> 15524 bytes .../hdbk-bars-toolbar-action-cascade-auto.png | Bin 0 -> 492 bytes .../html/hdbk-bars-toolbar-action-cascade.png | Bin 0 -> 322 bytes .../hdbk-bars-toolbar-action-contents.png | Bin 0 -> 1383 bytes .../html/hdbk-bars-toolbar-action-exit.png | Bin 0 -> 367 bytes .../html/hdbk-bars-toolbar-action-print.png | Bin 0 -> 1610 bytes .../html/hdbk-bars-toolbar-action-reset.png | Bin 0 -> 1335 bytes .../html/hdbk-bars-toolbar-action-search.png | Bin 0 -> 2508 bytes .../hdbk-bars-toolbar-action-tile-auto.png | Bin 0 -> 403 bytes .../html/hdbk-bars-toolbar-action-tile.png | Bin 0 -> 315 bytes .../html/hdbk-bars-toolbar-action.html | 1 + .../handbook/html/hdbk-bars-toolbar-close.png | Bin 0 -> 1155 bytes .../docs/de/handbook/html/hdbk-bars.html | 1 + .../docs/de/handbook/html/hdbk-config-bt.html | 1 + .../docs/de/handbook/html/hdbk-config.html | 1 + .../de/handbook/html/hdbk-intro-ToDo.html | 1 + .../handbook/html/hdbk-intro-motivation.html | 1 + .../docs/de/handbook/html/hdbk-intro.html | 1 + .../de/handbook/html/hdbk-op-MDI-Window.html | 1 + .../handbook/html/hdbk-op-module-bookmk-1.png | Bin 0 -> 7815 bytes .../handbook/html/hdbk-op-module-select-1.png | Bin 0 -> 13887 bytes .../handbook/html/hdbk-op-module-select-2.png | Bin 0 -> 21312 bytes .../handbook/html/hdbk-op-module-tree-1.png | Bin 0 -> 7785 bytes ...module-tree-bookmark-bookmarkandfolder.png | Bin 0 -> 18145 bytes .../html/hdbk-op-module-tree-select.html | 1 + .../docs/de/handbook/html/hdbk-op-output.html | 1 + .../docs/de/handbook/html/hdbk-op-pencil.png | Bin 0 -> 361 bytes .../html/hdbk-op-search-dialog-searchanal.png | Bin 0 -> 8764 bytes .../hdbk-op-search-dialog-searchresult.png | Bin 0 -> 11808 bytes .../hdbk-op-search-dialog-searchscope.png | Bin 0 -> 8429 bytes .../html/hdbk-op-search-dialog-searchtext.png | Bin 0 -> 10542 bytes .../docs/de/handbook/html/hdbk-op-search.html | 1 + .../docs/de/handbook/html/hdbk-op.html | 1 + .../de/handbook/html/hdbk-start-bticon.png | Bin 0 -> 1629 bytes .../handbook/html/hdbk-start-screen-terms.png | Bin 0 -> 123790 bytes .../de/handbook/html/hdbk-start-screen.html | 1 + .../html/hdbk-start-sequence-tips.png | Bin 0 -> 12274 bytes .../de/handbook/html/hdbk-term-hotkeys.html | 105 + .../docs/de/handbook/html/hdbk-term.html | 1 + .../html/hdbk_bars_toolbar_Configtoolbar.png | Bin 0 -> 15524 bytes .../html/hdbk_bars_toolbar_action_cascade.png | Bin 0 -> 322 bytes .../hdbk_bars_toolbar_action_cascade_auto.png | Bin 0 -> 492 bytes .../hdbk_bars_toolbar_action_contents.png | Bin 0 -> 1383 bytes .../html/hdbk_bars_toolbar_action_exit.png | Bin 0 -> 1122 bytes .../hdbk_bars_toolbar_action_footnotes.png | Bin 0 -> 998 bytes .../html/hdbk_bars_toolbar_action_print.png | Bin 0 -> 1211 bytes .../html/hdbk_bars_toolbar_action_reset.png | Bin 0 -> 889 bytes .../html/hdbk_bars_toolbar_action_search.png | Bin 0 -> 1415 bytes .../html/hdbk_bars_toolbar_action_strongs.png | Bin 0 -> 417 bytes .../html/hdbk_bars_toolbar_action_tile.png | Bin 0 -> 315 bytes .../hdbk_bars_toolbar_action_tile_auto.png | Bin 0 -> 403 bytes .../handbook/html/hdbk_bars_toolbar_close.png | Bin 0 -> 267 bytes .../handbook/html/hdbk_op_module_bookmk_1.png | Bin 0 -> 7815 bytes .../handbook/html/hdbk_op_module_select_1.png | Bin 0 -> 13887 bytes .../handbook/html/hdbk_op_module_select_2.png | Bin 0 -> 21312 bytes .../handbook/html/hdbk_op_module_tree_1.png | Bin 0 -> 7785 bytes ...module_tree_bookmark_bookmarkandfolder.png | Bin 0 -> 18145 bytes .../docs/de/handbook/html/hdbk_op_pencil.png | Bin 0 -> 361 bytes .../html/hdbk_op_search_dialog_searchanal.png | Bin 0 -> 8764 bytes .../hdbk_op_search_dialog_searchresult.png | Bin 0 -> 11808 bytes .../hdbk_op_search_dialog_searchscope.png | Bin 0 -> 8429 bytes .../html/hdbk_op_search_dialog_searchtext.png | Bin 0 -> 10542 bytes .../de/handbook/html/hdbk_start_bticon.png | Bin 0 -> 1629 bytes .../handbook/html/hdbk_start_screen_terms.png | Bin 0 -> 123790 bytes .../html/hdbk_start_sequence_tips.png | Bin 0 -> 12274 bytes .../docs/de/handbook/html/index.html | 1 + .../docs/de/handbook/unicode/Makefile.am | 31 + .../docs/de/handbook/unicode/Makefile.in | 385 + .../de/handbook/unicode/hdbk-config.docbook | 465 + .../de/handbook/unicode/hdbk-intro.docbook | 103 + .../handbook/unicode/hdbk-operation.docbook | 959 ++ .../de/handbook/unicode/hdbk-start.docbook | 74 + .../de/handbook/unicode/hdbk-toolbars.docbook | 438 + .../docs/de/handbook/unicode/index.docbook | 121 + bibletime-doc/docs/de/helpdialog/Makefile.am | 39 + bibletime-doc/docs/de/helpdialog/Makefile.in | 495 + .../docs/de/helpdialog/html/Makefile.am | 31 + .../docs/de/helpdialog/html/Makefile.in | 385 + .../helpdialog/html/help-first-startup.html | 1 + .../html/help-first-time-search.html | 1 + .../html/help-initbackend-failed.html | 1 + .../html/help-module-encrypted.html | 1 + .../de/helpdialog/html/help-no-mods-d.html | 1 + .../de/helpdialog/html/help-no-modules.html | 1 + .../html/help-sword-module-trouble.html | 1 + .../docs/de/helpdialog/html/index.html | 1 + .../docs/de/helpdialog/unicode/Makefile.am | 31 + .../docs/de/helpdialog/unicode/Makefile.in | 385 + .../unicode/help-first-startup.docbook | 118 + .../unicode/help-first-time-search.docbook | 65 + .../unicode/help-initbackend-failed.docbook | 21 + .../unicode/help-module-encrypted.docbook | 45 + .../helpdialog/unicode/help-no-mods-d.docbook | 54 + .../unicode/help-no-modules.docbook | 50 + .../unicode/help-sword-module-trouble.docbook | 12 + .../docs/de/helpdialog/unicode/index.docbook | 134 + bibletime-doc/docs/de/howto/Makefile.am | 39 + bibletime-doc/docs/de/howto/Makefile.in | 495 + bibletime-doc/docs/de/howto/html/Makefile.am | 5 + bibletime-doc/docs/de/howto/html/Makefile.in | 364 + .../de/howto/html/h2-basics-approaches.html | 1 + .../de/howto/html/h2-basics-expository.html | 11 + .../howto/html/h2-basics-interpretation.html | 1 + .../docs/de/howto/html/h2-basics-types.html | 1 + .../de/howto/html/h2-basics-worksheet.html | 6 + .../docs/de/howto/html/h2-basics.html | 2 + .../de/howto/html/h2-importance-breathed.html | 2 + .../html/h2-importance-exhortations.html | 1 + .../howto/html/h2-importance-liberates.html | 1 + .../de/howto/html/h2-importance-once.html | 2 + .../howto/html/h2-importance-supplement.html | 1 + .../de/howto/html/h2-importance-wars.html | 1 + .../de/howto/html/h2-importance-works.html | 1 + .../docs/de/howto/html/h2-importance.html | 3 + .../docs/de/howto/html/h2-rules-context.html | 1 + .../docs/de/howto/html/h2-rules-hcontest.html | 1 + .../docs/de/howto/html/h2-rules-normal.html | 1 + .../docs/de/howto/html/h2-rules-parables.html | 1 + .../docs/de/howto/html/h2-rules.html | 14 + bibletime-doc/docs/de/howto/html/index.html | 1 + .../docs/de/howto/unicode/Makefile.am | 31 + .../docs/de/howto/unicode/Makefile.in | 385 + .../docs/de/howto/unicode/how2-basics.docbook | 278 + .../de/howto/unicode/how2-importance.docbook | 421 + .../howto/unicode/how2-interpretation.docbook | 289 + .../docs/de/howto/unicode/index.docbook | 126 + bibletime-doc/docs/de/install/Makefile.am | 39 + bibletime-doc/docs/de/install/Makefile.in | 495 + .../docs/de/install/html/Makefile.am | 31 + .../docs/de/install/html/Makefile.in | 390 + bibletime-doc/docs/de/install/html/index.html | 1 + .../docs/de/install/html/inst-bin.html | 1 + .../docs/de/install/html/inst-preq.html | 1 + .../docs/de/install/html/inst-sources.html | 44 + .../de/install/html/inst-user-source.html | 8 + .../html/inst-user-troubleshooting.html | 1 + .../docs/de/install/html/inst-user.html | 1 + .../de/install/html/installmgr-install.html | 7 + .../docs/de/install/html/installmgr.html | 1 + .../docs/de/install/html/instmgr-cfg.html | 1 + .../docs/de/install/html/instmgr-load.html | 6 + .../docs/de/install/html/instmgr-rep.html | 1 + .../docs/de/install/html/instmgr.png | Bin 0 -> 22187 bytes .../docs/de/install/unicode/Makefile.am | 31 + .../docs/de/install/unicode/Makefile.in | 390 + .../docs/de/install/unicode/index.docbook | 156 + .../docs/de/install/unicode/index_cache.gz | Bin 0 -> 9763 bytes .../docs/de/install/unicode/inst-bin.docbook | 50 + .../install/unicode/inst-installmgr.docbook | 182 + .../docs/de/install/unicode/inst-preq.docbook | 58 + .../de/install/unicode/inst-sources.docbook | 246 + .../docs/de/install/unicode/inst-user.docbook | 41 + bibletime-doc/docs/documentation-links.html | 77 + bibletime-doc/docs/en/Makefile.am | 10 + bibletime-doc/docs/en/Makefile.in | 490 + bibletime-doc/docs/en/handbook/Makefile.am | 23 + bibletime-doc/docs/en/handbook/Makefile.in | 480 + .../docs/en/handbook/html/Makefile.am | 31 + .../docs/en/handbook/html/Makefile.in | 390 + .../handbook/html/hdbk-bars-menubar-Help.html | 106 + .../html/hdbk-bars-menubar-Window.html | 106 + .../handbook/html/hdbk-bars-menubar-file.html | 62 + .../html/hdbk-bars-menubar-mainindex.html | 81 + .../html/hdbk-bars-menubar-settings.html | 62 + .../handbook/html/hdbk-bars-menubar-view.html | 66 + .../en/handbook/html/hdbk-bars-menubar.html | 45 + .../html/hdbk-bars-toolbar-Configtoolbar.png | Bin 0 -> 17363 bytes .../hdbk-bars-toolbar-action-cascade-auto.png | Bin 0 -> 492 bytes .../html/hdbk-bars-toolbar-action-cascade.png | Bin 0 -> 322 bytes .../hdbk-bars-toolbar-action-contents.png | Bin 0 -> 1383 bytes .../html/hdbk-bars-toolbar-action-exit.png | Bin 0 -> 367 bytes .../html/hdbk-bars-toolbar-action-print.png | Bin 0 -> 1610 bytes .../html/hdbk-bars-toolbar-action-reset.png | Bin 0 -> 1335 bytes .../html/hdbk-bars-toolbar-action-search.png | Bin 0 -> 2508 bytes .../hdbk-bars-toolbar-action-tile-auto.png | Bin 0 -> 403 bytes .../html/hdbk-bars-toolbar-action-tile.png | Bin 0 -> 315 bytes .../html/hdbk-bars-toolbar-action.html | 76 + .../handbook/html/hdbk-bars-toolbar-close.png | Bin 0 -> 1155 bytes .../docs/en/handbook/html/hdbk-bars.html | 54 + .../en/handbook/html/hdbk-conf-font-about.png | Bin 0 -> 9473 bytes .../html/hdbk-conf-optdialog-color.png | Bin 0 -> 17131 bytes .../html/hdbk-conf-optdialog-fonts.png | Bin 0 -> 19738 bytes .../html/hdbk-conf-optdialog-start.png | Bin 0 -> 14441 bytes .../html/hdbk-conf-optdialog-sword.png | Bin 0 -> 21257 bytes .../html/hdbk-config-bt-Accelerators.html | 109 + .../handbook/html/hdbk-config-bt-Colors.html | 61 + .../html/hdbk-config-bt-profiles.html | 50 + .../handbook/html/hdbk-config-bt-sword.html | 102 + .../docs/en/handbook/html/hdbk-config-bt.html | 332 + .../en/handbook/html/hdbk-config-toolbar.png | Bin 0 -> 17212 bytes .../docs/en/handbook/html/hdbk-config.html | 61 + .../html/hdbk-inst-sources-installmgr.png | Bin 0 -> 22187 bytes .../en/handbook/html/hdbk-intro-ToDo.html | 59 + .../handbook/html/hdbk-intro-motivation.html | 71 + .../docs/en/handbook/html/hdbk-intro.html | 97 + .../en/handbook/html/hdbk-op-MDI-Window.html | 139 + .../en/handbook/html/hdbk-op-change-range.png | Bin 0 -> 4442 bytes .../handbook/html/hdbk-op-crch-dia-choose.png | Bin 0 -> 9247 bytes .../en/handbook/html/hdbk-op-delete-verse.png | Bin 0 -> 1784 bytes .../handbook/html/hdbk-op-module-select-1.png | Bin 0 -> 23820 bytes .../handbook/html/hdbk-op-module-select-2.png | Bin 0 -> 35998 bytes .../handbook/html/hdbk-op-module-tree-1.png | Bin 0 -> 15869 bytes .../html/hdbk-op-module-tree-select.html | 110 + .../docs/en/handbook/html/hdbk-op-output.html | 143 + .../docs/en/handbook/html/hdbk-op-pencil.png | Bin 0 -> 361 bytes .../html/hdbk-op-search-dialog-searchanal.png | Bin 0 -> 7203 bytes .../hdbk-op-search-dialog-searchresult.png | Bin 0 -> 10303 bytes .../html/hdbk-op-search-dialog-searchtext.png | Bin 0 -> 9248 bytes .../docs/en/handbook/html/hdbk-op-search.html | 496 + .../docs/en/handbook/html/hdbk-op.html | 60 + .../en/handbook/html/hdbk-start-bticon.png | Bin 0 -> 1629 bytes .../handbook/html/hdbk-start-screen-terms.png | Bin 0 -> 45294 bytes .../en/handbook/html/hdbk-start-screen.html | 48 + .../html/hdbk-start-sequence-tips.png | Bin 0 -> 22302 bytes .../docs/en/handbook/html/hdbk-term.html | 89 + ...module-tree-bookmark-bookmarkandfolder.png | Bin 0 -> 14751 bytes .../docs/en/handbook/html/index.html | 200 + .../docs/en/handbook/unicode/Makefile.am | 31 + .../docs/en/handbook/unicode/Makefile.in | 385 + .../en/handbook/unicode/hdbk-config.docbook | 296 + .../en/handbook/unicode/hdbk-intro.docbook | 106 + .../handbook/unicode/hdbk-operation.docbook | 715 ++ .../en/handbook/unicode/hdbk-start.docbook | 74 + .../en/handbook/unicode/hdbk-toolbars.docbook | 392 + .../docs/en/handbook/unicode/index.docbook | 107 + bibletime-doc/docs/en/helpdialog/Makefile.am | 23 + bibletime-doc/docs/en/helpdialog/Makefile.in | 480 + .../docs/en/helpdialog/html/Makefile.am | 31 + .../docs/en/helpdialog/html/Makefile.in | 385 + .../helpdialog/html/help-first-startup.html | 167 + .../html/help-first-time-search.html | 122 + .../html/help-initbackend-failed.html | 50 + .../html/help-module-encrypted.html | 108 + .../en/helpdialog/html/help-no-mods-d.html | 100 + .../en/helpdialog/html/help-no-modules.html | 97 + .../html/help-sword-module-trouble.html | 52 + .../docs/en/helpdialog/html/index.html | 100 + .../docs/en/helpdialog/unicode/Makefile.am | 31 + .../docs/en/helpdialog/unicode/Makefile.in | 385 + .../unicode/help-first-startup.docbook | 157 + .../unicode/help-first-time-search.docbook | 77 + .../unicode/help-initbackend-failed.docbook | 12 + .../unicode/help-module-encrypted.docbook | 60 + .../helpdialog/unicode/help-no-mods-d.docbook | 54 + .../unicode/help-no-modules.docbook | 53 + .../unicode/help-sword-module-trouble.docbook | 9 + .../docs/en/helpdialog/unicode/index.docbook | 117 + bibletime-doc/docs/en/howto/Makefile.am | 23 + bibletime-doc/docs/en/howto/Makefile.in | 480 + bibletime-doc/docs/en/howto/html/Makefile.am | 5 + bibletime-doc/docs/en/howto/html/Makefile.in | 364 + .../en/howto/html/h2-basics-approaches.html | 99 + .../en/howto/html/h2-basics-expository.html | 67 + .../howto/html/h2-basics-interpretation.html | 64 + .../docs/en/howto/html/h2-basics-types.html | 63 + .../en/howto/html/h2-basics-worksheet.html | 108 + .../docs/en/howto/html/h2-basics.html | 83 + .../en/howto/html/h2-importance-breathed.html | 92 + .../html/h2-importance-exhortations.html | 64 + .../howto/html/h2-importance-liberates.html | 67 + .../en/howto/html/h2-importance-once.html | 82 + .../howto/html/h2-importance-supplement.html | 71 + .../en/howto/html/h2-importance-wars.html | 76 + .../en/howto/html/h2-importance-works.html | 125 + .../docs/en/howto/html/h2-importance.html | 161 + .../docs/en/howto/html/h2-rules-context.html | 81 + .../docs/en/howto/html/h2-rules-hcontest.html | 78 + .../docs/en/howto/html/h2-rules-normal.html | 78 + .../docs/en/howto/html/h2-rules-parables.html | 70 + .../docs/en/howto/html/h2-rules.html | 136 + bibletime-doc/docs/en/howto/html/index.html | 211 + .../docs/en/howto/unicode/Makefile.am | 31 + .../docs/en/howto/unicode/Makefile.in | 385 + .../docs/en/howto/unicode/how2-basics.docbook | 179 + .../en/howto/unicode/how2-importance.docbook | 309 + .../howto/unicode/how2-interpretation.docbook | 197 + .../docs/en/howto/unicode/index.docbook | 108 + bibletime-doc/docs/en/install/Makefile.am | 23 + bibletime-doc/docs/en/install/Makefile.in | 480 + .../docs/en/install/html/Makefile.am | 31 + .../docs/en/install/html/Makefile.in | 390 + bibletime-doc/docs/en/install/html/index.html | 133 + .../docs/en/install/html/inst-bin.html | 93 + .../en/install/html/inst-preq-install.html | 78 + .../docs/en/install/html/inst-preq.html | 98 + .../install/html/inst-sources-bibletime.html | 76 + .../docs/en/install/html/inst-sources.html | 257 + .../en/install/html/inst-user-source.html | 63 + .../html/inst-user-troubleshooting.html | 53 + .../docs/en/install/html/inst-user.html | 53 + .../en/install/html/installmgr-install.html | 100 + .../docs/en/install/html/installmgr.html | 98 + .../docs/en/install/html/instmgr-cfg.html | 50 + .../docs/en/install/html/instmgr-load.html | 63 + .../docs/en/install/html/instmgr-rep.html | 65 + .../docs/en/install/html/instmgr.png | Bin 0 -> 22187 bytes .../docs/en/install/unicode/Makefile.am | 31 + .../docs/en/install/unicode/Makefile.in | 385 + .../docs/en/install/unicode/index.docbook | 135 + .../docs/en/install/unicode/inst-bin.docbook | 51 + .../install/unicode/inst-installmgr.docbook | 190 + .../docs/en/install/unicode/inst-preq.docbook | 59 + .../en/install/unicode/inst-sources.docbook | 215 + .../docs/en/install/unicode/inst-user.docbook | 42 + bibletime-doc/docs/en/tips | 193 + bibletime-doc/docs/gen_am.dat | 26 + bibletime-doc/docs/gen_am.sh | 223 + bibletime-doc/docs/ksgmltools-bug-read-me.txt | 36 + bibletime-doc/libtool | 6005 ++++++++++++ bibletime-doc/po/Makefile.am | 72 + bibletime-doc/po/Makefile.in | 435 + bibletime-doc/po/bibletime.pot | 2704 ++++++ bibletime-doc/po/cs.gmo | Bin 0 -> 25846 bytes bibletime-doc/po/cs.po | 3330 +++++++ bibletime-doc/po/da.po | 2129 +++++ bibletime-doc/po/de.gmo | Bin 0 -> 64481 bytes bibletime-doc/po/de.po | 2974 ++++++ bibletime-doc/po/fr.gmo | Bin 0 -> 27196 bytes bibletime-doc/po/fr.po | 3271 +++++++ bibletime-doc/po/hu.po | 2129 +++++ bibletime-doc/po/it.gmo | Bin 0 -> 26187 bytes bibletime-doc/po/it.po | 3375 +++++++ bibletime-doc/po/nl.gmo | Bin 0 -> 2945 bytes bibletime-doc/po/nl.po | 2972 ++++++ bibletime-doc/po/no.gmo | Bin 0 -> 25876 bytes bibletime-doc/po/no.po | 3359 +++++++ bibletime-doc/po/pl.po | 2129 +++++ bibletime-doc/po/sk.gmo | Bin 0 -> 26018 bytes bibletime-doc/po/sk.po | 3335 +++++++ bibletime-doc/stamp-h.in | 0 bibletime.desktop | 24 + bibletime.desktop.in | 24 + bibletime.kdevprj | 1839 ++++ bibletime.kdevses | 8 + bibletime.lsm | 14 + bibletime.lsm.in | 14 + bibletime.m4 | 156 + bibletime.spec | 314 + bibletime.spec.in | 314 + bibletime.start | 11 + bibletime/Makefile.am | 80 + bibletime/Makefile.in | 753 ++ bibletime/backend/Makefile.am | 47 + bibletime/backend/Makefile.in | 622 ++ bibletime/backend/bt_basicfilter.cpp | 202 + bibletime/backend/bt_basicfilter.h | 76 + bibletime/backend/bt_gbfhtml.cpp | 156 + bibletime/backend/bt_gbfhtml.h | 48 + bibletime/backend/bt_thmlhtml.cpp | 225 + bibletime/backend/bt_thmlhtml.h | 35 + bibletime/backend/chtmlbookdisplay.cpp | 81 + bibletime/backend/chtmlbookdisplay.h | 44 + bibletime/backend/chtmlchapterdisplay.cpp | 160 + bibletime/backend/chtmlchapterdisplay.h | 43 + bibletime/backend/chtmlentrydisplay.cpp | 179 + bibletime/backend/chtmlentrydisplay.h | 110 + bibletime/backend/creferencemanager.cpp | 255 + bibletime/backend/creferencemanager.h | 83 + bibletime/backend/cswordbackend.cpp | 368 + bibletime/backend/cswordbackend.h | 215 + bibletime/backend/cswordbiblemoduleinfo.cpp | 195 + bibletime/backend/cswordbiblemoduleinfo.h | 96 + bibletime/backend/cswordbookmoduleinfo.cpp | 100 + bibletime/backend/cswordbookmoduleinfo.h | 63 + .../backend/cswordcommentarymoduleinfo.cpp | 31 + .../backend/cswordcommentarymoduleinfo.h | 45 + bibletime/backend/cswordkey.cpp | 90 + bibletime/backend/cswordkey.h | 64 + bibletime/backend/cswordldkey.cpp | 103 + bibletime/backend/cswordldkey.h | 102 + bibletime/backend/cswordlexiconmoduleinfo.cpp | 122 + bibletime/backend/cswordlexiconmoduleinfo.h | 72 + bibletime/backend/cswordmoduleinfo.cpp | 258 + bibletime/backend/cswordmoduleinfo.h | 197 + bibletime/backend/cswordmodulesearch.cpp | 189 + bibletime/backend/cswordmodulesearch.h | 159 + bibletime/backend/cswordtreekey.cpp | 83 + bibletime/backend/cswordtreekey.h | 56 + bibletime/backend/cswordversekey.cpp | 172 + bibletime/backend/cswordversekey.h | 119 + bibletime/backend/st31vJFM | Bin 0 -> 8146944 bytes bibletime/bibletime.cpp | 266 + bibletime/bibletime.h | 362 + bibletime/bibletime_init.cpp | 365 + bibletime/bibletime_slots.cpp | 429 + bibletime/bt-printing | 98 + bibletime/frontend/Makefile.am | 44 + bibletime/frontend/Makefile.in | 720 ++ bibletime/frontend/cbtconfig.cpp | 374 + bibletime/frontend/cbtconfig.h | 131 + bibletime/frontend/cexportmanager.cpp | 212 + bibletime/frontend/cexportmanager.h | 53 + bibletime/frontend/chtmldialog.cpp | 154 + bibletime/frontend/chtmldialog.h | 67 + bibletime/frontend/chtmlwidget.cpp | 747 ++ bibletime/frontend/chtmlwidget.h | 291 + bibletime/frontend/cinputdialog.cpp | 103 + bibletime/frontend/cinputdialog.h | 49 + bibletime/frontend/cmdiarea.cpp | 284 + bibletime/frontend/cmdiarea.h | 143 + bibletime/frontend/coptionsdialog.cpp | 806 ++ bibletime/frontend/coptionsdialog.h | 210 + bibletime/frontend/cpointers.cpp | 52 + bibletime/frontend/cpointers.h | 48 + bibletime/frontend/cprofile.cpp | 375 + bibletime/frontend/cprofile.h | 95 + bibletime/frontend/cprofilemgr.cpp | 115 + bibletime/frontend/cprofilemgr.h | 71 + bibletime/frontend/cprofilewindow.cpp | 105 + bibletime/frontend/cprofilewindow.h | 110 + bibletime/frontend/ctoolclass.cpp | 185 + bibletime/frontend/ctoolclass.h | 84 + bibletime/frontend/groupmanager/Makefile.am | 18 + bibletime/frontend/groupmanager/Makefile.in | 608 ++ .../frontend/groupmanager/cgroupmanager.cpp | 1615 ++++ .../frontend/groupmanager/cgroupmanager.h | 275 + .../groupmanager/cgroupmanageritem.cpp | 287 + .../frontend/groupmanager/cgroupmanageritem.h | 190 + bibletime/frontend/keychooser/Makefile.am | 25 + bibletime/frontend/keychooser/Makefile.in | 643 ++ .../frontend/keychooser/cbiblekeychooser.cpp | 290 + .../frontend/keychooser/cbiblekeychooser.h | 130 + .../frontend/keychooser/cbookkeychooser.cpp | 181 + .../frontend/keychooser/cbookkeychooser.h | 101 + .../frontend/keychooser/cbooktreechooser.cpp | 183 + .../frontend/keychooser/cbooktreechooser.h | 101 + bibletime/frontend/keychooser/cfx_btn.cpp | 99 + bibletime/frontend/keychooser/cfx_btn.h | 91 + bibletime/frontend/keychooser/ckeychooser.cpp | 48 + bibletime/frontend/keychooser/ckeychooser.h | 93 + .../frontend/keychooser/ckeychooserwidget.cpp | 458 + .../frontend/keychooser/ckeychooserwidget.h | 229 + .../keychooser/clexiconkeychooser.cpp | 101 + .../frontend/keychooser/clexiconkeychooser.h | 88 + bibletime/frontend/kstartuplogo.cpp | 95 + bibletime/frontend/kstartuplogo.h | 51 + bibletime/frontend/presenters/Makefile.am | 28 + bibletime/frontend/presenters/Makefile.in | 652 ++ .../frontend/presenters/cbiblepresenter.cpp | 431 + .../frontend/presenters/cbiblepresenter.h | 94 + .../frontend/presenters/cbookpresenter.cpp | 258 + .../frontend/presenters/cbookpresenter.h | 77 + .../presenters/ccommentarypresenter.cpp | 524 ++ .../presenters/ccommentarypresenter.h | 132 + .../presenters/cdisplaysettingsbutton.cpp | 138 + .../presenters/cdisplaysettingsbutton.h | 79 + .../frontend/presenters/clexiconpresenter.cpp | 280 + .../frontend/presenters/clexiconpresenter.h | 75 + .../frontend/presenters/cmodulechooserbar.cpp | 129 + .../frontend/presenters/cmodulechooserbar.h | 76 + .../presenters/cmodulechooserbutton.cpp | 145 + .../presenters/cmodulechooserbutton.h | 62 + .../frontend/presenters/cswordpresenter.cpp | 273 + .../frontend/presenters/cswordpresenter.h | 184 + bibletime/frontend/searchdialog/Makefile.am | 26 + bibletime/frontend/searchdialog/Makefile.in | 646 ++ .../frontend/searchdialog/csearchdialog.cpp | 290 + .../frontend/searchdialog/csearchdialog.h | 136 + .../searchdialog/csearchdialoganalysis.cpp | 446 + .../searchdialog/csearchdialoganalysis.h | 187 + .../csearchdialogmodulechooser.cpp | 215 + .../searchdialog/csearchdialogmodulechooser.h | 71 + .../searchdialog/csearchdialogresult.cpp | 182 + .../searchdialog/csearchdialogresult.h | 66 + .../searchdialog/csearchdialogresultview.cpp | 437 + .../searchdialog/csearchdialogresultview.h | 200 + .../searchdialog/csearchdialogscope.cpp | 373 + .../searchdialog/csearchdialogscope.h | 98 + .../searchdialog/csearchdialogtext.cpp | 216 + .../frontend/searchdialog/csearchdialogtext.h | 92 + bibletime/frontend/thirdparty/Makefile.am | 10 + bibletime/frontend/thirdparty/Makefile.in | 646 ++ bibletime/frontend/thirdparty/dummy.cpp | 0 .../frontend/thirdparty/qt3stuff/Makefile.am | 25 + .../frontend/thirdparty/qt3stuff/Makefile.in | 610 ++ .../thirdparty/qt3stuff/qcleanuphandler.h | 113 + .../thirdparty/qt3stuff/qcomplextext.cpp | 1313 +++ .../thirdparty/qt3stuff/qcomplextext_p.h | 102 + .../thirdparty/qt3stuff/qrichtext.cpp | 7124 +++++++++++++++ .../thirdparty/qt3stuff/qrichtext_p.h | 2446 +++++ .../thirdparty/qt3stuff/qstylesheet.cpp | 1349 +++ .../thirdparty/qt3stuff/qstylesheet.h | 215 + .../frontend/thirdparty/qt3stuff/qt3stuff.h | 87 + .../thirdparty/qt3stuff/qtextedit.cpp | 539 ++ .../frontend/thirdparty/qt3stuff/qtextedit.h | 394 + .../thirdparty/qt3stuff/qtextview.cpp | 3155 +++++++ .../frontend/thirdparty/qt3stuff/qtextview.h | 377 + bibletime/main.cpp | 220 + bibletime/pics/Makefile.am | 29 + bibletime/pics/Makefile.in | 494 + bibletime/pics/gen_am.sh | 54 + bibletime/pics/highcolor/16x16/Makefile.am | 7 + bibletime/pics/highcolor/16x16/Makefile.in | 416 + .../highcolor/16x16/hi16-action-bt_bible.png | Bin 0 -> 586 bytes .../16x16/hi16-action-bt_bible_add.png | Bin 0 -> 599 bytes .../16x16/hi16-action-bt_bible_locked.png | Bin 0 -> 716 bytes .../highcolor/16x16/hi16-action-bt_book.png | Bin 0 -> 583 bytes .../16x16/hi16-action-bt_book_add.png | Bin 0 -> 599 bytes .../16x16/hi16-action-bt_book_locked.png | Bin 0 -> 683 bytes .../16x16/hi16-action-bt_cascade.png | Bin 0 -> 295 bytes .../16x16/hi16-action-bt_cascade_auto.png | Bin 0 -> 325 bytes .../16x16/hi16-action-bt_commentary.png | Bin 0 -> 622 bytes .../16x16/hi16-action-bt_commentary_add.png | Bin 0 -> 631 bytes .../hi16-action-bt_commentary_locked.png | Bin 0 -> 724 bytes .../16x16/hi16-action-bt_displayconfig.png | Bin 0 -> 742 bytes .../16x16/hi16-action-bt_lexicon.png | Bin 0 -> 672 bytes .../16x16/hi16-action-bt_lexicon_add.png | Bin 0 -> 689 bytes .../16x16/hi16-action-bt_lexicon_locked.png | Bin 0 -> 792 bytes .../16x16/hi16-action-bt_startconfig.png | Bin 0 -> 738 bytes .../16x16/hi16-action-bt_swordconfig.png | Bin 0 -> 538 bytes .../highcolor/16x16/hi16-action-bt_tile.png | Bin 0 -> 288 bytes .../16x16/hi16-action-bt_tile_auto.png | Bin 0 -> 324 bytes .../highcolor/16x16/hi16-app-bibletime.png | Bin 0 -> 822 bytes bibletime/pics/highcolor/22x22/Makefile.am | 7 + bibletime/pics/highcolor/22x22/Makefile.in | 423 + .../highcolor/22x22/hi22-action-bt_bible.png | Bin 0 -> 866 bytes .../22x22/hi22-action-bt_bible_add.png | Bin 0 -> 925 bytes .../22x22/hi22-action-bt_bible_locked.html | Bin 0 -> 996 bytes .../highcolor/22x22/hi22-action-bt_book.png | Bin 0 -> 781 bytes .../22x22/hi22-action-bt_book_add.png | Bin 0 -> 830 bytes .../22x22/hi22-action-bt_book_locked.png | Bin 0 -> 908 bytes .../22x22/hi22-action-bt_cascade.png | Bin 0 -> 727 bytes .../22x22/hi22-action-bt_cascade_auto.png | Bin 0 -> 1042 bytes .../22x22/hi22-action-bt_commentary.png | Bin 0 -> 1076 bytes .../22x22/hi22-action-bt_commentary_add.png | Bin 0 -> 1098 bytes .../hi22-action-bt_commentary_locked.png | Bin 0 -> 1204 bytes .../22x22/hi22-action-bt_displayconfig.png | Bin 0 -> 1146 bytes .../22x22/hi22-action-bt_lexicon.png | Bin 0 -> 1155 bytes .../22x22/hi22-action-bt_lexicon_add.png | Bin 0 -> 1197 bytes .../22x22/hi22-action-bt_lexicon_locked.png | Bin 0 -> 1271 bytes .../22x22/hi22-action-bt_parallel.png | Bin 0 -> 454 bytes .../22x22/hi22-action-bt_startconfig.png | Bin 0 -> 1058 bytes .../22x22/hi22-action-bt_swordconfig.png | Bin 0 -> 800 bytes .../highcolor/22x22/hi22-action-bt_sync.png | Bin 0 -> 629 bytes .../highcolor/22x22/hi22-action-bt_tile.png | Bin 0 -> 418 bytes .../22x22/hi22-action-bt_tile_auto.png | Bin 0 -> 745 bytes .../highcolor/22x22/hi22-app-bibletime.png | Bin 0 -> 1235 bytes bibletime/pics/highcolor/32x32/Makefile.am | 7 + bibletime/pics/highcolor/32x32/Makefile.in | 408 + .../highcolor/32x32/hi32-action-bt_bible.png | Bin 0 -> 1431 bytes .../32x32/hi32-action-bt_bible_add.png | Bin 0 -> 1504 bytes .../highcolor/32x32/hi32-action-bt_book.png | Bin 0 -> 1182 bytes .../32x32/hi32-action-bt_book_add.png | Bin 0 -> 1252 bytes .../32x32/hi32-action-bt_cascade.png | Bin 0 -> 322 bytes .../32x32/hi32-action-bt_cascade_auto.png | Bin 0 -> 492 bytes .../32x32/hi32-action-bt_commentary.png | Bin 0 -> 1795 bytes .../32x32/hi32-action-bt_commentary_add.png | Bin 0 -> 1850 bytes .../32x32/hi32-action-bt_displayconfig.png | Bin 0 -> 1775 bytes .../32x32/hi32-action-bt_lexicon.png | Bin 0 -> 1877 bytes .../32x32/hi32-action-bt_lexicon_add.png | Bin 0 -> 1935 bytes .../32x32/hi32-action-bt_startconfig.png | Bin 0 -> 1745 bytes .../32x32/hi32-action-bt_swordconfig.png | Bin 0 -> 1305 bytes .../highcolor/32x32/hi32-action-bt_tile.png | Bin 0 -> 315 bytes .../32x32/hi32-action-bt_tile_auto.png | Bin 0 -> 403 bytes .../highcolor/32x32/hi32-app-bibletime.png | Bin 0 -> 2178 bytes bibletime/pics/highcolor/48x48/Makefile.am | 7 + bibletime/pics/highcolor/48x48/Makefile.in | 400 + .../highcolor/48x48/hi48-action-bt_bible.png | Bin 0 -> 2745 bytes .../48x48/hi48-action-bt_bible_add.png | Bin 0 -> 2892 bytes .../highcolor/48x48/hi48-action-bt_book.png | Bin 0 -> 2009 bytes .../48x48/hi48-action-bt_book_add.png | Bin 0 -> 2148 bytes .../48x48/hi48-action-bt_commentary.png | Bin 0 -> 3185 bytes .../48x48/hi48-action-bt_commentary_add.png | Bin 0 -> 3291 bytes .../48x48/hi48-action-bt_displayconfig.png | Bin 0 -> 3267 bytes .../48x48/hi48-action-bt_lexicon.png | Bin 0 -> 3601 bytes .../48x48/hi48-action-bt_lexicon_add.png | Bin 0 -> 3703 bytes .../48x48/hi48-action-bt_startconfig.png | Bin 0 -> 3059 bytes .../48x48/hi48-action-bt_swordconfig.png | Bin 0 -> 2376 bytes .../highcolor/48x48/hi48-app-bibletime.png | Bin 0 -> 4063 bytes bibletime/pics/highcolor/Makefile.am | 5 + bibletime/pics/highcolor/Makefile.in | 467 + bibletime/pics/lowcolor/16x16/Makefile.am | 7 + bibletime/pics/lowcolor/16x16/Makefile.in | 420 + .../lowcolor/16x16/lo16-action-bt_bible.png | Bin 0 -> 806 bytes .../16x16/lo16-action-bt_bible_locked.png | Bin 0 -> 946 bytes .../16x16/lo16-action-bt_bookmark.png | Bin 0 -> 588 bytes .../16x16/lo16-action-bt_bookmark_change.png | Bin 0 -> 575 bytes .../16x16/lo16-action-bt_bookmark_export.png | Bin 0 -> 550 bytes .../16x16/lo16-action-bt_bookmark_import.png | Bin 0 -> 521 bytes .../16x16/lo16-action-bt_bookmark_new.png | Bin 0 -> 583 bytes .../lowcolor/16x16/lo16-action-bt_cascade.png | Bin 0 -> 295 bytes .../16x16/lo16-action-bt_cascade_auto.png | Bin 0 -> 325 bytes .../16x16/lo16-action-bt_commentary.png | Bin 0 -> 554 bytes .../lo16-action-bt_commentary_locked.png | Bin 0 -> 631 bytes .../lowcolor/16x16/lo16-action-bt_folder.png | Bin 0 -> 270 bytes .../16x16/lo16-action-bt_folder_change.png | Bin 0 -> 270 bytes .../16x16/lo16-action-bt_folder_new.png | Bin 0 -> 291 bytes .../16x16/lo16-action-bt_folder_open.png | Bin 0 -> 299 bytes .../lowcolor/16x16/lo16-action-bt_lexicon.png | Bin 0 -> 658 bytes .../16x16/lo16-action-bt_lexicon_locked.png | Bin 0 -> 604 bytes .../lowcolor/16x16/lo16-action-bt_search.png | Bin 0 -> 650 bytes .../lowcolor/16x16/lo16-action-bt_tile.png | Bin 0 -> 288 bytes .../16x16/lo16-action-bt_tile_auto.png | Bin 0 -> 324 bytes .../16x16/lo16-action-bt_verseref.png | Bin 0 -> 811 bytes .../lowcolor/16x16/lo16-app-bibletime.png | Bin 0 -> 806 bytes bibletime/pics/lowcolor/22x22/Makefile.am | 7 + bibletime/pics/lowcolor/22x22/Makefile.in | 383 + .../lowcolor/22x22/lo22-action-bt_cascade.png | Bin 0 -> 727 bytes .../22x22/lo22-action-bt_cascade_auto.png | Bin 0 -> 1042 bytes .../lowcolor/22x22/lo22-action-bt_tile.png | Bin 0 -> 418 bytes .../22x22/lo22-action-bt_tile_auto.png | Bin 0 -> 745 bytes bibletime/pics/lowcolor/32x32/Makefile.am | 7 + bibletime/pics/lowcolor/32x32/Makefile.in | 382 + .../lowcolor/32x32/lo32-action-bt_tile.png | Bin 0 -> 223 bytes .../32x32/lo32-action-bt_tile_auto.png | Bin 0 -> 382 bytes .../lowcolor/32x32/lo32-app-bibletime.png | Bin 0 -> 555 bytes bibletime/pics/lowcolor/Makefile.am | 5 + bibletime/pics/lowcolor/Makefile.in | 467 + bibletime/pics/startuplogo.png | Bin 0 -> 75361 bytes bibletime/pics/startuplogo.xcf | Bin 0 -> 453980 bytes bibletime/printing/Makefile.am | 29 + bibletime/printing/Makefile.in | 711 ++ bibletime/printing/cprintdialogpages.cpp | 289 + bibletime/printing/cprintdialogpages.h | 101 + bibletime/printing/cprinter.cpp | 339 + bibletime/printing/cprinter.h | 219 + bibletime/printing/cprintitem.cpp | 412 + bibletime/printing/cprintitem.h | 103 + bibletime/printing/cprintitemlist.cpp | 126 + bibletime/printing/cprintitemlist.h | 69 + bibletime/printing/cstyle.cpp | 495 + bibletime/printing/cstyle.h | 211 + bibletime/printing/cstyleeditordialog.cpp | 344 + bibletime/printing/cstyleeditordialog.h | 135 + bibletime/printing/cstylelist.cpp | 156 + bibletime/printing/cstylelist.h | 92 + bibletime/printing/style-data/Makefile.am | 4 + bibletime/printing/style-data/Makefile.in | 384 + bibletime/printing/style-data/bw_muchtext.xml | 17 + .../printing/style-data/color_muchtext.xml | 17 + bibletime/printing/style-data/standard.xml | 17 + bibletime/resource.h | 219 + bibletime/tooltipdef.h | 181 + bibletime/util/Makefile.am | 6 + bibletime/util/Makefile.in | 367 + bibletime/util/scoped_resource.h | 160 + bibletime/whatsthisdef.h | 191 + bibletime/xml/Makefile.am | 3 + bibletime/xml/Makefile.in | 384 + bibletime/xml/bibletimeui.rc | 69 + config.guess | 1368 +++ config.h | 54 + config.h.in | 53 + config.sub | 1360 +++ configure | 8133 +++++++++++++++++ configure.in | 167 + configure.in.in | 74 + debian/bibletime.xpm | 59 + debian/changelog | 133 + debian/conffiles | 1 + debian/control | 20 + debian/copyright | 10 + debian/dirs | 2 + debian/docs | 3 + debian/menu | 8 + debian/override | 2 + debian/rules | 123 + debian/undocumented | 1 + extractrc | 74 + libtool | 6005 ++++++++++++ make-messages.sh | 18 + packaging-howto.txt | 43 + preparetips | 45 + stamp-h | 1 + stamp-h.in | 1 + sword.m4 | 165 + 759 files changed, 223863 insertions(+) create mode 100644 COPYING create mode 100644 ChangeLog create mode 100644 INSTALL create mode 100644 INSTALL.in create mode 100644 Makefile.am create mode 100644 Makefile.cvs create mode 100644 Makefile.in create mode 100644 NEWS create mode 100644 NEWS.in create mode 100644 README create mode 100644 README.in create mode 100644 TODO create mode 100644 TODO.in create mode 100644 acinclude.m4 create mode 100644 aclocal.m4 create mode 100644 admin/ChangeLog create mode 100644 admin/Makefile.am create mode 100644 admin/Makefile.common create mode 100644 admin/Makefile.in create mode 100644 admin/acinclude.m4.in create mode 100644 admin/am_edit create mode 100644 admin/am_edit.py create mode 100644 admin/conf.change.pl create mode 100755 admin/config.guess create mode 100644 admin/config.pl create mode 100755 admin/config.sub create mode 100644 admin/configure.in.min create mode 100755 admin/debianrules create mode 100755 admin/depcomp create mode 100755 admin/install-sh create mode 100644 admin/libtool.m4.in create mode 100644 admin/ltcf-c.sh create mode 100644 admin/ltcf-cxx.sh create mode 100755 admin/ltconfig create mode 100644 admin/ltmain.sh create mode 100755 admin/missing create mode 100755 admin/mkinstalldirs create mode 100755 admin/ylwrap create mode 100644 bibletime-doc/INSTALL create mode 100644 bibletime-doc/INSTALL.in create mode 100644 bibletime-doc/Makefile.am create mode 100644 bibletime-doc/Makefile.cvs create mode 100644 bibletime-doc/Makefile.in create mode 100644 bibletime-doc/README create mode 100644 bibletime-doc/README.in create mode 100644 bibletime-doc/acinclude.m4 create mode 100644 bibletime-doc/aclocal.m4 create mode 100644 bibletime-doc/admin/ChangeLog create mode 100644 bibletime-doc/admin/Makefile.am create mode 100644 bibletime-doc/admin/Makefile.common create mode 100644 bibletime-doc/admin/Makefile.in create mode 100644 bibletime-doc/admin/acinclude.m4.in create mode 100644 bibletime-doc/admin/am_edit create mode 100644 bibletime-doc/admin/am_edit.py create mode 100644 bibletime-doc/admin/conf.change.pl create mode 100755 bibletime-doc/admin/config.guess create mode 100644 bibletime-doc/admin/config.pl create mode 100755 bibletime-doc/admin/config.sub create mode 100644 bibletime-doc/admin/configure.in.min create mode 100755 bibletime-doc/admin/debianrules create mode 100755 bibletime-doc/admin/depcomp create mode 100755 bibletime-doc/admin/install-sh create mode 100644 bibletime-doc/admin/libtool.m4.in create mode 100644 bibletime-doc/admin/ltcf-c.sh create mode 100644 bibletime-doc/admin/ltcf-cxx.sh create mode 100755 bibletime-doc/admin/ltconfig create mode 100644 bibletime-doc/admin/ltmain.sh create mode 100755 bibletime-doc/admin/missing create mode 100755 bibletime-doc/admin/mkinstalldirs create mode 100755 bibletime-doc/admin/ylwrap create mode 100644 bibletime-doc/bibletime-doc.spec create mode 100644 bibletime-doc/bibletime-doc.spec.in create mode 100644 bibletime-doc/bibletime.m4 create mode 100755 bibletime-doc/config.guess create mode 100755 bibletime-doc/config.sub create mode 100755 bibletime-doc/configure create mode 100644 bibletime-doc/configure.in create mode 100644 bibletime-doc/configure.in.in create mode 100644 bibletime-doc/docs/Makefile.am create mode 100644 bibletime-doc/docs/Makefile.in create mode 100644 bibletime-doc/docs/de/Makefile.am create mode 100644 bibletime-doc/docs/de/Makefile.in create mode 100644 bibletime-doc/docs/de/handbook/Makefile.am create mode 100644 bibletime-doc/docs/de/handbook/Makefile.in create mode 100644 bibletime-doc/docs/de/handbook/html/Makefile.am create mode 100644 bibletime-doc/docs/de/handbook/html/Makefile.in create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Help.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Window.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-file.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-mainindex.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-settings.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-view.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-Configtoolbar.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-cascade.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-contents.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-exit.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-print.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-reset.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-search.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-tile-auto.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-tile.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-close.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-bars.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-config-bt.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-config.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-intro-ToDo.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-intro-motivation.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-intro.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-MDI-Window.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-bookmk-1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-2.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-tree-1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-tree-bookmark-bookmarkandfolder.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-module-tree-select.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-output.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-pencil.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchanal.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchresult.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchscope.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchtext.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op-search.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-op.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-start-bticon.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-start-screen-terms.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-start-screen.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-start-sequence-tips.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-term-hotkeys.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk-term.html create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_Configtoolbar.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade_auto.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_contents.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_exit.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_footnotes.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_print.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_reset.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_search.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_strongs.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_tile.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_tile_auto.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_close.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_module_bookmk_1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_2.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_module_tree_1.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_module_tree_bookmark_bookmarkandfolder.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_pencil.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchanal.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchresult.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchscope.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchtext.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_start_bticon.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_start_screen_terms.png create mode 100644 bibletime-doc/docs/de/handbook/html/hdbk_start_sequence_tips.png create mode 100644 bibletime-doc/docs/de/handbook/html/index.html create mode 100644 bibletime-doc/docs/de/handbook/unicode/Makefile.am create mode 100644 bibletime-doc/docs/de/handbook/unicode/Makefile.in create mode 100644 bibletime-doc/docs/de/handbook/unicode/hdbk-config.docbook create mode 100644 bibletime-doc/docs/de/handbook/unicode/hdbk-intro.docbook create mode 100644 bibletime-doc/docs/de/handbook/unicode/hdbk-operation.docbook create mode 100644 bibletime-doc/docs/de/handbook/unicode/hdbk-start.docbook create mode 100644 bibletime-doc/docs/de/handbook/unicode/hdbk-toolbars.docbook create mode 100644 bibletime-doc/docs/de/handbook/unicode/index.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/Makefile.am create mode 100644 bibletime-doc/docs/de/helpdialog/Makefile.in create mode 100644 bibletime-doc/docs/de/helpdialog/html/Makefile.am create mode 100644 bibletime-doc/docs/de/helpdialog/html/Makefile.in create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-first-startup.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-first-time-search.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-initbackend-failed.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-module-encrypted.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-no-mods-d.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-no-modules.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/help-sword-module-trouble.html create mode 100644 bibletime-doc/docs/de/helpdialog/html/index.html create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/Makefile.am create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/Makefile.in create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-first-startup.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-first-time-search.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-initbackend-failed.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-module-encrypted.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-no-mods-d.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-no-modules.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/help-sword-module-trouble.docbook create mode 100644 bibletime-doc/docs/de/helpdialog/unicode/index.docbook create mode 100644 bibletime-doc/docs/de/howto/Makefile.am create mode 100644 bibletime-doc/docs/de/howto/Makefile.in create mode 100644 bibletime-doc/docs/de/howto/html/Makefile.am create mode 100644 bibletime-doc/docs/de/howto/html/Makefile.in create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics-approaches.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics-expository.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics-interpretation.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics-types.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics-worksheet.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-basics.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-breathed.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-exhortations.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-liberates.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-once.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-supplement.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-wars.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance-works.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-importance.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-rules-context.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-rules-hcontest.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-rules-normal.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-rules-parables.html create mode 100644 bibletime-doc/docs/de/howto/html/h2-rules.html create mode 100644 bibletime-doc/docs/de/howto/html/index.html create mode 100644 bibletime-doc/docs/de/howto/unicode/Makefile.am create mode 100644 bibletime-doc/docs/de/howto/unicode/Makefile.in create mode 100644 bibletime-doc/docs/de/howto/unicode/how2-basics.docbook create mode 100644 bibletime-doc/docs/de/howto/unicode/how2-importance.docbook create mode 100644 bibletime-doc/docs/de/howto/unicode/how2-interpretation.docbook create mode 100644 bibletime-doc/docs/de/howto/unicode/index.docbook create mode 100644 bibletime-doc/docs/de/install/Makefile.am create mode 100644 bibletime-doc/docs/de/install/Makefile.in create mode 100644 bibletime-doc/docs/de/install/html/Makefile.am create mode 100644 bibletime-doc/docs/de/install/html/Makefile.in create mode 100644 bibletime-doc/docs/de/install/html/index.html create mode 100644 bibletime-doc/docs/de/install/html/inst-bin.html create mode 100644 bibletime-doc/docs/de/install/html/inst-preq.html create mode 100644 bibletime-doc/docs/de/install/html/inst-sources.html create mode 100644 bibletime-doc/docs/de/install/html/inst-user-source.html create mode 100644 bibletime-doc/docs/de/install/html/inst-user-troubleshooting.html create mode 100644 bibletime-doc/docs/de/install/html/inst-user.html create mode 100644 bibletime-doc/docs/de/install/html/installmgr-install.html create mode 100644 bibletime-doc/docs/de/install/html/installmgr.html create mode 100644 bibletime-doc/docs/de/install/html/instmgr-cfg.html create mode 100644 bibletime-doc/docs/de/install/html/instmgr-load.html create mode 100644 bibletime-doc/docs/de/install/html/instmgr-rep.html create mode 100644 bibletime-doc/docs/de/install/html/instmgr.png create mode 100644 bibletime-doc/docs/de/install/unicode/Makefile.am create mode 100644 bibletime-doc/docs/de/install/unicode/Makefile.in create mode 100644 bibletime-doc/docs/de/install/unicode/index.docbook create mode 100644 bibletime-doc/docs/de/install/unicode/index_cache.gz create mode 100644 bibletime-doc/docs/de/install/unicode/inst-bin.docbook create mode 100644 bibletime-doc/docs/de/install/unicode/inst-installmgr.docbook create mode 100644 bibletime-doc/docs/de/install/unicode/inst-preq.docbook create mode 100644 bibletime-doc/docs/de/install/unicode/inst-sources.docbook create mode 100644 bibletime-doc/docs/de/install/unicode/inst-user.docbook create mode 100644 bibletime-doc/docs/documentation-links.html create mode 100644 bibletime-doc/docs/en/Makefile.am create mode 100644 bibletime-doc/docs/en/Makefile.in create mode 100644 bibletime-doc/docs/en/handbook/Makefile.am create mode 100644 bibletime-doc/docs/en/handbook/Makefile.in create mode 100644 bibletime-doc/docs/en/handbook/html/Makefile.am create mode 100644 bibletime-doc/docs/en/handbook/html/Makefile.in create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Help.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Window.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-file.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-mainindex.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-settings.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-view.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-Configtoolbar.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-cascade.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-contents.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-exit.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-print.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-reset.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-search.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-tile-auto.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-tile.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-close.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-bars.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-conf-font-about.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-color.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-fonts.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-start.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-sword.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Accelerators.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Colors.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-bt-profiles.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-bt-sword.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-bt.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config-toolbar.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-config.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-inst-sources-installmgr.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-intro-ToDo.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-intro-motivation.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-intro.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-MDI-Window.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-change-range.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-crch-dia-choose.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-delete-verse.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-module-select-1.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-module-select-2.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-module-tree-1.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-module-tree-select.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-output.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-pencil.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchanal.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchresult.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchtext.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op-search.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-op.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-start-bticon.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-start-screen-terms.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-start-screen.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-start-sequence-tips.png create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk-term.html create mode 100644 bibletime-doc/docs/en/handbook/html/hdbk_op_module-tree-bookmark-bookmarkandfolder.png create mode 100644 bibletime-doc/docs/en/handbook/html/index.html create mode 100644 bibletime-doc/docs/en/handbook/unicode/Makefile.am create mode 100644 bibletime-doc/docs/en/handbook/unicode/Makefile.in create mode 100644 bibletime-doc/docs/en/handbook/unicode/hdbk-config.docbook create mode 100644 bibletime-doc/docs/en/handbook/unicode/hdbk-intro.docbook create mode 100644 bibletime-doc/docs/en/handbook/unicode/hdbk-operation.docbook create mode 100644 bibletime-doc/docs/en/handbook/unicode/hdbk-start.docbook create mode 100644 bibletime-doc/docs/en/handbook/unicode/hdbk-toolbars.docbook create mode 100644 bibletime-doc/docs/en/handbook/unicode/index.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/Makefile.am create mode 100644 bibletime-doc/docs/en/helpdialog/Makefile.in create mode 100644 bibletime-doc/docs/en/helpdialog/html/Makefile.am create mode 100644 bibletime-doc/docs/en/helpdialog/html/Makefile.in create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-first-startup.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-first-time-search.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-initbackend-failed.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-module-encrypted.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-no-mods-d.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-no-modules.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/help-sword-module-trouble.html create mode 100644 bibletime-doc/docs/en/helpdialog/html/index.html create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/Makefile.am create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/Makefile.in create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-first-startup.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-first-time-search.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-initbackend-failed.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-module-encrypted.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-no-mods-d.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-no-modules.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/help-sword-module-trouble.docbook create mode 100644 bibletime-doc/docs/en/helpdialog/unicode/index.docbook create mode 100644 bibletime-doc/docs/en/howto/Makefile.am create mode 100644 bibletime-doc/docs/en/howto/Makefile.in create mode 100644 bibletime-doc/docs/en/howto/html/Makefile.am create mode 100644 bibletime-doc/docs/en/howto/html/Makefile.in create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics-approaches.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics-expository.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics-interpretation.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics-types.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics-worksheet.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-basics.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-breathed.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-exhortations.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-liberates.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-once.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-supplement.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-wars.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance-works.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-importance.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-rules-context.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-rules-hcontest.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-rules-normal.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-rules-parables.html create mode 100644 bibletime-doc/docs/en/howto/html/h2-rules.html create mode 100644 bibletime-doc/docs/en/howto/html/index.html create mode 100644 bibletime-doc/docs/en/howto/unicode/Makefile.am create mode 100644 bibletime-doc/docs/en/howto/unicode/Makefile.in create mode 100644 bibletime-doc/docs/en/howto/unicode/how2-basics.docbook create mode 100644 bibletime-doc/docs/en/howto/unicode/how2-importance.docbook create mode 100644 bibletime-doc/docs/en/howto/unicode/how2-interpretation.docbook create mode 100644 bibletime-doc/docs/en/howto/unicode/index.docbook create mode 100644 bibletime-doc/docs/en/install/Makefile.am create mode 100644 bibletime-doc/docs/en/install/Makefile.in create mode 100644 bibletime-doc/docs/en/install/html/Makefile.am create mode 100644 bibletime-doc/docs/en/install/html/Makefile.in create mode 100644 bibletime-doc/docs/en/install/html/index.html create mode 100644 bibletime-doc/docs/en/install/html/inst-bin.html create mode 100644 bibletime-doc/docs/en/install/html/inst-preq-install.html create mode 100644 bibletime-doc/docs/en/install/html/inst-preq.html create mode 100644 bibletime-doc/docs/en/install/html/inst-sources-bibletime.html create mode 100644 bibletime-doc/docs/en/install/html/inst-sources.html create mode 100644 bibletime-doc/docs/en/install/html/inst-user-source.html create mode 100644 bibletime-doc/docs/en/install/html/inst-user-troubleshooting.html create mode 100644 bibletime-doc/docs/en/install/html/inst-user.html create mode 100644 bibletime-doc/docs/en/install/html/installmgr-install.html create mode 100644 bibletime-doc/docs/en/install/html/installmgr.html create mode 100644 bibletime-doc/docs/en/install/html/instmgr-cfg.html create mode 100644 bibletime-doc/docs/en/install/html/instmgr-load.html create mode 100644 bibletime-doc/docs/en/install/html/instmgr-rep.html create mode 100644 bibletime-doc/docs/en/install/html/instmgr.png create mode 100644 bibletime-doc/docs/en/install/unicode/Makefile.am create mode 100644 bibletime-doc/docs/en/install/unicode/Makefile.in create mode 100644 bibletime-doc/docs/en/install/unicode/index.docbook create mode 100644 bibletime-doc/docs/en/install/unicode/inst-bin.docbook create mode 100644 bibletime-doc/docs/en/install/unicode/inst-installmgr.docbook create mode 100644 bibletime-doc/docs/en/install/unicode/inst-preq.docbook create mode 100644 bibletime-doc/docs/en/install/unicode/inst-sources.docbook create mode 100644 bibletime-doc/docs/en/install/unicode/inst-user.docbook create mode 100644 bibletime-doc/docs/en/tips create mode 100644 bibletime-doc/docs/gen_am.dat create mode 100755 bibletime-doc/docs/gen_am.sh create mode 100644 bibletime-doc/docs/ksgmltools-bug-read-me.txt create mode 100755 bibletime-doc/libtool create mode 100644 bibletime-doc/po/Makefile.am create mode 100644 bibletime-doc/po/Makefile.in create mode 100644 bibletime-doc/po/bibletime.pot create mode 100644 bibletime-doc/po/cs.gmo create mode 100644 bibletime-doc/po/cs.po create mode 100644 bibletime-doc/po/da.po create mode 100644 bibletime-doc/po/de.gmo create mode 100644 bibletime-doc/po/de.po create mode 100644 bibletime-doc/po/fr.gmo create mode 100644 bibletime-doc/po/fr.po create mode 100644 bibletime-doc/po/hu.po create mode 100644 bibletime-doc/po/it.gmo create mode 100644 bibletime-doc/po/it.po create mode 100644 bibletime-doc/po/nl.gmo create mode 100644 bibletime-doc/po/nl.po create mode 100644 bibletime-doc/po/no.gmo create mode 100644 bibletime-doc/po/no.po create mode 100644 bibletime-doc/po/pl.po create mode 100644 bibletime-doc/po/sk.gmo create mode 100644 bibletime-doc/po/sk.po create mode 100644 bibletime-doc/stamp-h.in create mode 100644 bibletime.desktop create mode 100644 bibletime.desktop.in create mode 100644 bibletime.kdevprj create mode 100644 bibletime.kdevses create mode 100644 bibletime.lsm create mode 100644 bibletime.lsm.in create mode 100644 bibletime.m4 create mode 100644 bibletime.spec create mode 100644 bibletime.spec.in create mode 100755 bibletime.start create mode 100644 bibletime/Makefile.am create mode 100644 bibletime/Makefile.in create mode 100644 bibletime/backend/Makefile.am create mode 100644 bibletime/backend/Makefile.in create mode 100644 bibletime/backend/bt_basicfilter.cpp create mode 100644 bibletime/backend/bt_basicfilter.h create mode 100644 bibletime/backend/bt_gbfhtml.cpp create mode 100644 bibletime/backend/bt_gbfhtml.h create mode 100644 bibletime/backend/bt_thmlhtml.cpp create mode 100644 bibletime/backend/bt_thmlhtml.h create mode 100644 bibletime/backend/chtmlbookdisplay.cpp create mode 100644 bibletime/backend/chtmlbookdisplay.h create mode 100644 bibletime/backend/chtmlchapterdisplay.cpp create mode 100644 bibletime/backend/chtmlchapterdisplay.h create mode 100644 bibletime/backend/chtmlentrydisplay.cpp create mode 100644 bibletime/backend/chtmlentrydisplay.h create mode 100644 bibletime/backend/creferencemanager.cpp create mode 100644 bibletime/backend/creferencemanager.h create mode 100644 bibletime/backend/cswordbackend.cpp create mode 100644 bibletime/backend/cswordbackend.h create mode 100644 bibletime/backend/cswordbiblemoduleinfo.cpp create mode 100644 bibletime/backend/cswordbiblemoduleinfo.h create mode 100644 bibletime/backend/cswordbookmoduleinfo.cpp create mode 100644 bibletime/backend/cswordbookmoduleinfo.h create mode 100644 bibletime/backend/cswordcommentarymoduleinfo.cpp create mode 100644 bibletime/backend/cswordcommentarymoduleinfo.h create mode 100644 bibletime/backend/cswordkey.cpp create mode 100644 bibletime/backend/cswordkey.h create mode 100644 bibletime/backend/cswordldkey.cpp create mode 100644 bibletime/backend/cswordldkey.h create mode 100644 bibletime/backend/cswordlexiconmoduleinfo.cpp create mode 100644 bibletime/backend/cswordlexiconmoduleinfo.h create mode 100644 bibletime/backend/cswordmoduleinfo.cpp create mode 100644 bibletime/backend/cswordmoduleinfo.h create mode 100644 bibletime/backend/cswordmodulesearch.cpp create mode 100644 bibletime/backend/cswordmodulesearch.h create mode 100644 bibletime/backend/cswordtreekey.cpp create mode 100644 bibletime/backend/cswordtreekey.h create mode 100644 bibletime/backend/cswordversekey.cpp create mode 100644 bibletime/backend/cswordversekey.h create mode 100644 bibletime/backend/st31vJFM create mode 100644 bibletime/bibletime.cpp create mode 100644 bibletime/bibletime.h create mode 100644 bibletime/bibletime_init.cpp create mode 100644 bibletime/bibletime_slots.cpp create mode 100644 bibletime/bt-printing create mode 100644 bibletime/frontend/Makefile.am create mode 100644 bibletime/frontend/Makefile.in create mode 100644 bibletime/frontend/cbtconfig.cpp create mode 100644 bibletime/frontend/cbtconfig.h create mode 100644 bibletime/frontend/cexportmanager.cpp create mode 100644 bibletime/frontend/cexportmanager.h create mode 100644 bibletime/frontend/chtmldialog.cpp create mode 100644 bibletime/frontend/chtmldialog.h create mode 100644 bibletime/frontend/chtmlwidget.cpp create mode 100644 bibletime/frontend/chtmlwidget.h create mode 100644 bibletime/frontend/cinputdialog.cpp create mode 100644 bibletime/frontend/cinputdialog.h create mode 100644 bibletime/frontend/cmdiarea.cpp create mode 100644 bibletime/frontend/cmdiarea.h create mode 100644 bibletime/frontend/coptionsdialog.cpp create mode 100644 bibletime/frontend/coptionsdialog.h create mode 100644 bibletime/frontend/cpointers.cpp create mode 100644 bibletime/frontend/cpointers.h create mode 100644 bibletime/frontend/cprofile.cpp create mode 100644 bibletime/frontend/cprofile.h create mode 100644 bibletime/frontend/cprofilemgr.cpp create mode 100644 bibletime/frontend/cprofilemgr.h create mode 100644 bibletime/frontend/cprofilewindow.cpp create mode 100644 bibletime/frontend/cprofilewindow.h create mode 100644 bibletime/frontend/ctoolclass.cpp create mode 100644 bibletime/frontend/ctoolclass.h create mode 100644 bibletime/frontend/groupmanager/Makefile.am create mode 100644 bibletime/frontend/groupmanager/Makefile.in create mode 100644 bibletime/frontend/groupmanager/cgroupmanager.cpp create mode 100644 bibletime/frontend/groupmanager/cgroupmanager.h create mode 100644 bibletime/frontend/groupmanager/cgroupmanageritem.cpp create mode 100644 bibletime/frontend/groupmanager/cgroupmanageritem.h create mode 100644 bibletime/frontend/keychooser/Makefile.am create mode 100644 bibletime/frontend/keychooser/Makefile.in create mode 100644 bibletime/frontend/keychooser/cbiblekeychooser.cpp create mode 100644 bibletime/frontend/keychooser/cbiblekeychooser.h create mode 100644 bibletime/frontend/keychooser/cbookkeychooser.cpp create mode 100644 bibletime/frontend/keychooser/cbookkeychooser.h create mode 100644 bibletime/frontend/keychooser/cbooktreechooser.cpp create mode 100644 bibletime/frontend/keychooser/cbooktreechooser.h create mode 100644 bibletime/frontend/keychooser/cfx_btn.cpp create mode 100644 bibletime/frontend/keychooser/cfx_btn.h create mode 100644 bibletime/frontend/keychooser/ckeychooser.cpp create mode 100644 bibletime/frontend/keychooser/ckeychooser.h create mode 100644 bibletime/frontend/keychooser/ckeychooserwidget.cpp create mode 100644 bibletime/frontend/keychooser/ckeychooserwidget.h create mode 100644 bibletime/frontend/keychooser/clexiconkeychooser.cpp create mode 100644 bibletime/frontend/keychooser/clexiconkeychooser.h create mode 100644 bibletime/frontend/kstartuplogo.cpp create mode 100644 bibletime/frontend/kstartuplogo.h create mode 100644 bibletime/frontend/presenters/Makefile.am create mode 100644 bibletime/frontend/presenters/Makefile.in create mode 100644 bibletime/frontend/presenters/cbiblepresenter.cpp create mode 100644 bibletime/frontend/presenters/cbiblepresenter.h create mode 100644 bibletime/frontend/presenters/cbookpresenter.cpp create mode 100644 bibletime/frontend/presenters/cbookpresenter.h create mode 100644 bibletime/frontend/presenters/ccommentarypresenter.cpp create mode 100644 bibletime/frontend/presenters/ccommentarypresenter.h create mode 100644 bibletime/frontend/presenters/cdisplaysettingsbutton.cpp create mode 100644 bibletime/frontend/presenters/cdisplaysettingsbutton.h create mode 100644 bibletime/frontend/presenters/clexiconpresenter.cpp create mode 100644 bibletime/frontend/presenters/clexiconpresenter.h create mode 100644 bibletime/frontend/presenters/cmodulechooserbar.cpp create mode 100644 bibletime/frontend/presenters/cmodulechooserbar.h create mode 100644 bibletime/frontend/presenters/cmodulechooserbutton.cpp create mode 100644 bibletime/frontend/presenters/cmodulechooserbutton.h create mode 100644 bibletime/frontend/presenters/cswordpresenter.cpp create mode 100644 bibletime/frontend/presenters/cswordpresenter.h create mode 100644 bibletime/frontend/searchdialog/Makefile.am create mode 100644 bibletime/frontend/searchdialog/Makefile.in create mode 100644 bibletime/frontend/searchdialog/csearchdialog.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialog.h create mode 100644 bibletime/frontend/searchdialog/csearchdialoganalysis.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialoganalysis.h create mode 100644 bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialogmodulechooser.h create mode 100644 bibletime/frontend/searchdialog/csearchdialogresult.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialogresult.h create mode 100644 bibletime/frontend/searchdialog/csearchdialogresultview.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialogresultview.h create mode 100644 bibletime/frontend/searchdialog/csearchdialogscope.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialogscope.h create mode 100644 bibletime/frontend/searchdialog/csearchdialogtext.cpp create mode 100644 bibletime/frontend/searchdialog/csearchdialogtext.h create mode 100644 bibletime/frontend/thirdparty/Makefile.am create mode 100644 bibletime/frontend/thirdparty/Makefile.in create mode 100644 bibletime/frontend/thirdparty/dummy.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/Makefile.am create mode 100644 bibletime/frontend/thirdparty/qt3stuff/Makefile.in create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qtextedit.h create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp create mode 100644 bibletime/frontend/thirdparty/qt3stuff/qtextview.h create mode 100644 bibletime/main.cpp create mode 100644 bibletime/pics/Makefile.am create mode 100644 bibletime/pics/Makefile.in create mode 100755 bibletime/pics/gen_am.sh create mode 100644 bibletime/pics/highcolor/16x16/Makefile.am create mode 100644 bibletime/pics/highcolor/16x16/Makefile.in create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_bible.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_bible_add.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_bible_locked.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_book.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_book_add.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_book_locked.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_cascade.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_cascade_auto.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_commentary.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_add.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_locked.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_displayconfig.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_add.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_locked.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_startconfig.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_swordconfig.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_tile.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-action-bt_tile_auto.png create mode 100644 bibletime/pics/highcolor/16x16/hi16-app-bibletime.png create mode 100644 bibletime/pics/highcolor/22x22/Makefile.am create mode 100644 bibletime/pics/highcolor/22x22/Makefile.in create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_bible.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_bible_add.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_bible_locked.html create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_book.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_book_add.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_book_locked.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_cascade.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_cascade_auto.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_commentary.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_add.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_locked.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_displayconfig.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_add.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_locked.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_parallel.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_startconfig.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_swordconfig.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_sync.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_tile.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-action-bt_tile_auto.png create mode 100644 bibletime/pics/highcolor/22x22/hi22-app-bibletime.png create mode 100644 bibletime/pics/highcolor/32x32/Makefile.am create mode 100644 bibletime/pics/highcolor/32x32/Makefile.in create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_bible.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_bible_add.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_book.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_book_add.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_cascade.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_cascade_auto.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_commentary.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_commentary_add.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_displayconfig.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon_add.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_startconfig.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_swordconfig.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_tile.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-action-bt_tile_auto.png create mode 100644 bibletime/pics/highcolor/32x32/hi32-app-bibletime.png create mode 100644 bibletime/pics/highcolor/48x48/Makefile.am create mode 100644 bibletime/pics/highcolor/48x48/Makefile.in create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_bible.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_bible_add.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_book.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_book_add.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_commentary.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_commentary_add.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_displayconfig.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon_add.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_startconfig.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-action-bt_swordconfig.png create mode 100644 bibletime/pics/highcolor/48x48/hi48-app-bibletime.png create mode 100644 bibletime/pics/highcolor/Makefile.am create mode 100644 bibletime/pics/highcolor/Makefile.in create mode 100644 bibletime/pics/lowcolor/16x16/Makefile.am create mode 100644 bibletime/pics/lowcolor/16x16/Makefile.in create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bible.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bible_locked.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_change.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_export.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_import.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_new.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade_auto.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary_locked.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_folder.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_change.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_new.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_open.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon_locked.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_search.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_tile.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_tile_auto.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-action-bt_verseref.png create mode 100644 bibletime/pics/lowcolor/16x16/lo16-app-bibletime.png create mode 100644 bibletime/pics/lowcolor/22x22/Makefile.am create mode 100644 bibletime/pics/lowcolor/22x22/Makefile.in create mode 100644 bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade.png create mode 100644 bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade_auto.png create mode 100644 bibletime/pics/lowcolor/22x22/lo22-action-bt_tile.png create mode 100644 bibletime/pics/lowcolor/22x22/lo22-action-bt_tile_auto.png create mode 100644 bibletime/pics/lowcolor/32x32/Makefile.am create mode 100644 bibletime/pics/lowcolor/32x32/Makefile.in create mode 100644 bibletime/pics/lowcolor/32x32/lo32-action-bt_tile.png create mode 100644 bibletime/pics/lowcolor/32x32/lo32-action-bt_tile_auto.png create mode 100644 bibletime/pics/lowcolor/32x32/lo32-app-bibletime.png create mode 100644 bibletime/pics/lowcolor/Makefile.am create mode 100644 bibletime/pics/lowcolor/Makefile.in create mode 100644 bibletime/pics/startuplogo.png create mode 100644 bibletime/pics/startuplogo.xcf create mode 100644 bibletime/printing/Makefile.am create mode 100644 bibletime/printing/Makefile.in create mode 100644 bibletime/printing/cprintdialogpages.cpp create mode 100644 bibletime/printing/cprintdialogpages.h create mode 100644 bibletime/printing/cprinter.cpp create mode 100644 bibletime/printing/cprinter.h create mode 100644 bibletime/printing/cprintitem.cpp create mode 100644 bibletime/printing/cprintitem.h create mode 100644 bibletime/printing/cprintitemlist.cpp create mode 100644 bibletime/printing/cprintitemlist.h create mode 100644 bibletime/printing/cstyle.cpp create mode 100644 bibletime/printing/cstyle.h create mode 100644 bibletime/printing/cstyleeditordialog.cpp create mode 100644 bibletime/printing/cstyleeditordialog.h create mode 100644 bibletime/printing/cstylelist.cpp create mode 100644 bibletime/printing/cstylelist.h create mode 100644 bibletime/printing/style-data/Makefile.am create mode 100644 bibletime/printing/style-data/Makefile.in create mode 100644 bibletime/printing/style-data/bw_muchtext.xml create mode 100644 bibletime/printing/style-data/color_muchtext.xml create mode 100644 bibletime/printing/style-data/standard.xml create mode 100644 bibletime/resource.h create mode 100644 bibletime/tooltipdef.h create mode 100644 bibletime/util/Makefile.am create mode 100644 bibletime/util/Makefile.in create mode 100644 bibletime/util/scoped_resource.h create mode 100644 bibletime/whatsthisdef.h create mode 100644 bibletime/xml/Makefile.am create mode 100644 bibletime/xml/Makefile.in create mode 100644 bibletime/xml/bibletimeui.rc create mode 100755 config.guess create mode 100644 config.h create mode 100644 config.h.in create mode 100755 config.sub create mode 100755 configure create mode 100644 configure.in create mode 100644 configure.in.in create mode 100644 debian/bibletime.xpm create mode 100644 debian/changelog create mode 100644 debian/conffiles create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/dirs create mode 100644 debian/docs create mode 100644 debian/menu create mode 100644 debian/override create mode 100755 debian/rules create mode 100644 debian/undocumented create mode 100755 extractrc create mode 100755 libtool create mode 100755 make-messages.sh create mode 100644 packaging-howto.txt create mode 100755 preparetips create mode 100644 stamp-h create mode 100644 stamp-h.in create mode 100644 sword.m4 diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..b7db6eb --- /dev/null +++ b/COPYING @@ -0,0 +1,280 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 675 Mass Ave, Cambridge, MA 02139, 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 diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..b0910e2 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,493 @@ + Joachim Ansorg + * Differences between 1.0 and 1.1: + - Improved interface: + o Better optionsdialog: Better structure, more powerful settings + o Better menu structure: The documentation is now accessible from the Help menu, ... + o Keyaccelerators for each display window type + o much more + - General Book Support (GBS): Books like "Josephus" are supported now. + Operations like bookmarking, printing, copying or saving work just like with + Bibles, commentaries or lexicons. + - Crossreference support + Crossreferences work now. For example you can click now on a strong number to open the + module for it which displayes the chosen number. The same for Bibles, morph tags etc. + Tooltips work for the links, too. + - Improved Unicode support + Unicode encoded modules are now supported in a better way. Choosing the font and + the displaying of the text works better. RTL support and better rendering is still + missing. + - Profile management. Profiles capture the current state of the working area + (opened display windows, scrollbar positions, set keys ...). Profiles can be loaded to + restore the old state and can be saved to store the current state for later. Automatically + restoring the windows after startup is possible, too. + - Better crash management. BibleTime tries now to save settings if a crash occured. Although we + implemented this, we don't know how to make BibleTime crash ;) It's just for your safety. + - Speed improvements. Printing is almost two times faster now. Searching in modules is also faster, + but this was improved in the Sword library by the Sword developers. + - Improved display windows. Independent display settings for each window (footnotes, strongs ...) + - Fullscreen mode of the main application window + - Improved commentary editor: Ask if the text should be saved if the window or BibleTime should be closed + if the changed text was not saved before. + +2001-11-24 Fred Saalbach + * Moved documentation to bibletime-docs - includes .po files, handbook, etc. + * This will reduce the size of the main program and allow more flexibility + for the creation of RPM's. + * Compile time for the main program will also be reduced. + +2001-09-22 Fred Saalbach + * Fixed problem with sgml tag by replacing it with the in the english handbook. + * This only is a problem with systems running kde 2 and document + * text descripter "-//KDE//DTD DocBook V3.1-Based Variant V1.0//EN" + * kdb2html finishes without errors now. + +2001-08-30 Joachim Ansorg + * Added $(DESTDIR) to Makefile.am files + * Solved compilation errors + +2001-08-17 Joachim Ansorg + * Optimizations to CSwordBibleModuleInfo + * Fixed bug in CBibleKeyChooser + * New structure in the optionsdialog + * Key accelerators for each display window type + * Fullscreen button + +2001-07-28 Joachim Ansorg + * The new configure options are cached now (sword lib,includes, distribution name and version, RPM prefix and group) + +2001-07-27 Joachim Ansorg + * Added history box in the HTML dialog widget if history browsing is enabled + +2001-07-16 Joachim Ansorg + * Implemented better configure script. We have now options to link to a static Sword library! + * Added rudimentary support for version checking + +2001-06-20 Joachim Ansorg + * Release BibleTime 1.0! + We're really glad we got it out now! Enjoy! + Sorry for the large delay! + +2001-03-08 Joachim Ansorg + * Released BibleTime 1.0beta1. + +2001-02-17 Joachim Ansorg + * Added QTextEdit, QTextView, and QRichText classes from Qt3 (ported by David Faure) + * Removed the Qt2 classes QTextView, QTextBrowser and the class KTextEdit + +2001-02-13 Joachim Ansorg + * Changed the direction of the spin boxes + and of the scrollbutton in the presenters + * Updated QWorkspace to the one of Qt 2.2.4 + +2001-02-07 Joachim Ansorg + * Fixed bugs in the groupmanager, searchdialog and presenters + +2001-02-04 Joachim Ansorg + * Added new features: + RMB menus in the presenters and in the searchdialog + +2001-02-03 Joachim Ansorg + * Added Makefile system to create and install the handbook + * Fred added his really nice handbook in .docbook format + * Improved printing dialog: Now the styles are saved and restored correctly, needs some tweaking + * Fixed some bugs in the printing system, removed the range specifiers of the printing dialog + +2001-02-02 Joachim Ansorg + * Fixed some bug in CTipWindow + * Fixed some bugs in our copy of QTextView + * Fixed some bug in CStyleEditorDialog + * Fixed some bug in the printing system + * Improved CBiblePresenter and CPrinterDialog + +2001-01-30 Joachim Ansorg + * Updated ToDo + +2001-01-27 Joachim Ansorg + * Fixed the graphical search analysis, it should now work 99% + +2001-01-21 Joachim Ansorg + * Improved the style editor + +2001-01-19 Joachim Ansorg + * Improved the search anaylsis a little bit + +2001-01-18 Joachim Ansorg + * Fixed some bugs in the searchdialog + * The bug with indexed modules and first search is now fixed, + it was an error in Sword + * Fixed some nasty bugs in the Sword backend + * Marking searched words in the key text for multiple words works now 100% + * The last book is now shown in the graphical search analysis + +2001-01-18 Joachim Ansorg + * Changed icon names and updated icon directories + * Included all icons we need + * Improved the BibleTime icons + +2001-01-01 Joachim Ansorg + + A BLESSED NEW YEAR! + + -Added the command line option --debug to enable debug messages + +2000-12-29 Joachim Ansorg + *Changed behaviour if a book, chapter or verse was changed in the Bible-keychooser + +2000-12-29 Joachim Ansorg + * Changed iconname so it will be found + +2000-12-26 Joachim Ansorg + * Improved printing support (correct handling of singals ...) + +2000-12-22 Joachim Ansorg + * Fixed a bug in CGroupmanager: BibleTime does now start without installed modules! + +2000-12-19 Joachim Ansorg + * Some work on the oresenters and keychoosers + * Fixed a small bug in cprintitemlist.cpp + +2000-12-16 Joachim Ansorg + * Fixed the crash in ctipwindow.cpp + +2000-12-08 Joachim Ansorg + * Fixed some printing bugs + * Added QWorkspace of Qt 2.2.2 to our sources, so everybody has the fixed QWorkspace version + +2000-12-05 Jochim Ansorg ~ + * Drag& Drop on presenters works again + * Finished "context sensitive" presenter refreshing + +2000-12-04 Jochim Ansorg + * Fixed this nasty "Default verse color" bug (was a wrong placed readEntry instead of readColorEntry in bibletime.cpp) + * Fixed unifont support, it works no with non-ISO-8859-1 languages and fonts + +2000-12-03 Jochim Ansorg + * Changed the latin1() calls of QString to (const char*) ... local8Bit() + * Changed QTextView a little bit: Do not set contents pos to 0,0 in QTexView::setText(), the result is a fester displaying of the texts + * Changed the optionsdialog to display the language name and not the abbrevation + +2000-11-28 Joachim Ansorg + * You can now switch between different book translations on runtime! + * Improved "context sensitive" presenter refresh (e.g. if footnotes are enabled only presenters with modules having them will be refreshed) + * Fixed some memory leaks. + +2000-11-04 Joachim Ansorg + * Solved some bugs + * Updated ceditwidget.cpp so saving HTML is correct, loading is still incomplete + * Made te frontend a shared lib and moved sources which should be there into frontend + libfrontend is now called libbibletime_frontend.la. + * Made --enable-shared the default options (changed to configure.in.in) + +2000-10-30 Joachim Ansorg + * Added sources and headers of QTextView, QTextBrowser and QRichText + * Added signal wordHighlighted in QTextView + +2000-10-29 Joachim Ansorg + * Removed the toggle toolbar/footnotes/strongs bugs + * Removed the bug Troy found (deletion of the searchresult) + +2000-10-24 Joachim Ansorg + * Removed the old backend and introduced a new, better faster + backend with a new backend + * Fixed some GUI bugs (ported from 0.3) + * Fixed some backend bugs, removed CSwordVerseKey operators + * Added portuguese translation of 0.3's messages, but it's still + useable for 1.0CVS + +--Lots of time passed by + +2000-07-24 Joachim Ansorg + *Released 0.3! A really long time! We hope you like it! + +---Changelog will be continued after final 0.3 + +1999-12-30 Joachim Ansorg + *We should be now ready for 0.22 ;-) + +1999-12-26 Joachim Ansorg + *Removed the commented out #includes + *Updated AUTHORS file + +1999-12-25 Joachim Ansorg + *make now use of getFontList (in global.h) to get the fonts + *Added some ASSERT + *Check it objects are zero in fontmanagement dialog + +1999-12-24 Joachim Ansorg + *BibleTime 0.21 - I hope it's a nice Christmas present ;-) + +1999-12-23 Joachim Ansorg + *Changed some icons in CEditWidget to newer names + +1999-12-22 Birger Langkjer + *Updated danish translation + *Added bibletime/optionsdialog/Makefile.in because this prevented me from compiling the first time. + +1999-12-21 Joachim Ansorg + *The searchresult tab is now disabled if the list is empty + *The moduletree-tabs are disable if the correspondig trees are empty + +1999-12-20 Joachim Ansorg + *The fontmanagement dialog is now grayed out if there's no entry in the list + +1999-12-20 Birger Langkjer + *Updated danish translation + +1999-12-19 Joachim Ansorg + *Fontmanagementdialog uses now a XFonts list, not the list provided by KDE. This solves the problems on + systems without KFontManager + *Added files global.h and global.cpp which should contain global functions + *Fixed some typos in the german translation + +1999-12-18 Joachim Ansorg + *Added Apply-Button in the optionsdialog + +1999-12-17 Joachim Ansorg + *Tried to fix the charset problem in ktipoftheday.cpp + *Updated AUTHORS list + +1999-12-16 Joachim Ansorg + *Updated Michal's Czech translation + +1999-12-15 Joachim Ansorg + *Added Czech language file: Thanks to Michal Rovnan� + +1999-12-12 Joachim Ansorg + *Removed function CNotesEditor::isTextSelected() + *Added possibility to select type of highlighting of text for the notes editor + *Added load and save of current highlighting type + +1999-12-04 Joachim Ansorg + *Convrted the bmp images to jpg + *Bibletime uses now kimgio everywhere + *Added danish translation + +1999-11-27 Joachim Ansorg + *Removed unused images + *BibleTime 0.2 + +1999-11-26 Joachim Ansorg + *Finished the whole german handbook + *Removed the own filters (plainhtml, rwphtml and gbfhtml),use (newer) filters of SWORD version + *You can now select the entries in the bookmark-manager with the upper and lower keys and activate them with RETURN + +1999-11-25 Joachim Ansorg + *Updated ToDo and Readme + *Caption of mainwindow now contains the current chapter and verse + +1999-11-24 Joachim Ansorg + *Made some labels in the printer-optionsdialog bigger to fit french translation + *ResizeEvent in SearchScopeDialog + +1999-11-20 Joachim Ansorg + *Startuplogo is now a PNG, this makes the distribution smaller + *To make this work make use of kimgio + +1999-11-18 Joachim Ansorg + *Finished my part on german handbook + +1999-11-16 Joachim Ansorg + *Worked on translation of handbook to german + *Translated some tips in german tipdatabase + +1999-11-14 Joachim Ansorg + *The searchbuttons and the three radiobuttons are now resized + +1999-11-12 Joachim Ansorg + *Fixed Bug: Now you can paste into the loojupline + +1999-11-10 Joachim Ansorg + *Fixed bug in CDocBrowser on non KDE 1.1.2 systems + +1999-11-07 Joachim Ansorg + *Tidied up kwrite - removed lots of commented code + +1999-11-03 Joachim Ansorg + *Updated authors list + *Thorsten added the new printer dialog - it works now + +1999-11-03 Joachim Ansorg + *Added optimized paint function committed in the KDevelop mailing list by Vladimir Dvorak + Thanks Vladimir! + *Readded the nl.po file - it was lost by some reason + +1999-11-01 Joachim Ansorg + *Updated handbook - Jeff's work is really great! + *You can now use more than 31 tips in a tipdatabase + +1999-10-23 Joachim Ansorg + *Renamed members in BibleTimeView: tTabView to treeTabView and sTabView to browserTabView + We need this because sTabView and tTabView are confusing + *Changed CChartWidget to resize the different graphs to the height of the window + *Changed topPanner to leftPanner in BibleTimeView - this is a better name + *Updated API documentation + *Fixed BUG: Now the recentText part in BibleTimeView is saved correctly again + *Noticed that KDE 1.1.2 has the calcScrollBars bug solved, no we use only our own function in KDE version before 1.1.2 + +1999-10-21 Joachim Ansorg + *Bugfix: Key acelelerators are now saved after changing and restored on new startup + *Updated API documentation + *Updated ktipofday.cpp and ktipofday.h from KDevelop to compile with GCC 2.95 + +1999-10-19 Joachim Ansorg + *Fixed a bug in CDocBrowser: If you lookup some text, the module wasn't highlighted + *Added own submenu for the lookup part in CDocBrowser + +1999-10-18 Joachim Ansorg + *BibleTime needs now the upcoming SWORD 1.45 + +1999-10-17 Joachim Ansorg + *Fixed bug: standard accelerators are now really disabled + +1999-10-16 Joachim Ansorg + *Added Jeff to AUTHORS + *Updated german translation + +1999-10-15 Joachim Ansorg + *Solved a bug in the linkmanager: If you open the dialog and click OK the existing items were deleted + *Added a script to put all i18n() things into the translation template. It called make-messages.sh. It's on the topdir. + *Commented out the first lines of BibleTimeMgr to get BibleTime to compile without modifications of SWORD. + Please uncomment these lines to make use of the PLAINFootnotes option filter. Make the declarations in the header + file to protected on which the compiler complains about. + +1999-10-14 Joachim Ansorg + *Implemented context sensitive enabling and disabling of the edit menu entries + *Updated KWrite sourcen to the newest one shipped with KDevelop + *Added Class CKNewAccel - provides disabling and enabling of accels by reeourceentry like ID_FILE_PRINT + +1999-10-13 Joachim Ansorg + *Added refreshing of the list in CDocBrowser + *BibleTime does not load an empty HTML file + (e.g. when you load a file via a HREf module and the server is unknown -> KFM returns an empty file) + *Improved a little bit the internet support + +1999-10-12 Joachim Ansorg + *Implemented functions in linkmanager. Implemented the link management in CDocBrowser::showURL. + Needs some work: We have to decide if the file is local or remote and downloda it first + or we put a new option in the dialog. + +1999-10-10 Joachim Ansorg + *Added new german index.sgml + *Updated icons. You can now recpgnize what the icons mean + *Added BibleTimeDoc::slotMoveToPreviousVerse() and BibleTimeDoc::slotMoveToNextVerse() + Changed BibleTimeApp uses these functions to jump to the previous / next verse + Added needed pixmaps and keyaccels + +1999-10-09 Joachim Ansorg + *Worked on the handbook + *Added Quickhelp for the widgets in the link management dialog. + +1999-10-08 Joachim Ansorg + *Added some text to the handbook + *Removed the german index.sgml file, because it makes no senss. + We will add this if the english one is ready to translate it into german. + *Cleaned up KListView::addChildItem() + *Finished dialog of the link manager, needs implementation of functions to work + +1999-10-05 Joachim Ansorg + *Added -lz to bibletime/Makefile.am to avoid compilation problems on RedHat 5.2 systems + *Added some needed icons and changed iconnames in the sourcecode + *Solved some spelling errors in the CBugReportDlg and changed some kdevelop to bibletime in the class + *Now you can't print by pressing STRG+P if printing is disabled + +1999-10-03 Joachim Ansorg + *Changed CForeignFontOptions: The fonts are now saved in function saveSettings(), not after changing the font + *Changed OptionsDialog: The different options are displayed in a tree. + *Removed old OptionsDialog + *Created new subdirectory optionsdialog. We will need it for later development + +1999-10-01 Joachim Ansorg + *Changed some QColor (QRGB ...) to (QColor) (QRGB ...) to solve compilation problems on Debian. + +1999-09-29 Joachim Ansorg + *font auto-switching works now + *Changed the line to edit the fontname to a combobox + +1999-09-29 Joachim Ansorg + *Implemented more features of font-auto-switching, needs still work + +1999-09-28 Joachim Ansorg + *Implemented simple switching between fonts - will work on it + *Implemented signal BibleTimeDoc::sigSetBibleFont(const QString) + Implemented slot BibleTimeView::slotSetBibleFont(const QString) + These signal and the slot will be used in the near future for switching of fonts. + *Connected the signal and the slot in BibleTimeApp::initView + +1999-09-25 Joachim Ansorg + *On print the printerdialog is shown before the QT-dilaog. But printing + doesn't work at the moment. + We have to implement the slot slotPrint() of CPrinterDialog to make it work. + *Changes in cnoteseditor.cpp the #define BUTTON_BAR_HEIGHT to an abosolut value. + Solves a problem with the height of the editor. + *Updated the startuplogo. It's now much more nice as the previous version. + *Integrated the startuplogo in the aboutdialog. It's now displayed in the upper left corner of the box. + *The class KStartupLogo looks now for the size of the startuplogo and resize the widget in the right way if the size have changed. + *CDocBrowserColor: Made some hardcoded texts to i18n("") + +1999-09-19 Joachim Ansorg + *Reorganized the icons: + There are now two directories: pics and toolbar. pics contains the directory mini/ + which contains the mini icons. Mini icons are named with a trailing mini-. + The directory toolbar contains the icons which are only used in the toolbar. + This should be the new standard we use. + +1999-09-19 Joachim Ansorg + *Changed names and install paths of some icon + *Added some needed icons we forgot + *Added function BibleTimeApp::slotHelpContents(): calls the online help + *Solved: Changes of the key accelerators doesn't change the + accels in the menus + *rendered Footnotes are now displayed in dark red, too + *Cleaned up DCocBrowser + +1999-09-18 Joachim Ansorg + *Optimized a little bit the paintText function of CChartWidget + +1999-09-17 Joachim Ansorg + *Changed a little bit the GBFHTML filter: + Anotations are now displayed in dark red + *Decided to use use the PLAINHTML filter as standard + If no filter is specified in the .conf file of the module we use + now the PLAINHTML filter. Perhaps we need to change this + +1999-09-16 Joachim Ansorg + *Fixed this stupid bug related to the crash while searching the web bible + +1999-09-14 Joachim Ansorg + *Change the GBFHTML filter a little bit + It displays now the word explained in a footnote formatted as bold + +1999-09-14 Joachim Ansorg + *Updated program version to 0.2 + +1999-09-12 Joachim Ansorg + *Added some tips to the tipdatabase + *Added class KStartupLogo to display a picture on startup + +1999-09-10 Joachim Ansorg + *Rewrite of the Searchanalysis, it's now up to 63 times faster + *Text in the CChartWidget is now painted rotated (90) + +1999-09-05 Joachim Ansorg + *Added analysis of searchresults -> needs still some work + *updated de.po translation errors + *updated homepage + +1999-09-04 Joachim Ansorg + *created sub folders: gfx and printing + *Added CPrinterDialog of KHexedit 0.81 -> isn't used at the moment + +1999-09-02 Joachim Ansorg + *Added classes for searchanalysis and a ChartWidget + *Updated configure.in - it checks now for headers and the SWORD lib in two steps + +1999-08-30 Joachim Ansorg + *Changed and corrected some GUI errors + +1999-08-29 Joachim Ansorg + *Decided to update this Changelog frequently + *Changed the notesEditor to a non-tabbar look + *New class CNotesEditor + +1999-08-27 Joachim Ansorg + *First public release of BibleTime: Version 0.1 diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..6f9b1ca --- /dev/null +++ b/INSTALL @@ -0,0 +1,207 @@ +Additions for BibleTime 1.1: +--------------------------- + +These are instructions how to install BibleTime 1.1. +It's sometimes a little bit tricky to get Bibletime and SWORD working, but +it's possible. + +BibleTime 1.1 requires: + -QT 2.2.x or later + -KDE 2.2.x (at least the libraries and the base package) + -SWORD 1.5.3 + +If you don't have the sources already please browse to www.bibletime.de to see +a list of required packages with their download URLs. + +Compile BibleTime 1.1: +---------------------------- + +export QTDIR= +export KDEDIR= +export PATH=$KDEDIR/bin:$PATH +make -f Makefile.cvs +./configure # create makefiles +make # compile BibleTime +make install # install BibleTime + +If something is missing in this file please post to jansorg@gmx.de, my peronal +eMail adress. +Please read README for a short description of BibleTime 1.1. The new handbook +does contain better instructions how to install BibleTime from sources. +It has more information about BibleTime's features and installation. + +Joachim + + +______________________________________________________________________________ +** The standard Installation instructions of auto-tool packages ** +------------------------------------------------------------------------------ + + +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, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + 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 at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' 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 a while. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Type `make install' to install the programs and any data files and + documentation. + + 4. You can remove the program binaries and object files from the + source code directory by typing `make clean'. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +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 supports 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' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + 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' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +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 host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +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. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/INSTALL.in b/INSTALL.in new file mode 100644 index 0000000..4daa114 --- /dev/null +++ b/INSTALL.in @@ -0,0 +1,207 @@ +Additions for BibleTime @VERSION@: +--------------------------- + +These are instructions how to install BibleTime @VERSION@. +It's sometimes a little bit tricky to get Bibletime and SWORD working, but +it's possible. + +BibleTime @VERSION@ requires: + -QT 2.2.x or later + -KDE 2.2.x (at least the libraries and the base package) + -SWORD 1.5.3 + +If you don't have the sources already please browse to www.bibletime.de to see +a list of required packages with their download URLs. + +Compile BibleTime @VERSION@: +---------------------------- + +export QTDIR= +export KDEDIR= +export PATH=$KDEDIR/bin:$PATH +make -f Makefile.cvs +./configure # create makefiles +make # compile BibleTime +make install # install BibleTime + +If something is missing in this file please post to jansorg@gmx.de, my peronal +eMail adress. +Please read README for a short description of BibleTime @VERSION@. The new handbook +does contain better instructions how to install BibleTime from sources. +It has more information about BibleTime's features and installation. + +Joachim + + +______________________________________________________________________________ +** The standard Installation instructions of auto-tool packages ** +------------------------------------------------------------------------------ + + +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, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + 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 at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' 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 a while. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Type `make install' to install the programs and any data files and + documentation. + + 4. You can remove the program binaries and object files from the + source code directory by typing `make clean'. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +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 supports 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' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + 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' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +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 host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +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. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..6acd225 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,41 @@ +SUBDIRS = bibletime admin . + +EXTRA_DIST = \ +bibletime.kdevprj \ +COPYING \ +ChangeLog \ +bibletime.spec.in bibletime.spec \ +README.in README \ +TODO.in TODO \ +INSTALL.in INSTALL\ +bibletime.lsm.in bibletime.lsm \ +configure.in.in configure.in \ +bibletime.desktop.in bibletime.desktop \ +NEWS.in NEWS \ +Makefile.cvs \ +bibletime.m4 sword.m4 + +# not a GNU package. You can remove this line, if +# have all needed files, that a GNU package needs +AUTOMAKE_OPTIONS = foreign + +datadir = $(kde_appsdir)/Applications +data_DATA = bibletime.desktop + +$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in sword.m4 bibletime.m4 + @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in sword.m4 bibletime.m4 > acinclude.m4 +$(top_srcdir)/configure.in: $(top_srcdir)/configure.files $(shell test -f $(top_srcdir)/configure.files && cat $(top_srcdir)/configure.files) + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in +$(top_srcdir)/subdirs: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs +$(top_srcdir)/configure.files: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.files + +install-data-local: + chmod 755 $(DESTDIR)$(kde_datadir)/bibletime -R + +MAINTAINERCLEANFILES = configure.files subdirs + +dist-hook: + cd $(distdir) && make -f Makefile.cvs + diff --git a/Makefile.cvs b/Makefile.cvs new file mode 100644 index 0000000..030b140 --- /dev/null +++ b/Makefile.cvs @@ -0,0 +1,15 @@ + +all: + @echo "This Makefile is only for the CVS repository" + @echo "This will be deleted before making the distribution" + @echo "" + @if test ! -d admin; then \ + echo "Please recheckout this module!" ;\ + echo "for cvs: use checkout once and after that update again" ;\ + echo "for cvsup: checkout kde-common from cvsup and" ;\ + echo " link kde-common/admin to ./admin" ;\ + exit 1 ;\ + fi + $(MAKE) -f admin/Makefile.common cvs + +.SILENT: diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..f6c6092 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,614 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = . + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = bibletime admin . + +EXTRA_DIST = bibletime.kdevprj COPYING ChangeLog bibletime.spec.in bibletime.spec README.in README TODO.in TODO INSTALL.in INSTALL bibletime.lsm.in bibletime.lsm configure.in.in configure.in bibletime.desktop.in bibletime.desktop NEWS.in NEWS Makefile.cvs bibletime.m4 sword.m4 + + +# not a GNU package. You can remove this line, if +# have all needed files, that a GNU package needs +AUTOMAKE_OPTIONS = foreign + +datadir = $(kde_appsdir)/Applications +data_DATA = bibletime.desktop + +MAINTAINERCLEANFILES = configure.files subdirs +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = NEWS README INSTALL TODO bibletime.lsm \ +bibletime.spec bibletime.desktop +DATA = $(data_DATA) + +DIST_COMMON = README ./stamp-h.in COPYING ChangeLog INSTALL INSTALL.in \ +Makefile.am Makefile.in NEWS NEWS.in README.in TODO TODO.in \ +acinclude.m4 aclocal.m4 bibletime.desktop.in bibletime.lsm.in \ +bibletime.spec.in config.guess config.h.in config.sub configure \ +configure.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=bibletime.kdevses bibletime.start extractrc make-messages.sh packaging-howto.txt preparetips + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile + cd $(top_srcdir) && perl admin/am_edit Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4 + cd $(srcdir) && $(ACLOCAL) + +config.status: $(srcdir)/configure.in $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +config.h: stamp-h + @if test ! -f $@; then \ + rm -f stamp-h; \ + $(MAKE) stamp-h; \ + else :; fi +stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES= CONFIG_HEADERS=config.h \ + $(SHELL) ./config.status + @echo timestamp > stamp-h 2> /dev/null +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/stamp-h.in + @if test ! -f $@; then \ + rm -f $(srcdir)/stamp-h.in; \ + $(MAKE) $(srcdir)/stamp-h.in; \ + else :; fi +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null + +mostlyclean-hdr: + +clean-hdr: + +distclean-hdr: + -rm -f config.h + +maintainer-clean-hdr: +NEWS: $(top_builddir)/config.status NEWS.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +README: $(top_builddir)/config.status README.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +INSTALL: $(top_builddir)/config.status INSTALL.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +TODO: $(top_builddir)/config.status TODO.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +bibletime.lsm: $(top_builddir)/config.status bibletime.lsm.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +bibletime.spec: $(top_builddir)/config.status bibletime.spec.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +bibletime.desktop: $(top_builddir)/config.status bibletime.desktop.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +install-dataDATA: $(data_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(datadir) + @list='$(data_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(datadir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(datadir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(datadir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(datadir)/$$p; \ + fi; fi; \ + done + +uninstall-dataDATA: + @$(NORMAL_UNINSTALL) + list='$(data_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(datadir)/$$p; \ + 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(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 + -rm -rf $(distdir) + GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) dist + -rm -rf $(distdir) + @banner="$(distdir).tar.gz is ready for distribution"; \ + dashes=`echo "$$banner" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + echo "$$dashes" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +distdir: $(DISTFILES) + -rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign ./Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +all-recursive-am: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: install-dataDATA install-data-local +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: uninstall-dataDATA +uninstall: uninstall-recursive +all-am: Makefile $(DATA) config.h +all-redirect: all-recursive-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(datadir) + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) +mostlyclean-am: mostlyclean-hdr mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-hdr clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-hdr distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + -rm -f config.status + +maintainer-clean-am: maintainer-clean-hdr maintainer-clean-tags \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + -rm -f config.status + +.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ +uninstall-dataDATA install-dataDATA install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \ +install-exec-am install-exec install-data-local install-data-am \ +install-data install-am install uninstall-am uninstall all-redirect \ +all-am all installdirs-am installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in sword.m4 bibletime.m4 + @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in sword.m4 bibletime.m4 > acinclude.m4 +$(top_srcdir)/configure.in: $(top_srcdir)/configure.files $(shell test -f $(top_srcdir)/configure.files && cat $(top_srcdir)/configure.files) + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in +$(top_srcdir)/subdirs: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs +$(top_srcdir)/configure.files: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.files + +install-data-local: + chmod 755 $(DESTDIR)$(kde_datadir)/bibletime -R + +dist-hook: + cd $(distdir) && make -f Makefile.cvs + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile + cd $(top_srcdir) && perl admin/am_edit Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..c5a7988 --- /dev/null +++ b/NEWS @@ -0,0 +1,39 @@ +2001-06-20 + Today we released BibleTime 1.0! It comparision with 1.0beta1 is has much more and better translations of documentation and the messages + and a lot of bugs were fixed. + BibleTime 1.0 is now stable and powerful enough to use it in your daily work with the Bible. + +2001-04-08 + Today we released the first beta release of BibleTime 1.0! + 1.0beta1 contains much improvements in comparision with version 0.31. + Major changes are: + -Better user interface in the display windows, search dialog and main index + -More functions like printing, improved search functions and small improvents all over the place + -Parallel display of Bibles, commentaries and lexicons in the display windows. Easy to use interface to hadnle the displayed modules + -improved documentation + -Much more we can't remember... ;) + + If you find bugs, typos or other problems in this beta release please report them on www.bibletime.de (->Bugreport)! + We're glad for your help! + +2000-07-23 + Today we release the final version of BibleTime 0.3. + 0.3 in comparision with 0.3beta1 contains lots of bug fixes and small improvements. + Major changes: + -Full functional groupmanager (saving the position of modules, reset groupmanager, improved import-/ + export- functions) + -Better highlighting algorithm in the groupmanager (faster and nicer) + -Better Drag&Drop: The drag&drop does look now much more nice than before. Thanks go to Martin! + -Improved graphical search analysis: It does now contain a labelled y-axis so you know how much + items were found. + -Complete french, german and italian translations! + -The handbook is available in German and English + -Helpdialog files are available in German and English + +2000-06-29 + Today we released the first beta version of BibleTime 0.3. It's called BibleTime 0.3beta1. + BibleTime 0.3 is complete rewrite, we have a much better structure now so it's easy to extend + it in the future. + Please read the file README and INSTALL for instructions how to build the stuff. + The final version of 0.3 will probably be released in two weeks if no bug bugs occur. + Thanks! diff --git a/NEWS.in b/NEWS.in new file mode 100644 index 0000000..c5a7988 --- /dev/null +++ b/NEWS.in @@ -0,0 +1,39 @@ +2001-06-20 + Today we released BibleTime 1.0! It comparision with 1.0beta1 is has much more and better translations of documentation and the messages + and a lot of bugs were fixed. + BibleTime 1.0 is now stable and powerful enough to use it in your daily work with the Bible. + +2001-04-08 + Today we released the first beta release of BibleTime 1.0! + 1.0beta1 contains much improvements in comparision with version 0.31. + Major changes are: + -Better user interface in the display windows, search dialog and main index + -More functions like printing, improved search functions and small improvents all over the place + -Parallel display of Bibles, commentaries and lexicons in the display windows. Easy to use interface to hadnle the displayed modules + -improved documentation + -Much more we can't remember... ;) + + If you find bugs, typos or other problems in this beta release please report them on www.bibletime.de (->Bugreport)! + We're glad for your help! + +2000-07-23 + Today we release the final version of BibleTime 0.3. + 0.3 in comparision with 0.3beta1 contains lots of bug fixes and small improvements. + Major changes: + -Full functional groupmanager (saving the position of modules, reset groupmanager, improved import-/ + export- functions) + -Better highlighting algorithm in the groupmanager (faster and nicer) + -Better Drag&Drop: The drag&drop does look now much more nice than before. Thanks go to Martin! + -Improved graphical search analysis: It does now contain a labelled y-axis so you know how much + items were found. + -Complete french, german and italian translations! + -The handbook is available in German and English + -Helpdialog files are available in German and English + +2000-06-29 + Today we released the first beta version of BibleTime 0.3. It's called BibleTime 0.3beta1. + BibleTime 0.3 is complete rewrite, we have a much better structure now so it's easy to extend + it in the future. + Please read the file README and INSTALL for instructions how to build the stuff. + The final version of 0.3 will probably be released in two weeks if no bug bugs occur. + Thanks! diff --git a/README b/README new file mode 100644 index 0000000..ea4aa9f --- /dev/null +++ b/README @@ -0,0 +1,48 @@ +In this file: +------------- + * General introduction + * Requirements + * Documentation + * The Sword CD + +General introduction: +-------------------- + This is BibleTime 1.1 for KDE 2.2.x. +If you find bugs please report them to info@bibletime.de or use our +online bugreport form on www.bibletime.de. + +Please do also send suggestions, criticism and moral support to info@bibletime.de . +If you have too much money send it to one of the authors ;-) + +Read the file INSTALL how to install and compile this version of BibleTime. +The AUTHORS file contains a list of authors working on BibleTime. +There's also a SPEC file to create RPMs, it's called bibletime.spec. + +This README file contains some very useful instructions and tips how to use BibleTime. +Please read also the new handbook, it contains many instructions about the usage and +installation of BibleTime. + +And sorry for all the spelling errors (grammatical and syntax). + +Requirements +------------ + o QT 2.2x or later + o KDE 2.x + o SWORD 1.5.3 + +Documentation: +-------------- + We do have a great and really useful handbook now! +Fred did a great job with it and worked long on it. We hope that you like it. You can read the handbook in the +help browser of KDE2. It's in the Applications section. + +The Sword CD: +------------- +The team of BibleTime distribute the SWORD CD in Europe. +If you live in Europe and want to get one or more CDs please have a look at www.bibletime.de. +If you don't live in Europe please have a look at www.crosswire.org. + + +Thank you! +Joachim + diff --git a/README.in b/README.in new file mode 100644 index 0000000..4716784 --- /dev/null +++ b/README.in @@ -0,0 +1,48 @@ +In this file: +------------- + * General introduction + * Requirements + * Documentation + * The Sword CD + +General introduction: +-------------------- + This is BibleTime @VERSION@ for KDE 2.2.x. +If you find bugs please report them to info@bibletime.de or use our +online bugreport form on www.bibletime.de. + +Please do also send suggestions, criticism and moral support to info@bibletime.de . +If you have too much money send it to one of the authors ;-) + +Read the file INSTALL how to install and compile this version of BibleTime. +The AUTHORS file contains a list of authors working on BibleTime. +There's also a SPEC file to create RPMs, it's called bibletime.spec. + +This README file contains some very useful instructions and tips how to use BibleTime. +Please read also the new handbook, it contains many instructions about the usage and +installation of BibleTime. + +And sorry for all the spelling errors (grammatical and syntax). + +Requirements +------------ + o QT 2.2x or later + o KDE 2.x + o SWORD 1.5.3 + +Documentation: +-------------- + We do have a great and really useful handbook now! +Fred did a great job with it and worked long on it. We hope that you like it. You can read the handbook in the +help browser of KDE2. It's in the Applications section. + +The Sword CD: +------------- +The team of BibleTime distribute the SWORD CD in Europe. +If you live in Europe and want to get one or more CDs please have a look at www.bibletime.de. +If you don't live in Europe please have a look at www.crosswire.org. + + +Thank you! +Joachim + diff --git a/TODO b/TODO new file mode 100644 index 0000000..500ab9f --- /dev/null +++ b/TODO @@ -0,0 +1,34 @@ +ToDo file for BibleTime 1.1 + +Help wanted +----------- + +We do especially need developers, but there are also other jobs like +documentation writing, translating, artwork etc. +For further information, see www.bibletime.de +and www.sourceforge.net/projects/bibletime. + +Important unimplemented things: +------------------------------- + -searchdialog + o Better interface so it's more easy to use (thanks to Dre for the suggestions) + o perhaps RegExp edit widget (later) + -Installmanager + -Morphological analysis (maybe in 2.0 :) + +Things which should be optimized: +--------------------------------- + [partly] Search for mem leaks + [partly] Optmize memory usage + [partly] Check BibleTime with a profiler and optimize the time consuming functions + +Features we are thinking about: +------------------------------ + -Commandline options: Implement commandline options to control BibleTime + (e.g. open presenters, lookup verses and exit, import bookmarks and exit etc. ) + + +For a more up-to-date list of task please have a look at www.sourceforge.net/projects/bibletime/! + + +Thank you! \ No newline at end of file diff --git a/TODO.in b/TODO.in new file mode 100644 index 0000000..373aa0a --- /dev/null +++ b/TODO.in @@ -0,0 +1,34 @@ +ToDo file for BibleTime @VERSION@ + +Help wanted +----------- + +We do especially need developers, but there are also other jobs like +documentation writing, translating, artwork etc. +For further information, see www.bibletime.de +and www.sourceforge.net/projects/bibletime. + +Important unimplemented things: +------------------------------- + -searchdialog + o Better interface so it's more easy to use (thanks to Dre for the suggestions) + o perhaps RegExp edit widget (later) + -Installmanager + -Morphological analysis (maybe in 2.0 :) + +Things which should be optimized: +--------------------------------- + [partly] Search for mem leaks + [partly] Optmize memory usage + [partly] Check BibleTime with a profiler and optimize the time consuming functions + +Features we are thinking about: +------------------------------ + -Commandline options: Implement commandline options to control BibleTime + (e.g. open presenters, lookup verses and exit, import bookmarks and exit etc. ) + + +For a more up-to-date list of task please have a look at www.sourceforge.net/projects/bibletime/! + + +Thank you! \ No newline at end of file diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000..c5aafd7 --- /dev/null +++ b/acinclude.m4 @@ -0,0 +1,5330 @@ +## -*- autoconf -*- + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) +## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 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 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. + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) +## -*- autoconf -*- +dnl This file was created by Joachim Ansorg +dnl It provides macord for the autoconf package to find the Sword library on your system. + +dnl ---------------------------------------------------------------------- +dnl Check wheter to use static linking +dnl first parameter is the required version +dnl second is whether to use static sword library +dnl ---------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_SWORD, +[ +dnl AC_MSG_CHECKING([for a Sword installation]) + +dnl The option for the configure script +AC_ARG_WITH(sword-dir, +[ --with-sword-dir=DIR Patch where Sword is being installed (default=/usr) ], +[ + ac_sword_dir=$withval +],ac_sword_dir=/usr +) + +AC_ARG_ENABLE(static-sword, +[ --enable-static-sword Link to the static Sword library], + ac_static_sword="YES", + [ ac_static_sword="$2" ] +) + +dnl try to find Sword library files +AC_MSG_CHECKING([for Sword library files]) +AC_REQUIRE([AC_FIND_ZLIB]) +ac_sword_library_dirs="$ac_sword_dir/lib /usr/lib /usr/lib/sword /usr/local/lib /usr/local/lib/sword /usr/local/sword/lib" + +if test "$ac_static_sword" = "YES"; then + SEARCH_LIBS="libsword.a"; +else + SEARCH_LIBS="libsword.a libsword.so"; +fi + + +AC_CACHE_VAL(ac_cv_sword_libdir, AC_FIND_FILE($SEARCH_LIBS, $ac_sword_library_dirs, ac_cv_sword_libdir)) + +if test "$ac_cv_sword_libdir" = "NO"; then + AC_MSG_ERROR(SWORD library not found. Try to use configure with --with-sword-dir=/your/SWORD/path!); +fi + +if test "$ac_static_sword" = "YES"; then + LIB_SWORD="$ac_cv_sword_libdir/libsword.a"; +else + LIB_SWORD="-lsword"; +fi + +AC_SUBST(SWORD_LIBRARY_PATH) +AC_SUBST(LIB_SWORD) +all_libraries="$all_libraries -L$ac_cv_sword_libdir" + +if test "$ac_static_sword" = "YES"; then + MESSAGE="static library $ac_cv_sword_libdir/libsword.a"; +else + MESSAGE="$ac_cv_sword_libdir"; +fi +AC_MSG_RESULT([$MESSAGE]) + + + +dnl -- try to find Swords include files -- +AC_MSG_CHECKING([for Sword include files]) +ac_sword_include_dirs="$ac_sword_dir/include/sword $ac_sword_dir/include /usr/include/sword /usr/include /usr/local/include/sword /usr/local/include /usr/local/sword/include /usr/local/sword/include/sword" + +AC_CACHE_VAL(ac_cv_sword_incdir, AC_FIND_FILE(swmgr.h, $ac_sword_include_dirs, ac_cv_sword_incdir)) + +if test "$ac_cv_sword_incdir" = "NO"; then + AC_MSG_ERROR([The Sword include file files were not found. +Please try to use configure with --with-sword-dir=/your/SWORD/path ! +]) +fi + +SWORD_INCLUDES="-I$ac_cv_sword_incdir" +AC_SUBST(SWORD_INCLUDES) +all_includes="$all_includes -I$ac_cv_sword_incdir" + +AC_MSG_RESULT([$ac_cv_sword_incdir]) + + + +dnl -- check if Sword matches the minimum version -- +AC_MSG_CHECKING([if you have Sword $1 or later]) + +AC_CACHE_VAL(ac_cv_installed_sword_version, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$" +LDFLAGS="$LDFLAGS -L$ac_cv_sword_libdir" +LIBS="$LIB_SWORD -lz" +LD_LIBRARY_PATH="$ac_cv_sword_libdir" +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + +cat > conftest.$ac_ext < +#include + +int main(int argc, char* argv[]) { + if (argc != 2) { + cout << SWVersion::currentVersion << endl; + } + else if (argc == 2) + { + if (SWVersion(&argv[[1]]) < SWVersion::currentVersion || SWVersion(&argv[[1]]) == SWVersion::currentVersion) + { + cout << 0 << endl; + return 0; + } + else + { + cout << 1 << endl; + return 1; //version not recent enough + } + } + return 0; +} +EOF + +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +if AC_TRY_EVAL(ac_link) && test -s conftest; then + if test -x conftest; then + eval ac_cv_installed_sword_version=`./conftest 2>&5` + eval sword_test_returncode=`./conftest $1 2>&5`; + fi +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +right_version="ok"; +if test $sword_test_returncode = 1; then + right_version="wrong version"; +fi; + +AC_MSG_RESULT([$ac_cv_installed_sword_version]) +if test $right_version != "ok"; then + AC_MSG_ERROR([Your Sword installation is not recent enoought! Please +upgrade to version $1!]); +fi; + +]) +## -*- autoconf -*- + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..89fc4f8 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,5465 @@ +dnl aclocal.m4 generated automatically by aclocal 1.4-p4 + +dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. + + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) +dnl This file was created by Joachim Ansorg +dnl It provides macord for the autoconf package to find the Sword library on your system. + +dnl ---------------------------------------------------------------------- +dnl Check wheter to use static linking +dnl first parameter is the required version +dnl second is whether to use static sword library +dnl ---------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_SWORD, +[ +dnl AC_MSG_CHECKING([for a Sword installation]) + +dnl The option for the configure script +AC_ARG_WITH(sword-dir, +[ --with-sword-dir=DIR Patch where Sword is being installed (default=/usr) ], +[ + ac_sword_dir=$withval +],ac_sword_dir=/usr +) + +AC_ARG_ENABLE(static-sword, +[ --enable-static-sword Link to the static Sword library], + ac_static_sword="YES", + [ ac_static_sword="$2" ] +) + +dnl try to find Sword library files +AC_MSG_CHECKING([for Sword library files]) +AC_REQUIRE([AC_FIND_ZLIB]) +ac_sword_library_dirs="$ac_sword_dir/lib /usr/lib /usr/lib/sword /usr/local/lib /usr/local/lib/sword /usr/local/sword/lib" + +if test "$ac_static_sword" = "YES"; then + SEARCH_LIBS="libsword.a"; +else + SEARCH_LIBS="libsword.a libsword.so"; +fi + + +AC_CACHE_VAL(ac_cv_sword_libdir, AC_FIND_FILE($SEARCH_LIBS, $ac_sword_library_dirs, ac_cv_sword_libdir)) + +if test "$ac_cv_sword_libdir" = "NO"; then + AC_MSG_ERROR(SWORD library not found. Try to use configure with --with-sword-dir=/your/SWORD/path!); +fi + +if test "$ac_static_sword" = "YES"; then + LIB_SWORD="$ac_cv_sword_libdir/libsword.a"; +else + LIB_SWORD="-lsword"; +fi + +AC_SUBST(SWORD_LIBRARY_PATH) +AC_SUBST(LIB_SWORD) +all_libraries="$all_libraries -L$ac_cv_sword_libdir" + +if test "$ac_static_sword" = "YES"; then + MESSAGE="static library $ac_cv_sword_libdir/libsword.a"; +else + MESSAGE="$ac_cv_sword_libdir"; +fi +AC_MSG_RESULT([$MESSAGE]) + + + +dnl -- try to find Swords include files -- +AC_MSG_CHECKING([for Sword include files]) +ac_sword_include_dirs="$ac_sword_dir/include/sword $ac_sword_dir/include /usr/include/sword /usr/include /usr/local/include/sword /usr/local/include /usr/local/sword/include /usr/local/sword/include/sword" + +AC_CACHE_VAL(ac_cv_sword_incdir, AC_FIND_FILE(swmgr.h, $ac_sword_include_dirs, ac_cv_sword_incdir)) + +if test "$ac_cv_sword_incdir" = "NO"; then + AC_MSG_ERROR([The Sword include file files were not found. +Please try to use configure with --with-sword-dir=/your/SWORD/path ! +]) +fi + +SWORD_INCLUDES="-I$ac_cv_sword_incdir" +AC_SUBST(SWORD_INCLUDES) +all_includes="$all_includes -I$ac_cv_sword_incdir" + +AC_MSG_RESULT([$ac_cv_sword_incdir]) + + + +dnl -- check if Sword matches the minimum version -- +AC_MSG_CHECKING([if you have Sword $1 or later]) + +AC_CACHE_VAL(ac_cv_installed_sword_version, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$" +LDFLAGS="$LDFLAGS -L$ac_cv_sword_libdir" +LIBS="$LIB_SWORD -lz" +LD_LIBRARY_PATH="$ac_cv_sword_libdir" +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + +cat > conftest.$ac_ext < +#include + +int main(int argc, char* argv[]) { + if (argc != 2) { + cout << SWVersion::currentVersion << endl; + } + else if (argc == 2) + { + if (SWVersion(&argv[[1]]) < SWVersion::currentVersion || SWVersion(&argv[[1]]) == SWVersion::currentVersion) + { + cout << 0 << endl; + return 0; + } + else + { + cout << 1 << endl; + return 1; //version not recent enough + } + } + return 0; +} +EOF + +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +if AC_TRY_EVAL(ac_link) && test -s conftest; then + if test -x conftest; then + eval ac_cv_installed_sword_version=`./conftest 2>&5` + eval sword_test_returncode=`./conftest $1 2>&5`; + fi +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +right_version="ok"; +if test $sword_test_returncode = 1; then + right_version="wrong version"; +fi; + +AC_MSG_RESULT([$ac_cv_installed_sword_version]) +if test $right_version != "ok"; then + AC_MSG_ERROR([Your Sword installation is not recent enoought! Please +upgrade to version $1!]); +fi; + +]) + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + + +# Do all the work for Automake. 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. + +# serial 1 + +dnl Usage: +dnl AM_INIT_AUTOMAKE(package,version, [no-define]) + +AC_DEFUN(AM_INIT_AUTOMAKE, +[AC_REQUIRE([AC_PROG_INSTALL]) +PACKAGE=[$1] +AC_SUBST(PACKAGE) +VERSION=[$2] +AC_SUBST(VERSION) +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 +ifelse([$3],, +AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) +AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) +AC_REQUIRE([AM_SANITY_CHECK]) +AC_REQUIRE([AC_ARG_PROGRAM]) +dnl FIXME This is truly gross. +missing_dir=`cd $ac_aux_dir && pwd` +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) +AC_REQUIRE([AC_PROG_MAKE_SET])]) + +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# 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 conftestfile 2> /dev/null` + if test "[$]*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "[$]*" != "X $srcdir/configure conftestfile" \ + && test "[$]*" != "X conftestfile $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" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Like AC_CONFIG_HEADER, but automatically create stamp file. + +AC_DEFUN(AM_CONFIG_HEADER, +[AC_PREREQ([2.12]) +AC_CONFIG_HEADER([$1]) +dnl When config.status generates a header, we must update the stamp-h file. +dnl This file resides in the same directory as the config header +dnl that is generated. We must strip everything past the first ":", +dnl and everything past the last "/". +AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl +ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, +<>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, +<>; do + case " <<$>>CONFIG_HEADERS " in + *" <<$>>am_file "*<<)>> + echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx + ;; + esac + am_indx=`expr "<<$>>am_indx" + 1` +done<<>>dnl>>) +changequote([,]))]) + +# Add --enable-maintainer-mode option to configure. +# From Jim Meyering + +# serial 1 + +AC_DEFUN(AM_MAINTAINER_MODE, +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) + dnl maintainer-mode is disabled by default + AC_ARG_ENABLE(maintainer-mode, +[ --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + USE_MAINTAINER_MODE=$enableval, + USE_MAINTAINER_MODE=no) + AC_MSG_RESULT($USE_MAINTAINER_MODE) + AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) + MAINT=$MAINTAINER_MODE_TRUE + AC_SUBST(MAINT)dnl +] +) + +# Define a conditional. + +AC_DEFUN(AM_CONDITIONAL, +[AC_SUBST($1_TRUE) +AC_SUBST($1_FALSE) +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi]) + diff --git a/admin/ChangeLog b/admin/ChangeLog new file mode 100644 index 0000000..20e979b --- /dev/null +++ b/admin/ChangeLog @@ -0,0 +1,748 @@ +2000-11-30 David Faure + + * acinclude.m4.in: Added kde_moduledir which points to $prefix/lib/kde2/ + +2000-07-24 Alex Zepeda + + * acinclude.m4.in: Remove the test for malloc.h + +2000-04-05 Michael Matz + + * config.pl : added kludge for compiling regexp's even if + perl < 5.005 is installed + * conf.change.pl : added support for autoconf 2.14.1 + +2000-03-27 David Faure + + * acinclude.m4.in, Makefile.common: changed inst-apps semantics + If present, only the subdirs it lists will be configured and compiled. + If absent, then subdirs is used (and inst-apps isn't generated anymore) + +2000-03-22 David Faure + + * am_edit: Added support for KDE_ICON = AUTO + +2000-03-18 David Faure + + * Makefile.common: Rewrote the list-of-Makefiles generation to make it + simpler and nicer, using create_makefiles' way of doing it. + Added support for COMPILE_LAST and COMPILE_FIRST in toplevel Makefile.am + +2000-01-05 David Faure + + * Makefile.common: hacked around autoconf bug (setting INSTALL to ".." + when calling a subconfigure and INSTALL is already set). + +1999-12-15 Waldo Bastian + + * acinclude.m4.in: Test whether Qt compiles AND LINKS without flags. + +1999-06-24 Stephan Kulow + + * am_edit: generate correct Makefile entries for kde-i18n toplevel directories + * am_edit: + +1999-06-14 Stephan Kulow + + * am_edit: remove idl generated files on make clean + +1999-06-09 Stephan Kulow + + * am_edit: skipping programs with variables in sources for final + +1999-06-07 Stephan Kulow + + * am_edit: added support for idl files + +1999-06-02 Stephan Kulow + + * Makefile.common: preserve comments in .pot files to make it + possible for programmers and translators to comment them + +1999-06-02 Simon Hausmann + + * acinclude.m4.in: added kde_servicetypesdir + +1999-06-02 David Faure + + * acinclude.m4.in: removed LIB_KFM and LIB_KDEUTIL aliases + +1999-05-28 Simon Hausmann + + * acinclude.m4.in: added kde_servicesdir + +1999-05-27 Stephan Kulow + + * am_edit: lots of changes for better support of --enable-final + +1999-05-22 Stephan Kulow + + * acinclude.m4.in: added support for --with-dmalloc + +1999-05-19 Stephan Kulow + + * acinclude.m4.in: added support for --enable-final + + * am_edit: added support for --enable-final + +1999-05-06 Stephan Kulow + + * acinclude.m4.in: change the meaning of --disable-debug + +1999-05-04 Helge Deller + + * acinclude.m4.in: the test for the X-includes/directories failed, + when compile & link work without special directories (as on HP-UX). + +1999-04-20 Stephan Kulow + + * am_edit: adding DESTDIR replacement for rm and uninstall-local + too. Seems very useless, but makes testing for uninstall easier + +1999-04-01 David Faure + + * acinclude.m4.in: Added -lkfile to $(LIB_KIO) + +1999-03-30 David Faure + + * acinclude.m4.in: Added AC_CHECK_KDEMAXPATHLEN, which defines KDEMAXPATHLEN. + +1999-03-29 David Faure + + * acinclude.m4.in: added LIB_X11 to XPMLIB and GLLIB, because + on SCO, they need it _after_ themselves. + +1999-03-28 David Faure + + * acinclude.m4.in: added LIB_KFM to LIB_KAB alias + +1999-03-26 David Faure + + * acinclude.m4.in: made LIB_KFILE use LIB_KIO instead of LIB_KFM + added LIB_KFORMULA + +1999-03-20 Stephan Kulow + + * acinclude.m4.in: check for libXext - for Russel :) + +1999-03-16 Stephan Kulow + + * acinclud3.m4.in: extend the MICO test with a list of possible + places where to find CORBA.h + +1999-03-15 Stephan Kulow + + * acinclude.m4.in: move $QTINC and $QTLIB in search path + +1999-03-14 Stephan Kulow + + * am_edit: install-root is obsolute. Use DESTDIR always + +1999-03-03 Stephan Kulow + + * acinclude.m4.in: fixing a bug, that $QTDIR was taken before --with-qt* + * acinclude.m4.in: added KDE_USE_QT, that you can choose if to + use QT 2.0 or KDE 1.0 + + * Makefile.common: added target package-merge + + * am_edit: many fixes to the POFILES handeling of am_edit + +1999-03-02 Stephan Kulow + + * acinclude.m4.in: first look at libjpeg6b (from kdesupport) then + for libjpeg + + * config.*, libtool.*: update to the latest FSF tools + +1999-02-23 Stephan Kulow + + * acinclude.m4.in: error when Sparc CC is used. Better use it in + configure and tell him the story then letting him find it while + compiling + + * acinclude.m4.in: adding KDE_CHECK_EXTRA_LIBS to all possible tests, + so that --with-extra-includes is used when needed. + + * acinclude.m4.in: configure looks for giflib30, so it should say so + + * acinclude.m4.in: don't overwrite x include parameters. Patch by + Ari Lemmke (bug report 741) + +1999-02-20 Stephan Kulow + + * acinclude.m4.in: fixing KDE_CHECK_PATHS for rechecking. In case + of defaults (kdelibs) configure didn't cache the results + +1999-02-18 David Faure + + * acinclude.m4.in: added AC_CHECK_S_ISSOCK, to fix #706. + +1999-02-17 David Faure + + * acinclude.m4.in: added AC_CHECK_RANDOM, just like + AC_CHECK_USLEEP, to enable the fake if necessary. + +1999-02-13 Kurt Granroth + + * acinclude.m4.in: look for QT-2.0 + +1999-02-05 Stephan Kulow + + * acinclude.m4.in: in macro KDE_FIND_PATH treat user given dirs + and $PATH dirs the same. Added seperate test for to find binary + ($5) to replace findperl + +1999-01-28 Stephan Kulow + + * automoc: added patch by jbb to be a little bit more precise about + the number of sourcefiles that include the moc file if it's != 1. + Besides that automoc will fail with exit code, so the Makefile.cvs + process does stop in case a problem accoured. + + * automoc: don't hardcode header suffix, but allow *.h, *.hh and *.H + +1999-01-27 Stephan Kulow + + * acinclude.m4.in: try qobjcoll.h and qapplication.h before saying + OK to qt headers. (I could kill SuSE for splitting into qt-dev + and qt-compat) + +1991-01-23 Stephan Kulow + + * automoc: added fixes by JB + +1999-01-21 Stephan Kulow + + * automoc: added --help and --path (for use in dist-hook) + +1999-01-20 Alex Zepeda + + * ltconfig: added entries for FreeBSD 4.x + +1999-01-19 Stephan Kulow + + * automoc: added a distclean-metasources target which deletes all + moc files and let distclean depend on it + +1999-01-18 Stephan Kulow + + * automoc: several fixes (ignore comment lines + join lines + with \ ) + + * automoc: support META_INCLUDES in case the header files are + not in the same dir as the sources. + +1999-01-17 Stephan Kulow + + * automoc: several fixes. + +1999-01-16 Stephan Kulow + + * automoc: added support for included MOC files. + + * acinclude.m4.in: use srcdir for the subdirs stuff as well + + * automoc: added better command line parsing and some preparation + for handling "normal" moc files + + * acinclude.m4.in: added aliases for libkio and libkdeutil + +1999-01-15 Harri Porten + + * automoc: Carved in stone syntax for Makefile.in: + {program}_METASOURCES = USE_AUTOMOC [{suffix}] + +1999-01-15 Stephan Kulow + + * Makefile.common: set top_srcdir to . + +1999-01-14 Stephan Kulow + + * acinclude.m4.in: don't use config.h.bot any longer + +1999-01-08 Stephan Kulow + + * acinclude.m4.in: added KDE_CHECK_NEWLIBS + + * acinclude.m4.in: test for Qt even if both --with-qt-headers and + --with-qt-libraries are given. They may be wrong. + +1999-01-06 Stephan Kulow + + * acinclude.m4.in: change the MOC test so it can be used for other + tools as well + +1998-12-28 Stephan Kulow + + * acinclude.m4.in: look for QT-1.42 since kpanel needs it + +1998-12-27 Stephan Kulow + + * acinclude.m4.in: added /usr/lib for libpython test + + * acinclude.m4.in: take my email address out of it and added a + reference to www.kde.org/faq + + * acinclude.m4.in: use Qt >= 1.4 + + * acinclude.m4.in: added KDE_CHECK_NAMESPACES + +1998-12-18 Stephan Kulow + + * acinclude.m4.in: test for directories to exist before saying yes + to compilation :) + +1998-12-14 Stephan Kulow + + * acinclude.m4.in: added CPLUSPLUS for the kimgio test. It's + only important for shaman right now, but at least there it is :) + +1998-12-12 Stephan Kulow + + * Makefile.cvs: added common Makefile.cvs + + * acinclude.m4.in: Thomas.Schwarz@pro-sieben.de reported a very ugly + bug in AC_PROG_CXXCPP, so I added my own version + + * acinclude.m4.in: added KDE_CREATE_SUBDIRS_LIST to simplify + most toplevel configures + +1998-12-11 Stephan Kulow + + * acinclude.m4.in: added call to AC_PROG_CXXCPP. Not really sure why + it never caused problems + + * acinclude.m4.in: moved LIBTIFF alias + + * acinclude.m4.in: only test for the existance of libkimgio if the + user wants to. For 99% of the applications it doesn't matter if + configure can find libkimgio :) + +1998-12-10 Stephan Kulow + + * acinclude.m4.in: some changes to the python check to handle $LIBDL + +1998-12-09 Stephan Kulow + + * acinclude.m4.in: make Alex's tiff test a real one + + * acinclude.m4.in: fix the LIB_TIFF alias to really expand + +1998-12-08 Alex Zepeda + + * acinclude.m4.in: Fix tiff test to use libtiff34 if it exists. + This is what the FreeBSD port installs to for whatever reason. + + * acinclude.m4.in: s/kde/KDE/ (at least in some of the + descriptions, obviously no variable names were touched. + +1998-12-08 Stephan Kulow + + * acinclude.m4.in: moved the LIB_QT alias to the Qt check + + * acinclude.m4.in: unset KDEDIR before running conftest + + * acinclude.m4.in: fixed mean typo + + * acinclude.m4.in: added the copyright header for the gettext + tests, so that people know we're legal ;) + + * acinclude.m4.in: set language to C++ before testing QIMGIO + +1998-12-07 Alex Zepeda + + * acinclude.m4.in: Fix PNG test to use correct ANSI C code, and + not trip up gcc. + +1998-12-07 Stephan Kulow + + * acinclude.m4.in: don't hardcode -ldl + + * acinclude.m4.in: move the LIB_X11 alias to the X test to make it + useful for kdesupport as well + + * acinclude.m4.in: give the word CHECK_KIMGIO a meaning in really + checking for it + + * acinclude.m4.in: simple fix to prevent kimgio test from compiling + KDE application in kdelibs + +1998-12-05 Stephan Kulow + + * acinclude.m4.in: let KDE_CHECK_KIMGIO depend on AC_PATH_KDE, + otherwise most tests fail. It didn't mean anything to 90% of the + packages since they test for KDE before kimgio, but for shaman + it does + + * ltconfig: the real fix for the Solaris && gcc problem. + Thanks Kurt for reporting it and Alexandre for fixing it :) + +1998-12-04 Stephan Kulow + + * libtool.*: update again + + * acinclude.m4.in: changed the function to test for libnsl to + inet_ntoa since UnixWare 7's version did not have gethostbyname, + but needs libnsl + +1998-12-02 Stephan Kulow + + * acinclude.m4.in: fixed the MOC test (again) to use the PATH variable + correctly (with the correct seperator) + + * config.guess: update from the soon to be released autoconf-2.13 + +1998-12-01 Stephan Kulow + + * acinclude.m4.in: fixes for the MOC test. Use PATH now when found + +1998-11-30 Stephan Kulow + + * acinclude.m4.in: extended the MOC test. It checks now for the + first line of the output of "moc --help" and looks for Qt in it. + +1998-11-27 Stephan Kulow + + * ltconfig: another libtool update. Fixes an ugly bug on Solaris, + when GNU ld is in path before Solaris ld, but gcc uses the later + +1998-11-26 Stephan Kulow + + * acinclude.m4.in: made the Qt test more advance to check for qt + 1.41 - I still need to make it better, but there shouldn't be too + many qt releases in a row, would there? ;) + + * ltconfig: libtool update with better BSD/OS support + +1998-11-22 Stephan Kulow + + * ltconfig: cool - libtool uses g++ now to link libraries on Solaris. + This means, static objects become usuable on that plattforms (some + others as well). + +1998-11-20 Stephan Kulow + + * ltmain.sh: updated libtool from their CVS - fixes bugs we haven't + found and adds some more features, that we do not need ;-) + +1998-11-19 David Faure + + * acinclude.m4.in: added AC_CHECK_UTMP_FILE, taken from kdebase + +1998-11-16 Harri Porten + + * automoc: take care of "ar" object files, too. + +1998-11-16 Stephan Kulow + + * libtool.m4.in: revised my --silent patch. The solution + Alexandre suggested is much better. + +1998-11-15 Stephan Kulow + + * ltconfig.in: done some tweakings to support -export-dynamic + with egcs + + * config.sub: wow - BeOS support :) + +1998-11-14 Stephan Kulow + + * acinclude.m4.in: don't use rpath for test program, if rpath is + disabled for applications + + * ltconfig: patched libtool to make it silent without making + ltconfig silent + + * acinclude.m4.in: make libtool silent again + + * libtool.m4.in: update to libtool-981114 (untested stuff, but + we have to test it to make it tested - sounds that logical? :-) + + * libtool.m4.in: moved the self stricked libtool tests to "our" + file. + + * acinclude.m4.in: moved ChangeLog of kdebase which I used to + maintain acinclude.m4.in logs to kde-common/admin. Hopefully I + will maintain it more often from now on :) + +1998-07-27 Stephan Kulow + + * acinclude.m4.in: fixed some things in the MOC test + + * acinclude.m4.in: fixed this damn msgfmt test + +1998-06-02 Stephan Kulow + + * acinclude.m4.in: ignore msgfmt, if not GNU gettext + +1998-05-28 Stephan Kulow + + * acinclude.m4.in: fixed KDE_CHECK_STL. Checks for HP and SGI type + + * acinclude.m4.in: embraced every variable with "" to make + it consistent + + * acinclude.m4.in: various fixes for the koffice checks + (mico, ministl and python) + +1998-05-16 Stephan Kulow + + * acinclude.m4.in: don't use KDE_CHECK_QT_DIRECT, when + --with-qt-libs are given + +1998-04-21 Stephan Kulow + + * acinclude.m4.in: cool, I found the trick to suppress the ls + errors + +1998-04-20 Stephan Kulow + + * acinclude.m4.in: rewrote the qt checking test, since it + didn't work under FreeBSD, since it relied on the .so link. + The new version is a little bit buggy, but I need some testing + to make it perfect + + * acinclude.m4.in: fixed the side effects of the PAM test + +1998-04-18 Stephan Kulow + + * acinclude.m4.in: hopefully fixed the PAM test (I rewrote it) + +1998-04-16 Stephan Kulow + + * acinclude.m4.in: extended the getsockname test inspired + by a patch by Martin Baulig + + * configure.in: added test for utmp file + + * acinclude.m4.in: made --without-pam default + + +1998-04-06 Stephan Kulow + + * acinclude.m4.in: don't test compiling, linking, running in + one step. This proved to be too dangerous for my mail box. + +1998-03-21 Stephan Kulow + + * libtool.m4.in: created some new macros to work around this + ugly (because long) help of configure --enable-shared/static + +1998-03-05 Stephan Kulow + + * acinclude.m4.in: set language to C++ before trying the ksize_t + test + + * configure.in: sorted the Makefile entries alphabeticly (and all + together: we love xemacs! we love xemacs! ;) + + * configure.in: added sk + + * acinclude.m4.in: substitute x_libraries to fix the empty -rpath + +1998-03-03 Stephan Kulow + + * acinclude.m4.in: add a rpath for every shared library, that is + linked too (especially X11 libraries) + +Tue Feb 24 22:04:59 1998 Stephan Kulow + + * acinclude.m4.in: added kde_sounddir and set kde_minidir to + kde_icondir/mini to break not too much + +Sun Feb 15 18:25:50 1998 Stephan Kulow + + * configure.in: added bugfix by Bob Miller + (correct reset of IFS) + +Wed Feb 11 00:53:11 1998 Stephan Kulow + + * configure.in: made shadow under Linux default, since the + binaries will work also under non-shadow systems. The only problem + left is PAM, so I disabled shadow in case, PAM is present + +Tue Feb 10 16:46:32 1998 Stephan Kulow + + * configure.in: added test for nice to find out, if the option + -nice works for the screensavers + + * acinclude.m4.in: port to LynxOS. For this I moved all library + search routines in KDE_MISC_TESTS, so I don't need to write this + in every package + + * README: some grammar fixes + + * acinclude.m4.in: search for the libs in the exec_prefix, when + it's present + +Sun Feb 8 14:07:23 1998 Stephan Kulow + + * acinclude.m4.in: updated all packages + + * libtool.m4.in: applied patch for libtool.m4.in to show the + correct default for shared and static + + +Sat Feb 7 10:56:00 1998 Stephan Kulow + + * configure.in: good news - KDE is relocatable again. + + * libtool.m4.in: updated to latest libtool 1.0i + +Fri Feb 6 21:26:51 1998 Stephan Kulow + + * acinclude.m4.in: added a AC_PROVIDE for AC_PROG_CC and + AC_PROG_CPP to KDE_CHECK_COMPILERS + +Thu Feb 5 16:27:47 1998 Stephan Kulow + + * acinclude.m4.in: put $QTDIR/bin before /usr/bin in the path to + look for moc. I don't know why, but I got a report, that configure + found /usr/bin/moc under Solaris + +Fri Jan 30 15:47:50 1998 Stephan Kulow + + * acinclude.m4.in: export LIBRARY_PATH after reset to the saved + value + + * acinclude.m4.in: unset the LIBRARY_PATH to get a relieable + result when trying to find, if Qt compiles without -L + +Sat Jan 24 00:45:52 1998 Stephan Kulow + + * acinclude.m4.in: fixed another bug in AC_PATH_KDE + +Thu Jan 22 14:46:15 1998 Stephan Kulow + + * configure.in: fixed an ugly bug in AC_BASE_PATH_KDE + + * kappfinder/kappfinder.in: let kappfinder create by configure to + allow the use of the kde_ paths + +Wed Jan 21 22:19:35 1998 Stephan Kulow + + * acinclude.m4.in: - added a install_root prefix to all paths, if + set, to enable package managers to move the whole installation at once + - added --with-install-root to set the install_root prefix + +Tue Jan 20 22:41:04 1998 Stephan Kulow + + * configure.in: added NOOPT_CXXFLAGS to allow kioslave to be + compiled without -O2 + +Mon Jan 19 21:55:21 1998 Stephan Kulow + + * configure.in: some little fixes for the Makefiles + + * acinclude.m4.in: --prefix will no longer override the search for + libraries. If they are present somewhere, they are used (through + the methodes in KApplication) + +Mon Jan 12 00:30:36 1998 Stephan Kulow + + * acinclude.m4.in fixed an ugly bug, that accoured, when + qt_libraries is not set (empty/equals X11/not necessary) + + * acinclude.m4.in moved the remove of the files after the error + detection + + +Sun Jan 11 17:27:53 1998 Stephan Kulow + + * acinclude.m4.in added a new macro KDE_CHECK_QT_DIRECT to unset + the Qt library path, if a Qt program compiles without them + + * acinclude.m4.in added a return value in the CREATE_KFSSTND + macro. Perhaps this has caused the problems + +Sat Jan 10 17:40:44 1998 Stephan Kulow + + * ChangeLog started to maintain a ChangeLog file again + * acinclude.m4.in the AC_CREATE_KFSSTND to get better debug output + to find the problem + + +Old logs, Stephan Kulow made: + +0.1 : first steps with libkde +0.2 : first release with libkde, khtmlw, kdehelp, acli, kwm, kpanel +0.3 : added kfm and bugfixes +0.4 : updated khtmlw, kdehelp, kwm, changed install in all subdirs +0.5 : support libtool (chooseable shared libs) +0.6 : split libkde in kdecore and kdeui +0.6.1 : Bugfixes +0.7 : added code from Janos Farkas (configure) + : added @{kde,qt}_{includes,libraries}@ +0.7.1: Bugfixes +0.7.2: Bugfixes +0.7.3: added @all_includes@ and @all_libraries@ + replaced all incompatible flags like $(CC) and -DHAVE_UNISTD_H +0.7.4: changed support for libkde (back in it's own) + added kpat + updated kpanel, kwm, kghostview +0.8: removed a bug in kghostview + lifted installation process of several apps + splitt kdebase into kdelibs and kdeapps + updated khtmlw, kfm and kdehelp + added kcalc and kpaint + updated kdisplay + added kscreensaver + added --enable-kscreensaver + added --enable-debug (and @CXXFLAGS@ to all Makefile.ins) + updated kwm to 0.4.7 + added make uninstall to every app + added kvt + added khexdit + added .kdelnk for kmines, kedit, ktetris + put kwm, kfind's .kdelnk in the right directories + replaced --enable-kscreensaver by --disable-kscreensaver + updated kpanel to 0.15 + some bugfixes (thanks Marco) + some bugfixes (thanks Martin) + changed acinclude.m4, because aclocal won't + updated kwm to 0.4.8 (patched it again for Qt-1.2) + updated kvt to 0.13 (patch from Matthias) + patched kvt and kwm + updated kwm to 0.5.0 + updated kvt for 0.14 (again and again :-) + updated kview to 0.10 + updated kfm to 0.6.3 + patched kscreensaver for FreeBSD (thanks Marc) +0.9: updated kdisplay to 0.5.3 + added klogout + patches from Matthias + updated kfm to 0.6.4 + updated kghostview to 0.4 + added QTINC and QTLIB + updated kdehelp to 0.4.11 + patched kfm to support ktoolbar + updated kedit to kedit+ + added kfontmanager 0.2.1 +0.9.1: changed kpaint's make style + bugfixing + updated kmines to 0.6.5 + updated ktetris to 0.2.4 + changed to Makefiles to depend on Makefile.in + changed the Makefiles to let install depend on all + added kjots-0.2.2 + updated kjots-0.2.3 + updated kfm to 0.6.6 + updated kjots-0.2.4 + updated kpaint-0.2 + updated kedit to 0.5 + updated kfontmanager to 0.2.2 + updated kfm to 0.6.7 + updated ktetris to 0.2.5 + updated kjots to 0.2.5 +0.10: added HAVE_SQRTL + added HAVE_CRYPT_H + updated kfind + updated kfm to kfm-0.8.1 + re-introduced automake to kdebase + bugfixes for the configure.in + added XPM, GL and PAM tests to configure + added morph3d to kscreensavers + updated kfind to 0.3.2 + added some patches for SGI +... lost the time to maintain a Changelog ;) diff --git a/admin/Makefile.am b/admin/Makefile.am new file mode 100644 index 0000000..1023a46 --- /dev/null +++ b/admin/Makefile.am @@ -0,0 +1,2 @@ +EXTRA_DIST=ChangeLog Makefile.common acinclude.m4.in am_edit am_edit.py conf.change.pl config.guess config.pl config.sub configure.in.min debianrules depcomp install-sh libtool.m4.in ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing mkinstalldirs ylwrap + diff --git a/admin/Makefile.common b/admin/Makefile.common new file mode 100644 index 0000000..beec064 --- /dev/null +++ b/admin/Makefile.common @@ -0,0 +1,295 @@ + +SHELL=/bin/sh + +cvs: + @if grep '$$(top_srcdir)/acinclude.m4:' Makefile.am >/dev/null; then \ + echo "*** Creating acinclude.m4" ;\ + rm -f acinclude.m4 configure.files ;\ + $(MAKE) -f Makefile.am top_srcdir=. acinclude.m4 ;\ + fi + @echo "!!! If you get recursion errors from autoconf, it is advisable to set the" + @echo " environment variable M4 to something including \"--nesting-limit=500\"" + @if test -r configure.in.in; then \ + rm -f subdirs configure.in ;\ + echo "*** Creating list of subdirectories" ;\ + $(MAKE) -f Makefile.am top_srcdir=. subdirs ;\ + echo "*** Creating configure.in" ;\ + $(MAKE) -f Makefile.am top_srcdir=. configure.in ;\ + fi + @echo "*** Creating aclocal.m4" + @aclocal + @echo "*** Creating configure" + @autoconf + @if test -r configure.in.in ; then \ + perl -pi -e 'print "if test \"x\$$with_fast_perl\" = \"xyes\" ;\ + then\n perl -i.bak \$$ac_aux_dir/conf.change.pl \$$CONFIG_STATUS\ + || mv \$$CONFIG_STATUS.bak \$$CONFIG_STATUS;\ + \n rm -f \$$CONFIG_STATUS.bak;\nfi\ + \n" if /^\s*chmod\s+.*\+x\s+.*CONFIG_STATUS/;' configure ;\ + fi + @if grep '} \$$ac_kw foo' configure >/dev/null 2>&1; then perl -p -i -e "s/ac_kw foo/ac_kw int foo/" configure; fi +#David's hack for autoconf bug when $INSTALL is set + @perl -pi -e 'if (/\[\/\$$\]\*. INSTALL=/) { print $$_ ; $$_ = "\"\") ;;\n"; }' configure + @if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then \ + echo "*** Creating config.h template" ;\ + autoheader ;\ + fi + @echo "*** Creating Makefile templates" + @automake + @echo "*** Postprocessing Makefile templates" + @perl admin/am_edit + @if egrep "^cvs-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-local ;\ + fi + @echo "*** Creating date/time stamp" + @touch stamp-h.in + @echo "*** Finished" + @echo " Don't forget to run ./configure" + @echo " If you haven't done so in a while, run ./configure --help" + +dist: + @if grep -e '$$(top_srcdir)/acinclude.m4:' Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am top_srcdir=. acinclude.m4 ;\ + fi + @if test -r configure.in.in; then \ + $(MAKE) -f Makefile.am top_srcdir=. subdirs configure.in; \ + fi ;\ + aclocal; \ + autoheader; \ + automake --foreign --include-deps; \ + perl admin/am_edit; \ + autoconf; \ + if test -r configure.in.in ; then \ + perl -pi -e 'print "if test \"x\$$with_fast_perl\" = \"xyes\" ;\ + then\n perl -i.bak \$$ac_aux_dir/conf.change.pl \$$CONFIG_STATUS\ + || mv \$$CONFIG_STATUS.bak \$$CONFIG_STATUS;\ + \n rm -f \$$CONFIG_STATUS.bak;\nfi\ + \n" if /^\s*chmod\s+.*\+x\s+.*CONFIG_STATUS/;' configure ;\ + fi ;\ + touch stamp-h.in; \ + if grep -e "^cvs-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-local ;\ + fi ;\ + if grep "ac_kw foo" configure >/dev/null 2>&1; then perl -p -i -e "s/ac_kw foo/ac_kw int foo/" configure; fi ;\ + if test -d po; then \ + LIST=`find ./po -name "*.po"`; \ + for i in $$LIST; do \ + file2=`echo $$i | sed -e "s#\.po#\.gmo#"`; \ + msgfmt -o $$file2 $$i || touch $$file2; \ + done ;\ + fi + @if grep -e "^cvs-dist-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-dist-local ;\ + fi + +cvs-clean: + @if test ! -d CVS; then \ + echo "You don't have a toplevel CVS directory."; \ + echo "You most certainly didn't use cvs to get these sources."; \ + echo "But this function depends on cvs's information."; \ + exit 1 ;\ + fi;\ + pwd=`pwd` ;\ + dirs=`find . -type d | grep -v CVS | sed -e "s#^./##"` ;\ + for i in $$dirs; do \ + if test ! -d "$$pwd/$$i/CVS"; then \ + echo "D $$i" ;\ + rm -rf "$$pwd/$$i"; \ + continue; \ + fi ;\ + cd $$pwd/$$i ;\ + for f in * .*; do \ + if test ! -d "$$f"; then \ + if grep "^/$$f/" CVS/Entries > /dev/null; then \ + a="b"; \ + else \ + echo "F $$i/$$f"; \ + rm -f "$$pwd/$$i/$$f"; \ + fi; \ + fi ; \ + done; \ + done + + +# The Makefiles have to be sorted for slashes, since configure creates +# only one directory per Makefile not the whole hierarchy +configure.in: configure.files $(shell test -f configure.files && cat configure.files) subdirs + @rm -f configure.in configure.in.new ;\ + cat `cat configure.files | egrep -v "^configure.in.bot"` >> configure.in.new ;\ + echo "KDE_CREATE_SUBDIRSLIST" >> configure.in.new ;\ + echo "AC_OUTPUT( \\" >> configure.in.new ;\ + mfs=`find . -type d -print | fgrep -v "/." | sed -e "s#\./##" -e "/^debian/d" | sort`; \ + for i in $$mfs; do \ + topleveldir=`echo $$i| sed -e "s#/.*##"`; \ + if test -f $$topleveldir/configure.in; then \ + continue; \ + fi ;\ + if test ! -f $$i/Makefile.am; then \ + continue; \ + fi ;\ + if test -s inst-apps; then \ + if test -z "`grep \"^$$topleveldir\" inst-apps`"; then \ + continue; \ + fi ;\ + fi ;\ + echo "$$i/Makefile \\" >> configure.in.new ;\ + done ;\ + egrep '^dnl AC_OUTPUT\(.*\)' `cat configure.files` | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1 \\\\#" >> configure.in.new ;\ + echo ")" >> configure.in.new + @modulename= ;\ + if test -f configure.in.in; then \ + if head -2 configure.in.in | egrep "^#MIN_CONFIG$$" > /dev/null; then \ + line=`egrep "^AM_INIT_AUTOMAKE\(" configure.in.in` ;\ + if test -n "$$line"; then \ + modulename=`echo $$line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"` ;\ + VERSION=`echo $$line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"` ;\ + fi ;\ + sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" configure.in.new > configure.in \ + && mv configure.in configure.in.new ;\ + fi ;\ + fi ;\ + if test -z "$$modulename" || test "$$modulename" = "@MODULENAME@"; then \ + modulename=`pwd`; modulename=`basename $$modulename`; \ + fi ;\ + if test -z "$$VERSION" || test "$$VERSION" = "@VERSION@"; then \ + VERSION="\"2.2.1\""; \ + fi ;\ + sed -e "s#@MODULENAME@#$$modulename#" configure.in.new | \ + sed -e "s#@VERSION@#$$VERSION#" > configure.in + @if test -f configure.in.bot ; then cat configure.in.bot >> configure.in ; fi + @rm -f configure.in.new + +configure.files: subdirs + @admindir=NO ;\ + for i in . .. ../.. ../../..; do \ + if test -x $$i/admin; then admindir=$$i/admin; break; fi; \ + done ;\ + rm -rf configure.files ;\ + if test -f configure.in.in && head -2 configure.in.in | egrep "^#MIN_CONFIG$$" > /dev/null; then \ + echo $$admindir/configure.in.min >> configure.files ;\ + fi + @test -f configure.in.in && echo configure.in.in >> configure.files + @list=`find . -name "configure.in.in" | sort`; \ + for i in $$list; do if test -f $$i && test ! `dirname $$i` = "." ; then \ + echo $$i >> configure.files ;\ + fi; done + @if test -f configure.in.mid ; then echo configure.in.mid >> configure.files ; fi + @if test -f configure.in.bot ; then echo configure.in.bot >> configure.files ; fi + +subdirs: + @files=`ls -1 | sort`; \ + dirs= ;\ + lib_dirs= ;\ + first_dirs= ;\ + last_dirs= ;\ + compilefirst=`grep '^COMPILE_FIRST[ ]*=' Makefile.am | \ + sed -e 's#^COMPILE_FIRST[ ]*=[ ]*#|#' | sed -e 's#$$#|#' | sed -e 's# #|#g'`;\ + compilelast=`grep '^COMPILE_LAST[ ]*=' Makefile.am | \ + sed -e 's#^COMPILE_LAST[ ]*=[ ]*#|#' | sed -e 's#$$#|#' | sed -e 's# #|#g'`;\ + for i in $$files; do if test -d $$i; then \ + if test -f $$i/Makefile.am; then \ + if echo $$compilefirst | grep "|$$i|" >/dev/null; then \ + first_dirs="$$first_dirs $$i" ;\ + elif echo $$compilelast | grep "|$$i|" >/dev/null; then \ + last_dirs="$$last_dirs $$i" ; \ + else dirs="$$dirs $$i" ;\ + fi ;\ + fi ;\ + fi; \ + done ;\ + rm -f SUBDIRS ;\ + for i in $$dirs; do \ + echo $$i >> ./SUBDIRS; \ + done + @if test -r subdirs && diff subdirs SUBDIRS > /dev/null; then \ + rm -f SUBDIRS; \ + fi + @test -r SUBDIRS && mv SUBDIRS subdirs || true + +package-merge: + @catalogs='$(POFILES)'; \ + for cat in $$catalogs; do \ + echo $$cat $$name; \ + msgmerge -o $$cat.new $$cat $(PACKAGE).pot ; \ + if test -s $$cat.new; then \ + grep -v "\"POT-Creation" $$cat.new > $$cat.new.2 ; \ + grep -v "\"POT-Creation" $$cat >> $$cat.new.1; \ + if diff $$cat.new.1 $$cat.new.2; then \ + rm $$cat.new; \ + else \ + mv $$cat.new $$cat ; \ + fi; \ + rm -f $$cat.new.1 $$cat.new.2 ;\ + fi ;\ + done + + +package-messages: + @rm -rf po.backup ;\ + mkdir po.backup ;\ + for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do \ + egrep -v '^#([^:]|$)' po/$$i | egrep '^.*[^ ]+.*$$' | grep -v "\"POT-Creation" > po.backup/$$i ; \ + cp po/$$i po.backup/backup_$$i ; \ + touch -r po/$$i po.backup/backup_$$i ;\ + rm po/$$i ;\ + done + @podir=$${podir:-$$PWD/po} ;\ + files=`find . -name Makefile.am | xargs egrep -l '^messages:' `; \ + dirs=`for i in $$files; do echo \`dirname $$i\`; done`; \ + tmpname="$$PWD/messages.log" ;\ + if test -z "$$EXTRACTRC"; then EXTRACTRC=extractrc ; fi ;\ + if test -z "$$PREPARETIPS"; then PREPARETIPS=preparetips ; fi ;\ + export EXTRACTRC PREPARETIPS ;\ + for subdir in $$dirs; do \ + test -z "$$VERBOSE" || echo "Making messages in $$subdir"; \ + (cd $$subdir ;\ + if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then \ + $$EXTRACTRC *.rc *.ui > rc.cpp ;\ + else \ + candidates=`ls -1 *.rc *.ui 2>/dev/null` ;\ + if test -n "$$candidates"; then \ + echo "$$subdir has *.rc or *.ui files, but not correct messages line" ;\ + fi ;\ + fi ;\ + if test -n "`grep -r KAboutData *.c* *.C* 2>/dev/null`"; then \ + echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp ;\ + else echo " " > _translatorinfo.cpp ;\ + fi; \ + perl -e '$$mes=0; while () { if (/^messages:/) { $$mes=1; print $$_; next; } if ($$mes) { if (/$$\\(XGETTEXT\)/ && / -o/) { s/ -o \$$\(podir\)/ _translatorinfo.cpp -o \$$\(podir\)/ } print $$_; } else { print $$_; } }' < Makefile.am > _transMakefile ;\ + $(MAKE) -s -f _transMakefile podir=$$podir EXTRACTRC="$$EXTRACTRC" PREPARETIPS="$$PREPARETIPS" \ + XGETTEXT="$${XGETTEXT:-xgettext} -C -ki18n \ + -kI18N_NOOP -ktranslate -kaliasLocale \ + -x $${includedir:-$$KDEDIR/include}/kde.pot" \ + messages ) >$$tmpname 2>&1 ;\ + test -s $$tmpname && (echo $$subdir ; cat $$tmpname) ;\ + test ! -f $$subdir/rc.cpp || rm -f $$subdir/rc.cpp ;\ + rm -f $$subdir/_translatorinfo.cpp ;\ + rm -f $$subdir/_transMakefile ;\ + done + rm -f $$tmpname + @for i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do \ + if test ! -f po/$$i; then echo "disappeared: $$i"; fi ;\ + done + @for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do \ + egrep -v '^#([^:]|$)' po/$$i | egrep '^.*[^ ]+.*$$' | grep -v "\"POT-Creation" > temp.pot ;\ + if test -f po.backup/$$i && test -n "`diff temp.pot po.backup/$$i`"; then \ + echo "will update $$i"; \ + msgmerge -q po.backup/backup_$$i po/$$i > temp.pot ;\ + mv temp.pot po/$$i; \ + else \ + if test -f po.backup/backup_$$i; then \ + test -z "$$VERBOSE" || echo "I'm restoring $$i" ;\ + mv po.backup/backup_$$i po/$$i; \ + rm po.backup/$$i; \ + else \ + echo "will add $$i" ;\ + fi ;\ + fi ;\ + done + @rm -f temp.pot + @rm -rf po.backup + +test: + perl -e '$$mes=0; while () { if (/^messages:/) { $$mes=1; print $$_; next; } if ($$mes) { if (! /^\t/) { exit(0); } if (/$$\\(XGETTEXT\)/ && / -o/) { s/ -o/ _translatorinfo.cpp -o/ } print $$_; } }' < Makefile.am + +.SILENT: diff --git a/admin/Makefile.in b/admin/Makefile.in new file mode 100644 index 0000000..a1453a2 --- /dev/null +++ b/admin/Makefile.in @@ -0,0 +1,362 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = ChangeLog Makefile.common acinclude.m4.in am_edit am_edit.py conf.change.pl config.guess config.pl config.sub configure.in.min debianrules depcomp install-sh libtool.m4.in ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing mkinstalldirs ylwrap +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = ChangeLog Makefile.am Makefile.in config.guess config.sub \ +install-sh ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing \ +mkinstalldirs ylwrap + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile + cd $(top_srcdir) && perl admin/am_edit admin/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = admin + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu admin/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile + cd $(top_srcdir) && perl admin/am_edit admin/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/admin/acinclude.m4.in b/admin/acinclude.m4.in new file mode 100644 index 0000000..7823796 --- /dev/null +++ b/admin/acinclude.m4.in @@ -0,0 +1,4141 @@ +## -*- autoconf -*- + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) diff --git a/admin/am_edit b/admin/am_edit new file mode 100644 index 0000000..514f22a --- /dev/null +++ b/admin/am_edit @@ -0,0 +1,1937 @@ +#!/usr/bin/perl + +# Expands the specialised KDE tags in Makefile.in to (hopefully) valid +# make syntax. +# When called without file parameters, we work recursively on all Makefile.in +# in and below the current subdirectory. When called with file parameters, +# only those Makefile.in are changed. +# The currently supported tags are +# +# {program}_METASOURCES +# where you have a choice of two styles +# {program}_METASOURCES = name1.moc name2.moc ... [\] +# {program}_METASOURCES = AUTO +# The second style requires other tags as well. +# +# To install icons : +# KDE_ICON = iconname iconname2 ... +# KDE_ICON = AUTO +# +# For documentation : +# ... +# +# and more new tags TBD! +# +# The concept (and base code) for this program came from automoc, +# supplied by the following +# +# Matthias Ettrich (The originator) +# Kalle Dalheimer (The original implementator) +# Harri Porten +# Alex Zepeda +# David Faure +# Stephan Kulow +# +# I've puddled around with automoc and produced something different +# 1999-02-01 John Birch +# * Rewritten automoc to cater for more than just moc file expansion +# Version 0.01 does the same as automoc at this stage. +# 1999-02-18 jb +# * We must always write a Makefile.in file out even if we fail +# because we need the "perl autokmake" in the AUTOMAKE so that a +# "make" will regenerate the Makefile.in correctly. +# Reworked moc file checking so that missing includes in cpp +# will work and includes in cpp when using use_automoc will also +# work. +# 1999-02-23 jb +# * Added POFILE processing and changed the USE_AUTOMOC tag to +# AUTO instead. +# ... See ChangeLog for more logs + +use Cwd; +use File::Find; +use File::Basename; + +# Prototype the functions +sub initialise (); +sub processMakefile ($); +sub updateMakefile (); +sub restoreMakefile (); + +sub removeLine ($$); +sub appendLines ($); +sub substituteLine ($$); + +sub findMocCandidates (); +sub pruneMocCandidates ($); +sub checkMocCandidates (); +sub addMocRules (); + +sub tag_AUTOMAKE (); +sub tag_META_INCLUDES (); +sub tag_METASOURCES (); +sub tag_POFILES (); +sub tag_DOCFILES (); +sub tag_LOCALINSTALL(); +sub tag_IDLFILES(); +sub tag_UIFILES(); +sub tag_SUBDIRS(); +sub tag_ICON(); +sub tag_CLOSURE(); +sub tag_DIST(); + +# Some global globals... +$verbose = 0; # a debug flag +$thisProg = "$0"; # This programs name +$topdir = cwd(); # The current directory +@makefiles = (); # Contains all the files we'll process +@foreignfiles = (); +$start = (times)[0]; # some stats for testing - comment out for release +$version = "v0.2"; +$errorflag = 0; +$cppExt = "(cpp|cc|cxx|C|c\\+\\+)"; +$hExt = "(h|H|hh|hxx|hpp|h\\+\\+)"; +$progId = "KDE tags expanded automatically by " . basename($thisProg); +$automkCall = "\n"; +$printname = ""; # used to display the directory the Makefile is in +$use_final = 1; # create code for --enable-final +$cleantarget = "clean"; +$dryrun = 0; +$pathoption = 0; + +while (defined ($ARGV[0])) +{ + $_ = shift; + if (/^--version$/) + { + print STDOUT "\n"; + print STDOUT basename($thisProg), " $version\n", + "This is really free software, unencumbered by the GPL.\n", + "You can do anything you like with it except sueing me.\n", + "Copyright 1998 Kalle Dalheimer \n", + "Concept, design and unnecessary questions about perl\n", + " by Matthias Ettrich \n\n", + "Making it useful by Stephan Kulow and\n", + "Harri Porten \n", + "Updated (Feb-1999), John Birch \n", + "Current Maintainer Stephan Kulow\n\n"; + exit 0; + } + elsif (/^--verbose$|^-v$/) + { + $verbose = 1; # Oh is there a problem...? + } + elsif (/^-p(.+)$|^--path=(.+)$/) + { + $thisProg = "$1/".basename($thisProg) if($1); + $thisProg = "$2/".basename($thisProg) if($2); + warn ("$thisProg doesn't exist\n") if (!(-f $thisProg)); + $pathoption=1; + } + elsif (/^--help$|^-h$/) + { + print STDOUT "Usage $thisProg [OPTION] ... [dir/Makefile.in]...\n", + "\n", + "Patches dir/Makefile.in generated from automake\n", + "(where dir can be a full or relative directory name)", + "\n", + " -v, --verbose verbosely list files processed\n", + " -h, --help print this help, then exit\n", + " --version print version number, then exit\n", + " -p, --path= use the path to am_edit if the path\n", + " --no-final don't patch for --enable-final\n", + " called from is not the one to be used\n"; + + exit 0; + } + elsif (/^--no-final$/) + { + $use_final = 0; + $thisProg .= " --no-final"; + } + elsif (/^-n$/) + { + $dryrun = 1; + } + else + { + # user selects what input files to check + # add full path if relative path is given + $_ = cwd()."/".$_ if (! /^\//); + print "User wants $_\n" if ($verbose); + push (@makefiles, $_); + } +} + +if ($thisProg =~ /^\// && !$pathoption ) +{ + print STDERR "Illegal full pathname call performed...\n", + "The call to \"$thisProg\"\nwould be inserted in some Makefile.in.\n", + "Please use option --path.\n"; + exit 1; +} + +# Only scan for files when the user hasn't entered data +if (!@makefiles) +{ + print STDOUT "Scanning for Makefile.in\n" if ($verbose); + find (\&add_makefile, cwd()); + #chdir('$topdir'); +} else { + print STDOUT "Using user enter input files\n" if ($verbose); +} + +foreach $makefile (sort(@makefiles)) +{ + processMakefile ($makefile); + last if ($errorflag); +} + +# Just some debug statistics - comment out for release as it uses printf. +printf STDOUT "Time %.2f CPU sec\n", (times)[0] - $start if ($verbose); + +exit $errorflag; # causes make to fail if erroflag is set + +#----------------------------------------------------------------------------- + +# In conjunction with the "find" call, this builds the list of input files +sub add_makefile () +{ + push (@makefiles, $File::Find::name) if (/Makefile.in$/); +} + +#----------------------------------------------------------------------------- + +# Processes a single make file +# The parameter contains the full path name of the Makefile.in to use +sub processMakefile ($) +{ + # some useful globals for the subroutines called here + local ($makefile) = @_; + local @headerdirs = ('.'); + local $haveAutomocTag = 0; + local $MakefileData = ""; + + local $cxxsuffix = "KKK"; + + local @programs = (); # lists the names of programs and libraries + local $program = ""; + + local %realObjs = (); # lists the objects compiled into $program + local %sources = (); # lists the sources used for $program + local %finalObjs = (); # lists the objects compiled when final + local %realname = (); # the binary name of program variable + local %idlfiles = (); # lists the idl files used for $program + local %globalmocs = ();# list of all mocfiles (in %mocFiles format) + local %important = (); # list of files to be generated asap + + local $allidls = ""; + local $alluis = ""; + local $idl_output = "";# lists all idl generated files for cleantarget + local $ui_output = "";# lists all uic generated files for cleantarget + + local %depedmocs = (); + + local $metasourceTags = 0; + local $dep_files = ""; + local $dep_finals = ""; + local %target_adds = (); # the targets to add + local $kdelang = ""; + local @cleanfiles = (); + local $cleanMoc = ""; + local $closure_output = ""; + + $makefileDir = dirname($makefile); + chdir ($makefileDir); + $printname = $makefile; + $printname =~ s/^\Q$topdir\E\///; + $makefile = basename($makefile); + + print STDOUT "Processing makefile $printname\n" if ($verbose); + + # Setup and see if we need to do this. + return if (!initialise()); + + tag_AUTOMAKE (); # Allows a "make" to redo the Makefile.in + tag_META_INCLUDES (); # Supplies directories for src locations + + foreach $program (@programs) { + $sources_changed{$program} = 0; + $depedmocs{$program} = ""; + $important{$program} = ""; + tag_IDLFILES(); # Sorts out idl rules + tag_CLOSURE(); + tag_METASOURCES (); # Sorts out the moc rules + tag_UIFILES(); # Sorts out ui rules + if ($sources_changed{$program}) { + my $lookup = "$program" . '_SOURCES\s*=\s*(.*)'; + substituteLine($lookup, "$program\_SOURCES=" . $sources{$program}); + } + if ($important{$program}) { + local %source_dict = (); + for $source (split(/[\034\s]+/, $sources{$program})) { + $source_dict{$source} = 1; + } + for $source (@cleanfiles) { + $source_dict{$source} = 0; + } + for $source (keys %source_dict) { + next if (!$source); + if ($source_dict{$source}) { + # sanity check + if (! -f $source) { + print STDERR "Error: $source is listed in a _SOURCE line in $printname, but doesn't exist yet. Put it in DISTCLEANFILES!\n"; + } else { + $target_adds{"\$(srcdir)/$source"} .= $important{$program}; + } + } + } + } + } + if ($cleanMoc) { + # Always add dist clean tag + # Add extra *.moc.cpp files created for USE_AUTOMOC because they + # aren't included in the normal *.moc clean rules. + appendLines ("$cleantarget-metasources:\n\t-rm -f $cleanMoc\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-metasources "; + } + tag_DIST(); + + if ($idl_output) { + appendLines ("$cleantarget-idl:\n\t-rm -f $idl_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-idl "; + } + + if ($ui_output) { + appendLines ("$cleantarget-ui:\n\t-rm -f $ui_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-ui "; + } + + if ($closure_output) { + appendLines ("$cleantarget-closures:\n\t-rm -f $closure_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-closures "; + } + + if ($MakefileData =~ /\nKDE_LANG\s*=\s*(\S*)\s*\n/) { + $kdelang = '$(KDE_LANG)' + } else { + $kdelang = ''; + } + + tag_POFILES (); # language rules for po directory + tag_DOCFILES (); # language rules for doc directories + tag_LOCALINSTALL(); # add $(DESTDIR) before all kde_ dirs + tag_ICON(); + tag_SUBDIRS(); + + my $tmp = "force-reedit:\n"; + $tmp .= "\t$automkCall\n\tcd \$(top_srcdir) && perl $thisProg $printname\n\n"; + appendLines($tmp); + + make_meta_classes(); + tag_FINAL() if (!$kdeopts{"nofinal"}); + + my $final_lines = "final:\n\t\$(MAKE) "; + my $nofinal_lines = "no-final:\n\t\$(MAKE) "; + + foreach $program (@programs) { + + my $lookup = "$program\_OBJECTS.*=[^\n]*"; + + my $new = ""; + + my @list = split(/[\034\s]+/, $realObjs{$program}); + + if (!$kdeopts{"nofinal"} && @list > 1 && $finalObjs{$program}) { + + $new .= "$program\_final\_OBJECTS = " . $finalObjs{$program}; + $new .= "\n$program\_nofinal\_OBJECTS = " . $realObjs{$program}; + $new .= "\n\@KDE_USE_FINAL_FALSE\@$program\_OBJECTS = \$($program\_nofinal\_OBJECTS)"; + $new .= "\n\@KDE_USE_FINAL_TRUE\@$program\_OBJECTS = \$($program\_final\_OBJECTS)"; + + $final_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; + $nofinal_lines .= "$program\_OBJECTS=\"\$($program\_nofinal\_OBJECTS)\" "; + } else { + $new = "$program\_OBJECTS = " . $realObjs{$program}; + } + substituteLine ($lookup, $new); + } + appendLines($final_lines . "all-am"); + appendLines($nofinal_lines . "all-am"); + + my $lookup = 'DEP_FILES\s*=([^\n]*)'; + if ($MakefileData =~ /\n$lookup\n/o) { + $depfiles = $1; + + if ($dep_finals) { + $lines = "\@KDE_USE_FINAL_TRUE\@DEP_FILES = $dep_files $dep_finals \034\t$depfiles\n"; + $lines .= "\@KDE_USE_FINAL_FALSE\@DEP_FILES = $dep_files $depfiles\n"; + } else { + $lines = "DEP_FILES = $dep_files $depfiles\n"; + } + + substituteLine($lookup, $lines); + } + + my $cvs_lines = "cvs-clean:\n"; + $cvs_lines .= "\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common cvs-clean\n"; + appendLines($cvs_lines); + + $cvs_lines = "kde-rpo-clean:\n"; + $cvs_lines .= "\t-rm -f *.rpo\n"; + appendLines($cvs_lines); + $target_adds{"clean"} .= "kde-rpo-clean "; + + # some strange people like to do a install-exec, and expect that also + # all modules are installed. automake doesn't know this, so we need to move + # this here from install-data to install-exec. + if ($MakefileData =~ m/\nkde_module_LTLIBRARIES\s*=/) { + $target_adds{"install-exec-am"} .= "install-kde_moduleLTLIBRARIES"; + my $lookup = "install-data-am:\s*(.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + my $newdeps = $1; + $newdeps =~ s/\s*install-kde_moduleLTLIBRARIES\s*/ /g; + substituteLine($lookup, "install-data-am: " . $newdeps); + } + } + + my $lines = ""; + + foreach $add (keys %target_adds) { + my $lookup = quotemeta($add) . ":\s*(.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + substituteLine($lookup, "$add: " . $target_adds{$add} . $1); + } else { + $lines .= "$add: " . $target_adds{$add} . "\n"; + } + } + if ($lines) { + appendLines($lines); + } + + my $found = 1; + + while ($found) { + if ($MakefileData =~ m/\n(.*)\$\(CXXFLAGS\)(.*)\n/) { + my $vor = $1; # "vor" means before in German + my $nach = $2; # "nach" means after in German + my $lookup = quotemeta("$1\$(CXXFLAGS)$2"); + my $replacement = "$1\$(KCXXFLAGS)$2"; + $MakefileData =~ s/$lookup/$replacement/; + $lookup =~ s/\\\$\\\(CXXFLAGS\\\)/\\\$\\\(KCXXFLAGS\\\)/; + $replacement = "$vor\$(KCXXFLAGS) \$(KDE_CXXFLAGS)$nach"; + substituteLine($lookup, $replacement); + } else { + $found = 0; + } + } + + $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=link) (\$\(CXXLD\).*\$\(KCXXFLAGS\))'; + + if ($MakefileData =~ m/$lookup/ ) { + $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; + } + + $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=compile) (\$\(CXX\).*\$\(KCXXFLAGS\))'; + if ($MakefileData =~ m/$lookup/ ) { + $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; + } + + $MakefileData =~ s/\$\(KCXXFLAGS\)/\$\(CXXFLAGS\)/g; + + $lookup = '(.*)cp -pr \$\$/\$\$file \$\(distdir\)/\$\$file(.*)'; + if ($MakefileData =~ m/\n$lookup\n/) { + substituteLine($lookup, "$1cp -pr \$\$d/\$\$file \$(distdir)/\$\$file$2"); + } + + # Always update the Makefile.in + updateMakefile (); + return; +} + +#----------------------------------------------------------------------------- + +# Check to see whether we should process this make file. +# This is where we look for tags that we need to process. +# A small amount of initialising on the tags is also done here. +# And of course we open and/or create the needed make files. +sub initialise () +{ + if (! -r "Makefile.am") { + print STDOUT "found Makefile.in without Makefile.am\n" if ($verbose); + return 0; + } + + # Checking for files to process... + open (FILEIN, $makefile) + || die "Could not open $makefileDir/$makefile: $!\n"; + # Read the file + # stat(FILEIN)[7] might look more elegant, but is slower as it + # requires stat'ing the file + seek(FILEIN, 0, 2); + my $fsize = tell(FILEIN); + seek(FILEIN, 0, 0); + read FILEIN, $MakefileData, $fsize; + close FILEIN; + print "DOS CRLF within $makefileDir/$makefile!\n" if($MakefileData =~ y/\r//d); + + # Remove the line continuations, but keep them marked + # Note: we lose the trailing spaces but that's ok. + $MakefileData =~ s/\\\s*\n/\034/g; + + # If we've processed the file before... + restoreMakefile () if ($MakefileData =~ /$progId/); + + foreach $dir (@foreignfiles) { + if (substr($makefileDir,0,length($dir)) eq $dir) { + return 0; + } + } + + %kdeopts = (); + $kdeopts{"foreign"} = 0; + $kdeopts{"qtonly"} = 0; + $kdeopts{"nofinal"} = !$use_final; # default + + if ($MakefileData =~ /\nKDE_OPTIONS\s*=\s*([^\n]*)\n/) { + local @kde_options = split(/[\s\034]/, $1); + if (grep(/^foreign$/, @kde_options)) { + push(@foreignfiles, $makefileDir . "/"); + return 0; # don't touch me + } + for $opt (@kde_options) { + if (!defined $kdeopts{$opt}) { + print STDERR "Warning: unknown option $opt in $printname\n"; + } else { + $kdeopts{$opt} = 1; + } + } + } + + # Look for the tags that mean we should process this file. + $metasourceTags = 0; + $metasourceTags++ while ($MakefileData =~ /\n[^=\#]*METASOURCES\s*=/g); + + my $pofileTag = 0; + $pofileTag++ while ($MakefileData =~ /\nPOFILES\s*=/g); + if ($pofileTag > 1) + { + print STDERR "Error: Only one POFILES tag allowed\n"; + $errorflag = 1; + } + + while ($MakefileData =~ /\n\.SUFFIXES:([^\n]+)\n/g) { + my @list=split(' ', $1); + foreach $ext (@list) { + if ($ext =~ /^\.$cppExt$/) { + $cxxsuffix = $ext; + $cxxsuffix =~ s/\.//g; + print STDOUT "will use suffix $cxxsuffix\n" if ($verbose); + last; + } + } + } + + while ($MakefileData =~ /\n(\S*)_OBJECTS\s*=[ \t\034]*([^\n]*)\n/g) { + + my $program = $1; + my $objs = $2; # safe them + + my $ocv = 0; + + my @objlist = split(/[\s\034]+/, $objs); + foreach $obj (@objlist) { + if ($obj =~ /\$\((\S+)\)/ ) { + my $variable = $1; + if ($variable !~ 'OBJEXT') { + $ocv = 1; + } + } + } + + next if ($ocv); + + $program =~ s/^am_// if ($program =~ /^am_/); + + print STDOUT "found program $program\n" if ($verbose); + push(@programs, $program); + + $realObjs{$program} = $objs; + + if ($MakefileData =~ /\n$program\_SOURCES\s*=\s*(.*)\n/) { + $sources{$program} = $1; + } else { + $sources{$program} = ""; + print STDERR "found program with no _SOURCES: $program\n"; + } + + my $realprogram = $program; + $realprogram =~ s/_/./g; # unmask to regexp + if ($MakefileData =~ /\n($realprogram)(\$\(EXEEXT\)?)?:.*\$\($program\_OBJECTS\)/) { + $realname{$program} = $1; + } else { + # not standard Makefile - nothing to worry about + $realname{$program} = ""; + } + } + + my $lookup = '\nDEPDIR\s*=.*'; + if ($MakefileData !~ /($lookup)\n/o) { + $lookup = '\nbindir\s*=.*'; + if ($MakefileData =~ /($lookup)\n/) { + substituteLine ($lookup, "DEPDIR = .deps\n$1"); + } + } else { + print STDERR "$printname defines DEPDIR. This means you're using automake > 1.4 - this is not supported!\n"; + } + + my @marks = ('MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES'); + foreach $mark (@marks) { + while ($MakefileData =~ /\n($mark)\s*=\s*([^\n]*)/g) { + foreach $file (split('[\034\s]', $2)) { + $file =~ s/\.\///; + push(@cleanfiles, $file); + } + } + } + + my $localTag = 0; + $localTag++ if ($MakefileData =~ /\ninstall-\S+-local:/); + + return (!$errorflag); +} + +#----------------------------------------------------------------------------- + +# Gets the list of user defined directories - relative to $srcdir - where +# header files could be located. +sub tag_META_INCLUDES () +{ + my $lookup = '[^=\n]*META_INCLUDES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /($lookup)\n/o); + print STDOUT "META_INCLUDE processing <$1>\n" if ($verbose); + + my $headerStr = $2; + removeLine ($lookup, $1); + + $headerStr =~ tr/\034/ /; + my @headerlist = split(' ', $headerStr); + + foreach $dir (@headerlist) + { + $dir =~ s#\$\(srcdir\)#.#; + if (! -d $dir) + { + print STDERR "Warning: $dir can't be found. ", + "Must be a relative path to \$(srcdir)\n"; + } + else + { + push (@headerdirs, $dir); + } + } + + return 0; +} + +#----------------------------------------------------------------------------- + +sub tag_FINAL() +{ + my @final_names = (); + + foreach $program (@programs) { + + if ($sources{$program} =~ /\(/) { + print STDOUT "found ( in $program\_SOURCES. skipping\n" if ($verbose); + next; + } + + my $mocsources = ""; + + my @progsources = split(/[\s\034]+/, $sources{$program}); + my %sourcelist = (); + + foreach $source (@progsources) { + my $suffix = $source; + $suffix =~ s/^.*\.([^\.]+)$/$1/; + + if (defined($sourcelist{$suffix})) { + $sourcelist{$suffix} .= " " . $source; + } else { + $sourcelist{$suffix} .= $source; + } + } + + foreach $suffix (keys %sourcelist) { + + # See if this file contains c++ code. (ie Just check the files suffix against + my $suffix_is_cxx = 0; + if($suffix =~ /($cppExt)$/) { + $cxx_suffix = $1; + $suffix_is_cxx = 1; + } + + my $mocfiles_in = ($suffix eq $cxxsuffix) && + defined($depedmocs{$program}); + + my @sourcelist = split(/[\s\034]+/, $sourcelist{$suffix}); + + if ((@sourcelist == 1 && !$mocfiles_in) || $suffix_is_cxx != 1 ) { + + # we support IDL on our own + if ($suffix =~ /^skel$/ || $suffix =~ /^stub/ || $suffix =~ /^h$/ + || $suffix =~ /^ui$/ ) { + next; + } + + foreach $file (@sourcelist) { + + $file =~ s/\Q$suffix\E$//; + + $finalObjs{$program} .= $file; + if ($program =~ /_la$/) { + $finalObjs{$program} .= "lo "; + } else { + $finalObjs{$program} .= "o "; + } + } + next; # suffix + } + + my $source_deps = ""; + foreach $source (@sourcelist) { + if (-f $source) { + $source_deps .= "\$(srcdir)/$source "; + } else { + $source_deps .= "$source "; + } + } + + $handling = "$program.all_$suffix.$suffix: \$(srcdir)/Makefile.in " . $source_deps . " "; + + if ($mocfiles_in) { + $handling .= $depedmocs{$program}; + foreach $mocfile (split(' ', $depedmocs{$program})) { + if ($mocfile =~ m/\.$suffix$/) { + $mocsources .= " " . $mocfile; + } + } + } + + $handling .= "\n"; + $handling .= "\t\@echo 'creating $program.all_$suffix.$suffix ...'; \\\n"; + $handling .= "\trm -f $program.all_$suffix.files $program.all_$suffix.final; \\\n"; + $handling .= "\techo \"#define KDE_USE_FINAL 1\" >> $program.all_$suffix.final; \\\n"; + $handling .= "\tfor file in " . $sourcelist{$suffix} . " $mocsources; do \\\n"; + $handling .= "\t echo \"#include \\\"\$\$file\\\"\" >> $program.all_$suffix.files; \\\n"; + $handling .= "\t test ! -f \$\(srcdir\)/\$\$file || egrep '^#pragma +implementation' \$\(srcdir\)/\$\$file >> $program.all_$suffix.final; \\\n"; + $handling .= "\tdone; \\\n"; + $handling .= "\tcat $program.all_$suffix.final $program.all_$suffix.files > $program.all_$suffix.$suffix; \\\n"; + $handling .= "\trm -f $program.all_$suffix.final $program.all_$suffix.files\n"; + + appendLines($handling); + + push(@final_names, "$program.all_$suffix.$suffix"); + $finalObjs{$program} .= "$program.all_$suffix."; + if ($program =~ /_la$/) { + $finalObjs{$program} .= "lo "; + } else { + $finalObjs{$program} .= "o "; + } + } + } + + if (!$kdeopts{"nofinal"} && @final_names >= 1) { + # add clean-final target + my $lines = "$cleantarget-final:\n"; + $lines .= "\t-rm -f " . join(' ', @final_names) . "\n" if (@final_names); + appendLines($lines); + $target_adds{"$cleantarget-am"} .= "$cleantarget-final "; + + foreach $finalfile (@final_names) { + $finalfile =~ s/\.[^.]*$/.P/; + $dep_finals .= " \$(DEPDIR)/$finalfile"; + } + } +} + +# Organises the list of headers that we'll use to produce moc files +# from. +sub tag_METASOURCES () +{ + local @newObs = (); # here we add to create object files + local @deped = (); # here we add to create moc files + local $mocExt = ".moc"; + local %mocFiles = (); + + my $line = ""; + my $postEqual = ""; + + my $lookup; + my $found = ""; + + if ($metasourceTags > 1) { + $lookup = $program . '_METASOURCES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/); + $found = $1; + } else { + $lookup = $program . '_METASOURCES\s*=\s*(.*)'; + if ($MakefileData !~ /\n($lookup)\n/) { + $lookup = 'METASOURCES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/o); + $found = $1; + $metasourceTags = 0; # we can use the general target only once + } else { + $found = $1; + } + } + print STDOUT "METASOURCE processing <$found>)\n" if ($verbose); + + $postEqual = $found; + $postEqual =~ s/[^=]*=//; + + removeLine ($lookup, $found); + + # Always find the header files that could be used to "moc" + return 1 if (findMocCandidates ()); + + if ($postEqual =~ /AUTO\s*(\S*)|USE_AUTOMOC\s*(\S*)/) + { + print STDERR "$printname: the argument for AUTO|USE_AUTOMOC is obsolete" if ($+); + $mocExt = ".moc.$cxxsuffix"; + $haveAutomocTag = 1; + } + else + { + # Not automoc so read the list of files supplied which + # should be .moc files. + + $postEqual =~ tr/\034/ /; + + # prune out extra headers - This also checks to make sure that + # the list is valid. + pruneMocCandidates ($postEqual); + } + + checkMocCandidates (); + + if (@newObs) { + my $ext = ($program =~ /_la$/) ? ".moc.lo " : ".moc.o "; + $realObjs{$program} .= "\034" . join ($ext, @newObs) . $ext; + $depedmocs{$program} = join (".moc.$cxxsuffix " , @newObs) . ".moc.$cxxsuffix"; + foreach $file (@newObs) { + $dep_files .= " \$(DEPDIR)/$file.moc.P"; + } + } + if (@deped) { + $depedmocs{$program} .= " "; + $depedmocs{$program} .= join('.moc ', @deped) . ".moc"; + $depedmocs{$program} .= " "; + } + addMocRules (); + @globalmocs{keys %mocFiles}=values %mocFiles; +} + +#----------------------------------------------------------------------------- + +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_AUTOMAKE () +{ + my $lookup = '.*cd \$\(top_srcdir\)\s+&&\s+\$\(AUTOMAKE\)(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/); + print STDOUT "AUTOMAKE processing <$1>\n" if ($verbose); + + my $newLine = $1."\n\tcd \$(top_srcdir) && perl $thisProg $printname"; + substituteLine ($lookup, $newLine); + $automkCall = $1; + return 0; +} + +#----------------------------------------------------------------------------- + +sub handle_TOPLEVEL() +{ + my $pofiles = ""; + my @restfiles = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if (-d $entry); + + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry =~ /.gmo$/); + + if ($entry =~ /\.po$/) { + next; + } + push(@restfiles, $entry); + } + closedir (THISDIR); + + if (@restfiles) { + $target_adds{"install-data-am"} .= "install-nls-files "; + $lines = "install-nls-files:\n"; + $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$kdelang\n"; + for $file (@restfiles) { + $lines .= "\t\$(INSTALL_DATA) \$\(srcdir\)/$file \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; + } + $target_adds{"uninstall"} .= "uninstall-nls-files "; + $lines .= "uninstall-nls-files:\n"; + for $file (@restfiles) { + $lines .= "\t-rm -f \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; + } + appendLines($lines); + } + + return 0; +} + +#----------------------------------------------------------------------------- + +sub tag_SUBDIRS () +{ + if ($MakefileData !~ /\nSUBDIRS\s*=\s*\$\(AUTODIRS\)\s*\n/) { + return 1; + } + + my $subdirs; + + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./); + if (-d $entry && -f $entry . "/Makefile.am") { + $subdirs .= " $entry"; + next; + } + } + closedir (THISDIR); + + my $lines = "SUBDIRS =$subdirs\n"; + substituteLine('SUBDIRS\s*=.*', $lines); + return 0; +} + +sub tag_IDLFILES () +{ + my @psources = split(/[\034\s]+/, $sources{$program}); + my $dep_lines = ""; + my @cppFiles = (); + + foreach $source (@psources) { + + my $skel = ($source =~ m/\.skel$/); + + if ($source =~ m/\.stub$/ || $skel) { + + my $qs = quotemeta($source); + $sources{$program} =~ s/$qs//; + $sources_changed{$program} = 1; + + print STDOUT "adding IDL file $source\n" if ($verbose); + + $source =~ s/\.(stub|skel)$//; + + my $sourcename; + + if ($skel) { + $sourcename = "$source\_skel"; + } else { + $sourcename = "$source\_stub"; + } + + my $sourcedir = ''; + if (-f "$makefileDir/$source.h") { + $sourcedir = '$(srcdir)/'; + } else { + if ($MakefileData =~ /\n$source\_DIR\s*=\s*(\S+)\n/) { + $sourcedir = $1; + $sourcedir .= "/" if ($sourcedir !~ /\/$/); + } + } + + if ($allidls !~ /$source\_kidl/) { + + $dep_lines .= "$source.kidl: $sourcedir$source.h \$(DCOPIDL_DEPENDENCIES)\n"; + $dep_lines .= "\t\$(DCOPIDL) $sourcedir$source.h > $source.kidl || ( rm -f $source.kidl ; /bin/false )\n"; + + $allidls .= $source . "_kidl "; + } + + if ($allidls !~ /$sourcename/) { + + if ($skel) { + $dep_lines .= "$sourcename.$cxxsuffix: $source.kidl\n"; + $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-stub $source.kidl\n"; + } else { + $target_adds{"$sourcename.$cxxsuffix"} .= "$sourcename.h "; + $dep_lines .= "$sourcename.h: $source.kidl\n"; + $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-skel $source.kidl\n"; + } + + $allidls .= $sourcename . " "; + } + + $idlfiles{$program} .= $sourcename . " "; + + if ($program =~ /_la$/) { + $realObjs{$program} .= " $sourcename.lo"; + } else { + $realObjs{$program} .= " $sourcename.\$(OBJEXT)"; + } + $sources{$program} .= " $sourcename.$cxxsuffix"; + $sources_changed{$program} = 1; + $important{$program} .= "$sourcename.h " if (!$skel); + $idl_output .= "\\\n\t$sourcename.$cxxsuffix $sourcename.h $source.kidl "; + push(@cleanfiles, "$sourcename.$cxxsuffix"); + push(@cleanfiles, "$sourcename.h"); + push(@cleanfiles, "$sourcename.kidl"); + $dep_files .= " \$(DEPDIR)/$sourcename.P"; + } + } + if ($dep_lines) { + appendLines($dep_lines); + } + + if (0) { + my $lookup = "($program)"; + $lookup .= '(|\$\(EXEEXT\))'; + $lookup =~ s/\_/./g; + $lookup .= ":(.*..$program\_OBJECTS..*)"; + # $lookup = quotemeta($lookup); + if ($MakefileData =~ /\n$lookup\n/) { + + my $line = "$1$2: "; + foreach $file (split(' ', $idlfiles{$program})) { + $line .= "$file.$cxxsuffix "; + } + $line .= $3; + substituteLine($lookup, $line); + } else { + print STDERR "no built dependency found $lookup\n"; + } + } +} + +sub tag_UIFILES () +{ + my @psources = split(/[\034\s]+/, $sources{$program}); + my $dep_lines = ""; + my @depFiles = (); + + foreach $source (@psources) { + + if ($source =~ m/\.ui$/) { + + print STDERR "adding UI file $source\n" if ($verbose); + + my $qs = quotemeta($source); + $sources{$program} =~ s/$qs//; + $sources_changed{$program} = 1; + + $source =~ s/\.ui$//; + + my $sourcedir = ''; + if (-f "$makefileDir/$source.ui") { + $sourcedir = '$(srcdir)/'; + } + + if ($alluis !~ /$source/) { + + $dep_lines .= "$source.$cxxsuffix: $sourcedir$source.ui $source.h $source.moc\n"; + $dep_lines .= "\trm -f $source.$cxxsuffix\n"; + if (!$kdeopts{"qtonly"}) { + $dep_lines .= "\techo '#include ' > $source.$cxxsuffix\n"; + $dep_lines .= "\t\$(UIC) -tr i18n -i $source.h $sourcedir$source.ui | sed -e \"s,i18n( \\\"\\\" ),QString::null,g\" >> $source.$cxxsuffix || rm -f $source.$cxxsuffix\n"; + } else { + $dep_lines .= "\t\$(UIC) -i $source.h $sourcedir$source.ui > $source.$cxxsuffix || rm -f $source.$cxxsuffix\n"; + } + $dep_lines .= "\techo '#include \"$source.moc\"' >> $source.$cxxsuffix\n\n"; + $dep_lines .= "$source.h: $sourcedir$source.ui\n"; + $dep_lines .= "\t\$(UIC) -o $source.h $sourcedir$source.ui\n\n"; + $dep_lines .= "$source.moc: $source.h\n"; + $dep_lines .= "\t\$(MOC) $source.h -o $source.moc\n"; + + $alluis .= "$source "; + $depedmocs{$program} .= " $source.moc"; + $globalmocs{$source} = "\035$source.h\035$source.cpp"; + } + + if ($program =~ /_la$/) { + $realObjs{$program} .= " $source.lo"; + } else { + $realObjs{$program} .= " $source.\$(OBJEXT)"; + } + $sources{$program} .= " $source.$cxxsuffix"; + $sources_changed{$program} = 1; + $important{$program} .= "$source.h "; + $ui_output .= "\\\n\t$source.$cxxsuffix $source.h $source.moc "; + push(@cleanfiles, "$source.$cxxsuffix"); + push(@cleanfiles, "source.h"); + push(@cleanfiles, "$source.moc"); + + $dep_files .= " \$(DEPDIR)/$source.P"; + } + } + if ($dep_lines) { + appendLines($dep_lines); + } +} + +sub tag_ICON() +{ + my $lookup = '([^\s]*)_ICON\s*=\s*([^\n]*)'; + my $install = ""; + my $uninstall = ""; + + while ($MakefileData =~ /\n$lookup/og) { + my $destdir; + if ($1 eq "KDE") { + $destdir = "kde_icondir"; + } else { + $destdir = $1 . "dir"; + } + my $iconauto = ($2 =~ /AUTO\s*$/); + my @appnames = (); + if ( ! $iconauto ) { + my @_appnames = split(" ", $2); + print STDOUT "KDE_ICON processing <@_appnames>\n" if ($verbose); + foreach $appname (@_appnames) { + push(@appnames, quotemeta($appname)); + } + } else { + print STDOUT "KDE_ICON processing \n" if ($verbose); + } + + my @files = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + if ( $iconauto ) + { + push(@files, $entry) + if ($entry =~ /\.xpm/ || $entry =~ /\.png/); + } else { + foreach $appname (@appnames) { + push(@files, $entry) + if ($entry =~ /-$appname\.xpm/ || $entry =~ /-$appname\.png/); + } + } + } + closedir (THISDIR); + + my %directories = (); + + foreach $file (@files) { + my $newfile = $file; + my $prefix = $file; + $prefix =~ s/\.(png|xpm)$//; + my $appname = $prefix; + $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; + $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; + $appname = quotemeta($appname); + $prefix =~ s/$appname$//; + $prefix =~ s/-$//; + + $prefix = 'lo16-app' if ($prefix eq 'mini'); + $prefix = 'lo32-app' if ($prefix eq 'lo'); + $prefix = 'hi48-app' if ($prefix eq 'large'); + $prefix .= '-app' if ($prefix =~ m/^...$/); + + my $type = $prefix; + $type =~ s/^.*-([^-]+)$/$1/; + $prefix =~ s/^(.*)-[^-]+$/$1/; + + my %type_hash = + ( + 'action' => 'actions', + 'app' => 'apps', + 'device' => 'devices', + 'filesys' => 'filesystems', + 'mime' => 'mimetypes' + ); + + if (! defined $type_hash{$type} ) { + print STDERR "unknown icon type $type in $printname ($file)\n"; + next; + } + + my %dir_hash = + ( + 'los' => 'locolor/16x16', + 'lom' => 'locolor/32x32', + 'him' => 'hicolor/32x32', + 'hil' => 'hicolor/48x48', + 'lo16' => 'locolor/16x16', + 'lo22' => 'locolor/22x22', + 'lo32' => 'locolor/32x32', + 'hi16' => 'hicolor/16x16', + 'hi22' => 'hicolor/22x22', + 'hi32' => 'hicolor/32x32', + 'hi48' => 'hicolor/48x48', + 'hi64' => 'hicolor/64x64', + 'hisc' => 'hicolor/scalable' + ); + + $newfile =~ s@.*-($appname\.(png|xpm?))@$1@; + + if (! defined $dir_hash{$prefix}) { + print STDERR "unknown icon prefix $prefix in $printname\n"; + next; + } + + my $dir = $dir_hash{$prefix} . "/" . $type_hash{$type}; + if ($newfile =~ /-[^\.]/) { + my $tmp = $newfile; + $tmp =~ s/^([^-]+)-.*$/$1/; + $dir = $dir . "/" . $tmp; + $newfile =~ s/^[^-]+-//; + } + + if (!defined $directories{$dir}) { + $install .= "\t\$(mkinstalldirs) \$(DESTDIR)\$($destdir)/$dir\n"; + $directories{$dir} = 1; + } + + $install .= "\t\$(INSTALL_DATA) \$(srcdir)/$file \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; + $uninstall .= "\t-rm -f \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; + + } + } + + if (length($install)) { + $target_adds{"install-data-am"} .= "install-kde-icons "; + $target_adds{"uninstall-am"} .= "uninstall-kde-icons "; + appendLines("install-kde-icons:\n" . $install . "\nuninstall-kde-icons:\n" . $uninstall); + } +} + +sub handle_POFILES($$) +{ + my @pofiles = split(" ", $_[0]); + my $lang = $_[1]; + + # Build rules for creating the gmo files + my $tmp = ""; + my $allgmofiles = ""; + my $pofileLine = "POFILES ="; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + $tmp .= "$1.gmo: $pofile\n"; + $tmp .= "\trm -f $1.gmo; \$(GMSGFMT) -o $1.gmo \$(srcdir)/$pofile\n"; + $tmp .= "\ttest ! -f $1.gmo || touch $1.gmo\n"; + $allgmofiles .= " $1.gmo"; + $pofileLine .= " $1.po"; + } + appendLines ($tmp); + my $lookup = 'POFILES\s*=([^\n]*)'; + if ($MakefileData !~ /\n$lookup/o) { + appendLines("$pofileLine\nGMOFILES =$allgmofiles"); + } else { + substituteLine ($lookup, "$pofileLine\nGMOFILES =$allgmofiles"); + } + + if ($allgmofiles) { + + # Add the "clean" rule so that the maintainer-clean does something + appendLines ("clean-nls:\n\t-rm -f $allgmofiles\n"); + + $target_adds{"maintainer-clean"} .= "clean-nls "; + + $lookup = 'DISTFILES\s*=\s*(.*)'; + if ($MakefileData =~ /\n$lookup\n/o) { + $tmp = "DISTFILES = \$(GMOFILES) \$(POFILES) $1"; + substituteLine ($lookup, $tmp); + } + } + + $target_adds{"install-data-am"} .= "install-nls "; + + $tmp = "install-nls:\n"; + if ($lang) { + $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES\n"; + } + $tmp .= "\t\@for base in "; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + $tmp .= "$1 "; + } + + $tmp .= "; do \\\n"; + if ($lang) { + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; + $tmp .= "\t test ! -f \$\$base.gmo || \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n" + } else { + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; + $tmp .= "\t \$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES ; \\\n"; + $tmp .= "\t test ! -f \$\$base.gmo || \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; + } + $tmp .= "\tdone\n\n"; + appendLines ($tmp); + + $target_adds{"uninstall"} .= "uninstall-nls "; + + $tmp = "uninstall-nls:\n"; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + if ($lang) { + $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/$1.mo\n"; + } else { + $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$1/LC_MESSAGES/\$(PACKAGE).mo\n"; + } + } + appendLines($tmp); + + $target_adds{"all"} .= "all-nls "; + + $tmp = "all-nls: \$(GMOFILES)\n"; + + appendLines($tmp); + + $target_adds{"distdir"} .= "distdir-nls "; + + $tmp = "distdir-nls:\$(GMOFILES)\n"; + $tmp .= "\tfor file in \$(POFILES); do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + $tmp .= "\tfor file in \$(GMOFILES); do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + + appendLines ($tmp); + + if (!$lang) { + appendLines("merge:\n\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common package-merge POFILES=\"\${POFILES}\" PACKAGE=\${PACKAGE}\n\n"); + } + +} + +#----------------------------------------------------------------------------- + +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_POFILES () +{ + my $lookup = 'POFILES\s*=([^\n]*)'; + return 1 if ($MakefileData !~ /\n$lookup/o); + print STDOUT "POFILES processing <$1>\n" if ($verbose); + + my $tmp = $1; + + # make sure these are all gone. + if ($MakefileData =~ /\n\.po\.gmo:\n/) + { + print STDERR "Warning: Found old .po.gmo rules in $printname. New po rules not added\n"; + return 1; + } + + # Either find the pofiles in the directory (AUTO) or use + # only the specified po files. + my $pofiles = ""; + if ($tmp =~ /^\s*AUTO\s*$/) + { + opendir (THISDIR, "."); + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^#.*#$/); + $pofiles = join(" ", grep(/\.po$/, readdir(THISDIR))); + closedir (THISDIR); + print STDOUT "pofiles found = $pofiles\n" if ($verbose); + if (-f "charset" && -f "kdelibs.po") { + handle_TOPLEVEL(); + } + } + else + { + $tmp =~ s/\034/ /g; + $pofiles = $tmp; + } + return 1 if (!$pofiles); # Nothing to do + + handle_POFILES($pofiles, $kdelang); + + return 0; +} + +sub helper_LOCALINSTALL($) +{ + my $lookup = "\n" . $_[0] . ":"; + if ($MakefileData =~ /($lookup)/) { + + my $install = $MakefileData; + $install =~ s/\n/\035/g; + $install =~ s/.*\035$_[0]:[^\035]*\035//; + my $emptyline = 0; + while (! $emptyline) { + if ($install =~ /([^\035]*)\035(.*)/) { + local $line = $1; + $install = $2; + if ($line !~ /^\s*$/ && $line !~ /^(\@.*\@)*\t/) { + $emptyline = 1; + } else { + replaceDestDir($line); + } + } else { + $emptyline = 1; + } + } + } + +} + +sub tag_LOCALINSTALL () +{ + helper_LOCALINSTALL('install-exec-local'); + helper_LOCALINSTALL('install-data-local'); + helper_LOCALINSTALL('uninstall-local'); + + return 0; +} + +sub replaceDestDir($) { + local $line = $_[0]; + + if ( $line =~ /^\s*(\@.*\@)*\s*\$\(mkinstalldirs\)/ + || $line =~ /^\s*(\@.*\@)*\s*\$\(INSTALL\S*\)/ + || $line =~ /^\s*(\@.*\@)*\s*(-?rm.*) \S*$/) + { + $line =~ s/^(.*) ([^\s]*)\s*$/$1 \$(DESTDIR)$2/ if ($line !~ /\$\(DESTDIR\)/); + } + + if ($line ne $_[0]) { + $_[0] = quotemeta $_[0]; + substituteLine($_[0], $line); + } +} + +#--------------------------------------------------------------------------- +sub tag_CLOSURE () { + return if ($program !~ /_la$/); + + my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; + $MakefileData =~ m/$lookup/; + return if ($1 !~ /CXXLINK/); + + if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ && + $MakefileData !~ /\n$program\_LDFLAGS\s*=.*KDE_PLUGIN/ ) { + print STDERR "Report: $program contains undefined in $printname\n" if ($program =~ /^lib/ && $dryrun); + return; + } + my $closure = $realname{$program} . ".closure"; + my $lines = "$closure: \$($program\_OBJECTS) \$($program\_DEPENDENCIES)\n"; + $lines .= "\t\@echo \"int main() {return 0;}\" > $program\_closure.$cxxsuffix\n"; + $lines .= "\t\@\$\(LTCXXCOMPILE\) -c $program\_closure.$cxxsuffix\n"; + $lines .= "\t\@\$\(CXXLINK\) $program\_closure.lo \$($program\_LDFLAGS) \$($program\_OBJECTS) \$($program\_LIBADD) \$(LIBS)\n"; + $lines .= "\t\@rm -f $program\_closure.* $closure\n"; + $lines .= "\t\@echo \"timestamp\" > $closure\n"; + $lines .= "\n"; + appendLines($lines); + $lookup = $realname{$program} . ": (.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + $lines = "\@KDE_USE_CLOSURE_TRUE@". $realname{$program} . ": $closure $1"; + $lines .= "\n\@KDE_USE_CLOSURE_FALSE@" . $realname{$program} . ": $1"; + substituteLine($lookup, $lines); + } + $closure_output .= " $closure"; +} + +sub tag_DIST () { + my %foundfiles = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile$$/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + next if ($entry =~ /\.moc/ || $entry =~ /\.lo$/ || $entry =~ /\.la$/ || $entry =~ /\.o/); + $foundfiles{$entry} = 1; + } + closedir (THISDIR); + + my @marks = ("EXTRA_DIST", "DIST_COMMON", '\S*_SOURCES', '\S*_HEADERS', 'MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES', '\S*_OBJECTS'); + foreach $mark (@marks) { + while ($MakefileData =~ /\n($mark)\s*=\s*([^\n]*)/g) { + foreach $file (split('[\034\s]', $2)) { + $file =~ s/\.\///; + $foundfiles{$file} = 0 if (defined $foundfiles{$file}); + } + } + } + my @files = ("Makefile", "config.cache", "config.log", "stamp-h", + "stamp-h1", "stamp-h1", "config.h", "Makefile", "config.status", "config.h", "libtool"); + foreach $file (@files) { + $foundfiles{$file} = 0 if (defined $foundfiles{$file}); + } + + my $KDE_DIST = ""; + foreach $file (keys %foundfiles) { + if ($foundfiles{$file} == 1) { + $KDE_DIST .= "$file "; + } + } + if ($KDE_DIST) { + print "KDE_DIST $printname $KDE_DIST\n" if ($verbose); + + my $lookup = "DISTFILES *=(.*)"; + if ($MakefileData =~ /\n$lookup\n/o) { + substituteLine($lookup, "KDE_DIST=$KDE_DIST\n\nDISTFILES=$1 \$(KDE_DIST)\n"); + } + } +} + +#----------------------------------------------------------------------------- +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_DOCFILES () +{ +# if ($MakefileData =~ /\nSUBDIRS\s*=/) { # subdirs +# $MakefileData =~ /\n(.*-recursive:\s*)\n/; +# my $orig_rules = $1; +# my $rules = $orig_rules; +# $rules =~ s/:\s*$//; +# substituteLine($orig_rules, "$rules docs-recursive:"); +# appendLines("docs: docs-recursive docs-am\n"); +# } else { +# appendLines("docs: docs-am\n"); +# } + $target_adds{"all"} .= "docs-am "; + + my $lookup = 'KDE_DOCS\s*=\s*([^\n]*)'; + goto nodocs if ($MakefileData !~ /\n$lookup/o); + print STDOUT "KDE_DOCS processing <$1>\n" if ($verbose); + + my $tmp = $1; + + # Either find the files in the directory (AUTO) or use + # only the specified po files. + my $files = ""; + my $appname = $tmp; + $appname =~ s/^(\S*)\s*.*$/$1/; + if ($appname =~ /AUTO/) { + $appname = basename($makefileDir); + if ("$appname" eq "en") { + print STDERR "Error: KDE_DOCS = AUTO relies on the directory name. Yours is 'en' - you most likely want something else, e.g. KDE_DOCS = myapp\n"; + exit(1); + } + } + + if ($tmp !~ / - /) + { + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + $files .= "$entry "; + } + closedir (THISDIR); + print STDOUT "docfiles found = $files\n" if ($verbose); + } + else + { + $tmp =~ s/\034/ /g; + $tmp =~ s/^\S*\s*-\s*//; + $files = $tmp; + } + goto nodocs if (!$files); # Nothing to do + + if ($files =~ /(^| )index\.docbook($| )/) { + + my $lines = ""; + my $lookup = 'MEINPROC\s*='; + if ($MakefileData !~ /\n($lookup)/) { + $lines = "MEINPROC=/\$(kde_bindir)/meinproc\n"; + } + $lookup = 'KDE_XSL_STYLESHEET\s*='; + if ($MakefileData !~ /\n($lookup)/) { + $lines .= "KDE_XSL_STYLESHEET=/\$(kde_datadir)/ksgmltools2/customization/kde-chunk.xsl\n"; + } + $lookup = '\nindex.cache.bz2:'; + if ($MakefileData !~ /\n($lookup)/) { + $lines .= "index.cache.bz2: \$(srcdir)/index.docbook \$(KDE_XSL_STYLESHEET) $files\n"; + $lines .= "\t\@if test -n \"\$(MEINPROC)\"; then echo \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; fi\n"; + $lines .= "\n"; + } + + $lines .= "docs-am: index.cache.bz2\n"; + $lines .= "\n"; + $lines .= "install-docs: docs-am install-nls\n"; + $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; + $lines .= "\t\@if test -f index.cache.bz2; then \\\n"; + $lines .= "\techo \$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; + $lines .= "\t\$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; + $lines .= "\tfi\n"; + $lines .= "\t-rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; + $lines .= "\t\$(LN_S) \$(kde_libs_htmldir)/$kdelang/common \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; + + $lines .= "\n"; + $lines .= "uninstall-docs:\n"; + $lines .= "\t-rm -rf \$(kde_htmldir)/$kdelang/$appname\n"; + $lines .= "\n"; + $lines .= "clean-docs:\n"; + $lines .= "\t-rm -f index.cache.bz2\n"; + $lines .= "\n"; + $target_adds{"install-data-am"} .= "install-docs "; + $target_adds{"uninstall"} .= "uninstall-docs "; + $target_adds{"clean-am"} .= "clean-docs "; + appendLines ($lines); + } else { + appendLines("docs-am: $files\n"); + } + + $target_adds{"install-data-am"} .= "install-nls"; + $target_adds{"uninstall"} .= "uninstall-nls "; + + $tmp = "install-nls:\n"; + $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; + $tmp .= "\t\@for base in $files; do \\\n"; + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\t \$(INSTALL_DATA) \$(srcdir)/\$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\tdone\n"; + if ($appname eq 'common') { + $tmp .= "\t\@echo \"merging common and language specific dir\" ;\\\n"; + $tmp .= "\tif test ! -e \$(kde_htmldir)/en/common/kde-common.css; then echo 'no english docs found in \$(kde_htmldir)/en/common/'; exit 1; fi \n"; + $tmp .= "\t\@com_files=`cd \$(kde_htmldir)/en/common && echo *` ;\\\n"; + $tmp .= "\tcd \$(DESTDIR)\$(kde_htmldir)/$kdelang/common ;\\\n"; + $tmp .= "\tif test -n \"\$\$com_files\"; then for p in \$\$com_files ; do \\\n"; + $tmp .= "\t case \" $files \" in \\\n"; + $tmp .= "\t *\" \$\$p \"*) ;; \\\n"; + $tmp .= "\t *) test ! -e \$\$p && echo \$(LN_S) ../../en/common/\$\$p \$(DESTDIR)\$(kde_htmldir)/$kdelang/common/\$\$p && \$(LN_S) ../../en/common/\$\$p \$\$p ;; \\\n"; + $tmp .= "\t esac ; \\\n"; + $tmp .= "\tdone ; fi ; true\n"; + } + $tmp .= "\n"; + $tmp .= "uninstall-nls:\n"; + $tmp .= "\tfor base in $files; do \\\n"; + $tmp .= "\t rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\tdone\n\n"; + appendLines ($tmp); + + $target_adds{"distdir"} .= "distdir-nls "; + + $tmp = "distdir-nls:\n"; + $tmp .= "\tfor file in $files; do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + + appendLines ($tmp); + + return 0; + + nodocs: + appendLines("docs-am:\n"); + return 1; +} + +#----------------------------------------------------------------------------- +# Find headers in any of the source directories specified previously, that +# are candidates for "moc-ing". +sub findMocCandidates () +{ + my @list = (); + foreach $dir (@headerdirs) + { + opendir (SRCDIR, "$dir"); + @hFiles = grep { /.+\.$hExt$/o } readdir(SRCDIR); + closedir SRCDIR; + foreach $hf (@hFiles) + { + open (HFIN, "$dir/$hf") || die "Could not open $dir/$hf: $!\n"; + my $hfsize = 0; + seek(HFIN, 0, 2); + $hfsize = tell(HFIN); + seek(HFIN, 0, 0); + read HFIN, $hfData, $hfsize; + close HFIN; + # push (@list, $hf) if(index($hfData, "Q_OBJECT") >= 0); ### fast but doesn't handle //Q_OBJECT + if ( $hfData =~ /{([^}]*)Q_OBJECT/s ) { ## handle " { friend class blah; Q_OBJECT " + push (@list, $hf) unless $1 =~ m://[^\n]*Q_OBJECT[^\n]*$:s; ## handle "// Q_OBJECT" + } + } + # The assoc array of root of headerfile and header filename + foreach $hFile (@list) + { + $hFile =~ /(.*)\.[^\.]*$/; # Find name minus extension + if ($mocFiles{$1}) + { + print STDERR "Warning: Multiple header files found for $1\n"; + next; # Use the first one + } + $mocFiles{$1} = "$dir\035$hFile"; # Add relative dir + } + } + + return 0; +} + +#----------------------------------------------------------------------------- + +# The programmer has specified a moc list. Prune out the moc candidates +# list that we found based on looking at the header files. This generates +# a warning if the programmer gets the list wrong, but this doesn't have +# to be fatal here. +sub pruneMocCandidates ($) +{ + my %prunedMoc = (); + local @mocList = split(' ', @_[0]); + + foreach $mocname (@mocList) + { + $mocname =~ s/\.moc$//; + if ($mocFiles{$mocname}) + { + $prunedMoc{$mocname} = $mocFiles{$mocname}; + } + else + { + my $print = $makefileDir; + $print =~ s/^\Q$topdir\E\\//; + # They specified a moc file but we can't find a header that + # will generate this moc file. That's possible fatal! + print STDERR "Warning: No moc-able header file for $print/$mocname\n"; + } + } + + undef %mocFiles; + %mocFiles = %prunedMoc; +} + +#----------------------------------------------------------------------------- + +# Finds the cpp files (If they exist). +# The cpp files get appended to the header file separated by \035 +sub checkMocCandidates () +{ + my @cppFiles; + my $cpp2moc; # which c++ file includes which .moc files + my $moc2cpp; # which moc file is included by which c++ files + + return unless (keys %mocFiles); + opendir(THISDIR, ".") || return; + @cppFiles = grep { /.+\.$cppExt$/o && !/.+\.moc\.$cppExt$/o + && !/.+\.all_$cppExt\.$cppExt$/o } readdir(THISDIR); + closedir THISDIR; + return unless (@cppFiles); + my $files = join (" ", @cppFiles); + $cpp2moc = {}; + $moc2cpp = {}; + foreach $cxxf (@cppFiles) + { + open (CXXFIN, $cxxf) || die "Could not open $cxxf: $!\n"; + seek(CXXFIN, 0, 2); + my $cxxfsize = tell(CXXFIN); + seek(CXXFIN, 0, 0); + read CXXFIN, $cxxfData, $cxxfsize; + close CXXFIN; + while(($cxxfData =~ m/^[ \t]*\#include\s*[<\"](.*\.moc)[>\"]/gm)) { + $cpp2moc->{$cxxf}->{$1} = 1; + $moc2cpp->{$1}->{$cxxf} = 1; + } + } + foreach my $mocFile (keys (%mocFiles)) + { + @cppFiles = keys %{$moc2cpp->{"$mocFile.moc"}}; + if (@cppFiles == 1) { + $mocFiles{$mocFile} .= "\035" . $cppFiles[0]; + push(@deped, $mocFile); + } elsif (@cppFiles == 0) { + push (@newObs, $mocFile); # Produce new object file + next if ($haveAutomocTag); # This is expected... + # But this is an error we can deal with - let them know + print STDERR + "Warning: No c++ file that includes $mocFile.moc\n"; + } else { + # We can't decide which file to use, so it's fatal. Although as a + # guess we could use the mocFile.cpp file if it's in the list??? + print STDERR + "Error: Multiple c++ files that include $mocFile.moc\n"; + print STDERR "\t",join ("\t", @cppFiles),"\n"; + $errorflag = 1; + delete $mocFiles{$mocFile}; + # Let's continue and see what happens - They have been told! + } + } +} + +#----------------------------------------------------------------------------- + +# Add the rules for generating moc source from header files +# For Automoc output *.moc.cpp but normally we'll output *.moc +# (We must compile *.moc.cpp separately. *.moc files are included +# in the appropriate *.cpp file by the programmer) +sub addMocRules () +{ + my $cppFile; + my $hFile; + + foreach $mocFile (keys (%mocFiles)) + { + undef $cppFile; + ($dir, $hFile, $cppFile) = split ("\035", $mocFiles{$mocFile}, 3); + $dir =~ s#^\.#\$(srcdir)#; + if (defined ($cppFile)) + { + $target_adds{"\$(srcdir)/$cppFile"} .= "$mocFile.moc "; + appendLines ("$mocFile.moc: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile.moc\n"); + $cleanMoc .= " $mocFile.moc"; + } + else + { + appendLines ("$mocFile$mocExt: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile$mocExt\n"); + $cleanMoc .= " $mocFile$mocExt"; + } + } +} + +sub make_meta_classes () +{ + return if ($kdeopts{"qtonly"}); + + my $cppFile; + my $hFile; + my $moc_class_headers = ""; + foreach $program (@programs) { + my $mocs = ""; + my @progsources = split(/[\s\034]+/, $sources{$program}); + my @depmocs = split(' ', $depedmocs{$program}); + my %shash = (), %mhash = (); + @shash{@progsources} = 1; # we are only interested in the existence + @mhash{@depmocs} = 1; + + print STDOUT "program=$program\n" if ($verbose); + print STDOUT "psources=[".join(' ', keys %shash)."]\n" if ($verbose); + print STDOUT "depmocs=[".join(' ', keys %mhash)."]\n" if ($verbose); + print STDOUT "globalmocs=[".join(' ', keys(%globalmocs))."]\n" if ($verbose); + foreach my $mocFile (keys (%globalmocs)) + { + undef $cppFile; + ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); + $dir =~ s#^\.#\$(srcdir)#; + if (defined ($cppFile)) + { + $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; + } + else + { + # Bah. This is the case, if no C++ file includes the .moc + # file. We make a .moc.cpp file for that. Unfortunately this + # is not included in the %sources hash, but rather is mentioned + # in %depedmocs. If the user wants to use AUTO he can't just + # use an unspecific METAINCLUDES. Instead he must use + # program_METAINCLUDES. Anyway, it's not working real nicely. + # E.g. Its not clear what happens if user specifies two + # METAINCLUDES=AUTO in the same Makefile.am. + $mocs .= " $mocFile.moc.$cxxsuffix" + if exists $mhash{$mocFile.".moc.$cxxsuffix"}; + } + } + if ($mocs) { + print STDOUT "==> mocs=[".$mocs."]\n" if ($verbose); + my $sourcename = $program."_meta_unload"; + my $ext = ($program =~ /_la$/) ? ".lo" : ".o"; + my $srcfile = $sourcename.".$cxxsuffix"; + my $objfile = $sourcename.$ext; + $moc_class_headers .= " $srcfile"; + my $appl; + $appl = "$srcfile: $mocs\n"; + $appl .= "\t\@echo 'creating $srcfile'\n"; + $appl .= "\t\@-rm -f $srcfile\n"; + $appl .= "\t\@echo 'static const char * _metalist_$program\[\] = {' > $srcfile\n"; + $appl .= "\t\@cat $mocs | grep 'char.*className' | "; + $appl .= "sed -e 's/.*[^A-Za-z0-9_:]\\([A-Za-z0-9_:]*\\)::className.*\$\$/\\\"\\1\\\",/' | sort | uniq >> $srcfile\n"; + $appl .= "\t\@echo '0};' >> $srcfile\n"; + $appl .= "\t\@echo '#include ' >> $srcfile\n"; + $appl .= "\t\@echo '_UNLOAD($program)' >> $srcfile\n"; + $appl .= "\n"; + + $realObjs{$program} .= " \034" . $objfile . " "; + $sources{$program} .= " $srcfile"; + $sources_changed{$program} = 1; + $dep_files .= " \$(DEPDIR)/$sourcename.P"; + appendLines ($appl); + } + print STDOUT "\n" if $verbose; + } + if ($moc_class_headers) { + appendLines ("$cleantarget-moc-classes:\n\t-rm -f $moc_class_headers\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-moc-classes "; + } +} + +#----------------------------------------------------------------------------- + +sub updateMakefile () +{ + return if ($dryrun); + + open (FILEOUT, "> $makefile") + || die "Could not create $makefile: $!\n"; + + print FILEOUT "\# $progId - " . '$Revision: 1.7 $ ' . "\n"; + $MakefileData =~ s/\034/\\\n/g; # Restore continuation lines + print FILEOUT $MakefileData; + close FILEOUT; +} + +#----------------------------------------------------------------------------- + +# The given line needs to be removed from the makefile +# Do this by adding the special "removed line" comment at the line start. +sub removeLine ($$) +{ + my ($lookup, $old) = @_; + + $old =~ s/\034/\\\n#>- /g; # Fix continuation lines + $MakefileData =~ s/\n$lookup/\n#>\- $old/; +} + +#----------------------------------------------------------------------------- + +# Replaces the old line with the new line +# old line(s) are retained but tagged as removed. The new line(s) have the +# "added" tag placed before it. +sub substituteLine ($$) +{ + my ($lookup, $new) = @_; + + if ($MakefileData =~ /\n($lookup)/) { + $old = $1; + $old =~ s/\034/\\\n#>\- /g; # Fix continuation lines + $new =~ s/\034/\\\n/g; + my $newCount = ($new =~ tr/\n//) + 1; + $MakefileData =~ s/\n$lookup/\n#>- $old\n#>\+ $newCount\n$new/; + } else { + print STDERR "Warning: substitution of \"$lookup\" in $printname failed\n"; + } +} + +#----------------------------------------------------------------------------- + +# Slap new lines on the back of the file. +sub appendLines ($) +{ + my ($new) = @_; + $new =~ s/\034/\\\n/g; # Fix continuation lines + my $newCount = ($new =~ tr/\n//) + 1; + $MakefileData .= "\n#>\+ $newCount\n$new"; +} + +#----------------------------------------------------------------------------- + +# Restore the Makefile.in to the state it was before we fiddled with it +sub restoreMakefile () +{ + $MakefileData =~ s/# $progId[^\n\034]*[\n\034]*//g; + # Restore removed lines + $MakefileData =~ s/([\n\034])#>\- /$1/g; + # Remove added lines + while ($MakefileData =~ /[\n\034]#>\+ ([^\n\034]*)/) + { + my $newCount = $1; + my $removeLines = ""; + while ($newCount--) { + $removeLines .= "[^\n\034]*([\n\034]|)"; + } + $MakefileData =~ s/[\n\034]#>\+.*[\n\034]$removeLines/\n/; + } +} + +#----------------------------------------------------------------------------- diff --git a/admin/am_edit.py b/admin/am_edit.py new file mode 100644 index 0000000..dfe574e --- /dev/null +++ b/admin/am_edit.py @@ -0,0 +1,330 @@ +import getopt, string, posixpath, sys, os, os.path, re + +# Some global globals... +verbose = 0 +thisProg = posixpath.basename(sys.argv[0]) +if not thisProg: # happy only when running in xemacs ;/ + thisProg = 'am_edit.py' +cppsuffixes = ['cpp', 'cc', 'cxx', 'C', 'c++'] +hExt = ['h', 'H', 'hh', 'hxx', 'h++'] +progId = "KDE tags expanded automatically by " + thisProg +use_final = 1 +dryrun = 0 +pathoption = 0 +topdir = os.path.abspath(os.curdir) + "/" +foreigndirs = [] + +class Makefile: + def __init__(self, file): + # some useful globals for the subroutines called here + self.headerdirs = ['.'] + self.haveAutomocTag = 0 + + self.programs = [] + + # lists the objects compiled into $program + self.realobjs = {} + # lists the sources used for $program + self.sources = {} + # lists the objects compiled when final + self.finalObjs = {} + # the binary name of program variable + self.realname = {} + # lists the idl files used for $program + self.idlfiles = {} + # lists all idl generated files for cleantarget + self.idl_output = "" + + self.depedmocs = {} + + self.dep_files = "" + self.dep_finals = "" + # the targets to add + self.target_adds = {} + self.kdelang = "" + self.makefile = file + self.makefileDir = os.path.dirname(self.makefile) + self.options = {} + + + NoMakefileAmFound = "found Makefile.in without Makefile.am" + + def findLine(self, line): + import types + if type(line) is types.StringType: + regexp = re.compile(line) + else: + regexp = line + for line in self.lines: + match = regexp.match(line) + if match: + return match + + def substituteLine(self, old, new): + import types + if type(old) is types.StringType: + regexp = re.compile(old) + else: + regexp = old + + for index in range(len(self.lines)): + line = self.lines[index] + match = regexp.match(line) + if match: + line = '#>- ' + line + newlines = string.split(new, '\n') + self.lines[index:index+1] = [line, '#>+ %d' % len(newlines)] + newlines + return + + def addTarget(self, target, dependson): + if not self.target_adds.has_key(target): + self.target_adds[target] = [dependson] + else: + self.target_adds[target].append(dependson) + + def appendLines(self, newlines): + lines = string.split(newlines, '\n') + ['\n'] + self.lines.extend(['#>+ %d' % len(lines)] + lines) + + def restore(self): + index = 0 + while index < len(self.lines): + line = self.lines[index] + if line[0:3] == '#>+': + # the +1 is the comment itself + linec = string.atoi(line[3:]) + 1 + del self.lines[index:index+linec] + continue + if line[0:3] == '#>-': + self.lines[index] = self.lines[index][4:] + index = index + 1 + + def initialize(self): + global foreigndirs + + os.chdir(self.makefileDir) + self.printname = string.replace(self.makefile, topdir, "") + self.makefile = os.path.basename(self.makefile) + + if not posixpath.exists("Makefile.am"): + raise self.NoMakefileAmFound, self.makefileDir + + for dir in foreigndirs: + if dir.match(self.makefileDir): + print 'leaving ' + self.makefileDir + return 0 + + f = open(self.makefile) + self.lines = [] + + while 1: + line = f.readline() + if not line: break + self.lines.append(string.rstrip(line)) + + f.close() + + # take out the + self.restore() + + optionline = re.compile('^\s*(\w+)\s*=\s*([^\n]*)$') + linecontinued = re.compile('\\\s*\n') + lastline = '' + + index = 0 + while index < len(self.lines): + line = self.lines[index] + if linecontinued.search(line): + self.lines[index] = linecontinued.sub(' ', line) + self.lines[index+1] + continue + else: + index = index + 1 + + match = optionline.search(line) + if match: + self.options[match.group(1)] = match.group(2) + + if self.options.has_key('KDE_OPTIONS'): + options = string.split(self.options['KDE_OPTIONS']) + if 'foreign' in options: + foreigndirs.append(re.compile(self.makefileDir + "/.*")) + return 0 + + self.cxxsuffix = "" + suffixes = re.compile('^\.SUFFIXES:(.*)$') + + for line in self.lines: + match = suffixes.match(line) + if match: + existing_suffixes = string.split(match.group(1)) + for suffix in existing_suffixes: + # leave out the . + if suffix[1:] in cppsuffixes: + self.cxxsuffix = suffix[1:] + break + if self.cxxsuffix: + break + + search_real_programs = {} + + for option in self.options.keys(): + if string.rfind(option, '_OBJECTS') > 0: + + program = option[0:string.find(option, '_OBJECTS')] + objs = self.options[option] + + variable_in_objects = 0 + + objlist = string.split(objs) + variable = re.compile('\$\((\w+)\)') + for obj in objlist: + match = variable.match(obj) + if match and not match.group(1) == 'OBJEXT': + variable_in_objects = 1 + break + + if variable_in_objects: + continue + + if len(program) > 3 and program[3] == 'am_': + program = program[3:] + + if verbose: + print "found program " + program + + self.programs.append(program) + self.realobjs[program] = objs + + if self.options.has_key(program + "_SOURCES"): + self.sources[program] = self.options[program + "_SOURCES"] + else: + self.sources[program] = "" + sys.stderr.write("found program with no _SOURCES: " + program + '\n') + + # unmask to regexp + realprogram = string.replace(program, '_', '.') + search_real_programs[program] = re.compile('.*(' + realprogram + + ')(\$\(EXEEXT\)?)?:.*\$\(' + + program + '_OBJECTS\).*') + + self.realname[program] = ""; + + for line in self.lines: + if string.find(line, '_OBJECTS') > 0: # just a random piece to not use at _every_ line + for program in self.programs: + match = search_real_programs[program].match(line) + if match: + self.realname[program] = match.group(1) + + def finalTouch(self): + if self.options.has_key('DEPDIR'): + sys.stderr.write(self.printname + " defines DEPDIR. This means you're using automake > 1.4 - this is not supported!") + else: + # taken out a random variable + self.substituteLine('bindir\s*=.*', 'DEPDIR = .deps\nbindir = ' + self.options['bindir']) + + self.appendLines('cvs-clean:\n' + + '\t$(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean') + + self.appendLines('kde-rpo-clean:\n'+ + '\t-rm -f *.rpo') + + self.addTarget('clean', 'kde-rpo-clean') + self.addAllTargets() + + def addAllTargets(self): + for target in self.target_adds.keys(): + match = self.findLine(target + ':\s*(.*)') + if match: + self.substituteLine(match.re, target + ': ' + + string.join(self.target_adds[target]) + + ' ' + match.group(1)) + + def writeback(self): + f = open(self.makefile, 'w') + for line in self.lines: + f.write(line) + f.write('\n') + f.close() + + def tag_automake(self): + match = self.findLine('^(.*cd \$\(top_srcdir\)\s+&&\s+\$\(AUTOMAKE\).*)$') + if not match: return 1 + self.substituteLine(match.re, match.group(1) + '\n' + + '\tcd $(top_srcdir) && python ' + + thisProg + ' ' + self.printname) + +def main(): + global use_final, dryrun, pathoption, thisProg, verbose + + optlist, makefiles = getopt.getopt(sys.argv[1:], 'vhp:n', [ + 'version', 'verbose', 'path=', 'help', 'no-final']) + + for option, param in optlist: + if option == '--version': + print "\n" + print thisProg + "$Revision: 1.3 $" + print "This is really free software, unencumbered by the GPL." + print "You can do anything you like with it except sueing me." + print "Copyright 1998 Kalle Dalheimer " + print "Concept, design and unnecessary questions about perl" + print " by Matthias Ettrich " + print "" + print "Making it useful by Stephan Kulow and" + print "Harri Porten " + print "Updated (Feb-1999), John Birch " + print "Current Maintainer Stephan Kulow" + sys.exit(0) + if option == '--verbose' or option == '-v': + verbose = 1 + if option == '-p' or option == '--path': + thisProg = param + "/" + thisProg + if (not posixpath.exists(thisProg)): + sys.stderr.write(thisProg + " doesn't exist\n") + pathoption=1 + if option == '--help' or option == '-h': + print "Usage " + thisProg + " [OPTION] ... [dir/Makefile.in]..." + print "Patches dir/Makefile.in generated from automake" + print "(where dir can be a full or relative directory name)" + print " -v, --verbose verbosely list files processed" + print " -h, --help print this help, then exit" + print " --version print version number, then exit" + print " -p, --path= use the path to am_edit if the path" + print " --no-final don't patch for --enable-final" + print " called from is not the one to be used" + sys.exit(0) + if option == '--no-final': + use_final = 0 + if option == '-n': + dryrun = 1 + + if not use_final: + thisProg = thisProg + " --no-final" + + if thisProg[0] == '/' and not pathoption: + sys.stderr.write( "Illegal full pathname call performed...\n" + "The call to \"" + thisProg + "\"\n" + "would be inserted in some Makefile.in.\n" + "Please use option --path.\n") + sys.exit(1) + + if len(makefiles) == 0: + import find + makefiles = find.find('Makefile.in') + + for index in range(len(makefiles)): + if not makefiles[index][0] == '/': + makefiles[index] = os.path.normcase(os.path.abspath(makefiles[index])) + + makefiles.sort() + for file in makefiles: + makefile = Makefile(file) + try: + makefile.initialize() + makefile.tag_automake() + makefile.finalTouch() + makefile.writeback() + except Makefile.NoMakefileAmFound, param: + if verbose: print Makefile.NoMakefileAmFound + ' in ' + param + +main() diff --git a/admin/conf.change.pl b/admin/conf.change.pl new file mode 100644 index 0000000..7793be4 --- /dev/null +++ b/admin/conf.change.pl @@ -0,0 +1,123 @@ +#!/usr/bin/perl -w + +# this script patches a config.status file, to use our own perl script +# in the main loop +# we do it this way to circumvent hacking (and thereby including) +# autoconf function (which are GPL) into our LGPL acinclude.m4.in +# written by Michael Matz + +# we have to change two places +# 1. the splitting of the substitutions into chunks of 90 (or even 48 in +# later autoconf's +# 2. the big main loop which patches all Makefile.in's +use File::Basename; + +my $ac_aux_dir = dirname($0); +my ($flag); +my $ac_version = 0; +my $vpath_seen = 0; +$flag = 0; + +while (<>) { +# usage of $flag: 0 -- we have seen nothing yet +# 1 -- we are in (1) +# 2 -- we have ended (1) +# 3 -- we are in (2) +# 4 -- we ended (2) + + if ($flag == 4) { + print; + } elsif ($flag == 0) { +# 1. begins with (including): "ac_max_sed_\S+\s*=\s*[0-9]+..." +# ends with (excluding) "CONFIG_FILE=..." +# in later autoconf (2.14.1) there is no CONFIG_FILES= line, +# but instead the (2) directly follow (1) + if (/^\s*ac_max_sed_([a-z]+).*=\s*([0-9]+)/ ) { + $flag = 1; + if ($1 eq 'lines') { + # lets hope its different with 2141, + # wasn't able to verify that + if ($2 eq '48') { + $ac_version = 250; + } + else { + $ac_version = 2141; + } + } elsif ($1 eq 'cmds') { + $ac_version = 213; + } + # hmm, we don't know the autoconf version, but we try anyway + } else { + print; + } + } elsif ($flag == 1) { + if (/^\s*CONFIG_FILES=/ && ($ac_version != 250)) { + print; + $flag = 2; + } elsif (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { + $flag = 3; + } + } elsif ($flag == 2) { +# 2. begins with: "for ac_file in.*CONFIG_FILES" (the next 'for' after (1)) +# end with: "rm -f conftest.s\*" +# on autoconf 250, it ends with '# CONFIG_HEADER section' + if (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { + $flag = 3; + } else { + print; + } + } elsif ($flag == 3) { + if (/^\s*rm\s+-f\s+conftest/ ) { + $flag = 4; + insert_main_loop(); + } elsif (/^\s*rm\s+-f\s+.*ac_cs_root/ ) { + $flag = 4; + insert_main_loop(); + #die "hhhhhhh"; + if ($ac_version != 2141) { + print STDERR "hmm, don't know autoconf version\n"; + } + } elsif (/^\#\s*CONFIG_HEADER section.*/) { + $flag = 4; + insert_main_loop(); + if($ac_version != 250) { + print STDERR "hmm, something went wrong :-(\n"; + } + } elsif (/VPATH/ ) { + $vpath_seen = 1; + } + } +} + +die "wrong input (flag != 4)" unless $flag == 4; +print STDERR "hmm, don't know autoconf version\n" unless $ac_version; +die "autoconf 2.50 is currently not supported" if $ac_version == 250; + +sub insert_main_loop { + print <> \$ac_cs_root.subs +EOF + } + print <> \$ac_cs_root.sacfiles + fi +done +if test -f \$ac_cs_root.sacfiles ; then + perl $ac_aux_dir/config.pl "\$ac_cs_root" "\$ac_given_srcdir" "\$ac_given_INSTALL" +fi +rm -f \$ac_cs_root.s* + +EOF + return; +} diff --git a/admin/config.guess b/admin/config.guess new file mode 100755 index 0000000..378eab8 --- /dev/null +++ b/admin/config.guess @@ -0,0 +1,1368 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file 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. + +# Written by Per Bothner . +# Please send patches to . +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + + +dummy=dummy-$$ +trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int dummy(){}" > $dummy.c + for c in cc gcc c89 ; do + ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 + if test $? = 0 ; then + CC_FOR_BUILD="$c"; break + fi + done + rm -f $dummy.c $dummy.o $dummy.rel + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 8/24/94.) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # Netbsd (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # Determine the machine/vendor (is the vendor relevant). + case "${UNAME_MACHINE}" in + amiga) machine=m68k-unknown ;; + arm32) machine=arm-unknown ;; + atari*) machine=m68k-atari ;; + sun3*) machine=m68k-sun ;; + mac68k) machine=m68k-apple ;; + macppc) machine=powerpc-apple ;; + hp3[0-9][05]) machine=m68k-hp ;; + ibmrt|romp-ibm) machine=romp-ibm ;; + *) machine=${UNAME_MACHINE}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE}" in + i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k) + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit 0 ;; + alpha:OSF1:*:*) + if test $UNAME_RELEASE = "V4.0"; then + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + fi + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + cat <$dummy.s + .data +\$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text + .globl main + .align 4 + .ent main +main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) + UNAME_MACHINE="alpha" + ;; + 1-0) + UNAME_MACHINE="alphaev5" + ;; + 1-1) + UNAME_MACHINE="alphaev56" + ;; + 1-101) + UNAME_MACHINE="alphapca56" + ;; + 2-303) + UNAME_MACHINE="alphaev6" + ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; + esac + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit 0 ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit 0 ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit 0;; + amiga:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit 0 ;; + arc64:OpenBSD:*:*) + echo mips64el-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + arc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + hkmips:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + pmax:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sgi:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + wgrisc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit 0;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit 0 ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit 0 ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + i86pc:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit 0 ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit 0 ;; + atari*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; + sun3*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mac68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit 0 ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit 0 ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy \ + && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i?86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + sed 's/^ //' << EOF >$dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo rs6000-ibm-aix3.2.5 + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit 0 ;; + *:AIX:*:[45]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + case "${HPUX_REV}" in + 11.[0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + esac ;; + esac + fi ;; + esac + if [ "${HP_ARCH}" = "" ]; then + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` + if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi + rm -f $dummy.c $dummy + fi ;; + esac + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + sed 's/^ //' << EOF >$dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + *9??*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + i?86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit 0 ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit 0 ;; + hppa*:OpenBSD:*:*) + echo hppa-unknown-openbsd + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*X-MP:*:*:*) + echo xmp-cray-unicos + exit 0 ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} + exit 0 ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ + exit 0 ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3D:*:*:*) + echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY-2:*:*:*) + echo cray2-cray-unicos + exit 0 ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit 0 ;; + hp300:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + *:OpenBSD:*:*) + echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + exit 0 ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit 0 ;; + i*:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit 0 ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit 0 ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + *:GNU:*:*) + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit 0 ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux + exit 0 ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + mips:Linux:*:*) + cat >$dummy.c < /* for printf() prototype */ +int main (int argc, char *argv[]) { +#else +int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __MIPSEB__ + printf ("%s-unknown-linux-gnu\n", argv[1]); +#endif +#ifdef __MIPSEL__ + printf ("%sel-unknown-linux-gnu\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + ;; + ppc:Linux:*:*) + # Determine Lib Version + cat >$dummy.c < +#if defined(__GLIBC__) +extern char __libc_version[]; +extern char __libc_release[]; +#endif +main(argc, argv) + int argc; + char *argv[]; +{ +#if defined(__GLIBC__) + printf("%s %s\n", __libc_version, __libc_release); +#else + printf("unknown\n"); +#endif + return 0; +} +EOF + LIBC="" + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null + if test "$?" = 0 ; then + ./$dummy | grep 1\.99 > /dev/null + if test "$?" = 0 ; then LIBC="libc1" ; fi + fi + rm -f $dummy.c $dummy + echo powerpc-unknown-linux-gnu${LIBC} + exit 0 ;; + alpha:Linux:*:*) + cat <$dummy.s + .data + \$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + .text + .globl main + .align 4 + .ent main + main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + LIBC="" + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) UNAME_MACHINE="alpha" ;; + 1-0) UNAME_MACHINE="alphaev5" ;; + 1-1) UNAME_MACHINE="alphaev56" ;; + 1-101) UNAME_MACHINE="alphapca56" ;; + 2-303) UNAME_MACHINE="alphaev6" ;; + 2-307) UNAME_MACHINE="alphaev67" ;; + esac + objdump --private-headers $dummy | \ + grep ld.so.1 > /dev/null + if test "$?" = 0 ; then + LIBC="libc1" + fi + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit 0 ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit 0 ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit 0 ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit 0 ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit 0 ;; + i?86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + ld_supported_emulations=`cd /; ld --help 2>&1 \ + | sed -ne '/supported emulations:/!d + s/[ ][ ]*/ /g + s/.*supported emulations: *// + s/ .*// + p'` + case "$ld_supported_emulations" in + i?86linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 + ;; + elf_i?86) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + i?86coff) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 + ;; + esac + # Either a pre-BFD a.out linker (linux-gnuoldld) + # or one that does not give us useful --help. + # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. + # If ld does not provide *any* "supported emulations:" + # that means it is gnuoldld. + test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0 + case "${UNAME_MACHINE}" in + i?86) + VENDOR=pc; + ;; + *) + VENDOR=unknown; + ;; + esac + # Determine whether the default compiler is a.out or elf + cat >$dummy.c < +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __ELF__ +# ifdef __GLIBC__ +# if __GLIBC__ >= 2 + printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +#else + printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + ;; +# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions +# are messed up and put the nodename in both sysname and nodename. + i?86:DYNIX/ptx:4*:*) + echo i386-sequent-sysv4 + exit 0 ;; + i?86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit 0 ;; + i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit 0 ;; + i?86:*:5:7*) + # Fixed at (any) Pentium or better + UNAME_MACHINE=i586 + if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then + echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + fi + exit 0 ;; + i?86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit 0 ;; + i?86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i386. + echo i386-pc-msdosdjgpp + exit 0 ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + M68*:*:R3V[567]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4.3${OS_REL} && exit 0 + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:* | i?86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit 0 ;; + PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit 0 ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit 0 ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit 0 ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit 0 ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit 0 ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit 0 ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit 0 ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit 0 ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit 0 ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Darwin:*:*) + echo `uname -p`-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + if test "${UNAME_MACHINE}" = "x86pc"; then + UNAME_MACHINE=pc + fi + echo `uname -p`-${UNAME_MACHINE}-nto-qnx + exit 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSR-[KW]:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit 0 ;; + i?86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit 0 ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit 0 ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit 0 ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit 0 ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit 0 ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit 0 ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit 0 ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +cat >$dummy.c < +# include +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0 +rm -f $dummy.c $dummy + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +cat >&2 < in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +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` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/admin/config.pl b/admin/config.pl new file mode 100644 index 0000000..011cd25 --- /dev/null +++ b/admin/config.pl @@ -0,0 +1,210 @@ +#!/usr/bin/perl +# a script for use by autoconf to make the Makefiles +# from the Makefile.in's +# +# the original autoconf mechanism first splits all substitutions into groups +# of ca. 90, and than invokes sed for _every_ Makefile.in and every group +# (so around 2-3 times per Makefile.in). So this takes forever, as sed +# has to recompile the regexps every time. +# +# this script does better. It changes all Makefile.ins in one process. +# in kdelibs the time for building Makefile went down from 2:59 min to 13 sec! +# +# written by Michael Matz +# +# the first part was done by looking at the config.status files generated +# by configure. +# +my $ac_cs_root=$ARGV[0]; +my $ac_given_srcdir=$ARGV[1]; +my $ac_given_INSTALL=$ARGV[2]; + +# print "ac_cs_root=$ac_cs_root\n"; +# print "ac_given_srcdir=$ac_given_srcdir\n"; +# print "ac_given_INSTALL=$ac_given_INSTALL\n"; + +my ($srcdir, $top_srcdir); +my $INSTALL; +my $bad_perl = ($] < 5.005); + +open(CF, "< $ac_cs_root.subs") || die "can't open $ac_cs_root.subs: $!"; +my @subs = ; +close(CF); +chomp @subs; +@comp_match=(); +@comp_subs=(); + +if ($bad_perl) { + print "Using perl older than version 5.005\n"; + foreach my $pat (@subs) { + if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/g% ) + || ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/;t% ) + ) { + # form : s%bla%blubb%g + # or s%bla%blubb%;t t (newer autoconf) + push @comp_subs, make_closure($1, $2); + } elsif ( ($pat =~ /%([^%]*)%d/ ) + || ($pat =~ m%/([^/]*)/d% ) + ) { + push @comp_subs, make_closure($1, ""); + } else { + die "Uhh. Malformed pattern in $ac_cs_root.subs ($pat)" + unless ( $pat =~ /^\s*$/ ); # ignore white lines + } + } +} else { + foreach my $pat (@subs) { + if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/g% ) + || ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/;t% ) + ) { + # form : s%bla%blubb%g + # or s%bla%blubb%;t t (newer autoconf) + push @comp_match, eval "qr/\Q$1\E/"; # compile match pattern + push @comp_subs, $2; + } elsif ( ($pat =~ /%([^%]*)%d/ ) + || ($pat =~ m%/([^/]*)/d% ) + ) { + push @comp_match, eval "qr/\Q$1\E/"; + push @comp_subs, ""; + } else { + die "Uhh. Malformed pattern in $ac_cs_root.subs ($pat)" + unless ( $pat =~ /^\s*$/ ); # ignore white lines + } + } +} +undef @subs; + +# read the list of files to be patched, form: +# ./Makefile arts/Makefile arts/examples/Makefile arts/flow/Makefile + +open(CF, "< $ac_cs_root.sacfiles") || die "can't open $ac_cs_root.sacfiles: $!"; +my @ac_files = ; +close(CF); +chomp @ac_files; + +my $ac_file; +foreach $ac_file (@ac_files) { + next if $ac_file =~ /\.\./; + next if $ac_file =~ /^\s*$/; + my $ac_file_in; + my ($ac_dir, $ac_dots, $ac_dir_suffix); + + if ($ac_file =~ /.*:.*/ ) { + ($ac_file_in = $ac_file) =~ s%[^:]*:%%; + $ac_file =~ s%:.*%%; + } else { + $ac_file_in = $ac_file.".in"; + } + +# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + +# Remove last slash and all that follows it. Not all systems have dirname. + ($ac_dir = $ac_file) =~ s%/[^/][^/]*$%%; + if ( ($ac_dir ne $ac_file) && ($ac_dir ne ".")) { +# The file is in a subdirectory. + if (! -d "$ac_dir") { mkdir "$ac_dir", 0777; } + ($ac_dir_suffix = $ac_dir) =~ s%^./%%; + $ac_dir_suffix="/".$ac_dir_suffix; +# A "../" for each directory in $ac_dir_suffix. + ($ac_dots = $ac_dir_suffix) =~ s%/[^/]*%../%g; + } else { + $ac_dir_suffix=""; + $ac_dots=""; + } + + if ($ac_given_srcdir eq ".") { + $srcdir="."; + if ($ac_dots) { + ( $top_srcdir = $ac_dots) =~ s%/$%%; + } else { $top_srcdir="."; } + } elsif ($ac_given_srcdir =~ m%^/%) { + $srcdir=$ac_given_srcdir.$ac_dir_suffix; + $top_srcdir = $ac_given_srcdir; + } else { + $srcdir = $ac_dots.$ac_given_srcdir.$ac_dir_suffix; + $top_srcdir = $ac_dots.$ac_given_srcdir; + } + + if ($ac_given_INSTALL) { + if ($ac_given_INSTALL =~ m%^/% ) { + $INSTALL = $ac_given_INSTALL; + } else { + $INSTALL = $ac_dots.$ac_given_INSTALL; + } + } + + print "fast creating $ac_file\n"; + unlink $ac_file; + my $ac_comsub=""; + my $fname=$ac_file_in; + $fname =~ s%.*/%%; + my $configure_input="Generated automatically from $fname by config.pl."; + if ($ac_file =~ /.*[Mm]akefile.*/) { + $ac_comsub="# ".$configure_input."\n"; # for the first line in $ac_file + } + + my $ac_file_inputs; + ($ac_file_inputs = $ac_file_in) =~ s%^%$ac_given_srcdir/%; + $ac_file_inputs =~ s%:% $ac_given_srcdir/%g; + + patch_file($ac_file, $ac_file_inputs, $ac_comsub); +} + +sub patch_file { + my ($outf, $infiles, $firstline) = @_; + my $filedata; + my @infiles=split(' ', $infiles); + my $i=0; + + if ($firstline) { + $filedata = $firstline; + } + foreach my $name (@infiles) { + if (open(CF, "< $name")) { + while () { + $filedata .= $_; + } + close(CF); + } else { + print STDERR "can't open $name: $!"."\n"; + } + } + + $filedata =~ s%\@configure_input\@%$configure_input%g; + $filedata =~ s%\@srcdir\@%$srcdir%g; + $filedata =~ s%\@top_srcdir\@%$top_srcdir%g; + $filedata =~ s%\@INSTALL\@%$INSTALL%g; + + if ($bad_perl) { + while ($i <= $#comp_subs) { + my $ref = $comp_subs[$i]; + &$ref(\$filedata); + $i++; + } + } else { + while ($i <= $#comp_match) { + $filedata =~ s/$comp_match[$i]/$comp_subs[$i]/g; + $i++; + } + } + open(CF, "> $outf") || die "can't create $outf: $!"; + print CF $filedata; + close(CF); +} + +sub make_closure { + my ($pat, $sub) = @_; + $pat =~ s/\@/\\@/g; # @bla@ -> \@bla\@ + $pat =~ s/\$/\\\$/g; # $bla -> \$bla + $sub =~ s/\@/\\@/g; + $sub =~ s/\$/\\\$/g; + my $ret = eval "return sub { my \$ref=shift; \$\$ref =~ s%$pat%$sub%g; }"; + if ($@) { + print "can't create CODE: $@\n"; + } + return $ret; +} diff --git a/admin/config.sub b/admin/config.sub new file mode 100755 index 0000000..4ac0c8b --- /dev/null +++ b/admin/config.sub @@ -0,0 +1,1360 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file 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. + +# Please send patches to . +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit 0;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | storm-chaos* | os2-emx*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \ + | arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \ + | pyramid | mn10200 | mn10300 | tron | a29k \ + | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ + | hppa64 \ + | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ + | alphaev6[78] \ + | we32k | ns16k | clipper | i370 | sh | sh[34] \ + | powerpc | powerpcle \ + | 1750a | dsp16xx | pdp10 | pdp11 \ + | mips16 | mips64 | mipsel | mips64el \ + | mips64orion | mips64orionel | mipstx39 | mipstx39el \ + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \ + | pj | pjl | h8500) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65) + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i[234567]86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ + | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \ + | arm-* | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \ + | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ + | xmp-* | ymp-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa2.0n-* | hppa64-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ + | alphaev6[78]-* \ + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ + | clipper-* | orion-* \ + | sparclite-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \ + | [cjt]90-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \ + | bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | ymp) + basic_machine=ymp-cray + os=-unicos + ;; + cray2) + basic_machine=cray2-cray + os=-unicos + ;; + [cjt]90) + basic_machine=${basic_machine}-cray + os=-unicos + ;; + crds | unos) + basic_machine=m68k-crds + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i[34567]86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i[34567]86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i[34567]86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i[34567]86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mipsel*-linux*) + basic_machine=mipsel-unknown + os=-linux-gnu + ;; + mips*-linux*) + basic_machine=mips-unknown + os=-linux-gnu + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium | p5 | k5 | k6 | nexgen) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon) + basic_machine=i686-pc + ;; + pentiumii | pentium2) + basic_machine=i686-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=t3e-cray + os=-unicos + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + xmp) + basic_machine=xmp-cray + os=-unicos + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + mips) + if [ x$os = x-linux-gnu ]; then + basic_machine=mips-unknown + else + basic_machine=mips-mips + fi + ;; + romp) + basic_machine=romp-ibm + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh3 | sh4) + basic_machine=sh-unknown + ;; + sparc | sparcv9) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-ibm) + os=-aix + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxsim* | -vxworks*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/admin/configure.in.min b/admin/configure.in.min new file mode 100644 index 0000000..4503fec --- /dev/null +++ b/admin/configure.in.min @@ -0,0 +1,55 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(yes) +AC_ENABLE_STATIC(no) +KDE_PROG_LIBTOOL + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS + +AC_PATH_KDE diff --git a/admin/debianrules b/admin/debianrules new file mode 100755 index 0000000..0fd8318 --- /dev/null +++ b/admin/debianrules @@ -0,0 +1,84 @@ +#!/usr/bin/perl -w + +use Shell qw(mv cp mkdir rm) ; +use File::Find; +use Cwd; + +$origPwd = `pwd`; +chomp $origPwd; + + +if (@ARGV && $ARGV[0] eq 'cleanup') { + +if (-d "debian/tmp/usr/share/config") { + if (! -d "debian/tmp/$kde_confdir") { + system("mv debian/tmp/usr/share/config debian/tmp/$kde_confdir"); + } +} +system("rm -f `find debian/ -name \".anchors\"`"); +system("chmod 755 debian/*preinst debian/*postinst"); + +exit; +} + +$QTDIR="/usr/share/qt"; +$kde_prefix="/usr"; +$kde_htmldir="$kde_prefix/share/doc/kde/HTML"; +$kde_icondir="$kde_prefix/share/icons"; +$kde_sounddir="$kde_prefix/share/sounds"; +$kde_datadir="$kde_prefix/share/apps"; +$kde_locale="$kde_prefix/share/locale"; +$kde_confdir="/etc/kde2"; +$kde_cgidir="$kde_prefix/lib/cgi-bin"; +$kde_appsdir="$kde_prefix/share/applnk"; +$kde_mimedir="$kde_prefix/share/mimelnk"; +$kde_wallpaperdir="$kde_prefix/share/wallpapers"; +$kde_bindir="$kde_prefix/bin"; +$kde_servicesdir="$kde_prefix/share/services"; +$kde_servicetypesdir="$kde_prefix/share/servicetypes"; +$kde_includedir="$kde_prefix/include/kde"; +$kde_libdir="$kde_prefix/lib"; +$kde_moduledir="$kde_prefix/lib/kde2"; +$mandir="$kde_prefix/share/man"; +$infodir="$kde_prefix/share/info"; +$IDL="$kde_bindir/cuteidl"; +$DCOPIDL="$kde_bindir/dcopidl"; +$DCOPIDL2CPP="$kde_bindir/dcopidl2cpp"; +$KDB2HTML="$kde_bindir/kdb2html"; +$MCOPIDL="$kde_bindir/mcopidl"; +$ARTSCCONFIG="$kde_bindir/artsc-config"; + +if (@ARGV && $ARGV[0] eq 'echodirs') { + print STDOUT "export kde_htmldir=$kde_htmldir\n"; + print STDOUT "export kde_appsdir=$kde_appsdir\n"; + print STDOUT "export kde_icondir=$kde_icondir\n"; + print STDOUT "export kde_sounddir=$kde_sounddir\n"; + print STDOUT "export kde_datadir=$kde_datadir\n"; + print STDOUT "export kde_cgidir=$kde_cgidir\n"; + print STDOUT "export kde_locale=$kde_locale\n"; + print STDOUT "export kde_confdir=$kde_confdir\n"; + print STDOUT "export kde_mimedir=$kde_mimedir\n"; + print STDOUT "export kde_wallpaperdir=$kde_wallpaperdir\n"; + print STDOUT "export kde_bindir=$kde_bindir\n"; + print STDOUT "export kde_servicesdir=$kde_servicesdir\n"; + print STDOUT "export kde_servicetypesdir=$kde_servicetypesdir\n"; + print STDOUT "export kde_includedir=$kde_includedir\n"; + print STDOUT "export kde_libdir=$kde_libdir\n"; + print STDOUT "export kde_moduledir=$kde_moduledir\n"; + print STDOUT "export mandir=$mandir\n"; + print STDOUT "export infodir=$infodir\n"; + print STDOUT "export QTDIR=$QTDIR\n"; + print STDOUT "export kde_prefix=$kde_prefix\n"; + print STDOUT "export INSTALL_DATA=install -p -c -m 644\n"; + print STDOUT "export IDL=$IDL\n"; + print STDOUT "export DCOPIDL=$DCOPIDL\n"; + print STDOUT "export DCOPIDL2CPP=$DCOPIDL2CPP\n"; + print STDOUT "export KDB2HTML=$KDB2HTML\n"; + print STDOUT "export MCOPIDL=$MCOPIDL\n"; + print STDOUT "export ARTSCCONFIG=$ARTSCCONFIG\n"; + print STDOUT "configkde=--disable-debug --disable-rpath --prefix=\$(kde_prefix) --libexecdir=\$(kde_bindir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --infodir=\$(infodir)\n"; + print STDOUT "configkdevelop=--disable-debug --enable-docbase --enable-kdoc2 --disable-rpath --libdir=\$(kde_libdir) --includedir=\$(kde_includedir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --with-kdelibsdoc-dir=/usr/share/doc/kdelibs3-doc/html\n"; + print STDOUT "configkdepim=--disable-debug --with-extra-includes=/usr/include/libpisock --enable-shared --disable-rpath --prefix=\$(kde_prefix) --libexecdir=\$(kde_bindir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --infodir=\$(infodir)\n"; + exit +} + diff --git a/admin/depcomp b/admin/depcomp new file mode 100755 index 0000000..30f36ee --- /dev/null +++ b/admin/depcomp @@ -0,0 +1,367 @@ +#! /bin/sh + +# depcomp - compile a program generating dependencies as side-effects +# Copyright 1999, 2000 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# Originally written by Alexandre Oliva . + +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 +# `libtool' can also be set to `yes' or `no'. + +depfile=${depfile-`echo "$object" | sed 's,\([^/]*\)$,.deps/\1,;s/\.\([^.]*\)$/.P\1/'`} +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! + if "$@" -MT "$object" -MF "$tmpdepfile" -MD -MP; then : + else + stat=$? + 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 + if "$@" -Wp,"$gccflag$tmpdepfile"; then : + else + stat=$? + 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). + tr ' ' ' +' < "$tmpdepfile" | sed 's/^[^\.]*\.o://' | tr ' +' ' ' >> $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" + 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. + tmpdepfile=`echo "$object" | sed 's/\(.*\)\..*$/\1.u/'` + if test "$libtool" = yes; then + "$@" -Wc,-M + else + "$@" -M + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + + if test -f "$tmpdepfile"; then + 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). + tr ' ' ' +' < "$tmpdepfile" | sed 's/^[^\.]*\.o://' | tr ' +' ' ' >> $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" + 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" + ;; + +#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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + test -z "$dashmflag" && dashmflag=-M + ( IFS=" " + case " $* " in + *" --mode=compile "*) # this is libtool, let us make it quiet + for arg + do # cycle over the arguments + case "$arg" in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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) + # 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;; + -*) + ;; + *) + set fnord "$@" "$arg"; shift;; + esac + done + obj_suffix="`echo $object | sed 's/^.*\././'`" + touch "$tmpdepfile" + ${MAKEDEPEND-makedepend} 2>/dev/null -o"$obj_suffix" -f"$tmpdepfile" "$@" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + tail +3 "$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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + ( IFS=" " + case " $* " in + *" --mode=compile "*) + for arg + do # cycle over the arguments + case $arg in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" -E | + sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | + sed '$ s: \\$::' > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + ( IFS=" " + case " $* " in + *" --mode=compile "*) + for arg + do # cycle over the arguments + case $arg in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" -E | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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 diff --git a/admin/install-sh b/admin/install-sh new file mode 100755 index 0000000..e9de238 --- /dev/null +++ b/admin/install-sh @@ -0,0 +1,251 @@ +#!/bin/sh +# +# install - install a program, script, or datafile +# This comes from X11R5 (mit/util/scripts/install.sh). +# +# Copyright 1991 by the Massachusetts Institute of Technology +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of M.I.T. not be used in advertising or +# publicity pertaining to distribution of the software without specific, +# written prior permission. M.I.T. makes no representations about the +# suitability of this software for any purpose. It is provided "as is" +# without express or implied warranty. +# +# 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}" + +transformbasename="" +transform_arg="" +instcmd="$mvprog" +chmodcmd="$chmodprog 0755" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +dst="" +dir_arg="" + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + -t=*) transformarg=`echo $1 | sed 's/-t=//'` + shift + continue;; + + -b=*) transformbasename=`echo $1 | sed 's/-b=//'` + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + else + # this colon is to work around a 386BSD /bin/sh bug + : + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +else + true +fi + +if [ x"$dir_arg" != x ]; then + dst=$src + src="" + + if [ -d $dst ]; then + instcmd=: + chmodcmd="" + else + instcmd=mkdir + fi +else + +# Waiting for this to be detected by the "$instcmd $src $dsttmp" command +# might cause directories to be created, which would be especially bad +# if $src (and thus $dsttmp) contains '*'. + + if [ -f $src -o -d $src ] + then + true + else + echo "install: $src does not exist" + exit 1 + fi + + if [ x"$dst" = x ] + then + echo "install: no destination specified" + exit 1 + else + true + fi + +# If destination is a directory, append the input filename; if your system +# does not like double slashes in filenames, you may need to add some logic + + if [ -d $dst ] + then + dst="$dst"/`basename $src` + else + true + fi +fi + +## this sed command emulates the dirname command +dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + +# Make sure that the destination directory exists. +# this part is taken from Noah Friedman's mkinstalldirs script + +# Skip lots of stat calls in the usual case. +if [ ! -d "$dstdir" ]; then +defaultIFS=' +' +IFS="${IFS-${defaultIFS}}" + +oIFS="${IFS}" +# Some sh's can't handle IFS=/ for some reason. +IFS='%' +set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS="${oIFS}" + +pathcomp='' + +while [ $# -ne 0 ] ; do + pathcomp="${pathcomp}${1}" + shift + + if [ ! -d "${pathcomp}" ] ; + then + $mkdirprog "${pathcomp}" + else + true + fi + + pathcomp="${pathcomp}/" +done +fi + +if [ x"$dir_arg" != x ] +then + $doit $instcmd $dst && + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi +else + +# If we're going to rename the final executable, determine the name now. + + if [ x"$transformarg" = x ] + then + dstfile=`basename $dst` + else + dstfile=`basename $dst $transformbasename | + sed $transformarg`$transformbasename + fi + +# don't allow the sed command to completely eliminate the filename + + if [ x"$dstfile" = x ] + then + dstfile=`basename $dst` + else + true + fi + +# Make a temp file name in the proper directory. + + dsttmp=$dstdir/#inst.$$# + +# Move or copy the file name to the temp name + + $doit $instcmd $src $dsttmp && + + trap "rm -f ${dsttmp}" 0 && + +# 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 $instcmd $src $dsttmp" command. + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && + +# Now rename the file to the real destination. + + $doit $rmcmd -f $dstdir/$dstfile && + $doit $mvcmd $dsttmp $dstdir/$dstfile + +fi && + + +exit 0 diff --git a/admin/libtool.m4.in b/admin/libtool.m4.in new file mode 100644 index 0000000..4e67b29 --- /dev/null +++ b/admin/libtool.m4.in @@ -0,0 +1,868 @@ +## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 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 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. + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) diff --git a/admin/ltcf-c.sh b/admin/ltcf-c.sh new file mode 100644 index 0000000..288580c --- /dev/null +++ b/admin/ltcf-c.sh @@ -0,0 +1,796 @@ +#### This script is meant to be sourced by ltconfig. + +# ltcf-c.sh - Create a C compiler specific configuration +# +# Copyright (C) 1996-2000, 2001 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# This file 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. + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='main(){return(0);}' + +## Linker Characteristics +case $host_os in +cygwin* | mingw*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$with_gcc" != yes; then + with_gnu_ld=no + fi + ;; + +esac + +ld_shlibs=yes +if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX, the GNU linker is very broken + ld_shlibs=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can use + # them. + ld_shlibs=no + ;; + + beos*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw*) + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + allow_undefined_flag=unsupported + always_export_symbols=yes + + extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ + sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/impgen.c~ + test -f $output_objdir/impgen.exe || (cd $output_objdir && \ + if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ + else $CC -o impgen impgen.c ; fi)~ + $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' + + old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' + + # cygwin and mingw dlls have different entry points and sets of symbols + # to exclude. + # FIXME: what about values for MSVC? + dll_entry=__cygwin_dll_entry@12 + dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ + case $host_os in + mingw*) + # mingw values + dll_entry=_DllMainCRTStartup@12 + dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ + ;; + esac + + # mingw and cygwin differ, and it's simplest to just exclude the union + # of the two symbol sets. + dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one (in ltdll.c) + if test "x$lt_cv_need_dllmain" = "xyes"; then + ltdll_obj='$output_objdir/$soname-ltdll.'"$objext " + ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/$soname-ltdll.c~ + test -f $output_objdir/$soname-ltdll.$objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' + else + ltdll_obj= + ltdll_cmds= + fi + + # Extract the symbol export list from an `--export-all' def file, + # then regenerate the def file from the symbol export list, so that + # the compiled dll only exports the symbol export list. + # Be careful not to strip the DATA tag left be newer dlltools. + export_symbols_cmds="$ltdll_cmds"' + $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ + sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' + + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is. + # If DATA tags from a recent dlltool are present, honour them! + archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname-def; + else + echo EXPORTS > $output_objdir/$soname-def; + _lt_hint=1; + cat $export_symbols | while read symbol; do + set dummy \$symbol; + case \[$]# in + 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; + *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; + esac; + _lt_hint=`expr 1 + \$_lt_hint`; + done; + fi~ + '"$ltdll_cmds"' + $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ + $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ + $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ + $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ + $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' + ;; + + darwin* | rhapsody*) + allow_undefined_flag='-undefined suppress' + archive_cmds='$CC `test .$module = .yes && echo -bundle || echo -dynamiclib` $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts -install_name $rpath/$soname `test -n "$verstring" -a x$verstring != x0.0 && echo $verstring`' + # We need to add '_' to the symbols in $export_symbols first + #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' + hardcode_direct=yes + hardcode_shlibpath_var=no + whole_archive_flag_spec='-all_load $convenience' + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + *) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + case "$host_os" in + freebsd*) + skip_need_lc_check=yes + ;; + esac + + if test "$ld_shlibs" = yes; then + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + case $host_os in + cygwin* | mingw*) + # dlltool doesn't understand --whole-archive et. al. + whole_archive_flag_spec= + ;; + *) + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + ;; + esac + fi +else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test "$with_gcc" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix4* | aix5*) + hardcode_direct=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + if test "$with_gcc" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct=yes + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + # Let the compiler handle the export list. + always_export_symbols=no + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other run time loading flags (-brtl), -berok will + # link without error, but may produce a broken library. + allow_undefined_flag=' ${wl}-berok' + # The following three lines along with hardcode_into_libs=yes put the correct path into libraries. + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir${libdir:+:}/usr/lib:/lib' + archive_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags ${wl}-G '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags ${wl}-G '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir${libdir:+:}/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + allow_undefined_flag=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec=' ' + build_libtool_need_lc=yes + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + # see comment about different semantics on the GNU ld section + ld_shlibs=no + ;; + + cygwin* | mingw*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + ;; + + freebsd1*) + ld_shlibs=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd*) + archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + skip_need_lc_check=yes + ;; + + hpux9* | hpux10* | hpux11*) + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; + esac + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_minus_L=yes # Not in the search PATH, but as the default + # location of the library. + export_dynamic_flag_spec='${wl}-E' + ;; + + irix5* | irix6*) + if test "$with_gcc" = yes; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + link_all_deplibs=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + hardcode_direct=yes + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + openbsd*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + fi + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + ;; + + sco3.2v5*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv5*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec= + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=no + hardcode_shlibpath_var=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + unixware7*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac +fi + +## Compiler Characteristics: PIC flags, static flags, etc +if test "X${ac_cv_prog_cc_pic+set}" = Xset; then + : +else + ac_cv_prog_cc_pic= + ac_cv_prog_cc_shlib= + ac_cv_prog_cc_wl= + ac_cv_prog_cc_static= + ac_cv_prog_cc_no_builtin= + ac_cv_prog_cc_can_build_shared=$can_build_shared + + if test "$with_gcc" = yes; then + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_cv_prog_cc_pic='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + ac_cv_prog_cc_pic= + ;; + sysv4*MP*) + if test -d /usr/nec; then + ac_cv_prog_cc_pic=-Kconform_pic + fi + ;; + *) + ac_cv_prog_cc_pic='-fPIC' + ;; + esac + else + # PORTME Check for PIC flags for the system compiler. + case $host_os in + aix*) + # All AIX code is PIC. + ac_cv_prog_cc_static="$ac_cv_prog_cc_static ${ac_cv_prog_cc_wl}-lC" + ;; + + hpux9* | hpux10* | hpux11*) + # Is there a better ac_cv_prog_cc_static that works with the bundled CC? + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + + irix5* | irix6*) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + # PIC (with -KPIC) is the default. + ;; + + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + + newsos6) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ;; + + osf3* | osf4* | osf5*) + # All OSF/1 code is PIC. + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + ;; + + sco3.2v5*) + ac_cv_prog_cc_pic='-Kpic' + ac_cv_prog_cc_static='-dn' + ac_cv_prog_cc_shlib='-belf' + ;; + + solaris*) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Wl,' + ;; + + sunos4*) + ac_cv_prog_cc_pic='-PIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Qoption ld ' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Wl,' + ;; + + uts4*) + ac_cv_prog_cc_pic='-pic' + ac_cv_prog_cc_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + ac_cv_prog_cc_pic='-Kconform_pic' + ac_cv_prog_cc_static='-Bstatic' + fi + ;; + + *) + ac_cv_prog_cc_can_build_shared=no + ;; + esac + fi + case "$host_os" in + # Platforms which do not suport PIC and -DPIC is meaningless + # on them: + *djgpp*) + ac_cv_prog_cc_pic= + ;; + *) + ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" + ;; + esac +fi + +need_lc=yes +if test "$enable_shared" = yes && test "$with_gcc" = yes; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + echo $ac_n "checking whether -lc should be explicitly linked in... $ac_c" 1>&6 + if eval "test \"`echo '$''{'ac_cv_archive_cmds_needs_lc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + need_lc=$ac_cv_archive_cmds_needs_lc + elif test "x$skip_need_lc_check" = "xyes" ; then + echo $ac_n "(skipping, using no) $ac_c" 1>&6 + need_lc=no + else + $rm conftest* + echo "static int dummy;" > conftest.$ac_ext + if { (eval echo ltcf-c.sh:need_lc: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then + # Append any warnings to the config.log. + cat conftest.err 1>&5 + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$ac_cv_prog_cc_wl + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { (eval echo ltcf-c.sh:need_lc: \"$archive_cmds\") 1>&5; (eval $archive_cmds) 2>&1 | grep " -lc " 1>&5 ; }; then + need_lc=no + fi + allow_undefined_flag=$save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + fi + $rm conftest* + echo "$ac_t$need_lc" 1>&6 + ;; + esac +fi +ac_cv_archive_cmds_needs_lc=$need_lc diff --git a/admin/ltcf-cxx.sh b/admin/ltcf-cxx.sh new file mode 100644 index 0000000..70ccba9 --- /dev/null +++ b/admin/ltcf-cxx.sh @@ -0,0 +1,1040 @@ +#### This script is meant to be sourced by ltconfig. + +# ltcf-cxx.sh - Create a C++ compiler specific configuration +# +# Copyright (C) 1996-1999, 2000, 2001 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# Original C++ support by:Gary V. Vaughan +# Alexandre Oliva +# Ossama Othman +# Thomas Thanner +# +# This file 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. + + +# Source file extension for C++ test sources. +ac_ext=cc + +# Object file extension for compiled C++ test sources. +objext=o + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *[]) { return (0); }' + +# C++ compiler +CXX=${CXX-c++} + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +CC=${CC-"$CXX"} +CFLAGS=${CFLAGS-"$CXXFLAGS"} + +# Allow CC (or CXX) to be a program name with arguments. +set dummy $CC +compiler=$2 +cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` + +# we are optimistic. (Too optimistic if you ask me, down there we switch it +# off again for most platforms ;) (MM) +ld_shlibs=yes + +# Check if we are using GNU gcc (taken/adapted from configure script) +# We need to check here since "--with-gcc" is set at configure time, +# not ltconfig time! +cat > conftest.$ac_ext <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + with_gcc=yes + + # Set up default GNU C++ configuration + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if eval "`$CC -print-prog-name=ld` --version 2>&1" | \ + egrep 'GNU ld' > /dev/null; then + with_gnu_ld=yes + + archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + +else + with_gcc=no + with_gnu_ld=no + wlarc= +fi + +echo "ltcf-cxx: with_gcc=$with_gcc ; with_gnu_ld=$with_gnu_ld" + +# PORTME: fill in a description of your system's C++ link characteristics +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + aix4* | aix5*) + archive_cmds='' + hardcode_direct=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + if test "$with_gcc" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct=yes + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + # Let the compiler handle the export list. + always_export_symbols=no + if test "$aix_use_runtimelinking" = yes; then + allow_undefined_flag=' ${wl}-berok' + # The following three lines along with hardcode_into_libs=yes put the correct path into libraries. + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir${libdir:+:}/usr/lib:/lib' + archive_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-G '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-G '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir${libdir:+:}/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' + # Warning - without using the other run time loading flags, -berok will + # link without error, but may produce a broken library. + no_undefined_flag='${wl}-bnoerok' + allow_undefined_flag='${wl}-berok" + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec=' ' + build_libtool_need_lc=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + ghcx) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + freebsd*) + # FreeBSD uses GNU C++ and GNU ld + skip_need_lc_check=yes + remove_lgcc=yes + ;; + hpux*) + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_minus_L=yes # Not in the search PATH, but as the default + # location of the library. + export_dynamic_flag_spec='${wl}-E' + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + aCC) + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no ; then + # MM: for HP-UX and g++ -fPIC is needed to link pic objects together + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; + esac + output_verbose_link_cmds='$CC -shared -fPIC $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + remove_lgcc=yes + fi + if test "$with_gcc" = no ; then + # FIXME: insert proper C++ library support + ld_shlibs=no + fi + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + # SGI C++ + archive_cmds='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$with_gcc" = yes; then + if test "$with_gnu_ld" = no; then + archive_cmds='$CC -D_LANGUAGE_C_CPLUS_PLUS -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib' + fi + fi + ;; + esac + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + link_all_deplibs=yes + ;; + linux*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_expsym_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest.so 2>&1 | egrep "ld"`; rm -f libconftest.so; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + hardcode_libdir_flag_spec='${wl}--rpath,$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' + ;; + cxx) + # Compaq C++ + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + insure) + if test "$with_gcc" = yes; then + # Insure++ together with gcc probably means also GNU ld + # only -whole-archive isn't supported + whole_archive_flag_spec="" + # and we can't use -nostdlib, because bloody insure has no way to + # output the linkline (-Zvm isn't working as documented), so we don't + # know the depending libs. So we hope, insure gets it right anyway. + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + output_verbose_link_cmds="" + fi + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + m88k*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + mvs*) + case $cc_basename in + cxx) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + netbsd*) + if test "$with_gcc" = no || test "$with_gnu_ld" = no; then + # This should only be triggered for NetBSD/a.out + # Add in C++ constructor/destructor support + if test -f /usr/pkg/lib/c++rt0/c++rt0.o.PIC; then + cppopts="/usr/pkg/lib/c++rt0/c++rt0.o.PIC" + elif test -f /usr/lib/c++rt0.o; then + cppopts="/usr/lib/c++rt0.o" + fi + archive_cmds='ld -Bshareable -o $lib '"$cppopts"' $libobjs $deplibs $linkopts' + fi + ;; + openbsd*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + # MM: OpenBSD 2.7 uses G++, but not GNU ld + archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + archive_expsym_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + old_archive_cmds="$old_archive_cmds~"'$RANLIB $oldlib' + hardcode_libdir_flag_spec='${wl}-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + whole_archive_flag_spec='${wl}-Bforcearchive' + remove_lgcc=yes + fi + ;; + osf3*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + else + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + hardcode_libdir_separator=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + cxx) + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + fi + ;; + osf4* | osf5*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + no_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + else + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + hardcode_libdir_separator=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + old_archive_cmds='$CC -o $oldlib $oldobjs' + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + cxx) + allow_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + no_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -update_registry ${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + fi + ;; + psos*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + sco*) + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + lcc) + # Lucid + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + no_undefined_flag=' -ztext' + archive_cmds='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. + # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + link_all_deplibs=yes + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep "\-R|\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds='$CC -xar -o $oldlib $oldobjs' + ;; + gcx) + # Green Hills C++ Compiler + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + old_archive_cmds='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + if $CC --version | egrep -v '^2\.7' > /dev/null; then + archive_cmds='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + archive_cmds='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds="$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" + fi + + hardcode_libdir_flag_spec='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + unixware*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + vxworks*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; +esac + + +## Compiler Characteristics: PIC flags, static flags, etc + +# We don't use cached values here since only the C compiler +# characteristics should be cached. +ac_cv_prog_cc_pic= +ac_cv_prog_cc_shlib= +ac_cv_prog_cc_wl= +ac_cv_prog_cc_static= +ac_cv_prog_cc_no_builtin= +ac_cv_prog_cc_can_build_shared=$can_build_shared + +ac_cv_prog_cc_pic_works= +ac_cv_prog_cc_static_works= + +if test "$with_gcc" = yes; then + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_cv_prog_cc_pic='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + ac_cv_prog_cc_pic= + ;; + sysv4*MP*) + if test -d /usr/nec; then + ac_cv_prog_cc_pic=-Kconform_pic + fi + ;; + *) + ac_cv_prog_cc_pic='-fPIC' + ;; + esac +else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68) + # Green Hills C++ Compiler + # ac_cv_prog_cc_static="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + ac_cv_prog_cc_pic='-KPIC' + ;; + ghcx) + # Green Hills C++ Compiler + ac_cv_prog_cc_pic='-pic' + ;; + *) + ;; + esac + ;; + freebsd*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + aCC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + *) + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + ac_cv_prog_cc_pic='-KPIC' + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC) + # KAI C++ Compiler + ac_cv_prog_cc_wl='--backend -Wl,' + ac_cv_prog_cc_pic='-fPIC' + ;; + cxx) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + ac_cv_prog_cc_pic= + ac_cv_prog_cc_static='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx) + ac_cv_prog_cc_pic='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC) + ac_cv_prog_cc_wl='--backend -Wl,' + ;; + RCC) + # Rational C++ 2.4.1 + ac_cv_prog_cc_pic='-pic' + ;; + cxx) + # Digital/Compaq C++ + ac_cv_prog_cc_wl='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + ac_cv_prog_cc_pic= + ac_cv_prog_cc_static='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + sco*) + case $cc_basename in + CC) + ac_cv_prog_cc_pic='-fPIC' + ;; + *) + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Qoption ld ' + ;; + gcx) + # Green Hills C++ Compiler + ac_cv_prog_cc_pic='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + ac_cv_prog_cc_pic='-pic' + ac_cv_prog_cc_static='-Bstatic' + ;; + lcc) + # Lucid + ac_cv_prog_cc_pic='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + ac_cv_prog_cc_pic='-KPIC' + ;; + *) + ;; + esac + ;; + unixware*) + ;; + vxworks*) + ;; + *) + ac_cv_prog_cc_can_build_shared=no + ;; + esac +fi + +case "$host_os" in + # Platforms which do not suport PIC and -DPIC is meaningless + # on them: + *djgpp*) + ac_cv_prog_cc_pic= + ;; + *) + ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" + ;; +esac + + +# Figure out "hidden" C++ library dependencies from verbose +# compiler output whening linking a shared library. +cat > conftest.$ac_ext <&5; then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval $output_verbose_link_cmds`; do + + case $p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test $p = "-L" \ + || test $p = "-R"; then + prev=$p + continue + else + prev= + fi + + if test "$pre_test_object_deps_done" = no; then + case $p in + -L* | -R*) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$compiler_lib_search_path"; then + compiler_lib_search_path="${prev}${p}" + else + compiler_lib_search_path="${compiler_lib_search_path} ${prev}${p}" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + add="${prev}${p}" + if test "x$remove_lgcc" = "xyes" ; then + case "$add" in + -lgcc ) add="" ;; + esac + fi + if test -n "$add" ; then + if test -z "$postdeps"; then + postdeps="$add" + else + postdeps="${postdeps} ${add}" + fi + fi + fi + ;; + + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test "$pre_test_object_deps_done" = no; then + if test -z "$predep_objects"; then + predep_objects="$p" + else + predep_objects="$predep_objects $p" + fi + else + if test -z "$postdep_objects"; then + postdep_objects="$p" + else + postdep_objects="$postdep_objects $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out +else + echo "ltcf-cxx.sh: error: problem compiling test program" +fi + +$rm -f confest.$objext + +if test "x$skip_need_lc_check" = "xyes" ; then + need_lc=no +else + case " $postdeps " in + *" -lc "*) need_lc=no ;; + *) need_lc=yes ;; + esac +fi diff --git a/admin/ltconfig b/admin/ltconfig new file mode 100755 index 0000000..caefe9f --- /dev/null +++ b/admin/ltconfig @@ -0,0 +1,2794 @@ +#! /bin/sh + +# ltconfig - Create a system-specific libtool. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# This file 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. + +# A lot of this script is taken from autoconf-2.10. + +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} +echo=echo +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec "$SHELL" "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null`} + case X$UNAME in + *-DOS) PATH_SEPARATOR=';' ;; + *) PATH_SEPARATOR=':' ;; + esac +fi + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +if test "X${echo_test_string+set}" != Xset; then + # find a string as large as possible, as long as the shell can cope with it + for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do + # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... + if (echo_test_string="`eval $cmd`") 2>/dev/null && + echo_test_string="`eval $cmd`" && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" + for dir in $PATH /usr/ucb; do + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running ltconfig again with it. + ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}" + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL" + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL $0 --fallback-echo" + elif echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL $0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "$0"'; then + echo_test_string=`eval $prev` + + export echo_test_string + exec "${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}}" "$0" ${1+"$@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e s/^X//' +sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# The name of this program. +progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` + +# Constants: +PROGRAM=ltconfig +PACKAGE=libtool +VERSION=1.4a +TIMESTAMP=" (1.641.2.206mm 2001/04/03 21:47:47)" +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +rm="rm -f" + +help="Try \`$progname --help' for more information." + +# Global variables: +default_ofile=libtool +can_build_shared=yes +enable_shared=yes +# All known linkers require a `.a' archive for static linking (except M$VC, +# which needs '.lib'). +enable_static=yes +enable_fast_install=yes +enable_dlopen=unknown +enable_win32_dll=no +pic_mode=default +ltmain= +silent= +srcdir= +ac_config_guess= +ac_config_sub= +host= +build=NONE +nonopt=NONE +ofile="$default_ofile" +verify_host=yes +tagname= +with_gcc=no +with_gnu_ld=no +need_locks=yes +ac_ext=c +libext=a +cache_file= +max_cmd_len= + +## Dependencies to place before and after the object being linked: +predep_objects= +postdep_objects= +predeps= +postdeps= +compiler_lib_search_path= + +## Link characteristics: +allow_undefined_flag= +no_undefined_flag= +need_lib_prefix=unknown +need_version=unknown +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +archive_cmds= +archive_expsym_cmds= +old_archive_from_new_cmds= +old_archive_from_expsyms_cmds= +striplib= +old_striplib= +export_dynamic_flag_spec= +whole_archive_flag_spec= +thread_safe_flag_spec= +hardcode_into_libs=no +hardcode_libdir_flag_spec= +hardcode_libdir_separator= +hardcode_direct=no +hardcode_minus_L=no +hardcode_shlibpath_var=unsupported +runpath_var= +link_all_deplibs=unknown +always_export_symbols=no +export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' +# include_expsyms should be a list of space-separated symbols to be *always* +# included in the symbol list +include_expsyms= +# exclude_expsyms can be an egrep regular expression of symbols to exclude +# it will be wrapped by ` (' and `)$', so one must not match beginning or +# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', +# as well as any symbol that contains `d'. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" +# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out +# platforms (ab)use it in PIC code, but their linkers get confused if +# the symbol is explicitly referenced. Since portable code cannot +# rely on this symbol name, it's probably fine to never include it in +# preloaded symbol tables. +extract_expsyms_cmds= + +## Tools: +old_AR="$AR" +old_AR_FLAGS="$AR_FLAGS" +old_CC="$CC" +old_CFLAGS="$CFLAGS" +old_CPPFLAGS="$CPPFLAGS" +old_LDFLAGS="$LDFLAGS" +old_LIBS="$LIBS" +old_MAGIC_CMD="$MAGIC_CMD" +old_LD="$LD" +old_LN_S="$LN_S" +old_LTCC="$LTCC" +old_NM="$NM" +old_RANLIB="$RANLIB" +old_STRIP="$STRIP" +old_AS="$AS" +old_DLLTOOL="$DLLTOOL" +old_OBJDUMP="$OBJDUMP" +old_OBJEXT="$OBJEXT" +old_EXEEXT="$EXEEXT" +old_reload_flag="$reload_flag" +old_deplibs_check_method="$deplibs_check_method" +old_file_magic_cmd="$file_magic_cmd" + +# Parse the command line options. +args= +prev= +for option +do + case $option in + -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + eval "$prev=\$option" + prev= + continue + fi + + case $option in + --help) cat <&2 + echo "$help" 1>&2 + exit 1 + ;; + + *) + if test -z "$ltmain"; then + ltmain="$option" + elif test -z "$host"; then +# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1 +# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then +# echo "$progname: warning \`$option' is not a valid host type" 1>&2 +# fi + host="$option" + else + echo "$progname: too many arguments" 1>&2 + echo "$help" 1>&2 + exit 1 + fi ;; + esac +done + +if test -z "$ltmain"; then + echo "$progname: you must specify a LTMAIN file" 1>&2 + echo "$help" 1>&2 + exit 1 +fi + +if test ! -f "$ltmain"; then + echo "$progname: \`$ltmain' does not exist" 1>&2 + echo "$help" 1>&2 + exit 1 +fi + +if test -n "$tagname"; then + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's/[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]//g'` in + "") ;; + *) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$ofile" > /dev/null; then + echo "$progname: tag name $tagname already exists" 1>&2 + exit 1 + fi + + if test ! -f "$ofile"; then + echo "$progname: warning: output file \`$ofile' does not exist" 1>&2 + fi + + if test -z "$LTCC"; then + eval "`$SHELL $ofile --config | grep '^LTCC='`" + if test -z "$LTCC"; then + echo "$progname: warning: output file \`$ofile' does not look like a libtool script" 1>&2 + else + echo "$progname: warning: using \`LTCC=$LTCC', extracted from \`$ofile'" 1>&2 + fi + fi +fi + +# Quote any args containing shell metacharacters. +ltconfig_args= +for arg +do + case $arg in + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ltconfig_args="$ltconfig_args '$arg'" ;; + *) ltconfig_args="$ltconfig_args $arg" ;; + esac +done + +# A relevant subset of AC_INIT. + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 5 compiler messages saved in config.log +# 6 checking for... messages and results +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>>./config.log + +# NLS nuisances. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi +if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi + +if test -n "$cache_file" && test -r "$cache_file" && test -f "$cache_file"; then + echo "loading cache $cache_file within ltconfig" + . $cache_file +fi + +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + +if test -z "$srcdir"; then + # Assume the source directory is the same one as the path to LTMAIN. + srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'` + test "$srcdir" = "$ltmain" && srcdir=. +fi + +trap "$rm conftest*; exit 1" 1 2 15 +if test "$verify_host" = yes; then + # Check for config.guess and config.sub. + ac_aux_dir= + for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/config.guess; then + ac_aux_dir=$ac_dir + break + fi + done + if test -z "$ac_aux_dir"; then + echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2 + echo "$help" 1>&2 + exit 1 + fi + ac_config_guess=$ac_aux_dir/config.guess + ac_config_sub=$ac_aux_dir/config.sub + + # Make sure we can run config.sub. + if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then : + else + echo "$progname: cannot run $ac_config_sub" 1>&2 + echo "$help" 1>&2 + exit 1 + fi + + echo $ac_n "checking host system type""... $ac_c" 1>&6 + + host_alias=$host + case $host_alias in + "") + # Force config.guess to use the C compiler. + # CC_FOR_BUILD overrides the CC variable in config.guess but I had + # problems with it so do it this way for now. + CC="$LTCC" + + if host_alias=`$SHELL $ac_config_guess`; then : + else + echo "$progname: cannot guess host type; you must specify one" 1>&2 + echo "$help" 1>&2 + exit 1 + fi + + # Restore the C compiler. + CC="$old_CC" + ;; + esac + host=`$SHELL $ac_config_sub $host_alias` + echo "$ac_t$host" 1>&6 + + # Make sure the host verified. + test -z "$host" && exit 1 + + # Check for the build system type + echo $ac_n "checking build system type... $ac_c" 1>&6 + + build_alias=$build + case $build_alias in + NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; + esac + + build=`$SHELL $ac_config_sub $build_alias` + build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` + build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` + build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` + echo "$ac_t""$build" 1>&6 + +elif test -z "$host"; then + echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2 + echo "$help" 1>&2 + exit 1 +else + host_alias=$host + build_alias=$host_alias + build=$host +fi + +if test x"$host" != x"$build"; then + ac_tool_prefix=${host_alias}- +else + ac_tool_prefix= +fi + +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` + +# Transform linux* to *-*-linux-gnu*, to support old configure scripts. +case $host_os in +linux-gnu*) ;; +linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` +esac + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" + old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" +fi + +# Source the script associated with the $tagname tag configuration. +if test -n "$tagname"; then + . $ltmain +else + # FIXME: We should use a variable here + # Configure for a C compiler + . $srcdir/ltcf-c.sh +fi + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$NM" && NM=nm +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$objext" && objext=o + +echo $ac_n "checking for objdir... $ac_c" 1>&6 +rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + objdir=_libs +fi +rmdir .libs 2>/dev/null +echo "$ac_t$objdir" 1>&6 + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +set dummy $CC +compiler="$2" + +# We assume here that the value for ac_cv_prog_cc_pic will not be cached +# in isolation, and that seeing it set (from the cache) indicates that +# the associated values are set (in the cache) correctly too. +echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6 +echo "$progname:678:checking for $compiler option to produce PIC" 1>&5 + +if test -z "$ac_cv_prog_cc_pic"; then + echo "$ac_t"none 1>&6 +else + echo "$ac_t""$ac_cv_prog_cc_pic" 1>&6 + + # Check to make sure the pic_flag actually works. + echo $ac_n "checking if $compiler PIC flag $ac_cv_prog_cc_pic works... $ac_c" 1>&6 + echo "$progname:687:checking that $compiler PIC flag $ac_cv_prog_cc_pic works." 1>&5 + if test "X${ac_cv_prog_cc_pic_works+set}" = Xset && \ + test "X${ac_cv_prog_cc_pic_works}" != X; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + ac_cv_prog_cc_pic_works=yes + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $ac_cv_prog_cc_pic -DPIC" + if { (eval echo $progname:697: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + # Append any warnings to the config.log. + cat conftest.err 1>&5 + + case $host_os in + hpux9* | hpux10* | hpux11*) + # On HP-UX, both CC and GCC only warn that PIC is supported... then + # they create non-PIC objects. So, if there were any warnings, we + # assume that PIC is not supported. + if test -s conftest.err; then + ac_cv_prog_cc_pic_works=no + ac_cv_prog_cc_can_build_shared=no + ac_cv_prog_cc_pic= + else + ac_cv_prog_cc_pic_works=yes + ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" + fi + ;; + *) + ac_cv_prog_cc_pic_works=yes + ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" + ;; + esac + else + # Append any errors to the config.log. + cat conftest.err 1>&5 + ac_cv_prog_cc_pic_works=no + ac_cv_prog_cc_can_build_shared=no + ac_cv_prog_cc_pic= + fi + CFLAGS="$save_CFLAGS" + $rm conftest* + fi + # Belt *and* braces to stop my trousers falling down: + if test "X$ac_cv_prog_cc_pic_works" = Xno; then + ac_cv_prog_cc_pic= + ac_cv_prog_cc_can_build_shared=no + fi + echo "$ac_t""$ac_cv_prog_cc_pic_works" 1>&6 +fi + +# Check for any special shared library compilation flags. +if test -n "$ac_cv_prog_cc_shlib"; then + echo "$progname: warning: \`$CC' requires \`$ac_cv_prog_cc_shlib' to build shared libraries" 1>&2 + if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$ac_cv_prog_cc_shlib[ ]" >/dev/null; then : + else + echo "$progname: add \`$ac_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2 + ac_cv_prog_cc_can_build_shared=no + fi +fi + +echo $ac_n "checking if $compiler static flag $ac_cv_prog_cc_static works... $ac_c" 1>&6 +echo "$progname:749: checking if $compiler static flag $ac_cv_prog_cc_static works" >&5 +if test "X${ac_cv_prog_cc_static_works+set}" = Xset && \ + test "X${ac_cv_prog_cc_static_works}" != X; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + $rm conftest* + echo $lt_simple_link_test_code > conftest.$ac_ext + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $ac_cv_prog_cc_static" + if { (eval echo $progname:758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cc_static_works=yes + else + ac_cv_prog_cc_static_works=no + ac_cv_prog_cc_static= + fi + LDFLAGS="$save_LDFLAGS" + $rm conftest* +fi +# Belt *and* braces to stop my trousers falling down: +if test "X$ac_cv_prog_cc_static_works" = Xno; then + ac_cv_prog_cc_static= +fi +echo "$ac_t""$ac_cv_prog_cc_static_works" 1>&6 +pic_flag="$ac_cv_prog_cc_pic" +special_shlib_compile_flags="$ac_cv_prog_cc_shlib" +wl="$ac_cv_prog_cc_wl" +link_static_flag="$ac_cv_prog_cc_static" +no_builtin_flag="$ac_cv_prog_cc_no_builtin" +can_build_shared="$ac_cv_prog_cc_can_build_shared" + +# find the maximum length of command line arguments +echo "$progname:780: finding the maximum length of command line arguments" 1>&5 +echo $ac_n "finding the maximum length of command line arguments... $ac_c" 1>&6 +if test "${lt_cv_sys_max_cmd_len+set}" = set; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + i=0 + testring="ABCDEF" + while test `$CONFIG_SHELL $0 --fallback-echo "X$testring" >/dev/null 2>&1` == `echo "X$testring" >/dev/null 2>&1` && + new_result=`expr "X$testring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 32 # 1 MB should be enough + do + i=`expr $i + 1` + testring=$testring$testring + done + testring= + # add a significant safety factor because C++ compilers can tack on massive amounts + # of additional arguments before passing them to the linker. 1/4 should be good. + len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len - $len` +fi +echo "$progname:@lineno@: result: $lt_cv_sys_max_cmd_len" 1>&5 +echo "${ac_t}$lt_cv_sys_max_cmd_len" 1>&6 + +if test -n $lt_cv_sys_max_cmd_len ; then + max_cmd_len=$lt_cv_sys_max_cmd_len +else + max_cmd_len=none +fi + +# Check to see if options -o and -c are simultaneously supported by compiler +echo $ac_n "checking if $compiler supports -c -o file.$objext... $ac_c" 1>&6 +if test "${lt_cv_compiler_c_o+set}" = set; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + mkdir out + # According to Tom Tromey, Ian Lance Taylor reported there are C compilers + # that will create temporary files in the current directory regardless of + # the output directory. Thus, making CWD read-only will cause this test + # to fail, enabling locking or at least warning the user not to do parallel + # builds. + chmod -w . + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -o out/conftest2.$objext" + echo "$progname:829: checking if $compiler supports -c -o file.$objext" >&5 + if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$objext; then + + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s out/conftest.err; then + lt_cv_compiler_c_o=no + else + lt_cv_compiler_c_o=yes + fi + else + # Append any errors to the config.log. + cat out/conftest.err 1>&5 + lt_cv_compiler_c_o=no + fi + CFLAGS="$save_CFLAGS" + chmod u+w . + $rm conftest* out/* + rmdir out + cd .. + rmdir conftest + $rm -r conftest 2>/dev/null +fi +compiler_c_o=$lt_cv_compiler_c_o +echo "${ac_t}$compiler_c_o" 1>&6 + +# Check to see if we can do hard links to lock some files if needed +hard_links="nottested" +if test "$compiler_c_o" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6 + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + echo "$ac_t$hard_links" 1>&6 + $rm conftest* + if test "$hard_links" = no; then + echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2 + need_locks=warn + fi +else + need_locks=no +fi + +if test "$with_gcc" = yes; then + # Check to see if options -fno-rtti -fno-exceptions are supported by compiler + echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6 + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" + echo "$progname:883: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 + if { (eval echo $progname:884: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + echo "$ac_t"no 1>&6 + compiler_rtti_exceptions=no + else + echo "$ac_t"yes 1>&6 + compiler_rtti_exceptions=yes + fi + else + # Append any errors to the config.log. + cat conftest.err 1>&5 + compiler_rtti_exceptions=no + echo "$ac_t"no 1>&6 + fi + CFLAGS="$save_CFLAGS" + $rm conftest* + + if test "$compiler_rtti_exceptions" = "yes"; then + no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' + else + no_builtin_flag=' -fno-builtin' + fi + +fi + +# See if the linker supports building shared libraries. +echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6 + +echo "$ac_t$ld_shlibs" 1>&6 +test "$ld_shlibs" = no && can_build_shared=no + +# Check hardcoding attributes. +echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6 +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || \ + test -n "$runpath_var"; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$hardcode_shlibpath_var" != no && + test "$hardcode_minus_L" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +echo "$ac_t$hardcode_action" 1>&6 + +echo $ac_n "checking whether stripping libraries is possible... $ac_c" 1>&6 +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + echo "${ac_t}yes" 1>&6 +else + echo "${ac_t}no" 1>&6 +fi + +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +test -z "$deplibs_check_method" && deplibs_check_method=unknown + +# PORTME Fill in your ld.so characteristics +library_names_spec= +libname_spec='lib$name' +soname_spec= +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6 +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}.so$major' + ;; + +aix4* | aix5*) + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + else + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + # We preserve .a as extension for shared libraries though AIX4.2 + # and later linker supports .so + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so instead of + # lib.a to let people know that these are not typical AIX shared libraries. + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + # We want symlinks to be created for the different names. + version_type=linux + else + # We preserve .a as extension for shared libraries though AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}.so$major.o' + fi + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + shlibpath_var=LIBPATH + deplibs_check_method=pass_all + # Put the right runpath into libraries. + hardcode_into_libs=yes + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + can_build_shared=no + fi + ;; + esac + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}.so' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + export_dynamic_flag_spec=-rdynamic + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + need_version=no + need_lib_prefix=no + case $with_gcc,$host_os in + yes,cygwin*) + library_names_spec='$libname.dll.a' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll' + postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog .libs/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll; $rm \$dlpath' + ;; + yes,mingw*) + library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"` + ;; + yes,pw32*) + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' +;; + *) + library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}.`test .$module = .yes && echo so || echo dylib` ${libname}${release}${major}.$`test .$module = .yes && echo so || echo dylib` ${libname}.`test .$module = .yes && echo so || echo dylib`' + soname_spec='${libname}${release}${major}.`test .$module = .yes && echo so || echo dylib`' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + *) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + dynamic_linker="$host_os dld.sl" + version_type=sunos + need_lib_prefix=no + need_version=no + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' + soname_spec='${libname}${release}.sl$major' + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6*) + version_type=irix + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}.so$major' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' + case $host_os in + irix5*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux-gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsd*) + version_type=sunos + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + need_version=yes + else + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' + soname_spec='${libname}${release}.so$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + need_version=no + fi + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + # OpenBSD 2.7 the overriding is needed for fast-install + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + need_lib_prefix=no + library_names_spec='$libname.dll $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_version=no + soname_spec='${libname}${release}.so' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}.so$major' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' + soname_spec='$libname.so.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +*) + dynamic_linker=no + ;; +esac +echo "$ac_t$dynamic_linker" 1>&6 +test "$dynamic_linker" = no && can_build_shared=no + +# Check for command to grab the raw symbol name followed by C symbol from nm. +echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6 + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Transform the above into a raw symbol and a C symbol. +symxfrm='\1 \2\3 \3' + +# Transform an extracted symbol line into a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32*) + symcode='[ABCDGISTW]' + ;; +hpux*) # Its linker distinguishes data from code symbols + global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'" + ;; +irix*) + symcode='[BCDEGRST]' + ;; +solaris* | sysv5*) + symcode='[BDT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $host_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then + symcode='[ABCDGISTW]' +fi + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Write the raw and C identifiers. +global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + $rm conftest* + cat > conftest.$ac_ext <&5 + if { (eval echo $progname:1424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then + # Now try to grab the symbols. + nlist=conftest.nm + if { echo "$progname:1427: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then + + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if egrep ' nm_test_var$' "$nlist" >/dev/null; then + if egrep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{ +EOF + sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$objext conftstm.$objext + save_LIBS="$LIBS" + save_CFLAGS="$CFLAGS" + LIBS="conftstm.$objext" + CFLAGS="$CFLAGS$no_builtin_flag" + if { (eval echo $progname:1479: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + pipe_works=yes + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + LIBS="$save_LIBS" + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + $rm conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + global_symbol_pipe= + fi +done +if test "$pipe_works" = yes; then + echo "${ac_t}ok" 1>&6 +else + echo "${ac_t}failed" 1>&6 +fi + +if test -z "$global_symbol_pipe"; then + global_symbol_to_cdecl= +fi + +# Report the final consequences. +echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6 + +# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in +# configure.in, otherwise build static only libraries. +case $host_os in +cygwin* | mingw* | pw32* | os2*) + if test x$can_build_shared = xyes; then + test x$enable_win32_dll = xno && can_build_shared=no + echo "checking if package supports dlls... $can_build_shared" 1>&6 + fi +;; +esac + +echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6 +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case $host_os in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4* | aix5*) + test "$enable_shared" = yes && enable_static=no + ;; +esac + +echo "$ac_t$enable_shared" 1>&6 + +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes + +echo "checking whether to build static libraries... $enable_static" 1>&6 + +if test "$hardcode_action" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$with_gcc" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# Check whether we must set pic_mode to default +test -z "$pic_flag" && pic_mode=default + +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else +if test "X${lt_cv_dlopen+set}" != Xset; then + lt_cv_dlopen=no lt_cv_dlopen_libs= +echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 +echo "$progname:1583: checking for dlopen in -ldl" >&5 +if test "X${ac_cv_lib_dl_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldl $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dl_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dl_dlopen=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dl_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dlopen""... $ac_c" 1>&6 +echo "$progname:1622: checking for dlopen" >&5 +if test "X${ac_cv_func_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen(); + +int main() { + +/* 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_dlopen) || defined (__stub___dlopen) +choke me +#else +dlopen(); +#endif + +; return 0; } +EOF +if { (eval echo $progname:1652: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_func_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_func_dlopen=no +fi +rm -f conftest* +fi +if test "X$ac_cv_func_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6 +echo "$progname:1669: checking for dlopen in -lsvld" >&5 +if test "X${ac_cv_lib_svld_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lsvld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_svld_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_svld_dlopen=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_svld_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 +echo "$progname:1708: checking for dld_link in -ldld" >&5 +if test "X${ac_cv_lib_dld_dld_link+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dld_dld_link=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dld_dld_link=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dld_dld_link" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shl_load""... $ac_c" 1>&6 +echo "$progname:1747: checking for shl_load" >&5 +if test "X${ac_cv_func_shl_load+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load(); + +int main() { + +/* 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_shl_load) || defined (__stub___shl_load) +choke me +#else +shl_load(); +#endif + +; return 0; } +EOF +if { (eval echo $progname:1777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_func_shl_load=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_func_shl_load=no +fi +rm -f conftest* +fi + +if test "X$ac_cv_func_shl_load" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="shl_load" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 +echo "$progname:1795: checking for shl_load in -ldld" >&5 +if test "X${ac_cv_lib_dld_shl_load+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dld_shl_load=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dld_shl_load=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dld_shl_load" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" +else + echo "$ac_t""no" 1>&6 +fi + + +fi + + +fi + + +fi + + +fi + +fi + +fi + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) +for ac_hdr in dlfcn.h; do +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 +echo "$progname:1863: checking for $ac_hdr" >&5 +if eval "test \"`echo 'X$''{'ac_cv_header_$ac_safe'+set}'`\" = Xset"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +int fnord = 0; +int main () { return(0); } +EOF +ac_try="$ac_compile >/dev/null 2>conftest.out" +{ (eval echo $progname:1874: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + rm -rf conftest* + eval "ac_cv_header_$ac_safe=yes" +else + echo "$ac_err" >&5 + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_header_$ac_safe=no" +fi +rm -f conftest* +fi +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +done + + if test "x$ac_cv_header_dlfcn_h" = xyes; then + CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + fi + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + LIBS="$lt_cv_dlopen_libs $LIBS" + + echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 +echo "$progname:1902: checking whether a program can dlopen itself" >&5 +if test "X${lt_cv_dlopen_self+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + lt_cv_dlopen_self=cross + else + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LTDL_GLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LTDL_GLOBAL DL_GLOBAL +# else +# define LTDL_GLOBAL 0 +# endif +#endif + +/* We may have to define LTDL_LAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LTDL_LAZY_OR_NOW +# ifdef RTLD_LAZY +# define LTDL_LAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LTDL_LAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LTDL_LAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LTDL_LAZY_OR_NOW DL_NOW +# else +# define LTDL_LAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +void fnord() { int i=42; } +int main() { + void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); + if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); return 1;} + +EOF +if { (eval echo $progname:1957: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +then + lt_cv_dlopen_self=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + lt_cv_dlopen_self=no +fi +rm -fr conftest* +fi + +fi + +echo "$ac_t""$lt_cv_dlopen_self" 1>&6 + + if test "$lt_cv_dlopen_self" = yes; then + LDFLAGS="$LDFLAGS $link_static_flag" + echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 +echo "$progname:1976: checking whether a statically linked program can dlopen itself" >&5 +if test "X${lt_cv_dlopen_self_static+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + lt_cv_dlopen_self_static=cross + else + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LTDL_GLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LTDL_GLOBAL DL_GLOBAL +# else +# define LTDL_GLOBAL 0 +# endif +#endif + +/* We may have to define LTDL_LAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LTDL_LAZY_OR_NOW +# ifdef RTLD_LAZY +# define LTDL_LAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LTDL_LAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LTDL_LAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LTDL_LAZY_OR_NOW DL_NOW +# else +# define LTDL_LAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +void fnord() { int i=42; } +int main() { + void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); + if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); return 1; } + +EOF +if { (eval echo $progname:2031: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +then + lt_cv_dlopen_self_static=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + lt_cv_dlopen_self_static=no +fi +rm -fr conftest* +fi + +fi + +echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6 +fi + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + +# Copy echo and quote the copy, instead of the original, because it is +# used later. +ltecho="$echo" +if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then + ltecho="$CONFIG_SHELL \$0 --fallback-echo" +fi +LTSHELL="$SHELL" + +LTCONFIG_VERSION="$VERSION" + +# Only quote variables if we're using ltmain.sh. +case $ltmain in +*.sh) + # Now quote all the things that may contain metacharacters. + for var in ltecho old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ + old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ + old_LN_S old_NM old_RANLIB old_STRIP \ + old_AS old_DLLTOOL old_OBJDUMP \ + old_OBJEXT old_EXEEXT old_reload_flag \ + old_deplibs_check_method old_file_magic_cmd \ + AR AR_FLAGS CC LTCC LD LN_S NM LTSHELL LTCONFIG_VERSION \ + reload_flag reload_cmds wl \ + pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ + thread_safe_flag_spec whole_archive_flag_spec libname_spec \ + library_names_spec soname_spec \ + RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ + old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ + postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ + predep_objects postdep_objects predeps postdeps compiler_lib_search_path \ + old_striplib striplib file_magic_cmd export_symbols_cmds \ + deplibs_check_method allow_undefined_flag no_undefined_flag \ + finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ + hardcode_libdir_flag_spec hardcode_libdir_separator \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + compiler_c_o need_locks exclude_expsyms include_expsyms; do + + case $var in + reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ + extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ### testsuite: skip nested quoting test + ;; + *) + eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" ### testsuite: skip nested quoting test + ;; + esac + done + + case $ltecho in + *'\$0 --fallback-echo"') + ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + + if test -z "$tagname"; then + trap "$rm \"$ofile\"; exit 1" 1 2 15 + echo "creating $ofile" + $rm "$ofile" + cat < "$ofile" +#! $SHELL + +# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. +# +# Copyright (C) 1996-2000 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="sed -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags= + +### BEGIN LIBTOOL CONFIG +EOF + else + echo "appending configuration tag \"$tagname\" to $ofile" + echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" + fi + cfgfile="$ofile" + ;; + +*) + # Double-quote the variables that need it (for aesthetics). + for var in old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ + old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ + old_LN_S old_NM old_RANLIB old_STRIP \ + old_AS old_DLLTOOL old_OBJDUMP \ + old_OBJEXT old_EXEEXT old_reload_flag \ + old_deplibs_check_method old_file_magic_cmd; do + eval "$var=\\\"\$var\\\"" + done + + # Just create a config file. + cfgfile="$ofile.cfg" + if test -z "$tagname"; then + trap "$rm \"$cfgfile\"; exit 1" 1 2 15 + echo "creating $cfgfile" + $rm "$cfgfile" + cat < "$cfgfile" +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) + +### BEGIN LIBTOOL CONFIG +EOF + else + echo "appending to $cfgfile" + echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" + fi + ;; +esac + +cat <> "$cfgfile" +# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# +# AR=$old_AR AR_FLAGS=$old_AR_FLAGS LTCC=$old_LTCC CC=$old_CC \\ +# CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\ +# MAGIC_CMD=$old_MAGIC_CMD LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\ +# LN_S=$old_LN_S NM=$old_NM RANLIB=$old_RANLIB STRIP=$old_STRIP \\ +# AS=$old_AS DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP \\ +# objext=$old_OBJEXT exeext=$old_EXEEXT reload_flag=$old_reload_flag \\ +# deplibs_check_method=$old_deplibs_check_method \\ +# file_magic_cmd=$old_file_magic_cmd \\ +# $0$ltconfig_args +# +# Compiler and other test output produced by $progname, useful for +# debugging $progname, is in ./config.log if it exists. + +# The version of $progname that generated this script. +LTCONFIG_VERSION=$LTCONFIG_VERSION + +# Shell to use when invoking shell scripts. +SHELL=$LTSHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$need_lc + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$ltecho + +# The archiver. +AR=$AR +AR_FLAGS=$AR_FLAGS + +# A C compiler. +LTCC=$LTCC + +# A language-specific compiler. +CC=$CC + +# Is the compiler the GNU C compiler? +with_gcc=$with_gcc + +# The linker used to build libraries. +LD=$LD + +# Whether we need hard or soft links. +LN_S=$LN_S + +# A BSD-compatible nm program. +NM=$NM + +# A symbol stripping program +STRIP=$STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$reload_flag +reload_cmds=$reload_cmds + +# How to pass a linker flag through the compiler. +wl=$wl + +# Object file suffix (normally "o"). +objext="$objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$pic_flag +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$compiler_c_o + +# Must we lock files when doing compilation ? +need_locks=$need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$link_static_flag + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$no_builtin_flag + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$whole_archive_flag_spec + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$thread_safe_flag_spec + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$RANLIB +old_archive_cmds=$old_archive_cmds +old_postinstall_cmds=$old_postinstall_cmds +old_postuninstall_cmds=$old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$old_archive_from_expsyms_cmds + +# Commands used to build and install a shared archive. +archive_cmds=$archive_cmds +archive_expsym_cmds=$archive_expsym_cmds +postinstall_cmds=$postinstall_cmds +postuninstall_cmds=$postuninstall_cmds + +# Commands to strip libraries. +old_striplib=$old_striplib +striplib=$striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$predep_objects + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$postdep_objects + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$predeps + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$postdeps + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$compiler_lib_search_path + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$allow_undefined_flag + +# Flag that forces no undefined symbols. +no_undefined_flag=$no_undefined_flag + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$global_symbol_to_cdecl + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$hardcode_libdir_separator + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$export_symbols_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$include_expsyms + +EOF + +if test -z "$tagname"; then + echo '### END LIBTOOL CONFIG' >> "$ofile" +else + echo "### END LIBTOOL TAG CONFIG: $tagname" >> "$ofile" +fi + +case $ltmain in +*.sh) + echo >> "$ofile" + if test -z "$tagname"; then + case $host_os in + aix3*) + cat <<\EOF >> "$ofile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + cat <<'EOF' >> "$ofile" + # This is a source program that is used to create dlls on Windows + # Don't remove nor modify the starting and closing comments +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ + # This is a source program that is used to create import libraries + # on Windows for dlls which lack them. Don't remove nor modify the + # starting and closing comments +# /* impgen.c starts here */ +# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. +# +# This file is part of GNU libtool. +# +# 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 /* for printf() */ +# #include /* for open(), lseek(), read() */ +# #include /* for O_RDONLY, O_BINARY */ +# #include /* for strdup() */ +# +# /* O_BINARY isn't required (or even defined sometimes) under Unix */ +# #ifndef O_BINARY +# #define O_BINARY 0 +# #endif +# +# static unsigned int +# pe_get16 (fd, offset) +# int fd; +# int offset; +# { +# unsigned char b[2]; +# lseek (fd, offset, SEEK_SET); +# read (fd, b, 2); +# return b[0] + (b[1]<<8); +# } +# +# static unsigned int +# pe_get32 (fd, offset) +# int fd; +# int offset; +# { +# unsigned char b[4]; +# lseek (fd, offset, SEEK_SET); +# read (fd, b, 4); +# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); +# } +# +# static unsigned int +# pe_as32 (ptr) +# void *ptr; +# { +# unsigned char *b = ptr; +# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); +# } +# +# int +# main (argc, argv) +# int argc; +# char *argv[]; +# { +# int dll; +# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; +# unsigned long export_rva, export_size, nsections, secptr, expptr; +# unsigned long name_rvas, nexp; +# unsigned char *expdata, *erva; +# char *filename, *dll_name; +# +# filename = argv[1]; +# +# dll = open(filename, O_RDONLY|O_BINARY); +# if (dll < 1) +# return 1; +# +# dll_name = filename; +# +# for (i=0; filename[i]; i++) +# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') +# dll_name = filename + i +1; +# +# pe_header_offset = pe_get32 (dll, 0x3c); +# opthdr_ofs = pe_header_offset + 4 + 20; +# num_entries = pe_get32 (dll, opthdr_ofs + 92); +# +# if (num_entries < 1) /* no exports */ +# return 1; +# +# export_rva = pe_get32 (dll, opthdr_ofs + 96); +# export_size = pe_get32 (dll, opthdr_ofs + 100); +# nsections = pe_get16 (dll, pe_header_offset + 4 +2); +# secptr = (pe_header_offset + 4 + 20 + +# pe_get16 (dll, pe_header_offset + 4 + 16)); +# +# expptr = 0; +# for (i = 0; i < nsections; i++) +# { +# char sname[8]; +# unsigned long secptr1 = secptr + 40 * i; +# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); +# unsigned long vsize = pe_get32 (dll, secptr1 + 16); +# unsigned long fptr = pe_get32 (dll, secptr1 + 20); +# lseek(dll, secptr1, SEEK_SET); +# read(dll, sname, 8); +# if (vaddr <= export_rva && vaddr+vsize > export_rva) +# { +# expptr = fptr + (export_rva - vaddr); +# if (export_rva + export_size > vaddr + vsize) +# export_size = vsize - (export_rva - vaddr); +# break; +# } +# } +# +# expdata = (unsigned char*)malloc(export_size); +# lseek (dll, expptr, SEEK_SET); +# read (dll, expdata, export_size); +# erva = expdata - export_rva; +# +# nexp = pe_as32 (expdata+24); +# name_rvas = pe_as32 (expdata+32); +# +# printf ("EXPORTS\n"); +# for (i = 0; i> "$ofile" || (rm -f "$ofile"; exit 1) + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + + chmod +x "$ofile" + fi + ;; + +*) + # Compile the libtool program. + echo "FIXME: would compile $ltmain" + ;; +esac + +# Update the list of available tags. +if test -n "$tagname"; then + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" $ofile | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + # Append the new tag name to the list of available tags. + available_tags="$available_tags $tagname" + + # Now substitute the updated of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' ${ofile} > ${ofile}.new"; then + mv ${ofile}.new ${ofile} + chmod +x "$ofile" + else + rm -f ${ofile}.new + echo "$progname: unable to update list of available tagged configurations." + exit 1 + fi +fi + +# Don't cache tagged configuration! +test -n "$cache_file" && test -z "$tagname" || exit 0 + +# AC_CACHE_SAVE +trap '' 1 2 15 +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +exit 0 + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/admin/ltmain.sh b/admin/ltmain.sh new file mode 100644 index 0000000..1f5c51a --- /dev/null +++ b/admin/ltmain.sh @@ -0,0 +1,5395 @@ +# ltmain.sh - Provide generalized library-building support services. +# NOTE: Changing this file will not affect anything until you rerun ltconfig. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Check that we have a working $echo. +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell, and then maybe $echo will work. + exec $SHELL "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat <&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + echo "$modename: not configured to build any kind of library" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +# Global variables. +mode=$default_mode +nonopt= +prev= +prevopt= +run= +show="$echo" +show_help= +execute_dlfiles= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" + +# Parse our command line options once, thoroughly. +while test $# -gt 0 +do + arg="$1" + shift + + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + execute_dlfiles) + execute_dlfiles="$execute_dlfiles $arg" + ;; + tag) + tagname="$arg" + + # Check whether tagname contains only valid characters + case $tagname in + *[!-_A-Za-z0-9,/]*) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then + taglist="$taglist $tagname" + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" + else + echo "$progname: ignoring unknown tag $tagname" 1>&2 + fi + ;; + *) + eval "$prev=\$arg" + ;; + esac + + prev= + prevopt= + continue + fi + + # Have we seen a non-optional argument yet? + case $arg in + --help) + show_help=yes + ;; + + --version) + echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" + exit 0 + ;; + + --config) + sed -n -e '/^### BEGIN LIBTOOL CONFIG/,/^### END LIBTOOL CONFIG/p' < "$0" + # Now print the configurations for the tags. + for tagname in $taglist; do + sed -n -e "/^### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" + done + exit 0 + ;; + + --debug) + echo "$progname: enabling shell trace mode" + set -x + ;; + + --dry-run | -n) + run=: + ;; + + --features) + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + exit 0 + ;; + + --finish) mode="finish" ;; + + --mode) prevopt="--mode" prev=mode ;; + --mode=*) mode="$optarg" ;; + + --quiet | --silent) + show=: + ;; + + --tag) prevopt="--tag" prev=tag ;; + --tag=*) + set tag "$optarg" ${1+"$@"} + shift + prev=tag + ;; + + -dlopen) + prevopt="-dlopen" + prev=execute_dlfiles + ;; + + -*) + $echo "$modename: unrecognized option \`$arg'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + + *) + nonopt="$arg" + break + ;; + esac +done + +if test -n "$prevopt"; then + $echo "$modename: option \`$prevopt' requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 +fi + +if test -z "$show_help"; then + + # Infer the operation mode. + if test -z "$mode"; then + case $nonopt in + *cc | *++ | gcc* | *-gcc*) + mode=link + for arg + do + case $arg in + -c) + mode=compile + break + ;; + esac + done + ;; + *db | *dbx | *strace | *truss) + mode=execute + ;; + *install*|cp|mv) + mode=install + ;; + *rm) + mode=uninstall + ;; + *) + # If we have no mode, but dlfiles were specified, then do execute mode. + test -n "$execute_dlfiles" && mode=execute + + # Just use the default operation mode. + if test -z "$mode"; then + if test -n "$nonopt"; then + $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 + else + $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 + fi + fi + ;; + esac + fi + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$execute_dlfiles" && test "$mode" != execute; then + $echo "$modename: unrecognized option \`-dlopen'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$modename --help --mode=$mode' for more information." + + # These modes are in order of execution frequency so that they run quickly. + case $mode in + # libtool compile mode + compile) + modename="$modename: compile" + # Get the compilation command and the source file. + base_compile= + prev= + lastarg= + srcfile="$nonopt" + suppress_output= + + user_target=no + for arg + do + case $prev in + "") ;; + xcompiler) + # Aesthetically quote the previous argument. + prev= + lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + + case $arg in + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + # Accept any command-line options. + case $arg in + -o) + if test "$user_target" != "no"; then + $echo "$modename: you cannot specify \`-o' more than once" 1>&2 + exit 1 + fi + user_target=next + ;; + + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` + lastarg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + lastarg="$lastarg $arg" + done + IFS="$save_ifs" + lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` + + # Add the arguments to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + case $user_target in + next) + # The next one is the -o target name + user_target=yes + continue + ;; + yes) + # We got the output file + user_target=set + libobj="$arg" + continue + ;; + esac + + # Accept the current argument as the source file. + lastarg="$srcfile" + srcfile="$arg" + + # Aesthetically quote the previous argument. + + # Backslashify any backslashes, double quotes, and dollar signs. + # These are the only characters that are still specially + # interpreted inside of double-quoted scrings. + lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $lastarg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + lastarg="\"$lastarg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + done + + case $user_target in + set) + ;; + no) + # Get the name of the library object. + libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` + ;; + *) + $echo "$modename: you must specify a target with \`-o'" 1>&2 + exit 1 + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + xform='[cCFSfmso]' + case $libobj in + *.ada) xform=ada ;; + *.adb) xform=adb ;; + *.ads) xform=ads ;; + *.asm) xform=asm ;; + *.c++) xform=c++ ;; + *.cc) xform=cc ;; + *.class) xform=class ;; + *.cpp) xform=cpp ;; + *.cxx) xform=cxx ;; + *.f90) xform=f90 ;; + *.for) xform=for ;; + *.java) xform=java ;; + esac + + libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` + + case $libobj in + *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; + *) + $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 + exit 1 + ;; + esac + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base compile + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir= + else + xdir=$xdir/ + fi + lobj=${xdir}$objdir/$objname + + if test -z "$base_compile"; then + $echo "$modename: you must specify a compilation command" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + $run $rm $removelist + trap "$run $rm $removelist; exit 1" 1 2 15 + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2*) + pic_mode=default + ;; + esac + if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + removelist="$removelist $output_obj $lockfile" + trap "$run $rm $removelist; exit 1" 1 2 15 + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $run ln "$0" "$lockfile" 2>/dev/null; do + $show "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + echo "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + echo $srcfile > "$lockfile" + fi + + if test -n "$fix_srcfile_path"; then + eval srcfile=\"$fix_srcfile_path\" + fi + + $run $rm "$libobj" "${libobj}T" + + # Create a libtool object file (analogous to a ".la" file), + # but don't create it if we're doing a dry run. + test -z "$run" && cat > ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "x$output_obj" != "x$lobj"; then + $show "$mv $output_obj $lobj" + if $run $mv $output_obj $lobj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the PIC object to the libtool object file. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed + if test -n "$output_obj" && test "x$output_obj" != "x$obj"; then + $show "$mv $output_obj $obj" + if $run $mv $output_obj $obj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + fi + build_libtool_libs=no + build_old_libs=yes + prefer_static_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test $# -gt 0; do + arg="$1" + base_compile="$base_compile $arg" + shift + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test + ;; + *) qarg=$arg ;; + esac + libtool_args="$libtool_args $qarg" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command="$compile_command @OUTPUT@" + finalize_command="$finalize_command @OUTPUT@" + ;; + esac + + case $prev in + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command="$compile_command @SYMFILE@" + finalize_command="$finalize_command @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + if test ! -f "$arg"; then + $echo "$modename: symbol file \`$arg' does not exist" + exit 1 + fi + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat $save_arg` + do +# moreargs="$moreargs $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + done + else + $echo "$modename: link input file \`$save_arg' does not exist" + exit 1 + fi + arg=$save_arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi + prev= + continue + ;; + xcompiler) + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + xlinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $wl$qarg" + prev= + compile_command="$compile_command $wl$qarg" + finalize_command="$finalize_command $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 + continue + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: not more than one -exported-symbols argument allowed" + exit 1 + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix*) + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + ;; + esac + continue + ;; + + -L*) + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 + exit 1 + fi + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "*) ;; + *) + deplibs="$deplibs -L$dir" + lib_search_path="$lib_search_path $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$dir:"*) ;; + *) dllsearchpath="$dllsearchpath:$dir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "$arg" = "-lc"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # These systems don't actually have c library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + elif test "$arg" = "-lm"; then + case $host in + *-*-cygwin* | *-*-pw32* | *-*-beos*) + # These systems don't actually have math library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody math library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + fi + deplibs="$deplibs $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # The PATH hackery in wrapper scripts is required on Windows + # in order for the loader to find any dlls it needs. + $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 + $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 + fast_install=no + ;; + *) + no_install=yes + ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + continue + ;; + + -static) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Wl,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $wl$flag" + linker_flags="$linker_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + # Some other compiler flag. + -* | +*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + + *.$objext) + # A standard object. + objs="$objs $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs="$deplibs $arg" + old_deplibs="$old_deplibs $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles="$dlfiles $arg" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles="$dlprefiles $arg" + prev= + else + deplibs="$deplibs $arg" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + esac + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + done + + if test -n "$prev"; then + $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base link + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in $compile_command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` + if test "X$output_objdir" = "X$output"; then + output_objdir="$objdir" + else + output_objdir="$output_objdir/$objdir" + fi + # Create the object directory. + if test ! -d $output_objdir; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + status=$? + if test $status -ne 0 && test ! -d $output_objdir; then + exit $status + fi + fi + + # Determine the type of output + case $output in + "") + $echo "$modename: you must specify an output file" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + case "$libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + libs="$libs $deplib" + done + + if test $linkmode = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + uninst_deplibs= # uninstalled libtool libraries + uninst_path= # paths that contain uninstalled libtool libraries + case $linkmode in + lib) + passes="conv link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 + exit 1 + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + for pass in $passes; do + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test $linkmode = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test $pass = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + for deplib in $libs; do + lib= + found=no + case $deplib in + -l*) + if test $linkmode != lib && test $linkmode != prog; then + $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 + continue + fi + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` + for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do + # Search the libtool library + lib="$searchdir/lib${name}.la" + if test -f "$lib"; then + found=yes + break + fi + done + if test "$found" != yes; then + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test $pass = conv && continue + newdependency_libs="$deplib $newdependency_libs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + prog) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test $pass = scan; then + deplibs="$deplib $deplibs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + ;; + *) + $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 + ;; + esac + continue + ;; + -R*) + if test $pass = link; then + dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) lib="$deplib" ;; + *.$libext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + if test "$deplibs_check_method" != pass_all; then + echo + echo "*** Warning: This library needs some functionality provided by $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + echo + echo "*** Warning: Linking the shared library $output against the" + echo "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + continue + ;; + prog) + if test $pass != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac + ;; + *.lo | *.$objext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + elif test $linkmode = prog; then + if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles="$newdlprefiles $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles="$newdlfiles $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac + if test $found = yes || test -f "$lib"; then : + else + $echo "$modename: cannot find the library \`$lib'" 1>&2 + exit 1 + fi + + # Check to see that this really is a libtool archive. + if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + # If the library was installed with an old release of libtool, + # it will not redefine variable installed. + installed=yes + + # Read the .la file + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test $linkmode != prog && test $linkmode != lib; }; then + test -n "$dlopen" && dlfiles="$dlfiles $dlopen" + test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" + fi + + if test $pass = conv; then + # only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + # It is a libtool convenience library, so add in its objects. + convenience="$convenience $ladir/$objdir/$old_library" + old_convenience="$old_convenience $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + elif test $linkmode != prog && test $linkmode != lib; then + $echo "$modename: \`$lib' is not a convenience library" 1>&2 + exit 1 + fi + continue + fi + + # Get the name of the library we link against. + linklib= + for l in $old_library $library_names; do + linklib="$l" + done + if test -z "$linklib"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + + # This library was specified with -dlopen. + if test $pass = dlopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles="$dlprefiles $lib $dependency_libs" + else + newdlfiles="$newdlfiles $lib" + fi + continue + fi + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + abs_ladir="$ladir" + fi + ;; + esac + laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + $echo "$modename: warning: library \`$lib' was moved." 1>&2 + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$libdir" + absdir="$libdir" + fi + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + uninst_path="$uninst_path $abs_ladir" + fi + name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + + # This library was specified with -dlpreopen. + if test $pass = dlpreopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles="$newdlprefiles $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles="$newdlprefiles $dir/$dlname" + else + newdlprefiles="$newdlprefiles $dir/$linklib" + fi + fi + + if test -z "$libdir"; then + # link the convenience library + if test $linkmode = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + if test $linkmode = prog && test $pass != link; then + newlib_search_path="$newlib_search_path $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test + esac + # Need to link against all dependency_libs? + if test $linkalldeplibs = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + continue + fi + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var"; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath " in + *" $dir "*) ;; + *" $absdir "*) ;; + *) temp_rpath="$temp_rpath $dir" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + uninst_deplibs="$uninst_deplibs $lib" + need_relink=yes + fi + # This is a shared library + if test $linkmode = lib && test "$hardcode_into_libs" = all; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + realname="$2" + shift; shift + libname=`eval \\$echo \"$libname_spec\"` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin*) + major=`expr $current - $age` + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + soname=`echo $soroot | sed -e 's/^.*\///'` + newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + $show "extracting exported symbol list from \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$extract_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + $show "generating import library for \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$old_archive_from_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi + + if test $linkmode = prog || test "$mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + $echo "$modename: configuration error: unsupported hardcode properties" + exit 1 + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; + esac + fi + if test $linkmode = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && \ + test "$hardcode_minus_L" != yes && \ + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + fi + fi + fi + + if test $linkmode = prog || test "$mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + add="-l$name" + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + add="-l$name" + fi + + if test $linkmode = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test $linkmode = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + echo "*** Warning: This library needs some functionality provided by $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + convenience="$convenience $dir/$old_library" + old_convenience="$old_convenience $dir/$old_library" + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi + + if test $linkmode = lib; then + if test -n "$dependency_libs" && + { test $hardcode_into_libs != yes || test $build_old_libs = yes || + test $link_static = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath="$xrpath $temp_xrpath";; + esac;; + *) temp_deplibs="$temp_deplibs $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path="$newlib_search_path $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + + if test $link_all_deplibs != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + case $deplib in + -L*) path="$deplib" ;; + *.la) + dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$deplib" && dir="." + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + fi + ;; + esac + if grep "^installed=no" $deplib > /dev/null; then + path="-L$absdir/$objdir" + else + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + if test "$absdir" != "$libdir"; then + $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 + fi + path="-L$absdir" + fi + ;; + *) continue ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi + fi + done + dependency_libs="$newdependency_libs" + if test $pass = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test $pass != dlopen; then + if test $pass != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path="$lib_search_path $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Make sure that $var contains only unique libraries + # and add them in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + case "$deplib" in + -L*) new_libs="$deplib $new_libs" ;; + *) + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done + fi + done + if test $linkmode = prog; then + dlfiles="$newdlfiles" + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 + fi + + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 + fi + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs="$objs$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + eval libname=\"$libname_spec\" + ;; + *) + if test "$module" = no; then + $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + eval libname=\"$libname_spec\" + else + libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 + exit 1 + else + echo + echo "*** Warning: Linking the shared library $output against the non-libtool" + echo "*** objects $objs is not portable!" + libobjs="$libobjs $objs" + fi + fi + + if test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 + fi + + set dummy $rpath + if test $# -gt 2; then + $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + fi + install_libdir="$2" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 + fi + else + + # Parse the version information argument. + IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + IFS="$save_ifs" + + if test -n "$8"; then + $echo "$modename: too many parameters to \`-version-info'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + current="$2" + revision="$3" + age="$4" + + # Check that each of the things are valid numbers. + case $current in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $revision in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $age in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + if test $age -gt $current; then + $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + minor_current=`expr $current + 1` + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current"; + ;; + + irix) + major=`expr $current - $age + 1` + verstring="sgi$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test $loop != 0; do + iface=`expr $revision - $loop` + loop=`expr $loop - 1` + verstring="sgi$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + ;; + + osf) + major=`expr $current - $age` + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test $loop != 0; do + iface=`expr $current - $loop` + loop=`expr $loop - 1` + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring="$verstring:${current}.0" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + major=`expr $current - $age` + versuffix="-$major" + ;; + + *) + $echo "$modename: unknown library version type \`$version_type'" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + verstring="0.0" + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + fi + + if test "$mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`echo "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + removelist="$removelist $p" + ;; + *) ;; + esac + done + if test -n "$removelist"; then + $show "${rm}r $removelist" + $run ${rm}r $removelist + fi + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs="$oldlibs $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + for path in $uninst_path; do + lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` + deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` + dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` + done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + temp_xrpath="$temp_xrpath -R$libdir" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + if test $hardcode_into_libs != yes || test $build_old_libs = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles="$dlfiles $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles="$dlprefiles $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test $build_libtool_need_lc = "yes"; then + deplibs="$deplibs -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behaviour. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $rm conftest.c + cat > conftest.c </dev/null` + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null \ + | grep " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | sed 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ + | sed 10q \ + | egrep "$file_magic_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ + -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | + grep . >/dev/null; then + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + fi + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + echo "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test $allow_undefined = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + if test $hardcode_into_libs = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath="$dep_rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval dep_rpath=\"$hardcode_libdir_flag_spec\" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval library_names=\"$library_names_spec\" + set dummy $library_names + realname="$2" + shift; shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test x$dlname = x; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + for link + do + linknames="$linknames $link" + done + +# # Ensure that we have .o objects for linkers which dislike .lo +# # (e.g. aix) in case we are running --disable-static +# for obj in $libobjs; do +# xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$obj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# if test ! -f $xdir/$oldobj && test "$baseobj" != "$oldobj"; then +# $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" +# $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? +# fi +# done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + eval cmds=\"$export_symbols_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + if test -n "$export_symbols_regex"; then + $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" + $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + $show "$mv \"${export_symbols}T\" \"$export_symbols\"" + $run eval '$mv "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' + fi + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags="$linker_flags $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # The command line is too long to link in one step, link piecewise. + $echo "creating reloadable object files..." + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + delfiles= + last_robj= + k=1 + output=$output_objdir/$save_output-${k}.$objext + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + eval test_cmds=\"$reload_cmds $objlist $last_robj\" + if test "X$objlist" = X || + { len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; }; then + objlist="$objlist $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test $k -eq 1 ; then + # The first file doesn't have a previous command to add. + eval concat_cmds=\"$reload_cmds $objlist $last_robj\" + else + # All subsequent reloadable object files will link in + # the last one created. + eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" + fi + last_robj=$output_objdir/$save_output-${k}.$objext + k=`expr $k + 1` + output=$output_objdir/$save_output-${k}.$objext + objlist=$obj + len=1 + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" + + # Set up a command to remove the reloadale object files + # after they are used. + i=0 + while test $i -lt $k + do + i=`expr $i + 1` + delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" + done + + $echo "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + + # Append the command to remove the reloadable object files + # to the just-reset $cmds. + eval cmds=\"\$cmds~$rm $delfiles\" + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? + exit 0 + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 + fi + + case $output in + *.lo) + if test -n "$objs$old_deplibs"; then + $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 + exit 1 + fi + libobj="$output" + obj=`$echo "X$output" | $Xsed -e "$lo2o"` + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $run $rm $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${obj}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $run eval "echo timestamp > $libobj" || exit $? + exit 0 + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" +# else +# # Just create a symlink. +# $show $rm $libobj +# $run $rm $libobj +# xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$libobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# $show "(cd $xdir && $LN_S $oldobj $baseobj)" +# $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + ;; + + prog) + case $host in + *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; + esac + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 + fi + + if test "$preload" = yes; then + if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && + test "$dlopen_self_static" = unknown; then + $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." + fi + fi + + compile_command="$compile_command $compile_deplibs" + finalize_command="$finalize_command $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$libdir:"*) ;; + *) dllsearchpath="$dllsearchpath:$libdir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + dlsyms= + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + dlsyms="${outputname}S.c" + else + $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 + fi + fi + + if test -n "$dlsyms"; then + case $dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${outputname}.nm" + + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" + + # Parse the name list into a source file. + $show "creating $output_objdir/$dlsyms" + + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ +/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ +/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* Prevent the only kind of declaration conflicts we can make. */ +#define lt_preloaded_symbols some_other_symbol + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + $show "generating symbol list for \`$output'" + + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles="$objs$old_deplibs" + for arg in $progfiles; do + $show "extracting global C symbols from \`$arg'" + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + if test -n "$export_symbols_regex"; then + $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$output.exp" + $run $rm $export_symbols + $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + else + $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' + $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' + $run eval 'mv "$nlist"T "$nlist"' + fi + fi + + for arg in $dlprefiles; do + $show "extracting global C symbols from \`$arg'" + name=`echo "$arg" | sed -e 's%^.*/%%'` + $run eval 'echo ": $name " >> "$nlist"' + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -z "$run"; then + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $mv "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then + : + else + grep -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$dlsyms" + fi + + $echo >> "$output_objdir/$dlsyms" "\ + +#undef lt_preloaded_symbols + +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{\ +" + + sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ + -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ + < "$nlist" >> "$output_objdir/$dlsyms" + + $echo >> "$output_objdir/$dlsyms" "\ + {0, (lt_ptr_t) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + fi + + pic_flag_for_symtable= + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag";; + esac + esac + + # Now compile the dynamic symbol file. + $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" + + # Transform the symbol file into the correct name. + compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + ;; + *) + $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 + exit 1 + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` + fi + + # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G + # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. + # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. + # This does not apply on AIX for ia64, which uses a SysV linker. + case "$host" in + ia64-*-aix5*) ;; + *-*-aix4* | *-*-aix5*) + compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` + finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; + esac + + if test $need_relink = no || test "$build_libtool_libs" != yes; then + # Replace the output file specification. + compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + $show "$link_command" + $run eval "$link_command" + status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $status + fi + + if test -n "$shlibpath_var"; then + # We should set the shlibpath_var + rpath= + for dir in $temp_rpath; do + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) + # Absolute path. + rpath="$rpath$dir:" + ;; + *) + # Relative path: add a thisdir entry. + rpath="$rpath\$thisdir/$dir:" + ;; + esac + done + temp_rpath="$rpath" + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath="$rpath$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $run $rm $output + # Link the executable and exit + $show "$link_command" + $run eval "$link_command" || exit $? + exit 0 + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 + $echo "$modename: \`$output' will be relinked during installation" 1>&2 + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname + + $show "$link_command" + $run eval "$link_command" || exit $? + + # Now create the wrapper script. + $show "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + relink_command="cd `pwd`; $relink_command" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + fi + + # Quote $echo for shipping. + if test "X$echo" = "X$SHELL $0 --fallback-echo"; then + case $0 in + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; + *) qecho="$SHELL `pwd`/$0 --fallback-echo";; + esac + qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` + else + qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` + fi + + # Only actually do things if our run command is non-null. + if test -z "$run"; then + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) output=`echo $output|sed 's,.exe$,,'` ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) exeext=.exe ;; + *) exeext= ;; + esac + $rm $output + trap "$rm $output; exit 1" 1 2 15 + + $echo > $output "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variable: + uninst_deplibs='$uninst_deplibs' +else + # When we are sourced in execute mode, \$file and \$echo are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + echo=\"$qecho\" + file=\"\$0\" + # Make sure echo works. + if test \"X\$1\" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift + elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then + # Yippee, \$echo works! + : + else + # Restart under the correct shell, and then maybe \$echo will work. + exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} + fi + fi\ +" + $echo >> $output "\ + + # Find the directory that this script lives in. + thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` + done + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + echo >> $output "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $mkdir \"\$progdir\" + else + $rm \"\$progdir/\$file\" + fi" + + echo >> $output "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if (eval \$relink_command); then : + else + $rm \"\$progdir/\$file\" + exit 1 + fi + fi + + $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $rm \"\$progdir/\$program\"; + $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $rm \"\$progdir/\$file\" + fi" + else + echo >> $output "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + echo >> $output "\ + + if test -f \"\$progdir/\$program\"; then" + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $echo >> $output "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + + export $shlibpath_var +" + fi + + # fixup the dll searchpath if we need to. + if test -n "$dllsearchpath"; then + $echo >> $output "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + $echo >> $output "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. +" + case $host in + # win32 systems need to use the prog path for dll + # lookup to work + *-*-cygwin* | *-*-pw32*) + $echo >> $output "\ + exec \$progdir/\$program \${1+\"\$@\"} +" + ;; + + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) + $echo >> $output "\ + exec \$progdir\\\\\$program \${1+\"\$@\"} +" + ;; + + *) + $echo >> $output "\ + # Export the path to the program. + PATH=\"\$progdir:\$PATH\" + export PATH + + exec \$program \${1+\"\$@\"} +" + ;; + esac + $echo >> $output "\ + \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" + exit 1 + fi + else + # The program doesn't exist. + \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 + \$echo \"This script is just a wrapper for \$program.\" 1>&2 + echo \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" + chmod +x $output + fi + exit 0 + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$objs$old_deplibs $non_pic_objects" + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + # Add in members from convenience archives. + for xlib in $addlibs; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print | $NL2SP` + done + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + eval cmds=\"$old_archive_from_new_cmds\" + else +# # Ensure that we have .o objects in place in case we decided +# # not to build a shared library, and have fallen back to building +# # static libs even though --disable-static was passed! +# for oldobj in $oldobjs; do +# if test ! -f $oldobj; then +# xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$oldobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` +# obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` +# $show "(cd $xdir && ${LN_S} $obj $baseobj)" +# $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? +# fi +# done + + eval cmds=\"$old_archive_cmds\" + + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the command line is too long to link in one step, link in parts + $echo "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + for obj in $save_oldobjs + do + oldobjs="$objlist $obj" + objlist="$objlist $obj" + eval test_cmds=\"$old_archive_cmds\" + if len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + eval cmds=\"\$concat_cmds~$old_archive_cmds\" + fi + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$generated"; then + $show "${rm}r$generated" + $run ${rm}r$generated + fi + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + $show "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + + # Only create the output if not a dry run. + if test -z "$run"; then + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdependency_libs="$newdependency_libs $libdir/$name" + ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + for lib in $dlfiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlfiles="$newdlfiles $libdir/$name" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlprefiles="$newdlprefiles $libdir/$name" + done + dlprefiles="$newdlprefiles" + fi + $rm $output + # place dlname in correct position for cygwin + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; + esac + $echo > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test $hardcode_into_libs = all && + test "$installed" = no && test $need_relink = yes; then + $echo >> $output "\ +relink_command=\"$relink_command\"" + fi + done + fi + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" + $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? + ;; + esac + exit 0 + ;; + + # libtool install mode + install) + modename="$modename: install" + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then + # Aesthetically quote it. + arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$arg " + arg="$1" + shift + else + install_prog= + arg="$nonopt" + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog$arg" + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + for arg + do + if test -n "$dest"; then + files="$files $dest" + dest="$arg" + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) prev="-f" ;; + -g) prev="-g" ;; + -m) prev="-m" ;; + -o) prev="-o" ;; + -s) + stripme=" -s" + continue + ;; + -*) ;; + + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + prev= + else + dest="$arg" + continue + fi + ;; + esac + + # Aesthetically quote the argument. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog $arg" + done + + if test -z "$install_prog"; then + $echo "$modename: you must specify an install program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -n "$prev"; then + $echo "$modename: the \`$prev' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -z "$files"; then + if test -z "$dest"; then + $echo "$modename: no file or destination specified" 1>&2 + else + $echo "$modename: you must specify a destination" 1>&2 + fi + $echo "$help" 1>&2 + exit 1 + fi + + # Strip any trailing slash from the destination. + dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` + test "X$destdir" = "X$dest" && destdir=. + destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` + + # Not a directory, so check to see that there is only one file specified. + set dummy $files + if test $# -gt 2; then + $echo "$modename: \`$dest' is not a directory" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs="$staticlibs $file" + ;; + + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + library_names= + old_library= + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs="$current_libdirs $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs="$future_libdirs $libdir" ;; + esac + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ + test "X$dir" = "X$file/" && dir= + dir="$dir$objdir" + + if test "$hardcode_into_libs" = all && test -n "$relink_command"; then + $echo "$modename: warning: relinking \`$file'" 1>&2 + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + continue + fi + fi + + # See the names of the shared library. + set dummy $library_names + if test -n "$2"; then + realname="$2" + shift + shift + + srcname="$realname" + test "$hardcode_into_libs" = all && test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + $show "$install_prog $dir/$srcname $destdir/$realname" + $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? + if test -n "$stripme" && test -n "$striplib"; then + $show "$striplib $destdir/$realname" + $run eval "$striplib $destdir/$realname" || exit $? + fi + + if test $# -gt 0; then + # Delete the old symlinks, and create new ones. + for linkname + do + if test "$linkname" != "$realname"; then + $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + fi + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + eval cmds=\"$postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Install the pseudo-library for information purposes. + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + instname="$dir/$name"i + $show "$install_prog $instname $destdir/$name" + $run eval "$install_prog $instname $destdir/$name" || exit $? + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + + # Install the libtool object if requested. + if test -n "$destfile"; then + $show "$install_prog $file $destfile" + $run eval "$install_prog $file $destfile" || exit $? + fi + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` + + $show "$install_prog $staticobj $staticdest" + $run eval "$install_prog \$staticobj \$staticdest" || exit $? + fi + exit 0 + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + uninst_deplibs= + relink_command= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Check the variables that should have been set. + if test -z "$uninst_deplibs"; then + $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 + exit 1 + fi + + finalize=yes + for lib in $uninst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + # If there is no directory component, then add one. + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + fi + libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 + finalize=no + fi + done + + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + if test "$finalize" = yes && test -z "$run"; then + tmpdir="/tmp" + test -n "$TMPDIR" && tmpdir="$TMPDIR" + tmpdir="$tmpdir/libtool-$$" + if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : + else + $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 + continue + fi + file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` + + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" + continue + fi + file="$outputname" + else + $echo "$modename: warning: cannot relink \`$file'" 1>&2 + fi + else + # Install the binary that we compiled earlier. + file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + + # remove .exe since cygwin /usr/bin/install will append another + # one anyways + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + destfile=`echo $destfile | sed -e 's,.exe$,,'` + ;; + esac + ;; + esac + + $show "$install_prog$stripme $file $destfile" + $run eval "$install_prog\$stripme \$file \$destfile" || exit $? + test -n "$outputname" && ${rm}r "$tmpdir" + ;; + esac + done + + for file in $staticlibs; do + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + + $show "$install_prog $file $oldlib" + $run eval "$install_prog \$file \$oldlib" || exit $? + + if test -n "$stripme" && test -n "$striplib"; then + $show "$old_striplib $oldlib" + $run eval "$old_striplib $oldlib" || exit $? + fi + + # Do each command in the postinstall commands. + eval cmds=\"$old_postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$future_libdirs"; then + $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 + fi + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + test -n "$run" && current_libdirs=" -n$current_libdirs" + exec $SHELL $0 --finish$current_libdirs + exit 1 + fi + + exit 0 + ;; + + # libtool finish mode + finish) + modename="$modename: finish" + libdirs="$nonopt" + admincmds= + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for dir + do + libdirs="$libdirs $dir" + done + + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + eval cmds=\"$finish_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || admincmds="$admincmds + $cmd" + done + IFS="$save_ifs" + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $run eval "$cmds" || admincmds="$admincmds + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + exit 0 + + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + echo " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + echo " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + echo " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + echo "See any operating system documentation about shared libraries for" + echo "more information, such as the ld(1) and ld.so(8) manual pages." + echo "----------------------------------------------------------------------" + exit 0 + ;; + + # libtool execute mode + execute) + modename="$modename: execute" + + # The first argument is the command name. + cmd="$nonopt" + if test -z "$cmd"; then + $echo "$modename: you must specify a COMMAND" 1>&2 + $echo "$help" + exit 1 + fi + + # Handle -dlopen flags immediately. + for file in $execute_dlfiles; do + if test ! -f "$file"; then + $echo "$modename: \`$file' is not a file" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + dir= + case $file in + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Read the libtool library. + dlname= + library_names= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" + continue + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + + if test -f "$dir/$objdir/$dlname"; then + dir="$dir/$objdir" + else + $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 + exit 1 + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + ;; + + *) + $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -*) ;; + *) + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` + args="$args \"$file\"" + done + + if test -z "$run"; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved enviroment variables + if test "${save_LC_ALL+set}" = set; then + LC_ALL="$save_LC_ALL"; export LC_ALL + fi + if test "${save_LANG+set}" = set; then + LANG="$save_LANG"; export LANG + fi + + # Now actually exec the command. + eval "exec \$cmd$args" + + $echo "$modename: cannot exec \$cmd$args" + exit 1 + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi + $echo "$cmd$args" + exit 0 + fi + ;; + + # libtool clean and uninstall mode + clean | uninstall) + modename="$modename: $mode" + rm="$nonopt" + files= + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -*) rm="$rm $arg" ;; + *) files="$files $arg" ;; + esac + done + + if test -z "$rm"; then + $echo "$modename: you must specify an RM program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + rmdirs= + + for file in $files; do + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + if test "X$dir" = "X$file"; then + dir=. + objdir="$objdir" + else + objdir="$dir/$objdir" + fi + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + test $mode = uninstall && objdir="$dir" + + # Remember objdir for removal later, being careful to avoid duplicates + if test $mode = clean; then + case " $rmdirs " in + *" $objdir "*) ;; + *) rmdirs="$rmdirs $objdir" ;; + esac + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + . $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles="$rmfiles $objdir/$n" + done + test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" + test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" + + if test $mode = uninstall; then + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + eval cmds=\"$postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + eval cmds=\"$old_postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + # FIXME: should reinstall the best remaining shared library. + fi + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + + # Read the .lo file + . $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" \ + && test "$pic_object" != none; then + rmfiles="$rmfiles $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" \ + && test "$non_pic_object" != none; then + rmfiles="$rmfiles $dir/$non_pic_object" + fi + fi + ;; + + *) + # Do a test to see if this is a libtool program. + if test $mode = clean && + (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + relink_command= + . $dir/$file + + rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles="$rmfiles $objdir/lt-$name" + fi + fi + ;; + esac + $show "$rm $rmfiles" + $run $rm $rmfiles + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + $show "rmdir $dir" + $run rmdir $dir >/dev/null 2>&1 + fi + done + + exit 0 + ;; + + "") + $echo "$modename: you must specify a MODE" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 + ;; + esac + + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 +fi # test -z "$show_help" + +# We need to display help for each of the modes. +case $mode in +"") $echo \ +"Usage: $modename [OPTION]... [MODE-ARG]... + +Provide generalized library-building support services. + + --config show all configuration variables + --debug enable verbose shell tracing +-n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --finish same as \`--mode=finish' + --help display this help message and exit + --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] + --quiet same as \`--silent' + --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + --version print version information + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for +a more detailed description of MODE." + exit 0 + ;; + +clean) + $echo \ +"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + +compile) + $echo \ +"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -static always build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + +execute) + $echo \ +"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + +finish) + $echo \ +"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + +install) + $echo \ +"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + +link) + $echo \ +"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -static do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + +uninstall) + $echo \ +"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + +*) + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; +esac + +echo +$echo "Try \`$modename --help' for more information about other modes." + +exit 0 + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +### END LIBTOOL TAG CONFIG: disable-shared + +### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/admin/missing b/admin/missing new file mode 100755 index 0000000..5f9da90 --- /dev/null +++ b/admin/missing @@ -0,0 +1,265 @@ +#! /bin/sh +# Common stub for a few missing GNU programs while installing. +# Copyright 1996, 1997, 1999, 2000 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +if test $# -eq 0; then + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 +fi + +run=: + +case "$1" in +--run) + # Try to run requested program, and just exit if it succeeds. + run= + shift + "$@" && exit 0 + ;; +esac + +# If it does not exist, or fails to run (possibly an outdated version), +# try to emulate it. +case "$1" in + + -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]" + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing 0.3 - GNU automake" + ;; + + -*) + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 + ;; + + aclocal) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`acinclude.m4' or \`configure.in'. 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 missing on your system. You should only need it if + you modified \`configure.in'. 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 missing on your system. You should only need it if + you modified \`acconfig.h' or \`configure.in'. 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.in` + 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 missing on your system. You should only need it if + you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'. + 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 + ;; + + bison|yacc) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. 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 missing on your system. 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 missing on your system. 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 missing on your system. 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." + file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` + if test -z "$file"; then + file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` + file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` + fi + touch $file + ;; + + tar) + shift + if test -n "$run"; then + echo 1>&2 "ERROR: \`tar' requires --run" + exit 1 + fi + + # 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 ${1+"$@"} && exit 0 + fi + if (gtar --version > /dev/null 2>&1); then + gtar ${1+"$@"} && exit 0 + fi + firstarg="$1" + if shift; then + case "$firstarg" in + *o*) + firstarg=`echo "$firstarg" | sed s/o//` + tar "$firstarg" ${1+"$@"} && exit 0 + ;; + esac + case "$firstarg" in + *h*) + firstarg=`echo "$firstarg" | sed s/h//` + tar "$firstarg" ${1+"$@"} && 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 you do not seem to have it handy on your + system. 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 prerequirements 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 diff --git a/admin/mkinstalldirs b/admin/mkinstalldirs new file mode 100755 index 0000000..bb5178e --- /dev/null +++ b/admin/mkinstalldirs @@ -0,0 +1,40 @@ +#! /bin/sh +# mkinstalldirs --- make directory hierarchy +# Author: Noah Friedman +# Created: 1993-05-16 +# Public domain + +# $Id: mkinstalldirs,v 1.7 2001/11/20 09:56:33 joachim Exp $ + +errstatus=0 + +for file +do + set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + shift + + pathcomp= + for d + do + 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 + fi + fi + + pathcomp="$pathcomp/" + done +done + +exit $errstatus + +# mkinstalldirs ends here diff --git a/admin/ylwrap b/admin/ylwrap new file mode 100755 index 0000000..8aa0314 --- /dev/null +++ b/admin/ylwrap @@ -0,0 +1,142 @@ +#! /bin/sh +# ylwrap - wrapper for lex/yacc invocations. +# Copyright 1996, 1997, 1998, 1999 Free Software Foundation, Inc. +# Written by Tom Tromey . +# +# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Usage: +# ylwrap PROGRAM INPUT [OUTPUT DESIRED]... -- [ARGS]... +# * PROGRAM is program to run. +# * INPUT is the input file +# * OUTPUT is file PROG generates +# * DESIRED is file we actually want +# * ARGS are passed to PROG +# Any number of OUTPUT,DESIRED pairs may be used. + +# The program to run. +prog="$1" +shift +# Make any relative path in $prog absolute. +case "$prog" in + /* | [A-Za-z]:*) ;; + */*) prog="`pwd`/$prog" ;; +esac + +# The input. +input="$1" +shift +case "$input" in + /* | [A-Za-z]:*) + # Absolute path; do nothing. + ;; + *) + # Relative path. Make it absolute. Why? Because otherwise any + # debugging info in the generated file will point to the wrong + # place. This is really gross. + input="`pwd`/$input" + ;; +esac + +# We don't want to use the absolute path if the input in the current +# directory like when making a tar ball. +input_base=`echo $input | sed -e 's|.*/||'` +if test -f $input_base && cmp $input_base $input >/dev/null 2>&1; then + input=$input_base +fi + +pairlist= +while test "$#" -ne 0; do + if test "$1" = "--"; then + shift + break + fi + pairlist="$pairlist $1" + shift +done + +# FIXME: add hostname here for parallel makes that run commands on +# other machines. But that might take us over the 14-char limit. +dirname=ylwrap$$ +trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15 +mkdir $dirname || exit 1 + +cd $dirname +case "$input" in + /* | [A-Za-z]:*) + # Absolute path; do nothing. + ;; + *) + # Make a symbolic link, hard link or hardcopy. + ln -s ../"$input" . > /dev/null 2>&1 || ln ../"$input" . > /dev/null 2>&1 || cp ../"$input" . + ;; +esac +$prog ${1+"$@"} "$input" +status=$? + +if test $status -eq 0; then + set X $pairlist + shift + first=yes + # Since DOS filename conventions don't allow two dots, + # the DOS version of Bison writes out y_tab.c instead of y.tab.c + # and y_tab.h instead of y.tab.h. Test to see if this is the case. + y_tab_nodot="no" + if test -f y_tab.c || test -f y_tab.h; then + y_tab_nodot="yes" + fi + + while test "$#" -ne 0; do + from="$1" + # Handle y_tab.c and y_tab.h output by DOS + if test $y_tab_nodot = "yes"; then + if test $from = "y.tab.c"; then + from="y_tab.c" + else + if test $from = "y.tab.h"; then + from="y_tab.h" + fi + fi + fi + if test -f "$from"; then + # If $2 is an absolute path name, then just use that, + # otherwise prepend `../'. + case "$2" in + /* | [A-Za-z]:*) target="$2";; + *) target="../$2";; + esac + mv "$from" "$target" || status=$? + else + # A missing file is only an error for the first file. This + # is a blatant hack to let us support using "yacc -d". If -d + # is not specified, we don't want an error when the header + # file is "missing". + if test $first = yes; then + status=1 + fi + fi + shift + shift + first=no + done +else + status=$? +fi + +# Remove the directory. +cd .. +rm -rf $dirname + +exit $status diff --git a/bibletime-doc/INSTALL b/bibletime-doc/INSTALL new file mode 100644 index 0000000..0b09b97 --- /dev/null +++ b/bibletime-doc/INSTALL @@ -0,0 +1,208 @@ +Additions for BibleTime 1.1: +--------------------------- + +These are instructions how to install BibleTime 1.1. +It's sometimes a little bit tricky to get Bibletime and SWORD working, but +it's possible. + +BibleTime 1.1 requires: + -QT 2.2.x or later + -KDE 2.x (at least the libraries) + -SWORD 1.5.2 or later + +If you don't have the sources already please browse to www.bibletime.de to see +a list of required packages with their download URLs. + +Compile BibleTime 1.1: +---------------------------- + +export QTDIR= +export KDEDIR= +export PATH=$KDEDIR/bin:$PATH +make -f Makefile.cvs +./configure # create makefiles +make # compile BibleTime +make install # install BibleTime + +If something is missing in this file please post to jansorg@gmx.de, my peronal +eMail adress. +Please read README for a short description of BibleTime 1.1. The new handbook +does contain better instructions how to install BibleTime from sources. +Don't forget to read the new handbook of BibleTime, too. +It has more information about BibleTime's features and installation. + +Joachim + + +______________________________________________________________________________ +** The standard Installation instructions of auto-tool packages ** +------------------------------------------------------------------------------ + + +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, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + 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 at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' 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 a while. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Type `make install' to install the programs and any data files and + documentation. + + 4. You can remove the program binaries and object files from the + source code directory by typing `make clean'. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +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 supports 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' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + 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' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +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 host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +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. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/bibletime-doc/INSTALL.in b/bibletime-doc/INSTALL.in new file mode 100644 index 0000000..b5e6933 --- /dev/null +++ b/bibletime-doc/INSTALL.in @@ -0,0 +1,208 @@ +Additions for BibleTime @VERSION@: +--------------------------- + +These are instructions how to install BibleTime @VERSION@. +It's sometimes a little bit tricky to get Bibletime and SWORD working, but +it's possible. + +BibleTime @VERSION@ requires: + -QT 2.2.x or later + -KDE 2.x (at least the libraries) + -SWORD 1.5.2 or later + +If you don't have the sources already please browse to www.bibletime.de to see +a list of required packages with their download URLs. + +Compile BibleTime @VERSION@: +---------------------------- + +export QTDIR= +export KDEDIR= +export PATH=$KDEDIR/bin:$PATH +make -f Makefile.cvs +./configure # create makefiles +make # compile BibleTime +make install # install BibleTime + +If something is missing in this file please post to jansorg@gmx.de, my peronal +eMail adress. +Please read README for a short description of BibleTime @VERSION@. The new handbook +does contain better instructions how to install BibleTime from sources. +Don't forget to read the new handbook of BibleTime, too. +It has more information about BibleTime's features and installation. + +Joachim + + +______________________________________________________________________________ +** The standard Installation instructions of auto-tool packages ** +------------------------------------------------------------------------------ + + +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, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + 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 at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' 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 a while. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Type `make install' to install the programs and any data files and + documentation. + + 4. You can remove the program binaries and object files from the + source code directory by typing `make clean'. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +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 supports 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' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + 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' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +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 host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +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. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/bibletime-doc/Makefile.am b/bibletime-doc/Makefile.am new file mode 100644 index 0000000..c199427 --- /dev/null +++ b/bibletime-doc/Makefile.am @@ -0,0 +1,26 @@ +SUBDIRS = docs po admin . + +EXTRA_DIST = \ +README.in README \ +INSTALL.in INSTALL\ +bibletime-doc.spec bibletime-doc.spec.in \ +configure.in.in configure.in \ +Makefile.cvs + +# not a GNU package. You can remove this line, if +# have all needed files, that a GNU package needs +AUTOMAKE_OPTIONS = foreign + +$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in + @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in bibletime.m4 > acinclude.m4 +$(top_srcdir)/configure.in: $(top_srcdir)/configure.files $(shell test -f $(top_srcdir)/configure.files && cat $(top_srcdir)/configure.files) + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in +$(top_srcdir)/subdirs: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs +$(top_srcdir)/configure.files: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.files + +MAINTAINERCLEANFILES = configure.files subdirs + +dist-hook: + cd $(distdir) && $(MAKE) -f Makefile.cvs diff --git a/bibletime-doc/Makefile.cvs b/bibletime-doc/Makefile.cvs new file mode 100644 index 0000000..030b140 --- /dev/null +++ b/bibletime-doc/Makefile.cvs @@ -0,0 +1,15 @@ + +all: + @echo "This Makefile is only for the CVS repository" + @echo "This will be deleted before making the distribution" + @echo "" + @if test ! -d admin; then \ + echo "Please recheckout this module!" ;\ + echo "for cvs: use checkout once and after that update again" ;\ + echo "for cvsup: checkout kde-common from cvsup and" ;\ + echo " link kde-common/admin to ./admin" ;\ + exit 1 ;\ + fi + $(MAKE) -f admin/Makefile.common cvs + +.SILENT: diff --git a/bibletime-doc/Makefile.in b/bibletime-doc/Makefile.in new file mode 100644 index 0000000..200f828 --- /dev/null +++ b/bibletime-doc/Makefile.in @@ -0,0 +1,539 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = . + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = docs po admin . + +EXTRA_DIST = README.in README INSTALL.in INSTALL bibletime-doc.spec bibletime-doc.spec.in configure.in.in configure.in Makefile.cvs + + +# not a GNU package. You can remove this line, if +# have all needed files, that a GNU package needs +AUTOMAKE_OPTIONS = foreign + +MAINTAINERCLEANFILES = configure.files subdirs +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = README INSTALL bibletime-doc.spec +DIST_COMMON = README INSTALL INSTALL.in Makefile.am Makefile.in \ +README.in acinclude.m4 aclocal.m4 bibletime-doc.spec.in configure \ +configure.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=bibletime.m4 stamp-h.in + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile + cd $(top_srcdir) && perl admin/am_edit Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4 + cd $(srcdir) && $(ACLOCAL) + +config.status: $(srcdir)/configure.in $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) +README: $(top_builddir)/config.status README.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +INSTALL: $(top_builddir)/config.status INSTALL.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +bibletime-doc.spec: $(top_builddir)/config.status bibletime-doc.spec.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(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 + -rm -rf $(distdir) + GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) dist + -rm -rf $(distdir) + @banner="$(distdir).tar.gz is ready for distribution"; \ + dashes=`echo "$$banner" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + echo "$$dashes" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +distdir: $(DISTFILES) + -rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign ./Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + -rm -f config.status + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + -rm -f config.status + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in + @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in bibletime.m4 > acinclude.m4 +$(top_srcdir)/configure.in: $(top_srcdir)/configure.files $(shell test -f $(top_srcdir)/configure.files && cat $(top_srcdir)/configure.files) + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in +$(top_srcdir)/subdirs: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs +$(top_srcdir)/configure.files: + cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.files + +dist-hook: + cd $(distdir) && $(MAKE) -f Makefile.cvs + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --foreign ./Makefile + cd $(top_srcdir) && perl admin/am_edit Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/README b/bibletime-doc/README new file mode 100644 index 0000000..af90d31 --- /dev/null +++ b/bibletime-doc/README @@ -0,0 +1,60 @@ +In the BibleTime-Doc files: +------------- +English documentation + BibleTime Handbook + Bibletime Help Dialog + Biblestudy HowTo + BibleTime Installation Instructions +Translated Documentation +Zipped up last rev documentation (use this to create kbable translation dictionaries) +.po files for bibletime code translation + + +General introduction: +-------------------- + This is BibleTime Documentation 1.1 for KDE 2. +If you find bugs please report them to info@bibletime.de or use our +online bugreport form on www.bibletime.de. + +Please do also send suggestions, criticism and moral support to info@bibletime.de . +If you have too much money send it to one of the authors ;-) + +Read the file INSTALL how to install and compile this version of BibleTime Documentation. +*Later, see the file in bibletime* The AUTHORS file contains a list of authors working on BibleTime. +*Later, this file is to do* There's also a SPEC file to create RPMs, it's called bibletime.spec. + + +Requirements +------------ + + o Bibletime version 1.x + o KDE 2.x + o SWORD 1.5.2 + +Documentation: +-------------- + We do have a great and really useful handbook now! +Fred did a great job with it and worked long on it. We hope that you like it. You can read the handbook in the +help browser of KDE2. It's in the Applications section. + +The Sword CD: +------------- +The team of BibleTime distributes the SWORD CD in Europe. +If you live in Europe and want to get one or more CDs please have a look at www.bibletime.de. +If you don't live in Europe please have a look at www.crosswire.org. + +Translations +------------ +The BibleTime documentation is created in English, and translated to other languages with the assistance of +tools developed by the kde documentation project. If BibleTime is not yet translated into your language +please consider making the port. With the latest versions of kde translatiion tools the amount of effort +required to create a language port has been greatly reduced. The translation process documentation is +found in the KDE Translation HowTo, which is posted at + +With the help of our translation team we hope to make BibleTime + + +Thank you! +The BibleTime Team +Joachim + diff --git a/bibletime-doc/README.in b/bibletime-doc/README.in new file mode 100644 index 0000000..253cfc7 --- /dev/null +++ b/bibletime-doc/README.in @@ -0,0 +1,60 @@ +In the BibleTime-Doc files: +------------- +English documentation + BibleTime Handbook + Bibletime Help Dialog + Biblestudy HowTo + BibleTime Installation Instructions +Translated Documentation +Zipped up last rev documentation (use this to create kbable translation dictionaries) +.po files for bibletime code translation + + +General introduction: +-------------------- + This is BibleTime Documentation @VERSION@ for KDE 2. +If you find bugs please report them to info@bibletime.de or use our +online bugreport form on www.bibletime.de. + +Please do also send suggestions, criticism and moral support to info@bibletime.de . +If you have too much money send it to one of the authors ;-) + +Read the file INSTALL how to install and compile this version of BibleTime Documentation. +*Later, see the file in bibletime* The AUTHORS file contains a list of authors working on BibleTime. +*Later, this file is to do* There's also a SPEC file to create RPMs, it's called bibletime.spec. + + +Requirements +------------ + + o Bibletime version 1.x + o KDE 2.x + o SWORD 1.5.2 + +Documentation: +-------------- + We do have a great and really useful handbook now! +Fred did a great job with it and worked long on it. We hope that you like it. You can read the handbook in the +help browser of KDE2. It's in the Applications section. + +The Sword CD: +------------- +The team of BibleTime distributes the SWORD CD in Europe. +If you live in Europe and want to get one or more CDs please have a look at www.bibletime.de. +If you don't live in Europe please have a look at www.crosswire.org. + +Translations +------------ +The BibleTime documentation is created in English, and translated to other languages with the assistance of +tools developed by the kde documentation project. If BibleTime is not yet translated into your language +please consider making the port. With the latest versions of kde translatiion tools the amount of effort +required to create a language port has been greatly reduced. The translation process documentation is +found in the KDE Translation HowTo, which is posted at + +With the help of our translation team we hope to make BibleTime + + +Thank you! +The BibleTime Team +Joachim + diff --git a/bibletime-doc/acinclude.m4 b/bibletime-doc/acinclude.m4 new file mode 100644 index 0000000..ff58a75 --- /dev/null +++ b/bibletime-doc/acinclude.m4 @@ -0,0 +1,5165 @@ +## -*- autoconf -*- + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) +## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 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 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. + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) +## -*- autoconf -*- + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + diff --git a/bibletime-doc/aclocal.m4 b/bibletime-doc/aclocal.m4 new file mode 100644 index 0000000..1c941c6 --- /dev/null +++ b/bibletime-doc/aclocal.m4 @@ -0,0 +1,5278 @@ +dnl aclocal.m4 generated automatically by aclocal 1.4-p4 + +dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. + + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + + +# Do all the work for Automake. 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. + +# serial 1 + +dnl Usage: +dnl AM_INIT_AUTOMAKE(package,version, [no-define]) + +AC_DEFUN(AM_INIT_AUTOMAKE, +[AC_REQUIRE([AC_PROG_INSTALL]) +PACKAGE=[$1] +AC_SUBST(PACKAGE) +VERSION=[$2] +AC_SUBST(VERSION) +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 +ifelse([$3],, +AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) +AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) +AC_REQUIRE([AM_SANITY_CHECK]) +AC_REQUIRE([AC_ARG_PROGRAM]) +dnl FIXME This is truly gross. +missing_dir=`cd $ac_aux_dir && pwd` +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) +AC_REQUIRE([AC_PROG_MAKE_SET])]) + +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# 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 conftestfile 2> /dev/null` + if test "[$]*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "[$]*" != "X $srcdir/configure conftestfile" \ + && test "[$]*" != "X conftestfile $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" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Add --enable-maintainer-mode option to configure. +# From Jim Meyering + +# serial 1 + +AC_DEFUN(AM_MAINTAINER_MODE, +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) + dnl maintainer-mode is disabled by default + AC_ARG_ENABLE(maintainer-mode, +[ --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + USE_MAINTAINER_MODE=$enableval, + USE_MAINTAINER_MODE=no) + AC_MSG_RESULT($USE_MAINTAINER_MODE) + AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) + MAINT=$MAINTAINER_MODE_TRUE + AC_SUBST(MAINT)dnl +] +) + +# Define a conditional. + +AC_DEFUN(AM_CONDITIONAL, +[AC_SUBST($1_TRUE) +AC_SUBST($1_FALSE) +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi]) + diff --git a/bibletime-doc/admin/ChangeLog b/bibletime-doc/admin/ChangeLog new file mode 100644 index 0000000..20e979b --- /dev/null +++ b/bibletime-doc/admin/ChangeLog @@ -0,0 +1,748 @@ +2000-11-30 David Faure + + * acinclude.m4.in: Added kde_moduledir which points to $prefix/lib/kde2/ + +2000-07-24 Alex Zepeda + + * acinclude.m4.in: Remove the test for malloc.h + +2000-04-05 Michael Matz + + * config.pl : added kludge for compiling regexp's even if + perl < 5.005 is installed + * conf.change.pl : added support for autoconf 2.14.1 + +2000-03-27 David Faure + + * acinclude.m4.in, Makefile.common: changed inst-apps semantics + If present, only the subdirs it lists will be configured and compiled. + If absent, then subdirs is used (and inst-apps isn't generated anymore) + +2000-03-22 David Faure + + * am_edit: Added support for KDE_ICON = AUTO + +2000-03-18 David Faure + + * Makefile.common: Rewrote the list-of-Makefiles generation to make it + simpler and nicer, using create_makefiles' way of doing it. + Added support for COMPILE_LAST and COMPILE_FIRST in toplevel Makefile.am + +2000-01-05 David Faure + + * Makefile.common: hacked around autoconf bug (setting INSTALL to ".." + when calling a subconfigure and INSTALL is already set). + +1999-12-15 Waldo Bastian + + * acinclude.m4.in: Test whether Qt compiles AND LINKS without flags. + +1999-06-24 Stephan Kulow + + * am_edit: generate correct Makefile entries for kde-i18n toplevel directories + * am_edit: + +1999-06-14 Stephan Kulow + + * am_edit: remove idl generated files on make clean + +1999-06-09 Stephan Kulow + + * am_edit: skipping programs with variables in sources for final + +1999-06-07 Stephan Kulow + + * am_edit: added support for idl files + +1999-06-02 Stephan Kulow + + * Makefile.common: preserve comments in .pot files to make it + possible for programmers and translators to comment them + +1999-06-02 Simon Hausmann + + * acinclude.m4.in: added kde_servicetypesdir + +1999-06-02 David Faure + + * acinclude.m4.in: removed LIB_KFM and LIB_KDEUTIL aliases + +1999-05-28 Simon Hausmann + + * acinclude.m4.in: added kde_servicesdir + +1999-05-27 Stephan Kulow + + * am_edit: lots of changes for better support of --enable-final + +1999-05-22 Stephan Kulow + + * acinclude.m4.in: added support for --with-dmalloc + +1999-05-19 Stephan Kulow + + * acinclude.m4.in: added support for --enable-final + + * am_edit: added support for --enable-final + +1999-05-06 Stephan Kulow + + * acinclude.m4.in: change the meaning of --disable-debug + +1999-05-04 Helge Deller + + * acinclude.m4.in: the test for the X-includes/directories failed, + when compile & link work without special directories (as on HP-UX). + +1999-04-20 Stephan Kulow + + * am_edit: adding DESTDIR replacement for rm and uninstall-local + too. Seems very useless, but makes testing for uninstall easier + +1999-04-01 David Faure + + * acinclude.m4.in: Added -lkfile to $(LIB_KIO) + +1999-03-30 David Faure + + * acinclude.m4.in: Added AC_CHECK_KDEMAXPATHLEN, which defines KDEMAXPATHLEN. + +1999-03-29 David Faure + + * acinclude.m4.in: added LIB_X11 to XPMLIB and GLLIB, because + on SCO, they need it _after_ themselves. + +1999-03-28 David Faure + + * acinclude.m4.in: added LIB_KFM to LIB_KAB alias + +1999-03-26 David Faure + + * acinclude.m4.in: made LIB_KFILE use LIB_KIO instead of LIB_KFM + added LIB_KFORMULA + +1999-03-20 Stephan Kulow + + * acinclude.m4.in: check for libXext - for Russel :) + +1999-03-16 Stephan Kulow + + * acinclud3.m4.in: extend the MICO test with a list of possible + places where to find CORBA.h + +1999-03-15 Stephan Kulow + + * acinclude.m4.in: move $QTINC and $QTLIB in search path + +1999-03-14 Stephan Kulow + + * am_edit: install-root is obsolute. Use DESTDIR always + +1999-03-03 Stephan Kulow + + * acinclude.m4.in: fixing a bug, that $QTDIR was taken before --with-qt* + * acinclude.m4.in: added KDE_USE_QT, that you can choose if to + use QT 2.0 or KDE 1.0 + + * Makefile.common: added target package-merge + + * am_edit: many fixes to the POFILES handeling of am_edit + +1999-03-02 Stephan Kulow + + * acinclude.m4.in: first look at libjpeg6b (from kdesupport) then + for libjpeg + + * config.*, libtool.*: update to the latest FSF tools + +1999-02-23 Stephan Kulow + + * acinclude.m4.in: error when Sparc CC is used. Better use it in + configure and tell him the story then letting him find it while + compiling + + * acinclude.m4.in: adding KDE_CHECK_EXTRA_LIBS to all possible tests, + so that --with-extra-includes is used when needed. + + * acinclude.m4.in: configure looks for giflib30, so it should say so + + * acinclude.m4.in: don't overwrite x include parameters. Patch by + Ari Lemmke (bug report 741) + +1999-02-20 Stephan Kulow + + * acinclude.m4.in: fixing KDE_CHECK_PATHS for rechecking. In case + of defaults (kdelibs) configure didn't cache the results + +1999-02-18 David Faure + + * acinclude.m4.in: added AC_CHECK_S_ISSOCK, to fix #706. + +1999-02-17 David Faure + + * acinclude.m4.in: added AC_CHECK_RANDOM, just like + AC_CHECK_USLEEP, to enable the fake if necessary. + +1999-02-13 Kurt Granroth + + * acinclude.m4.in: look for QT-2.0 + +1999-02-05 Stephan Kulow + + * acinclude.m4.in: in macro KDE_FIND_PATH treat user given dirs + and $PATH dirs the same. Added seperate test for to find binary + ($5) to replace findperl + +1999-01-28 Stephan Kulow + + * automoc: added patch by jbb to be a little bit more precise about + the number of sourcefiles that include the moc file if it's != 1. + Besides that automoc will fail with exit code, so the Makefile.cvs + process does stop in case a problem accoured. + + * automoc: don't hardcode header suffix, but allow *.h, *.hh and *.H + +1999-01-27 Stephan Kulow + + * acinclude.m4.in: try qobjcoll.h and qapplication.h before saying + OK to qt headers. (I could kill SuSE for splitting into qt-dev + and qt-compat) + +1991-01-23 Stephan Kulow + + * automoc: added fixes by JB + +1999-01-21 Stephan Kulow + + * automoc: added --help and --path (for use in dist-hook) + +1999-01-20 Alex Zepeda + + * ltconfig: added entries for FreeBSD 4.x + +1999-01-19 Stephan Kulow + + * automoc: added a distclean-metasources target which deletes all + moc files and let distclean depend on it + +1999-01-18 Stephan Kulow + + * automoc: several fixes (ignore comment lines + join lines + with \ ) + + * automoc: support META_INCLUDES in case the header files are + not in the same dir as the sources. + +1999-01-17 Stephan Kulow + + * automoc: several fixes. + +1999-01-16 Stephan Kulow + + * automoc: added support for included MOC files. + + * acinclude.m4.in: use srcdir for the subdirs stuff as well + + * automoc: added better command line parsing and some preparation + for handling "normal" moc files + + * acinclude.m4.in: added aliases for libkio and libkdeutil + +1999-01-15 Harri Porten + + * automoc: Carved in stone syntax for Makefile.in: + {program}_METASOURCES = USE_AUTOMOC [{suffix}] + +1999-01-15 Stephan Kulow + + * Makefile.common: set top_srcdir to . + +1999-01-14 Stephan Kulow + + * acinclude.m4.in: don't use config.h.bot any longer + +1999-01-08 Stephan Kulow + + * acinclude.m4.in: added KDE_CHECK_NEWLIBS + + * acinclude.m4.in: test for Qt even if both --with-qt-headers and + --with-qt-libraries are given. They may be wrong. + +1999-01-06 Stephan Kulow + + * acinclude.m4.in: change the MOC test so it can be used for other + tools as well + +1998-12-28 Stephan Kulow + + * acinclude.m4.in: look for QT-1.42 since kpanel needs it + +1998-12-27 Stephan Kulow + + * acinclude.m4.in: added /usr/lib for libpython test + + * acinclude.m4.in: take my email address out of it and added a + reference to www.kde.org/faq + + * acinclude.m4.in: use Qt >= 1.4 + + * acinclude.m4.in: added KDE_CHECK_NAMESPACES + +1998-12-18 Stephan Kulow + + * acinclude.m4.in: test for directories to exist before saying yes + to compilation :) + +1998-12-14 Stephan Kulow + + * acinclude.m4.in: added CPLUSPLUS for the kimgio test. It's + only important for shaman right now, but at least there it is :) + +1998-12-12 Stephan Kulow + + * Makefile.cvs: added common Makefile.cvs + + * acinclude.m4.in: Thomas.Schwarz@pro-sieben.de reported a very ugly + bug in AC_PROG_CXXCPP, so I added my own version + + * acinclude.m4.in: added KDE_CREATE_SUBDIRS_LIST to simplify + most toplevel configures + +1998-12-11 Stephan Kulow + + * acinclude.m4.in: added call to AC_PROG_CXXCPP. Not really sure why + it never caused problems + + * acinclude.m4.in: moved LIBTIFF alias + + * acinclude.m4.in: only test for the existance of libkimgio if the + user wants to. For 99% of the applications it doesn't matter if + configure can find libkimgio :) + +1998-12-10 Stephan Kulow + + * acinclude.m4.in: some changes to the python check to handle $LIBDL + +1998-12-09 Stephan Kulow + + * acinclude.m4.in: make Alex's tiff test a real one + + * acinclude.m4.in: fix the LIB_TIFF alias to really expand + +1998-12-08 Alex Zepeda + + * acinclude.m4.in: Fix tiff test to use libtiff34 if it exists. + This is what the FreeBSD port installs to for whatever reason. + + * acinclude.m4.in: s/kde/KDE/ (at least in some of the + descriptions, obviously no variable names were touched. + +1998-12-08 Stephan Kulow + + * acinclude.m4.in: moved the LIB_QT alias to the Qt check + + * acinclude.m4.in: unset KDEDIR before running conftest + + * acinclude.m4.in: fixed mean typo + + * acinclude.m4.in: added the copyright header for the gettext + tests, so that people know we're legal ;) + + * acinclude.m4.in: set language to C++ before testing QIMGIO + +1998-12-07 Alex Zepeda + + * acinclude.m4.in: Fix PNG test to use correct ANSI C code, and + not trip up gcc. + +1998-12-07 Stephan Kulow + + * acinclude.m4.in: don't hardcode -ldl + + * acinclude.m4.in: move the LIB_X11 alias to the X test to make it + useful for kdesupport as well + + * acinclude.m4.in: give the word CHECK_KIMGIO a meaning in really + checking for it + + * acinclude.m4.in: simple fix to prevent kimgio test from compiling + KDE application in kdelibs + +1998-12-05 Stephan Kulow + + * acinclude.m4.in: let KDE_CHECK_KIMGIO depend on AC_PATH_KDE, + otherwise most tests fail. It didn't mean anything to 90% of the + packages since they test for KDE before kimgio, but for shaman + it does + + * ltconfig: the real fix for the Solaris && gcc problem. + Thanks Kurt for reporting it and Alexandre for fixing it :) + +1998-12-04 Stephan Kulow + + * libtool.*: update again + + * acinclude.m4.in: changed the function to test for libnsl to + inet_ntoa since UnixWare 7's version did not have gethostbyname, + but needs libnsl + +1998-12-02 Stephan Kulow + + * acinclude.m4.in: fixed the MOC test (again) to use the PATH variable + correctly (with the correct seperator) + + * config.guess: update from the soon to be released autoconf-2.13 + +1998-12-01 Stephan Kulow + + * acinclude.m4.in: fixes for the MOC test. Use PATH now when found + +1998-11-30 Stephan Kulow + + * acinclude.m4.in: extended the MOC test. It checks now for the + first line of the output of "moc --help" and looks for Qt in it. + +1998-11-27 Stephan Kulow + + * ltconfig: another libtool update. Fixes an ugly bug on Solaris, + when GNU ld is in path before Solaris ld, but gcc uses the later + +1998-11-26 Stephan Kulow + + * acinclude.m4.in: made the Qt test more advance to check for qt + 1.41 - I still need to make it better, but there shouldn't be too + many qt releases in a row, would there? ;) + + * ltconfig: libtool update with better BSD/OS support + +1998-11-22 Stephan Kulow + + * ltconfig: cool - libtool uses g++ now to link libraries on Solaris. + This means, static objects become usuable on that plattforms (some + others as well). + +1998-11-20 Stephan Kulow + + * ltmain.sh: updated libtool from their CVS - fixes bugs we haven't + found and adds some more features, that we do not need ;-) + +1998-11-19 David Faure + + * acinclude.m4.in: added AC_CHECK_UTMP_FILE, taken from kdebase + +1998-11-16 Harri Porten + + * automoc: take care of "ar" object files, too. + +1998-11-16 Stephan Kulow + + * libtool.m4.in: revised my --silent patch. The solution + Alexandre suggested is much better. + +1998-11-15 Stephan Kulow + + * ltconfig.in: done some tweakings to support -export-dynamic + with egcs + + * config.sub: wow - BeOS support :) + +1998-11-14 Stephan Kulow + + * acinclude.m4.in: don't use rpath for test program, if rpath is + disabled for applications + + * ltconfig: patched libtool to make it silent without making + ltconfig silent + + * acinclude.m4.in: make libtool silent again + + * libtool.m4.in: update to libtool-981114 (untested stuff, but + we have to test it to make it tested - sounds that logical? :-) + + * libtool.m4.in: moved the self stricked libtool tests to "our" + file. + + * acinclude.m4.in: moved ChangeLog of kdebase which I used to + maintain acinclude.m4.in logs to kde-common/admin. Hopefully I + will maintain it more often from now on :) + +1998-07-27 Stephan Kulow + + * acinclude.m4.in: fixed some things in the MOC test + + * acinclude.m4.in: fixed this damn msgfmt test + +1998-06-02 Stephan Kulow + + * acinclude.m4.in: ignore msgfmt, if not GNU gettext + +1998-05-28 Stephan Kulow + + * acinclude.m4.in: fixed KDE_CHECK_STL. Checks for HP and SGI type + + * acinclude.m4.in: embraced every variable with "" to make + it consistent + + * acinclude.m4.in: various fixes for the koffice checks + (mico, ministl and python) + +1998-05-16 Stephan Kulow + + * acinclude.m4.in: don't use KDE_CHECK_QT_DIRECT, when + --with-qt-libs are given + +1998-04-21 Stephan Kulow + + * acinclude.m4.in: cool, I found the trick to suppress the ls + errors + +1998-04-20 Stephan Kulow + + * acinclude.m4.in: rewrote the qt checking test, since it + didn't work under FreeBSD, since it relied on the .so link. + The new version is a little bit buggy, but I need some testing + to make it perfect + + * acinclude.m4.in: fixed the side effects of the PAM test + +1998-04-18 Stephan Kulow + + * acinclude.m4.in: hopefully fixed the PAM test (I rewrote it) + +1998-04-16 Stephan Kulow + + * acinclude.m4.in: extended the getsockname test inspired + by a patch by Martin Baulig + + * configure.in: added test for utmp file + + * acinclude.m4.in: made --without-pam default + + +1998-04-06 Stephan Kulow + + * acinclude.m4.in: don't test compiling, linking, running in + one step. This proved to be too dangerous for my mail box. + +1998-03-21 Stephan Kulow + + * libtool.m4.in: created some new macros to work around this + ugly (because long) help of configure --enable-shared/static + +1998-03-05 Stephan Kulow + + * acinclude.m4.in: set language to C++ before trying the ksize_t + test + + * configure.in: sorted the Makefile entries alphabeticly (and all + together: we love xemacs! we love xemacs! ;) + + * configure.in: added sk + + * acinclude.m4.in: substitute x_libraries to fix the empty -rpath + +1998-03-03 Stephan Kulow + + * acinclude.m4.in: add a rpath for every shared library, that is + linked too (especially X11 libraries) + +Tue Feb 24 22:04:59 1998 Stephan Kulow + + * acinclude.m4.in: added kde_sounddir and set kde_minidir to + kde_icondir/mini to break not too much + +Sun Feb 15 18:25:50 1998 Stephan Kulow + + * configure.in: added bugfix by Bob Miller + (correct reset of IFS) + +Wed Feb 11 00:53:11 1998 Stephan Kulow + + * configure.in: made shadow under Linux default, since the + binaries will work also under non-shadow systems. The only problem + left is PAM, so I disabled shadow in case, PAM is present + +Tue Feb 10 16:46:32 1998 Stephan Kulow + + * configure.in: added test for nice to find out, if the option + -nice works for the screensavers + + * acinclude.m4.in: port to LynxOS. For this I moved all library + search routines in KDE_MISC_TESTS, so I don't need to write this + in every package + + * README: some grammar fixes + + * acinclude.m4.in: search for the libs in the exec_prefix, when + it's present + +Sun Feb 8 14:07:23 1998 Stephan Kulow + + * acinclude.m4.in: updated all packages + + * libtool.m4.in: applied patch for libtool.m4.in to show the + correct default for shared and static + + +Sat Feb 7 10:56:00 1998 Stephan Kulow + + * configure.in: good news - KDE is relocatable again. + + * libtool.m4.in: updated to latest libtool 1.0i + +Fri Feb 6 21:26:51 1998 Stephan Kulow + + * acinclude.m4.in: added a AC_PROVIDE for AC_PROG_CC and + AC_PROG_CPP to KDE_CHECK_COMPILERS + +Thu Feb 5 16:27:47 1998 Stephan Kulow + + * acinclude.m4.in: put $QTDIR/bin before /usr/bin in the path to + look for moc. I don't know why, but I got a report, that configure + found /usr/bin/moc under Solaris + +Fri Jan 30 15:47:50 1998 Stephan Kulow + + * acinclude.m4.in: export LIBRARY_PATH after reset to the saved + value + + * acinclude.m4.in: unset the LIBRARY_PATH to get a relieable + result when trying to find, if Qt compiles without -L + +Sat Jan 24 00:45:52 1998 Stephan Kulow + + * acinclude.m4.in: fixed another bug in AC_PATH_KDE + +Thu Jan 22 14:46:15 1998 Stephan Kulow + + * configure.in: fixed an ugly bug in AC_BASE_PATH_KDE + + * kappfinder/kappfinder.in: let kappfinder create by configure to + allow the use of the kde_ paths + +Wed Jan 21 22:19:35 1998 Stephan Kulow + + * acinclude.m4.in: - added a install_root prefix to all paths, if + set, to enable package managers to move the whole installation at once + - added --with-install-root to set the install_root prefix + +Tue Jan 20 22:41:04 1998 Stephan Kulow + + * configure.in: added NOOPT_CXXFLAGS to allow kioslave to be + compiled without -O2 + +Mon Jan 19 21:55:21 1998 Stephan Kulow + + * configure.in: some little fixes for the Makefiles + + * acinclude.m4.in: --prefix will no longer override the search for + libraries. If they are present somewhere, they are used (through + the methodes in KApplication) + +Mon Jan 12 00:30:36 1998 Stephan Kulow + + * acinclude.m4.in fixed an ugly bug, that accoured, when + qt_libraries is not set (empty/equals X11/not necessary) + + * acinclude.m4.in moved the remove of the files after the error + detection + + +Sun Jan 11 17:27:53 1998 Stephan Kulow + + * acinclude.m4.in added a new macro KDE_CHECK_QT_DIRECT to unset + the Qt library path, if a Qt program compiles without them + + * acinclude.m4.in added a return value in the CREATE_KFSSTND + macro. Perhaps this has caused the problems + +Sat Jan 10 17:40:44 1998 Stephan Kulow + + * ChangeLog started to maintain a ChangeLog file again + * acinclude.m4.in the AC_CREATE_KFSSTND to get better debug output + to find the problem + + +Old logs, Stephan Kulow made: + +0.1 : first steps with libkde +0.2 : first release with libkde, khtmlw, kdehelp, acli, kwm, kpanel +0.3 : added kfm and bugfixes +0.4 : updated khtmlw, kdehelp, kwm, changed install in all subdirs +0.5 : support libtool (chooseable shared libs) +0.6 : split libkde in kdecore and kdeui +0.6.1 : Bugfixes +0.7 : added code from Janos Farkas (configure) + : added @{kde,qt}_{includes,libraries}@ +0.7.1: Bugfixes +0.7.2: Bugfixes +0.7.3: added @all_includes@ and @all_libraries@ + replaced all incompatible flags like $(CC) and -DHAVE_UNISTD_H +0.7.4: changed support for libkde (back in it's own) + added kpat + updated kpanel, kwm, kghostview +0.8: removed a bug in kghostview + lifted installation process of several apps + splitt kdebase into kdelibs and kdeapps + updated khtmlw, kfm and kdehelp + added kcalc and kpaint + updated kdisplay + added kscreensaver + added --enable-kscreensaver + added --enable-debug (and @CXXFLAGS@ to all Makefile.ins) + updated kwm to 0.4.7 + added make uninstall to every app + added kvt + added khexdit + added .kdelnk for kmines, kedit, ktetris + put kwm, kfind's .kdelnk in the right directories + replaced --enable-kscreensaver by --disable-kscreensaver + updated kpanel to 0.15 + some bugfixes (thanks Marco) + some bugfixes (thanks Martin) + changed acinclude.m4, because aclocal won't + updated kwm to 0.4.8 (patched it again for Qt-1.2) + updated kvt to 0.13 (patch from Matthias) + patched kvt and kwm + updated kwm to 0.5.0 + updated kvt for 0.14 (again and again :-) + updated kview to 0.10 + updated kfm to 0.6.3 + patched kscreensaver for FreeBSD (thanks Marc) +0.9: updated kdisplay to 0.5.3 + added klogout + patches from Matthias + updated kfm to 0.6.4 + updated kghostview to 0.4 + added QTINC and QTLIB + updated kdehelp to 0.4.11 + patched kfm to support ktoolbar + updated kedit to kedit+ + added kfontmanager 0.2.1 +0.9.1: changed kpaint's make style + bugfixing + updated kmines to 0.6.5 + updated ktetris to 0.2.4 + changed to Makefiles to depend on Makefile.in + changed the Makefiles to let install depend on all + added kjots-0.2.2 + updated kjots-0.2.3 + updated kfm to 0.6.6 + updated kjots-0.2.4 + updated kpaint-0.2 + updated kedit to 0.5 + updated kfontmanager to 0.2.2 + updated kfm to 0.6.7 + updated ktetris to 0.2.5 + updated kjots to 0.2.5 +0.10: added HAVE_SQRTL + added HAVE_CRYPT_H + updated kfind + updated kfm to kfm-0.8.1 + re-introduced automake to kdebase + bugfixes for the configure.in + added XPM, GL and PAM tests to configure + added morph3d to kscreensavers + updated kfind to 0.3.2 + added some patches for SGI +... lost the time to maintain a Changelog ;) diff --git a/bibletime-doc/admin/Makefile.am b/bibletime-doc/admin/Makefile.am new file mode 100644 index 0000000..1023a46 --- /dev/null +++ b/bibletime-doc/admin/Makefile.am @@ -0,0 +1,2 @@ +EXTRA_DIST=ChangeLog Makefile.common acinclude.m4.in am_edit am_edit.py conf.change.pl config.guess config.pl config.sub configure.in.min debianrules depcomp install-sh libtool.m4.in ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing mkinstalldirs ylwrap + diff --git a/bibletime-doc/admin/Makefile.common b/bibletime-doc/admin/Makefile.common new file mode 100644 index 0000000..beec064 --- /dev/null +++ b/bibletime-doc/admin/Makefile.common @@ -0,0 +1,295 @@ + +SHELL=/bin/sh + +cvs: + @if grep '$$(top_srcdir)/acinclude.m4:' Makefile.am >/dev/null; then \ + echo "*** Creating acinclude.m4" ;\ + rm -f acinclude.m4 configure.files ;\ + $(MAKE) -f Makefile.am top_srcdir=. acinclude.m4 ;\ + fi + @echo "!!! If you get recursion errors from autoconf, it is advisable to set the" + @echo " environment variable M4 to something including \"--nesting-limit=500\"" + @if test -r configure.in.in; then \ + rm -f subdirs configure.in ;\ + echo "*** Creating list of subdirectories" ;\ + $(MAKE) -f Makefile.am top_srcdir=. subdirs ;\ + echo "*** Creating configure.in" ;\ + $(MAKE) -f Makefile.am top_srcdir=. configure.in ;\ + fi + @echo "*** Creating aclocal.m4" + @aclocal + @echo "*** Creating configure" + @autoconf + @if test -r configure.in.in ; then \ + perl -pi -e 'print "if test \"x\$$with_fast_perl\" = \"xyes\" ;\ + then\n perl -i.bak \$$ac_aux_dir/conf.change.pl \$$CONFIG_STATUS\ + || mv \$$CONFIG_STATUS.bak \$$CONFIG_STATUS;\ + \n rm -f \$$CONFIG_STATUS.bak;\nfi\ + \n" if /^\s*chmod\s+.*\+x\s+.*CONFIG_STATUS/;' configure ;\ + fi + @if grep '} \$$ac_kw foo' configure >/dev/null 2>&1; then perl -p -i -e "s/ac_kw foo/ac_kw int foo/" configure; fi +#David's hack for autoconf bug when $INSTALL is set + @perl -pi -e 'if (/\[\/\$$\]\*. INSTALL=/) { print $$_ ; $$_ = "\"\") ;;\n"; }' configure + @if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then \ + echo "*** Creating config.h template" ;\ + autoheader ;\ + fi + @echo "*** Creating Makefile templates" + @automake + @echo "*** Postprocessing Makefile templates" + @perl admin/am_edit + @if egrep "^cvs-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-local ;\ + fi + @echo "*** Creating date/time stamp" + @touch stamp-h.in + @echo "*** Finished" + @echo " Don't forget to run ./configure" + @echo " If you haven't done so in a while, run ./configure --help" + +dist: + @if grep -e '$$(top_srcdir)/acinclude.m4:' Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am top_srcdir=. acinclude.m4 ;\ + fi + @if test -r configure.in.in; then \ + $(MAKE) -f Makefile.am top_srcdir=. subdirs configure.in; \ + fi ;\ + aclocal; \ + autoheader; \ + automake --foreign --include-deps; \ + perl admin/am_edit; \ + autoconf; \ + if test -r configure.in.in ; then \ + perl -pi -e 'print "if test \"x\$$with_fast_perl\" = \"xyes\" ;\ + then\n perl -i.bak \$$ac_aux_dir/conf.change.pl \$$CONFIG_STATUS\ + || mv \$$CONFIG_STATUS.bak \$$CONFIG_STATUS;\ + \n rm -f \$$CONFIG_STATUS.bak;\nfi\ + \n" if /^\s*chmod\s+.*\+x\s+.*CONFIG_STATUS/;' configure ;\ + fi ;\ + touch stamp-h.in; \ + if grep -e "^cvs-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-local ;\ + fi ;\ + if grep "ac_kw foo" configure >/dev/null 2>&1; then perl -p -i -e "s/ac_kw foo/ac_kw int foo/" configure; fi ;\ + if test -d po; then \ + LIST=`find ./po -name "*.po"`; \ + for i in $$LIST; do \ + file2=`echo $$i | sed -e "s#\.po#\.gmo#"`; \ + msgfmt -o $$file2 $$i || touch $$file2; \ + done ;\ + fi + @if grep -e "^cvs-dist-local:" Makefile.am >/dev/null; then \ + $(MAKE) -f Makefile.am cvs-dist-local ;\ + fi + +cvs-clean: + @if test ! -d CVS; then \ + echo "You don't have a toplevel CVS directory."; \ + echo "You most certainly didn't use cvs to get these sources."; \ + echo "But this function depends on cvs's information."; \ + exit 1 ;\ + fi;\ + pwd=`pwd` ;\ + dirs=`find . -type d | grep -v CVS | sed -e "s#^./##"` ;\ + for i in $$dirs; do \ + if test ! -d "$$pwd/$$i/CVS"; then \ + echo "D $$i" ;\ + rm -rf "$$pwd/$$i"; \ + continue; \ + fi ;\ + cd $$pwd/$$i ;\ + for f in * .*; do \ + if test ! -d "$$f"; then \ + if grep "^/$$f/" CVS/Entries > /dev/null; then \ + a="b"; \ + else \ + echo "F $$i/$$f"; \ + rm -f "$$pwd/$$i/$$f"; \ + fi; \ + fi ; \ + done; \ + done + + +# The Makefiles have to be sorted for slashes, since configure creates +# only one directory per Makefile not the whole hierarchy +configure.in: configure.files $(shell test -f configure.files && cat configure.files) subdirs + @rm -f configure.in configure.in.new ;\ + cat `cat configure.files | egrep -v "^configure.in.bot"` >> configure.in.new ;\ + echo "KDE_CREATE_SUBDIRSLIST" >> configure.in.new ;\ + echo "AC_OUTPUT( \\" >> configure.in.new ;\ + mfs=`find . -type d -print | fgrep -v "/." | sed -e "s#\./##" -e "/^debian/d" | sort`; \ + for i in $$mfs; do \ + topleveldir=`echo $$i| sed -e "s#/.*##"`; \ + if test -f $$topleveldir/configure.in; then \ + continue; \ + fi ;\ + if test ! -f $$i/Makefile.am; then \ + continue; \ + fi ;\ + if test -s inst-apps; then \ + if test -z "`grep \"^$$topleveldir\" inst-apps`"; then \ + continue; \ + fi ;\ + fi ;\ + echo "$$i/Makefile \\" >> configure.in.new ;\ + done ;\ + egrep '^dnl AC_OUTPUT\(.*\)' `cat configure.files` | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1 \\\\#" >> configure.in.new ;\ + echo ")" >> configure.in.new + @modulename= ;\ + if test -f configure.in.in; then \ + if head -2 configure.in.in | egrep "^#MIN_CONFIG$$" > /dev/null; then \ + line=`egrep "^AM_INIT_AUTOMAKE\(" configure.in.in` ;\ + if test -n "$$line"; then \ + modulename=`echo $$line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"` ;\ + VERSION=`echo $$line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"` ;\ + fi ;\ + sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" configure.in.new > configure.in \ + && mv configure.in configure.in.new ;\ + fi ;\ + fi ;\ + if test -z "$$modulename" || test "$$modulename" = "@MODULENAME@"; then \ + modulename=`pwd`; modulename=`basename $$modulename`; \ + fi ;\ + if test -z "$$VERSION" || test "$$VERSION" = "@VERSION@"; then \ + VERSION="\"2.2.1\""; \ + fi ;\ + sed -e "s#@MODULENAME@#$$modulename#" configure.in.new | \ + sed -e "s#@VERSION@#$$VERSION#" > configure.in + @if test -f configure.in.bot ; then cat configure.in.bot >> configure.in ; fi + @rm -f configure.in.new + +configure.files: subdirs + @admindir=NO ;\ + for i in . .. ../.. ../../..; do \ + if test -x $$i/admin; then admindir=$$i/admin; break; fi; \ + done ;\ + rm -rf configure.files ;\ + if test -f configure.in.in && head -2 configure.in.in | egrep "^#MIN_CONFIG$$" > /dev/null; then \ + echo $$admindir/configure.in.min >> configure.files ;\ + fi + @test -f configure.in.in && echo configure.in.in >> configure.files + @list=`find . -name "configure.in.in" | sort`; \ + for i in $$list; do if test -f $$i && test ! `dirname $$i` = "." ; then \ + echo $$i >> configure.files ;\ + fi; done + @if test -f configure.in.mid ; then echo configure.in.mid >> configure.files ; fi + @if test -f configure.in.bot ; then echo configure.in.bot >> configure.files ; fi + +subdirs: + @files=`ls -1 | sort`; \ + dirs= ;\ + lib_dirs= ;\ + first_dirs= ;\ + last_dirs= ;\ + compilefirst=`grep '^COMPILE_FIRST[ ]*=' Makefile.am | \ + sed -e 's#^COMPILE_FIRST[ ]*=[ ]*#|#' | sed -e 's#$$#|#' | sed -e 's# #|#g'`;\ + compilelast=`grep '^COMPILE_LAST[ ]*=' Makefile.am | \ + sed -e 's#^COMPILE_LAST[ ]*=[ ]*#|#' | sed -e 's#$$#|#' | sed -e 's# #|#g'`;\ + for i in $$files; do if test -d $$i; then \ + if test -f $$i/Makefile.am; then \ + if echo $$compilefirst | grep "|$$i|" >/dev/null; then \ + first_dirs="$$first_dirs $$i" ;\ + elif echo $$compilelast | grep "|$$i|" >/dev/null; then \ + last_dirs="$$last_dirs $$i" ; \ + else dirs="$$dirs $$i" ;\ + fi ;\ + fi ;\ + fi; \ + done ;\ + rm -f SUBDIRS ;\ + for i in $$dirs; do \ + echo $$i >> ./SUBDIRS; \ + done + @if test -r subdirs && diff subdirs SUBDIRS > /dev/null; then \ + rm -f SUBDIRS; \ + fi + @test -r SUBDIRS && mv SUBDIRS subdirs || true + +package-merge: + @catalogs='$(POFILES)'; \ + for cat in $$catalogs; do \ + echo $$cat $$name; \ + msgmerge -o $$cat.new $$cat $(PACKAGE).pot ; \ + if test -s $$cat.new; then \ + grep -v "\"POT-Creation" $$cat.new > $$cat.new.2 ; \ + grep -v "\"POT-Creation" $$cat >> $$cat.new.1; \ + if diff $$cat.new.1 $$cat.new.2; then \ + rm $$cat.new; \ + else \ + mv $$cat.new $$cat ; \ + fi; \ + rm -f $$cat.new.1 $$cat.new.2 ;\ + fi ;\ + done + + +package-messages: + @rm -rf po.backup ;\ + mkdir po.backup ;\ + for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do \ + egrep -v '^#([^:]|$)' po/$$i | egrep '^.*[^ ]+.*$$' | grep -v "\"POT-Creation" > po.backup/$$i ; \ + cp po/$$i po.backup/backup_$$i ; \ + touch -r po/$$i po.backup/backup_$$i ;\ + rm po/$$i ;\ + done + @podir=$${podir:-$$PWD/po} ;\ + files=`find . -name Makefile.am | xargs egrep -l '^messages:' `; \ + dirs=`for i in $$files; do echo \`dirname $$i\`; done`; \ + tmpname="$$PWD/messages.log" ;\ + if test -z "$$EXTRACTRC"; then EXTRACTRC=extractrc ; fi ;\ + if test -z "$$PREPARETIPS"; then PREPARETIPS=preparetips ; fi ;\ + export EXTRACTRC PREPARETIPS ;\ + for subdir in $$dirs; do \ + test -z "$$VERBOSE" || echo "Making messages in $$subdir"; \ + (cd $$subdir ;\ + if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then \ + $$EXTRACTRC *.rc *.ui > rc.cpp ;\ + else \ + candidates=`ls -1 *.rc *.ui 2>/dev/null` ;\ + if test -n "$$candidates"; then \ + echo "$$subdir has *.rc or *.ui files, but not correct messages line" ;\ + fi ;\ + fi ;\ + if test -n "`grep -r KAboutData *.c* *.C* 2>/dev/null`"; then \ + echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp ;\ + else echo " " > _translatorinfo.cpp ;\ + fi; \ + perl -e '$$mes=0; while () { if (/^messages:/) { $$mes=1; print $$_; next; } if ($$mes) { if (/$$\\(XGETTEXT\)/ && / -o/) { s/ -o \$$\(podir\)/ _translatorinfo.cpp -o \$$\(podir\)/ } print $$_; } else { print $$_; } }' < Makefile.am > _transMakefile ;\ + $(MAKE) -s -f _transMakefile podir=$$podir EXTRACTRC="$$EXTRACTRC" PREPARETIPS="$$PREPARETIPS" \ + XGETTEXT="$${XGETTEXT:-xgettext} -C -ki18n \ + -kI18N_NOOP -ktranslate -kaliasLocale \ + -x $${includedir:-$$KDEDIR/include}/kde.pot" \ + messages ) >$$tmpname 2>&1 ;\ + test -s $$tmpname && (echo $$subdir ; cat $$tmpname) ;\ + test ! -f $$subdir/rc.cpp || rm -f $$subdir/rc.cpp ;\ + rm -f $$subdir/_translatorinfo.cpp ;\ + rm -f $$subdir/_transMakefile ;\ + done + rm -f $$tmpname + @for i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do \ + if test ! -f po/$$i; then echo "disappeared: $$i"; fi ;\ + done + @for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do \ + egrep -v '^#([^:]|$)' po/$$i | egrep '^.*[^ ]+.*$$' | grep -v "\"POT-Creation" > temp.pot ;\ + if test -f po.backup/$$i && test -n "`diff temp.pot po.backup/$$i`"; then \ + echo "will update $$i"; \ + msgmerge -q po.backup/backup_$$i po/$$i > temp.pot ;\ + mv temp.pot po/$$i; \ + else \ + if test -f po.backup/backup_$$i; then \ + test -z "$$VERBOSE" || echo "I'm restoring $$i" ;\ + mv po.backup/backup_$$i po/$$i; \ + rm po.backup/$$i; \ + else \ + echo "will add $$i" ;\ + fi ;\ + fi ;\ + done + @rm -f temp.pot + @rm -rf po.backup + +test: + perl -e '$$mes=0; while () { if (/^messages:/) { $$mes=1; print $$_; next; } if ($$mes) { if (! /^\t/) { exit(0); } if (/$$\\(XGETTEXT\)/ && / -o/) { s/ -o/ _translatorinfo.cpp -o/ } print $$_; } }' < Makefile.am + +.SILENT: diff --git a/bibletime-doc/admin/Makefile.in b/bibletime-doc/admin/Makefile.in new file mode 100644 index 0000000..2165335 --- /dev/null +++ b/bibletime-doc/admin/Makefile.in @@ -0,0 +1,358 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = ChangeLog Makefile.common acinclude.m4.in am_edit am_edit.py conf.change.pl config.guess config.pl config.sub configure.in.min debianrules depcomp install-sh libtool.m4.in ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing mkinstalldirs ylwrap +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = ChangeLog Makefile.am Makefile.in config.guess config.sub \ +install-sh ltcf-c.sh ltcf-cxx.sh ltconfig ltmain.sh missing \ +mkinstalldirs ylwrap + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile + cd $(top_srcdir) && perl admin/am_edit admin/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = admin + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu admin/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu admin/Makefile + cd $(top_srcdir) && perl admin/am_edit admin/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/admin/acinclude.m4.in b/bibletime-doc/admin/acinclude.m4.in new file mode 100644 index 0000000..7823796 --- /dev/null +++ b/bibletime-doc/admin/acinclude.m4.in @@ -0,0 +1,4141 @@ +## -*- autoconf -*- + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. If you decide that you +dnl really want to modify it, contact coolo@kde.org mentioning that you have +dnl and that the modified file should be committed to every module. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +dnl ------------------------------------------------------------------------ +dnl Forward compatibility macros (make autoconf 2.13 look like 2.50), +dnl thanks to Raja R Harinath. +dnl ------------------------------------------------------------------------ +dnl +ifdef([_AC_PATH_X_DIRECT],[], + [AC_DEFUN([_AC_PATH_X_DIRECT],[AC_PATH_X_DIRECT])]) +ifdef([_AC_PATH_X_XMKMF],[], + [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, +dnl if-not-found, test-parameter) +AC_DEFUN(KDE_FIND_PATH, +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + dirs="$3" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN(KDE_MOC_ERROR_MESSAGE, +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN(KDE_UIC_ERROR_MESSAGE, +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_MOC_UIC, +[ + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""]) + if test -z "$UIC" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) +]) + +AC_DEFUN(KDE_1_CHECK_PATHS, +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN(KDE_SET_PATHS, +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$1" +]) + +AC_DEFUN(KDE_SET_DEFAULT_PATHS, +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN(KDE_MISSING_PROG_ERROR, +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN(KDE_SUBST_PROGRAMS, +[ + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs]) + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(KDECONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) +])dnl + +AC_DEFUN(AC_CREATE_KFSSTND, +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN(AC_SUBST_KFSSTND, +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN(KDE_MISC_TESTS, +[ + AC_LANG_C + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_LANG_C + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # Solaris 2.6 and others need -lresolv for res_init + AC_CHECK_FUNCS(res_init, , [ + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( +[ +#include +], +[ +res_init(); +], + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ) + LIBS=$kde_libs_safe + ]) + + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(LIBRESOLV) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(K_PATH_X, +[ +AC_REQUIRE([AC_PROG_CPP])dnl +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_MSG_CHECKING(for X) +AC_LANG_SAVE +AC_LANG_C +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +_AC_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_libraries) +AC_SUBST(x_includes) + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +AC_SUBST(LIBSM) +LDFLAGS="$ac_save_LDFLAGS" + +AC_SUBST(X_PRE_LIBS) + +LIB_X11='-lX11 $(LIBSOCKET)' +AC_SUBST(LIB_X11) + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no + ) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + ]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +AC_MSG_CHECKING(for Xinerama) + + AC_ARG_WITH(xinerama, + [ --with-xinerama enable support for Xinerama ], + [ + no_xinerama=no + ], [ + no_xinerama=yes + ] +) + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + AC_CACHE_VAL(ac_cv_have_xinerama, + [ + AC_TRY_LINK([#include + #include ], + [XineramaIsActive(NULL);], + [ac_cv_have_xinerama="yes"], + [ac_cv_have_xinerama="no"]) + ]) +else + ac_cv_have_xinerama=no; +fi + +AC_MSG_RESULT($ac_cv_have_xinerama) + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support]) + LIBXINERAMA="-lXinerama" +fi + +AC_SUBST(LIBXINERAMA) + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +AC_LANG_RESTORE + +]) + +AC_DEFUN(KDE_PRINT_QT_PROGRAM, +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_PATH_QT_1_3, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + [ --enable-mt link to threaded Qt (experimental)], + kde_use_qt_mt=$enableval, + kde_use_qt_mt=no +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) + fi + ;; + *) + AC_MSG_WARN([MT not yet supported on $host - disabled.]) + ;; + esac + +fi + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +AC_MSG_CHECKING([for Qt]) + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + [ --with-qt-dir=DIR where the root of Qt is installed ], + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + [ --with-qt-includes=DIR where the Qt includes are. ], + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + [ --with-qt-libraries=DIR where the Qt library is installed.], + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then +KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' +AC_SUBST(LIB_QT) + +]) + +AC_DEFUN(AC_PATH_QT, +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN(KDE_CHECK_FINAL, +[ + AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], + kde_use_final=$enableval, kde_use_final=no) + + KDE_COMPILER_REPO + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) + + AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], + kde_use_closure=$enableval, kde_use_closure=yes) + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_BASE_PATH_KDE, +[ +AC_PREREQ([2.13]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1 + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +AC_SUBST(AUTODIRS) +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_KDEQTADDON, +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + kde_cxxflags_safe="$CXXFLAGS" +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN(KDE_CHECK_KIMGIO, +[ + AC_REQUIRE([AC_BASE_PATH_KDE]) + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + AC_REQUIRE([AC_FIND_TIFF]) + AC_REQUIRE([AC_FIND_JPEG]) + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) + + if test "$1" = "existance"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" + AC_CHECK_LIB(kimgio, kimgioRegister, [ + LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) + LIBS="$kde_save_LIBS" + AC_LANG_RESTORE + else + LIBKIMGIO_EXISTS=yes + fi + + if test "$LIBKIMGIO_EXISTS" = "yes"; then + LIB_KIMGIO='-lkimgio' + else + LIB_KIMGIO='' + fi + AC_SUBST(LIB_KIMGIO) +]) + +AC_DEFUN(KDE_CREATE_LIBS_ALIASES, +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui' + AC_SUBST(LIB_KDEUI) + LIB_KFORMULA='-lkformula' + AC_SUBST(LIB_KFORMULA) + LIB_KIO='-lkio' + AC_SUBST(LIB_KIO) + LIB_KSYCOCA='-lksycoca' + AC_SUBST(LIB_KSYCOCA) + LIB_SMB='-lsmb' + AC_SUBST(LIB_SMB) + LIB_KFILE='-lkfile' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab' + AC_SUBST(LIB_KAB) + LIB_KHTML='-lkhtml' + AC_SUBST(LIB_KHTML) + LIB_KSPELL='-lkspell' + AC_SUBST(LIB_KSPELL) + LIB_KPARTS='-lkparts' + AC_SUBST(LIB_KPARTS) + LIB_KWRITE='-lkwrite' + AC_SUBST(LIB_KWRITE) +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + AC_SUBST(LIB_KDECORE) + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + AC_SUBST(LIB_KDEUI) + LIB_KFM='-lkfm $(LIB_KDECORE)' + AC_SUBST(LIB_KFM) + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + AC_SUBST(LIB_KFILE) + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + AC_SUBST(LIB_KAB) +fi +]) + +AC_DEFUN(AC_PATH_KDE, +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl obsolete +AC_DEFUN(AC_CHECK_SETENV, +[ + AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl + AC_CHECK_FUNCS([setenv unsetenv]) +]) + +AC_DEFUN(AC_CHECK_GETDOMAINNAME, +[ +AC_MSG_CHECKING(for getdomainname) +AC_CACHE_VAL(ac_cv_func_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +#include +#include +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], +ac_cv_func_getdomainname=yes, +ac_cv_func_getdomainname=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS=$kde_safe_LIBS +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_getdomainname) + +AC_MSG_CHECKING([if getdomainname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_getdomainname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + ac_cv_proto_getdomainname=no +else + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +#include +#include + +extern "C" int getdomainname (char *, int); +], +[ +char buffer[200]; +getdomainname(buffer, 200); +], + ac_cv_func_getdomainname=yes + ac_cv_proto_getdomainname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR([getdomainname unavailable])) +fi +LIBS=$kde_safe_libs +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_getdomainname) + +if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then + AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) +fi +if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then + AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, + [Define if you have getdomainname prototype]) +fi + +]) + +AC_DEFUN(AC_CHECK_GETHOSTNAME, +[ + +AC_MSG_CHECKING([for gethostname]) +AC_CACHE_VAL(ac_cv_func_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +if test "$GCC" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_LINK([ +#include +#include +], +[ +char buffer[200]; +gethostname(buffer, 200); +], +ac_cv_func_gethostname=yes, +ac_cv_func_gethostname=no) +CXXFLAGS="$save_CXXFLAGS" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_gethostname) + +AC_MSG_CHECKING([if gethostname needs custom prototype]) +AC_CACHE_VAL(ac_cv_proto_gethostname, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + ac_cv_proto_gethostname=no +else + AC_TRY_LINK([ +#include +#include + +extern "C" int gethostname (char *, int); +], +[ +char buffer[200]; +gethostname(buffer, 200); +], + ac_cv_func_gethostname=yes + ac_cv_proto_gethostname=yes, + AC_MSG_RESULT([fatal error]) + AC_MSG_ERROR(gethostname unavailable)) +fi +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_proto_gethostname) + +if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then + AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, + [Define if you have gethostname prototype]) +fi +if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then + AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname]) +fi +]) + +AC_DEFUN(AC_CHECK_USLEEP, +[ +AC_MSG_CHECKING([for usleep]) +AC_CACHE_VAL(ac_cv_func_usleep, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +#include +], +[ +usleep(200); +], +ac_cv_func_usleep=yes, +ac_cv_func_usleep=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_usleep) +if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then + AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) +fi +]) + +AC_DEFUN(AC_CHECK_RANDOM, +[ +AC_MSG_CHECKING([for random]) +AC_CACHE_VAL(ac_cv_func_random, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_libs_safe="$LIBS" +LIBS="$LIBS $LIBUCB" +AC_TRY_LINK([ +#include +], +[ +random(); +], +ac_cv_func_random=yes, +ac_cv_func_random=no) +LIBS="$ac_libs_safe" +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_func_random) +if eval "test \"`echo $ac_cv_func_random`\" = yes"; then + AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) +fi +]) + +AC_DEFUN(AC_FIND_GIF, + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN(KDE_FIND_JPEG_HELPER, +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +AC_LANG_C +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [jpeg_CreateDecompress(0L, 0, 0);], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN(AC_FIND_JPEG, +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +]) + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_TRY_TIFFLIB, +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN(AC_FIND_TIFF, +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + + +AC_DEFUN(AC_FIND_PNG, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_LANG_C +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + +AC_DEFUN(AC_CHECK_BOOL, +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN(KDE_CHECK_COMPILER_FLAG, +[ +dnl AC_REQUIRE([AC_CHECK_COMPILERS]) <- breaks with autoconf 2.50 +AC_MSG_CHECKING(whether $CXX supports -$1) +kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then + if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN(AC_REMOVE_FORBIDDEN, +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN(AC_VALIDIFY_CXXFLAGS, +[dnl + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +]) + +AC_DEFUN(AC_CHECK_COMPILERS, +[ + AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], + [ + if test $enableval = "no"; dnl + then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) + + AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + case $host in dnl + *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + AC_SUBST(NOOPT_CXXFLAGS) + + KDE_CHECK_FINAL + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) + + KDE_CXXFLAGS= + AC_SUBST(KDE_CXXFLAGS) +]) + +AC_DEFUN(KDE_ADD_DEPENDENCIES, +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN(KDE_PROG_LIBTOOL, +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + +AC_LANG_SAVE +AC_LANG_C +AC_OBJEXT +AC_EXEEXT +AC_LANG_RESTORE + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" +AC_SUBST(KDE_PLUGIN) + +AC_ARG_ENABLE(objprelink, [ --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])], + kde_use_objprelink=$enableval, kde_use_objprelink=no) + if test "x$kde_use_objprelink" = "xyes"; then + + KDE_FIND_PATH(objprelink, OBJPRELINK, [], [kde_use_objprelink=no]) + + if test "x$kde_use_objprelink" = "xyes"; then + AC_MSG_CHECKING([Patching libtool to run objprelink.]) + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + AC_MSG_RESULT(done) + fi + fi +]) + +AC_DEFUN(KDE_CHECK_TYPES, +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl + AC_CHECK_SIZEOF(char, 1)dnl +])dnl + +AC_DEFUN(KDE_DO_IT_ALL, +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN(AC_CHECK_RPATH, +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + [ --disable-rpath do not use the rpath feature of ld], + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN(AC_CHECK_SOCKLEN_T, [ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(ac_cv_socklen_t, [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ +#include +#include + ],[ +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=socklen_t, + AC_TRY_COMPILE([ +#include +#include + ],[ +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + ], + ac_cv_socklen_t=int, + ac_cv_socklen_t=size_t + ) + ) + AC_LANG_RESTORE + ]) + + AC_MSG_RESULT($ac_cv_socklen_t) + if test "$ac_cv_socklen_t" != "socklen_t"; then + AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t, + [Define the real type of socklen_t]) + fi + AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define]) + +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN(AM_KDE_WITH_NLS, + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no 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 programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, +[# 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 -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN(AM_LC_MESSAGES, + [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 locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN(AM_KDE_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Wmissing-prototypes -Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + 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 + + ]) + +AC_DEFUN(AC_HAVE_XPM, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN(AC_HAVE_DPMS, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" + LIBS="$LIBS -lXdpms" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN(AC_HAVE_GL, + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], + gl_test=$withval, gl_test="yes") + if test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_C + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="mesa", ac_cv_have_gl="no") + if test "x$ac_cv_have_gl" = "xno"; then + LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" + CFLAGS="$ac_save_cflags $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + fi + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' + else + GLLIB='-lGL -lGLU $(LIB_X11)' + fi + else + if test "$ac_cv_have_gl" = "mesa"; then + GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' + fi + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN(KDE_PAM, [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + AC_ARG_WITH(pam, + [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], + [ if test "x$withval" = "xyes"; then + use_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + use_pam=no + else + use_pam=yes + pam_service=$withval + fi + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ], [ + AC_CACHE_VAL(ac_cv_path_pam, + [ use_pam=no + AC_CHECK_LIB(pam, pam_start, + [ AC_CHECK_HEADER(security/pam_appl.h, + [ use_pam=yes + pam_service=kde ]) + ], , $LIBDL) + ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service" + ]) + ]) + eval "$ac_cv_path_pam" + + AC_MSG_CHECKING(for PAM) + if test "x$use_pam" = xno; then + AC_MSG_RESULT(no) + PAMLIBS="" + else + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], security/pam_appl.h, + [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN(DEF_PAM_SERVICE, [ + AC_ARG_WITH($1-pam, + [ --with-$1-pam=[val] override PAM service from --with-pam for $2], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$withval" + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN(KDE_SHADOWPASSWD, [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + [ --with-shadow If you want shadow password support ], + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN(KDE_PASSWDLIBS, [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN(KDE_CHECK_LIBDL, +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN(KDE_CHECK_DLOPEN, +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +[ --disable-dlopen link statically [default=no]] , +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN(KDE_ADD_INCLUDES, +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + + +AC_DEFUN(KDE_CHECK_MICO, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_MISC_TESTS]) +AC_MSG_CHECKING(for MICO) + +if test -z "$MICODIR"; then + kde_micodir=/usr/local + else + kde_micodir="$MICODIR" +fi + +AC_ARG_WITH(micodir, + [ --with-micodir=micodir where mico is installed ], + kde_micodir=$withval, + kde_micodir=$kde_micodir +) + +AC_CACHE_VAL(kde_cv_mico_incdir, +[ + mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" +AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) + +]) +kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` + +if test ! -r $kde_micodir/include/CORBA.h; then + AC_MSG_ERROR([No CORBA.h found, specify another micodir]) +fi + +AC_MSG_RESULT($kde_micodir) + +MICO_INCLUDES=-I$kde_micodir/include +AC_SUBST(MICO_INCLUDES) +MICO_LDFLAGS=-L$kde_micodir/lib +AC_SUBST(MICO_LDFLAGS) +micodir=$kde_micodir +AC_SUBST(micodir) + +AC_MSG_CHECKING([for MICO version]) +AC_CACHE_VAL(kde_cv_mico_version, +[ +AC_LANG_C +cat >conftest.$ac_ext < +#include +int main() { + + printf("MICO_VERSION=%s\n",MICO_VERSION); + return (0); +} +EOF +ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' +if AC_TRY_EVAL(ac_compile); then + if eval `./conftest 2>&5`; then + kde_cv_mico_version=$MICO_VERSION + else + AC_MSG_ERROR([your system is not able to execute a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) + fi +else + AC_MSG_ERROR([your system is not able to compile a small application to + find MICO version! Check $kde_micodir/include/mico/version.h]) +fi +]) + +dnl installed MICO version +mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "x$1" = "x"; then + req_version="2.3.0" +else + req_version=$1 +fi + +dnl required MICO version +req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` +req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` +req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` + +if test "$mico_v_maj" -lt "$req_v_maj" || \ + ( test "$mico_v_maj" -eq "$req_v_maj" && \ + test "$mico_v_mid" -lt "$req_v_mid" ) || \ + ( test "$mico_v_mid" -eq "$req_v_mid" && \ + test "$mico_v_min" -lt "$req_v_min" ) + +then + AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ +at least is required. You should upgrade MICO.]) +else + AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) +fi + +LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" +AC_SUBST(LIBMICO) +if test -z "$IDL"; then + IDL='$(kde_bindir)/cuteidl' +fi +AC_SUBST(IDL) +IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' +AC_SUBST(IDL_DEPENDENCIES) + +idldir="\$(includedir)/idl" +AC_SUBST(idldir) + +]) + +AC_DEFUN(KDE_CHECK_MINI_STL, +[ +AC_REQUIRE([KDE_CHECK_MICO]) + +AC_MSG_CHECKING(if we use mico's mini-STL) +AC_CACHE_VAL(kde_cv_have_mini_stl, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_cxxflags="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" +AC_TRY_COMPILE( +[ +#include +], +[ +#ifdef HAVE_MINI_STL +#error "nothing" +#endif +], +kde_cv_have_mini_stl=no, +kde_cv_have_mini_stl=yes) +CXXFLAGS="$kde_save_cxxflags" +AC_LANG_RESTORE +]) + +if test "x$kde_cv_have_mini_stl" = "xyes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +]) + + +AC_DEFUN(KDE_CHECK_LIBPTHREAD, +[ +AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) +AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, +[ + AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], + kde_use_kernthreads=$enableval, kde_use_kernthreads=no) + + if test "$kde_use_kernthreads" = "yes"; then + ac_save_CXXFLAGS="$CXXFLAGS" + ac_save_CFLAGS="$CXXFLAGS" + CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" + CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" + AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) + CXXFLAGS="$ac_save_CXXFLAGS" + CFLAGS="$ac_save_CFLAGS" + if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then + kde_use_kernthreads=no + else + dnl Add proper -I and -l statements + AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD + if test "x$LIBPTHREAD" = "x"; then + kde_use_kernthreads=no + else + USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" + fi + fi + else + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) + fi + fi + + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + echo "Setting Solaris pthread compilation options" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + echo "Setting FreeBSD pthread compilation options" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + echo "Setting AIX pthread compilation options" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + USE_THREADS="$USE_THREADS -DPIC -fPIC" + echo "Setting Linux pthread compilation options" + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN(KDE_CHECK_THREADING, +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN(KDE_TRY_LINK_PYTHON, +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +AC_LANG_SAVE +AC_LANG_C +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi +AC_LANG_RESTORE + +fi + +]) + +AC_DEFUN(KDE_CHECK_PYTHON_DIR, +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +[ --with-pythondir=pythondir use python installed in pythondir ], +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN(KDE_CHECK_PYTHON_INTERN, +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Pleae use \"make LIBPYTHON='-lpython$version -lotherlib'\" to fix this + and contact the authors to let them know about this problem]) + + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN(KDE_CHECK_PYTHON, +[ + KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0", + [ KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) +]) + +AC_DEFUN(KDE_CHECK_STL_SGI, +[ + AC_MSG_CHECKING([if STL implementation is SGI like]) + AC_CACHE_VAL(kde_cv_stl_type_sgi, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_type_sgi=yes, + kde_cv_stl_type_sgi=no) +]) + + AC_MSG_RESULT($kde_cv_stl_type_sgi) + + if test "$kde_cv_stl_type_sgi" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL_HP, +[ + AC_MSG_CHECKING([if STL implementation is HP like]) + AC_CACHE_VAL(kde_cv_stl_type_hp, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hello World"; + astring.remove(0, 6); // now astring is "World" + return 0; +], kde_cv_stl_type_hp=yes, + kde_cv_stl_type_hp=no) +]) + AC_MSG_RESULT($kde_cv_stl_type_hp) + + if test "$kde_cv_stl_type_hp" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP]) + fi +]) + +AC_DEFUN(KDE_CHECK_STL, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + KDE_CHECK_STL_SGI + + if test "$kde_cv_stl_type_sgi" = "no"; then + KDE_CHECK_STL_HP + + if test "$kde_cv_stl_type_hp" = "no"; then + AC_MSG_ERROR("no known STL type found") + fi + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN(AC_FIND_QIMGIO, + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN(KDE_CHECK_ANSI, +[ +]) + +AC_DEFUN(KDE_CHECK_INSURE, +[ + AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], + [ + if test $enableval = "no"; dnl + then ac_use_insure="no" + else ac_use_insure="yes" + fi + ], [ac_use_insure="no"]) + + AC_MSG_CHECKING(if we will use Insure++ to debug) + AC_MSG_RESULT($ac_use_insure) + if test "$ac_use_insure" = "yes"; dnl + then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? + fi +]) + +AC_DEFUN(AM_DISABLE_LIBRARIES, +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN(AC_CHECK_UTMP_FILE, +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN(KDE_CREATE_SUBDIRSLIST, +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN(KDE_CHECK_NAMESPACES, +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_NEWLIBS, +[ + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_S_ISSOCK, +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_LANG_SAVE +AC_LANG_C +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +AC_LANG_RESTORE +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +AC_LANG_C +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +dnl ------------------------------------------------------------------------- +dnl See if the compiler supports a template repository bero@redhat.de +dnl ------------------------------------------------------------------------- +AC_DEFUN(KDE_COMPILER_REPO, +[ + REPO="" + NOREPO="" + + KDE_CHECK_COMPILER_FLAG(frepo, + [ + REPO="-frepo" + NOREPO="-fno-repo" + ]) + + if test -z "$REPO"; then + KDE_CHECK_COMPILER_FLAG(instances=explicit, + [ + REPO="-instances=explicit" + NOREPO="-instances=extern" + ]) + fi + + if test -n "$REPO"; then + AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, + [C++ compiler supports template repository]) + $1 + fi + + AC_SUBST(REPO) + AC_SUBST(NOREPO) +]) + +AC_DEFUN(KDE_CHECK_HEADER, +[ + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER($1, $2, $3) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, +[ + KDE_CHECK_HEADER(QwSpriteField.h, , + [ + AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install + QwSpriteField out of kdesupport.]) + $1 + ]) +]) + +AC_DEFUN(KDE_FAST_CONFIGURE, +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN(KDE_CONF_FILES, +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +AC_DEFUN(KDE_SET_PREFIX, +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN(KDE_LANG_CPLUSPLUS, +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN(KDE_CHECK_LONG_LONG, +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN(KDE_CHECK_LIB, +[ + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries" + case $host_os in + aix*) LIBS="-brtl $LIBS" + test "$GCC" = yes && LIBS="-Wl,$LIBS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LIBS="$kde_save_LIBS" +]) + + + + +AC_DEFUN(KDE_CHECK_INITGROUPS, +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CHECK_FUNCS(initgroups) + if test "x$ac_cv_func_initgroups" = "xyes"; then + case $host_os in + aix*) AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for initgroups prototype]) + AC_CACHE_VAL(kde_cv_check_initgroups_proto, + [ AC_TRY_COMPILE( + [ #include + ], + [ char buffer[10]; + gid_t id; + int x = initgroups(buffer,id); + ], + kde_cv_check_initgroups_proto=yes, + kde_cv_check_initgroups_proto=no) + ]) + AC_MSG_RESULT($kde_cv_check_initgroups_proto) + AC_LANG_RESTORE + ;; + *) + kde_cv_check_initgroups_proto=yes + ;; + esac + else + kde_cv_check_initgroups_proto=no + fi + if test "x$kde_cv_check_initgroups_proto" = "xyes"; then + kde_check_initgroups_proto=1 + else + kde_check_initgroups_proto=0 + fi + AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto, + [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)]) +]) + + +AC_DEFUN(KDE_CHECK_JAVA_DIR, +[ +AC_MSG_CHECKING([for Java directory]) + +AC_ARG_WITH(java, +[ --with-java=javadir use java installed in javadir, --without-java disables ], +[ ac_java_dir=$withval +], ac_java_dir="" +) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = xno; then + kde_cv_java_bindir=no + kde_cv_java_includedir=no + kde_cv_java_libjvmdir=no + kde_cv_java_libhpidir=no +else + if test "x$ac_java_dir" = x; then + dnl No option set -> look in $PATH + AC_CACHE_VAL(kde_cv_java_bindir, + [ + dnl First look for javac in $PATH. If not found we'll look at the option. + KDE_FIND_PATH(javac, JAVAC, [], []) + if test -n "$JAVAC"; then + kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'` + dnl this substitution might not work - well, we test for jni.h below + kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'` + else + kde_cv_java_bindir=no + fi + ]) + else + dnl config option set + kde_cv_java_bindir=$ac_java_dir/bin + kde_cv_java_includedir=$ac_java_dir/include + fi +fi + +dnl Look for libjvm.so +kde_cv_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` +dnl Look for libhpi.so and avoid green threads +kde_cv_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'` + +dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no" +if test ! "x$kde_cv_java_bindir" = xno; then + + dnl Now check everything's fine under there + + if test ! -x "$kde_cv_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_cv_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_cv_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.]) + fi + if test ! -r "$kde_cv_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_cv_java_libjvmdir. Use --without-java.]) + fi + if test ! -r "$kde_cv_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_cv_java_libhpidir. Use --without-java.]) + fi + + jni_includes="-I$kde_cv_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux" + test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix" + + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ +#include + ], + [ +#ifndef JNI_VERSION_1_2 +Syntax Error +#endif + ],[ + ],[ AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + ]) + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir]) + + JAVAC=$kde_cv_java_bindir/javac + AC_SUBST(JAVAC) + JAVAH=$kde_cv_java_bindir/javah + AC_SUBST(JAVAH) + JAR=$kde_cv_java_bindir/jar + AC_SUBST(JAR) + AC_SUBST(jni_includes) + JVMLIBS="-L$kde_cv_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi" + AC_SUBST(JVMLIBS) +fi +]) diff --git a/bibletime-doc/admin/am_edit b/bibletime-doc/admin/am_edit new file mode 100644 index 0000000..f7a0e86 --- /dev/null +++ b/bibletime-doc/admin/am_edit @@ -0,0 +1,1937 @@ +#!/usr/bin/perl + +# Expands the specialised KDE tags in Makefile.in to (hopefully) valid +# make syntax. +# When called without file parameters, we work recursively on all Makefile.in +# in and below the current subdirectory. When called with file parameters, +# only those Makefile.in are changed. +# The currently supported tags are +# +# {program}_METASOURCES +# where you have a choice of two styles +# {program}_METASOURCES = name1.moc name2.moc ... [\] +# {program}_METASOURCES = AUTO +# The second style requires other tags as well. +# +# To install icons : +# KDE_ICON = iconname iconname2 ... +# KDE_ICON = AUTO +# +# For documentation : +# ... +# +# and more new tags TBD! +# +# The concept (and base code) for this program came from automoc, +# supplied by the following +# +# Matthias Ettrich (The originator) +# Kalle Dalheimer (The original implementator) +# Harri Porten +# Alex Zepeda +# David Faure +# Stephan Kulow +# +# I've puddled around with automoc and produced something different +# 1999-02-01 John Birch +# * Rewritten automoc to cater for more than just moc file expansion +# Version 0.01 does the same as automoc at this stage. +# 1999-02-18 jb +# * We must always write a Makefile.in file out even if we fail +# because we need the "perl autokmake" in the AUTOMAKE so that a +# "make" will regenerate the Makefile.in correctly. +# Reworked moc file checking so that missing includes in cpp +# will work and includes in cpp when using use_automoc will also +# work. +# 1999-02-23 jb +# * Added POFILE processing and changed the USE_AUTOMOC tag to +# AUTO instead. +# ... See ChangeLog for more logs + +use Cwd; +use File::Find; +use File::Basename; + +# Prototype the functions +sub initialise (); +sub processMakefile ($); +sub updateMakefile (); +sub restoreMakefile (); + +sub removeLine ($$); +sub appendLines ($); +sub substituteLine ($$); + +sub findMocCandidates (); +sub pruneMocCandidates ($); +sub checkMocCandidates (); +sub addMocRules (); + +sub tag_AUTOMAKE (); +sub tag_META_INCLUDES (); +sub tag_METASOURCES (); +sub tag_POFILES (); +sub tag_DOCFILES (); +sub tag_LOCALINSTALL(); +sub tag_IDLFILES(); +sub tag_UIFILES(); +sub tag_SUBDIRS(); +sub tag_ICON(); +sub tag_CLOSURE(); +sub tag_DIST(); + +# Some global globals... +$verbose = 0; # a debug flag +$thisProg = "$0"; # This programs name +$topdir = cwd(); # The current directory +@makefiles = (); # Contains all the files we'll process +@foreignfiles = (); +$start = (times)[0]; # some stats for testing - comment out for release +$version = "v0.2"; +$errorflag = 0; +$cppExt = "(cpp|cc|cxx|C|c\\+\\+)"; +$hExt = "(h|H|hh|hxx|hpp|h\\+\\+)"; +$progId = "KDE tags expanded automatically by " . basename($thisProg); +$automkCall = "\n"; +$printname = ""; # used to display the directory the Makefile is in +$use_final = 1; # create code for --enable-final +$cleantarget = "clean"; +$dryrun = 0; +$pathoption = 0; + +while (defined ($ARGV[0])) +{ + $_ = shift; + if (/^--version$/) + { + print STDOUT "\n"; + print STDOUT basename($thisProg), " $version\n", + "This is really free software, unencumbered by the GPL.\n", + "You can do anything you like with it except sueing me.\n", + "Copyright 1998 Kalle Dalheimer \n", + "Concept, design and unnecessary questions about perl\n", + " by Matthias Ettrich \n\n", + "Making it useful by Stephan Kulow and\n", + "Harri Porten \n", + "Updated (Feb-1999), John Birch \n", + "Current Maintainer Stephan Kulow\n\n"; + exit 0; + } + elsif (/^--verbose$|^-v$/) + { + $verbose = 1; # Oh is there a problem...? + } + elsif (/^-p(.+)$|^--path=(.+)$/) + { + $thisProg = "$1/".basename($thisProg) if($1); + $thisProg = "$2/".basename($thisProg) if($2); + warn ("$thisProg doesn't exist\n") if (!(-f $thisProg)); + $pathoption=1; + } + elsif (/^--help$|^-h$/) + { + print STDOUT "Usage $thisProg [OPTION] ... [dir/Makefile.in]...\n", + "\n", + "Patches dir/Makefile.in generated from automake\n", + "(where dir can be a full or relative directory name)", + "\n", + " -v, --verbose verbosely list files processed\n", + " -h, --help print this help, then exit\n", + " --version print version number, then exit\n", + " -p, --path= use the path to am_edit if the path\n", + " --no-final don't patch for --enable-final\n", + " called from is not the one to be used\n"; + + exit 0; + } + elsif (/^--no-final$/) + { + $use_final = 0; + $thisProg .= " --no-final"; + } + elsif (/^-n$/) + { + $dryrun = 1; + } + else + { + # user selects what input files to check + # add full path if relative path is given + $_ = cwd()."/".$_ if (! /^\//); + print "User wants $_\n" if ($verbose); + push (@makefiles, $_); + } +} + +if ($thisProg =~ /^\// && !$pathoption ) +{ + print STDERR "Illegal full pathname call performed...\n", + "The call to \"$thisProg\"\nwould be inserted in some Makefile.in.\n", + "Please use option --path.\n"; + exit 1; +} + +# Only scan for files when the user hasn't entered data +if (!@makefiles) +{ + print STDOUT "Scanning for Makefile.in\n" if ($verbose); + find (\&add_makefile, cwd()); + #chdir('$topdir'); +} else { + print STDOUT "Using user enter input files\n" if ($verbose); +} + +foreach $makefile (sort(@makefiles)) +{ + processMakefile ($makefile); + last if ($errorflag); +} + +# Just some debug statistics - comment out for release as it uses printf. +printf STDOUT "Time %.2f CPU sec\n", (times)[0] - $start if ($verbose); + +exit $errorflag; # causes make to fail if erroflag is set + +#----------------------------------------------------------------------------- + +# In conjunction with the "find" call, this builds the list of input files +sub add_makefile () +{ + push (@makefiles, $File::Find::name) if (/Makefile.in$/); +} + +#----------------------------------------------------------------------------- + +# Processes a single make file +# The parameter contains the full path name of the Makefile.in to use +sub processMakefile ($) +{ + # some useful globals for the subroutines called here + local ($makefile) = @_; + local @headerdirs = ('.'); + local $haveAutomocTag = 0; + local $MakefileData = ""; + + local $cxxsuffix = "KKK"; + + local @programs = (); # lists the names of programs and libraries + local $program = ""; + + local %realObjs = (); # lists the objects compiled into $program + local %sources = (); # lists the sources used for $program + local %finalObjs = (); # lists the objects compiled when final + local %realname = (); # the binary name of program variable + local %idlfiles = (); # lists the idl files used for $program + local %globalmocs = ();# list of all mocfiles (in %mocFiles format) + local %important = (); # list of files to be generated asap + + local $allidls = ""; + local $alluis = ""; + local $idl_output = "";# lists all idl generated files for cleantarget + local $ui_output = "";# lists all uic generated files for cleantarget + + local %depedmocs = (); + + local $metasourceTags = 0; + local $dep_files = ""; + local $dep_finals = ""; + local %target_adds = (); # the targets to add + local $kdelang = ""; + local @cleanfiles = (); + local $cleanMoc = ""; + local $closure_output = ""; + + $makefileDir = dirname($makefile); + chdir ($makefileDir); + $printname = $makefile; + $printname =~ s/^\Q$topdir\E\///; + $makefile = basename($makefile); + + print STDOUT "Processing makefile $printname\n" if ($verbose); + + # Setup and see if we need to do this. + return if (!initialise()); + + tag_AUTOMAKE (); # Allows a "make" to redo the Makefile.in + tag_META_INCLUDES (); # Supplies directories for src locations + + foreach $program (@programs) { + $sources_changed{$program} = 0; + $depedmocs{$program} = ""; + $important{$program} = ""; + tag_IDLFILES(); # Sorts out idl rules + tag_CLOSURE(); + tag_METASOURCES (); # Sorts out the moc rules + tag_UIFILES(); # Sorts out ui rules + if ($sources_changed{$program}) { + my $lookup = "$program" . '_SOURCES\s*=\s*(.*)'; + substituteLine($lookup, "$program\_SOURCES=" . $sources{$program}); + } + if ($important{$program}) { + local %source_dict = (); + for $source (split(/[\034\s]+/, $sources{$program})) { + $source_dict{$source} = 1; + } + for $source (@cleanfiles) { + $source_dict{$source} = 0; + } + for $source (keys %source_dict) { + next if (!$source); + if ($source_dict{$source}) { + # sanity check + if (! -f $source) { + print STDERR "Error: $source is listed in a _SOURCE line in $printname, but doesn't exist yet. Put it in DISTCLEANFILES!\n"; + } else { + $target_adds{"\$(srcdir)/$source"} .= $important{$program}; + } + } + } + } + } + if ($cleanMoc) { + # Always add dist clean tag + # Add extra *.moc.cpp files created for USE_AUTOMOC because they + # aren't included in the normal *.moc clean rules. + appendLines ("$cleantarget-metasources:\n\t-rm -f $cleanMoc\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-metasources "; + } + tag_DIST(); + + if ($idl_output) { + appendLines ("$cleantarget-idl:\n\t-rm -f $idl_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-idl "; + } + + if ($ui_output) { + appendLines ("$cleantarget-ui:\n\t-rm -f $ui_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-ui "; + } + + if ($closure_output) { + appendLines ("$cleantarget-closures:\n\t-rm -f $closure_output\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-closures "; + } + + if ($MakefileData =~ /\nKDE_LANG\s*=\s*(\S*)\s*\n/) { + $kdelang = '$(KDE_LANG)' + } else { + $kdelang = ''; + } + + tag_POFILES (); # language rules for po directory + tag_DOCFILES (); # language rules for doc directories + tag_LOCALINSTALL(); # add $(DESTDIR) before all kde_ dirs + tag_ICON(); + tag_SUBDIRS(); + + my $tmp = "force-reedit:\n"; + $tmp .= "\t$automkCall\n\tcd \$(top_srcdir) && perl $thisProg $printname\n\n"; + appendLines($tmp); + + make_meta_classes(); + tag_FINAL() if (!$kdeopts{"nofinal"}); + + my $final_lines = "final:\n\t\$(MAKE) "; + my $nofinal_lines = "no-final:\n\t\$(MAKE) "; + + foreach $program (@programs) { + + my $lookup = "$program\_OBJECTS.*=[^\n]*"; + + my $new = ""; + + my @list = split(/[\034\s]+/, $realObjs{$program}); + + if (!$kdeopts{"nofinal"} && @list > 1 && $finalObjs{$program}) { + + $new .= "$program\_final\_OBJECTS = " . $finalObjs{$program}; + $new .= "\n$program\_nofinal\_OBJECTS = " . $realObjs{$program}; + $new .= "\n\@KDE_USE_FINAL_FALSE\@$program\_OBJECTS = \$($program\_nofinal\_OBJECTS)"; + $new .= "\n\@KDE_USE_FINAL_TRUE\@$program\_OBJECTS = \$($program\_final\_OBJECTS)"; + + $final_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; + $nofinal_lines .= "$program\_OBJECTS=\"\$($program\_nofinal\_OBJECTS)\" "; + } else { + $new = "$program\_OBJECTS = " . $realObjs{$program}; + } + substituteLine ($lookup, $new); + } + appendLines($final_lines . "all-am"); + appendLines($nofinal_lines . "all-am"); + + my $lookup = 'DEP_FILES\s*=([^\n]*)'; + if ($MakefileData =~ /\n$lookup\n/o) { + $depfiles = $1; + + if ($dep_finals) { + $lines = "\@KDE_USE_FINAL_TRUE\@DEP_FILES = $dep_files $dep_finals \034\t$depfiles\n"; + $lines .= "\@KDE_USE_FINAL_FALSE\@DEP_FILES = $dep_files $depfiles\n"; + } else { + $lines = "DEP_FILES = $dep_files $depfiles\n"; + } + + substituteLine($lookup, $lines); + } + + my $cvs_lines = "cvs-clean:\n"; + $cvs_lines .= "\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common cvs-clean\n"; + appendLines($cvs_lines); + + $cvs_lines = "kde-rpo-clean:\n"; + $cvs_lines .= "\t-rm -f *.rpo\n"; + appendLines($cvs_lines); + $target_adds{"clean"} .= "kde-rpo-clean "; + + # some strange people like to do a install-exec, and expect that also + # all modules are installed. automake doesn't know this, so we need to move + # this here from install-data to install-exec. + if ($MakefileData =~ m/\nkde_module_LTLIBRARIES\s*=/) { + $target_adds{"install-exec-am"} .= "install-kde_moduleLTLIBRARIES"; + my $lookup = "install-data-am:\s*(.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + my $newdeps = $1; + $newdeps =~ s/\s*install-kde_moduleLTLIBRARIES\s*/ /g; + substituteLine($lookup, "install-data-am: " . $newdeps); + } + } + + my $lines = ""; + + foreach $add (keys %target_adds) { + my $lookup = quotemeta($add) . ":\s*(.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + substituteLine($lookup, "$add: " . $target_adds{$add} . $1); + } else { + $lines .= "$add: " . $target_adds{$add} . "\n"; + } + } + if ($lines) { + appendLines($lines); + } + + my $found = 1; + + while ($found) { + if ($MakefileData =~ m/\n(.*)\$\(CXXFLAGS\)(.*)\n/) { + my $vor = $1; # "vor" means before in German + my $nach = $2; # "nach" means after in German + my $lookup = quotemeta("$1\$(CXXFLAGS)$2"); + my $replacement = "$1\$(KCXXFLAGS)$2"; + $MakefileData =~ s/$lookup/$replacement/; + $lookup =~ s/\\\$\\\(CXXFLAGS\\\)/\\\$\\\(KCXXFLAGS\\\)/; + $replacement = "$vor\$(KCXXFLAGS) \$(KDE_CXXFLAGS)$nach"; + substituteLine($lookup, $replacement); + } else { + $found = 0; + } + } + + $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=link) (\$\(CXXLD\).*\$\(KCXXFLAGS\))'; + + if ($MakefileData =~ m/$lookup/ ) { + $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; + } + + $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=compile) (\$\(CXX\).*\$\(KCXXFLAGS\))'; + if ($MakefileData =~ m/$lookup/ ) { + $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; + } + + $MakefileData =~ s/\$\(KCXXFLAGS\)/\$\(CXXFLAGS\)/g; + + $lookup = '(.*)cp -pr \$\$/\$\$file \$\(distdir\)/\$\$file(.*)'; + if ($MakefileData =~ m/\n$lookup\n/) { + substituteLine($lookup, "$1cp -pr \$\$d/\$\$file \$(distdir)/\$\$file$2"); + } + + # Always update the Makefile.in + updateMakefile (); + return; +} + +#----------------------------------------------------------------------------- + +# Check to see whether we should process this make file. +# This is where we look for tags that we need to process. +# A small amount of initialising on the tags is also done here. +# And of course we open and/or create the needed make files. +sub initialise () +{ + if (! -r "Makefile.am") { + print STDOUT "found Makefile.in without Makefile.am\n" if ($verbose); + return 0; + } + + # Checking for files to process... + open (FILEIN, $makefile) + || die "Could not open $makefileDir/$makefile: $!\n"; + # Read the file + # stat(FILEIN)[7] might look more elegant, but is slower as it + # requires stat'ing the file + seek(FILEIN, 0, 2); + my $fsize = tell(FILEIN); + seek(FILEIN, 0, 0); + read FILEIN, $MakefileData, $fsize; + close FILEIN; + print "DOS CRLF within $makefileDir/$makefile!\n" if($MakefileData =~ y/\r//d); + + # Remove the line continuations, but keep them marked + # Note: we lose the trailing spaces but that's ok. + $MakefileData =~ s/\\\s*\n/\034/g; + + # If we've processed the file before... + restoreMakefile () if ($MakefileData =~ /$progId/); + + foreach $dir (@foreignfiles) { + if (substr($makefileDir,0,length($dir)) eq $dir) { + return 0; + } + } + + %kdeopts = (); + $kdeopts{"foreign"} = 0; + $kdeopts{"qtonly"} = 0; + $kdeopts{"nofinal"} = !$use_final; # default + + if ($MakefileData =~ /\nKDE_OPTIONS\s*=\s*([^\n]*)\n/) { + local @kde_options = split(/[\s\034]/, $1); + if (grep(/^foreign$/, @kde_options)) { + push(@foreignfiles, $makefileDir . "/"); + return 0; # don't touch me + } + for $opt (@kde_options) { + if (!defined $kdeopts{$opt}) { + print STDERR "Warning: unknown option $opt in $printname\n"; + } else { + $kdeopts{$opt} = 1; + } + } + } + + # Look for the tags that mean we should process this file. + $metasourceTags = 0; + $metasourceTags++ while ($MakefileData =~ /\n[^=\#]*METASOURCES\s*=/g); + + my $pofileTag = 0; + $pofileTag++ while ($MakefileData =~ /\nPOFILES\s*=/g); + if ($pofileTag > 1) + { + print STDERR "Error: Only one POFILES tag allowed\n"; + $errorflag = 1; + } + + while ($MakefileData =~ /\n\.SUFFIXES:([^\n]+)\n/g) { + my @list=split(' ', $1); + foreach $ext (@list) { + if ($ext =~ /^\.$cppExt$/) { + $cxxsuffix = $ext; + $cxxsuffix =~ s/\.//g; + print STDOUT "will use suffix $cxxsuffix\n" if ($verbose); + last; + } + } + } + + while ($MakefileData =~ /\n(\S*)_OBJECTS\s*=[ \t\034]*([^\n]*)\n/g) { + + my $program = $1; + my $objs = $2; # safe them + + my $ocv = 0; + + my @objlist = split(/[\s\034]+/, $objs); + foreach $obj (@objlist) { + if ($obj =~ /\$\((\S+)\)/ ) { + my $variable = $1; + if ($variable !~ 'OBJEXT') { + $ocv = 1; + } + } + } + + next if ($ocv); + + $program =~ s/^am_// if ($program =~ /^am_/); + + print STDOUT "found program $program\n" if ($verbose); + push(@programs, $program); + + $realObjs{$program} = $objs; + + if ($MakefileData =~ /\n$program\_SOURCES\s*=\s*(.*)\n/) { + $sources{$program} = $1; + } else { + $sources{$program} = ""; + print STDERR "found program with no _SOURCES: $program\n"; + } + + my $realprogram = $program; + $realprogram =~ s/_/./g; # unmask to regexp + if ($MakefileData =~ /\n($realprogram)(\$\(EXEEXT\)?)?:.*\$\($program\_OBJECTS\)/) { + $realname{$program} = $1; + } else { + # not standard Makefile - nothing to worry about + $realname{$program} = ""; + } + } + + my $lookup = '\nDEPDIR\s*=.*'; + if ($MakefileData !~ /($lookup)\n/o) { + $lookup = '\nbindir\s*=.*'; + if ($MakefileData =~ /($lookup)\n/) { + substituteLine ($lookup, "DEPDIR = .deps\n$1"); + } + } else { + print STDERR "$printname defines DEPDIR. This means you're using automake > 1.4 - this is not supported!\n"; + } + + my @marks = ('MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES'); + foreach $mark (@marks) { + while ($MakefileData =~ /\n($mark)\s*=\s*([^\n]*)/g) { + foreach $file (split('[\034\s]', $2)) { + $file =~ s/\.\///; + push(@cleanfiles, $file); + } + } + } + + my $localTag = 0; + $localTag++ if ($MakefileData =~ /\ninstall-\S+-local:/); + + return (!$errorflag); +} + +#----------------------------------------------------------------------------- + +# Gets the list of user defined directories - relative to $srcdir - where +# header files could be located. +sub tag_META_INCLUDES () +{ + my $lookup = '[^=\n]*META_INCLUDES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /($lookup)\n/o); + print STDOUT "META_INCLUDE processing <$1>\n" if ($verbose); + + my $headerStr = $2; + removeLine ($lookup, $1); + + $headerStr =~ tr/\034/ /; + my @headerlist = split(' ', $headerStr); + + foreach $dir (@headerlist) + { + $dir =~ s#\$\(srcdir\)#.#; + if (! -d $dir) + { + print STDERR "Warning: $dir can't be found. ", + "Must be a relative path to \$(srcdir)\n"; + } + else + { + push (@headerdirs, $dir); + } + } + + return 0; +} + +#----------------------------------------------------------------------------- + +sub tag_FINAL() +{ + my @final_names = (); + + foreach $program (@programs) { + + if ($sources{$program} =~ /\(/) { + print STDOUT "found ( in $program\_SOURCES. skipping\n" if ($verbose); + next; + } + + my $mocsources = ""; + + my @progsources = split(/[\s\034]+/, $sources{$program}); + my %sourcelist = (); + + foreach $source (@progsources) { + my $suffix = $source; + $suffix =~ s/^.*\.([^\.]+)$/$1/; + + if (defined($sourcelist{$suffix})) { + $sourcelist{$suffix} .= " " . $source; + } else { + $sourcelist{$suffix} .= $source; + } + } + + foreach $suffix (keys %sourcelist) { + + # See if this file contains c++ code. (ie Just check the files suffix against + my $suffix_is_cxx = 0; + if($suffix =~ /($cppExt)$/) { + $cxx_suffix = $1; + $suffix_is_cxx = 1; + } + + my $mocfiles_in = ($suffix eq $cxxsuffix) && + defined($depedmocs{$program}); + + my @sourcelist = split(/[\s\034]+/, $sourcelist{$suffix}); + + if ((@sourcelist == 1 && !$mocfiles_in) || $suffix_is_cxx != 1 ) { + + # we support IDL on our own + if ($suffix =~ /^skel$/ || $suffix =~ /^stub/ || $suffix =~ /^h$/ + || $suffix =~ /^ui$/ ) { + next; + } + + foreach $file (@sourcelist) { + + $file =~ s/\Q$suffix\E$//; + + $finalObjs{$program} .= $file; + if ($program =~ /_la$/) { + $finalObjs{$program} .= "lo "; + } else { + $finalObjs{$program} .= "o "; + } + } + next; # suffix + } + + my $source_deps = ""; + foreach $source (@sourcelist) { + if (-f $source) { + $source_deps .= "\$(srcdir)/$source "; + } else { + $source_deps .= "$source "; + } + } + + $handling = "$program.all_$suffix.$suffix: \$(srcdir)/Makefile.in " . $source_deps . " "; + + if ($mocfiles_in) { + $handling .= $depedmocs{$program}; + foreach $mocfile (split(' ', $depedmocs{$program})) { + if ($mocfile =~ m/\.$suffix$/) { + $mocsources .= " " . $mocfile; + } + } + } + + $handling .= "\n"; + $handling .= "\t\@echo 'creating $program.all_$suffix.$suffix ...'; \\\n"; + $handling .= "\trm -f $program.all_$suffix.files $program.all_$suffix.final; \\\n"; + $handling .= "\techo \"#define KDE_USE_FINAL 1\" >> $program.all_$suffix.final; \\\n"; + $handling .= "\tfor file in " . $sourcelist{$suffix} . " $mocsources; do \\\n"; + $handling .= "\t echo \"#include \\\"\$\$file\\\"\" >> $program.all_$suffix.files; \\\n"; + $handling .= "\t test ! -f \$\(srcdir\)/\$\$file || egrep '^#pragma +implementation' \$\(srcdir\)/\$\$file >> $program.all_$suffix.final; \\\n"; + $handling .= "\tdone; \\\n"; + $handling .= "\tcat $program.all_$suffix.final $program.all_$suffix.files > $program.all_$suffix.$suffix; \\\n"; + $handling .= "\trm -f $program.all_$suffix.final $program.all_$suffix.files\n"; + + appendLines($handling); + + push(@final_names, "$program.all_$suffix.$suffix"); + $finalObjs{$program} .= "$program.all_$suffix."; + if ($program =~ /_la$/) { + $finalObjs{$program} .= "lo "; + } else { + $finalObjs{$program} .= "o "; + } + } + } + + if (!$kdeopts{"nofinal"} && @final_names >= 1) { + # add clean-final target + my $lines = "$cleantarget-final:\n"; + $lines .= "\t-rm -f " . join(' ', @final_names) . "\n" if (@final_names); + appendLines($lines); + $target_adds{"$cleantarget-am"} .= "$cleantarget-final "; + + foreach $finalfile (@final_names) { + $finalfile =~ s/\.[^.]*$/.P/; + $dep_finals .= " \$(DEPDIR)/$finalfile"; + } + } +} + +# Organises the list of headers that we'll use to produce moc files +# from. +sub tag_METASOURCES () +{ + local @newObs = (); # here we add to create object files + local @deped = (); # here we add to create moc files + local $mocExt = ".moc"; + local %mocFiles = (); + + my $line = ""; + my $postEqual = ""; + + my $lookup; + my $found = ""; + + if ($metasourceTags > 1) { + $lookup = $program . '_METASOURCES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/); + $found = $1; + } else { + $lookup = $program . '_METASOURCES\s*=\s*(.*)'; + if ($MakefileData !~ /\n($lookup)\n/) { + $lookup = 'METASOURCES\s*=\s*(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/o); + $found = $1; + $metasourceTags = 0; # we can use the general target only once + } else { + $found = $1; + } + } + print STDOUT "METASOURCE processing <$found>)\n" if ($verbose); + + $postEqual = $found; + $postEqual =~ s/[^=]*=//; + + removeLine ($lookup, $found); + + # Always find the header files that could be used to "moc" + return 1 if (findMocCandidates ()); + + if ($postEqual =~ /AUTO\s*(\S*)|USE_AUTOMOC\s*(\S*)/) + { + print STDERR "$printname: the argument for AUTO|USE_AUTOMOC is obsolete" if ($+); + $mocExt = ".moc.$cxxsuffix"; + $haveAutomocTag = 1; + } + else + { + # Not automoc so read the list of files supplied which + # should be .moc files. + + $postEqual =~ tr/\034/ /; + + # prune out extra headers - This also checks to make sure that + # the list is valid. + pruneMocCandidates ($postEqual); + } + + checkMocCandidates (); + + if (@newObs) { + my $ext = ($program =~ /_la$/) ? ".moc.lo " : ".moc.o "; + $realObjs{$program} .= "\034" . join ($ext, @newObs) . $ext; + $depedmocs{$program} = join (".moc.$cxxsuffix " , @newObs) . ".moc.$cxxsuffix"; + foreach $file (@newObs) { + $dep_files .= " \$(DEPDIR)/$file.moc.P"; + } + } + if (@deped) { + $depedmocs{$program} .= " "; + $depedmocs{$program} .= join('.moc ', @deped) . ".moc"; + $depedmocs{$program} .= " "; + } + addMocRules (); + @globalmocs{keys %mocFiles}=values %mocFiles; +} + +#----------------------------------------------------------------------------- + +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_AUTOMAKE () +{ + my $lookup = '.*cd \$\(top_srcdir\)\s+&&\s+\$\(AUTOMAKE\)(.*)'; + return 1 if ($MakefileData !~ /\n($lookup)\n/); + print STDOUT "AUTOMAKE processing <$1>\n" if ($verbose); + + my $newLine = $1."\n\tcd \$(top_srcdir) && perl $thisProg $printname"; + substituteLine ($lookup, $newLine); + $automkCall = $1; + return 0; +} + +#----------------------------------------------------------------------------- + +sub handle_TOPLEVEL() +{ + my $pofiles = ""; + my @restfiles = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if (-d $entry); + + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry =~ /.gmo$/); + + if ($entry =~ /\.po$/) { + next; + } + push(@restfiles, $entry); + } + closedir (THISDIR); + + if (@restfiles) { + $target_adds{"install-data-am"} .= "install-nls-files "; + $lines = "install-nls-files:\n"; + $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$kdelang\n"; + for $file (@restfiles) { + $lines .= "\t\$(INSTALL_DATA) \$\(srcdir\)/$file \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; + } + $target_adds{"uninstall"} .= "uninstall-nls-files "; + $lines .= "uninstall-nls-files:\n"; + for $file (@restfiles) { + $lines .= "\t-rm -f \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; + } + appendLines($lines); + } + + return 0; +} + +#----------------------------------------------------------------------------- + +sub tag_SUBDIRS () +{ + if ($MakefileData !~ /\nSUBDIRS\s*=\s*\$\(AUTODIRS\)\s*\n/) { + return 1; + } + + my $subdirs; + + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./); + if (-d $entry && -f $entry . "/Makefile.am") { + $subdirs .= " $entry"; + next; + } + } + closedir (THISDIR); + + my $lines = "SUBDIRS =$subdirs\n"; + substituteLine('SUBDIRS\s*=.*', $lines); + return 0; +} + +sub tag_IDLFILES () +{ + my @psources = split(/[\034\s]+/, $sources{$program}); + my $dep_lines = ""; + my @cppFiles = (); + + foreach $source (@psources) { + + my $skel = ($source =~ m/\.skel$/); + + if ($source =~ m/\.stub$/ || $skel) { + + my $qs = quotemeta($source); + $sources{$program} =~ s/$qs//; + $sources_changed{$program} = 1; + + print STDOUT "adding IDL file $source\n" if ($verbose); + + $source =~ s/\.(stub|skel)$//; + + my $sourcename; + + if ($skel) { + $sourcename = "$source\_skel"; + } else { + $sourcename = "$source\_stub"; + } + + my $sourcedir = ''; + if (-f "$makefileDir/$source.h") { + $sourcedir = '$(srcdir)/'; + } else { + if ($MakefileData =~ /\n$source\_DIR\s*=\s*(\S+)\n/) { + $sourcedir = $1; + $sourcedir .= "/" if ($sourcedir !~ /\/$/); + } + } + + if ($allidls !~ /$source\_kidl/) { + + $dep_lines .= "$source.kidl: $sourcedir$source.h \$(DCOPIDL_DEPENDENCIES)\n"; + $dep_lines .= "\t\$(DCOPIDL) $sourcedir$source.h > $source.kidl || ( rm -f $source.kidl ; /bin/false )\n"; + + $allidls .= $source . "_kidl "; + } + + if ($allidls !~ /$sourcename/) { + + if ($skel) { + $dep_lines .= "$sourcename.$cxxsuffix: $source.kidl\n"; + $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-stub $source.kidl\n"; + } else { + $target_adds{"$sourcename.$cxxsuffix"} .= "$sourcename.h "; + $dep_lines .= "$sourcename.h: $source.kidl\n"; + $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-skel $source.kidl\n"; + } + + $allidls .= $sourcename . " "; + } + + $idlfiles{$program} .= $sourcename . " "; + + if ($program =~ /_la$/) { + $realObjs{$program} .= " $sourcename.lo"; + } else { + $realObjs{$program} .= " $sourcename.\$(OBJEXT)"; + } + $sources{$program} .= " $sourcename.$cxxsuffix"; + $sources_changed{$program} = 1; + $important{$program} .= "$sourcename.h " if (!$skel); + $idl_output .= "\\\n\t$sourcename.$cxxsuffix $sourcename.h $source.kidl "; + push(@cleanfiles, "$sourcename.$cxxsuffix"); + push(@cleanfiles, "$sourcename.h"); + push(@cleanfiles, "$sourcename.kidl"); + $dep_files .= " \$(DEPDIR)/$sourcename.P"; + } + } + if ($dep_lines) { + appendLines($dep_lines); + } + + if (0) { + my $lookup = "($program)"; + $lookup .= '(|\$\(EXEEXT\))'; + $lookup =~ s/\_/./g; + $lookup .= ":(.*..$program\_OBJECTS..*)"; + # $lookup = quotemeta($lookup); + if ($MakefileData =~ /\n$lookup\n/) { + + my $line = "$1$2: "; + foreach $file (split(' ', $idlfiles{$program})) { + $line .= "$file.$cxxsuffix "; + } + $line .= $3; + substituteLine($lookup, $line); + } else { + print STDERR "no built dependency found $lookup\n"; + } + } +} + +sub tag_UIFILES () +{ + my @psources = split(/[\034\s]+/, $sources{$program}); + my $dep_lines = ""; + my @depFiles = (); + + foreach $source (@psources) { + + if ($source =~ m/\.ui$/) { + + print STDERR "adding UI file $source\n" if ($verbose); + + my $qs = quotemeta($source); + $sources{$program} =~ s/$qs//; + $sources_changed{$program} = 1; + + $source =~ s/\.ui$//; + + my $sourcedir = ''; + if (-f "$makefileDir/$source.ui") { + $sourcedir = '$(srcdir)/'; + } + + if ($alluis !~ /$source/) { + + $dep_lines .= "$source.$cxxsuffix: $sourcedir$source.ui $source.h $source.moc\n"; + $dep_lines .= "\trm -f $source.$cxxsuffix\n"; + if (!$kdeopts{"qtonly"}) { + $dep_lines .= "\techo '#include ' > $source.$cxxsuffix\n"; + $dep_lines .= "\t\$(UIC) -tr i18n -i $source.h $sourcedir$source.ui | sed -e \"s,i18n( \\\"\\\" ),QString::null,g\" >> $source.$cxxsuffix || rm -f $source.$cxxsuffix\n"; + } else { + $dep_lines .= "\t\$(UIC) -i $source.h $sourcedir$source.ui > $source.$cxxsuffix || rm -f $source.$cxxsuffix\n"; + } + $dep_lines .= "\techo '#include \"$source.moc\"' >> $source.$cxxsuffix\n\n"; + $dep_lines .= "$source.h: $sourcedir$source.ui\n"; + $dep_lines .= "\t\$(UIC) -o $source.h $sourcedir$source.ui\n\n"; + $dep_lines .= "$source.moc: $source.h\n"; + $dep_lines .= "\t\$(MOC) $source.h -o $source.moc\n"; + + $alluis .= "$source "; + $depedmocs{$program} .= " $source.moc"; + $globalmocs{$source} = "\035$source.h\035$source.cpp"; + } + + if ($program =~ /_la$/) { + $realObjs{$program} .= " $source.lo"; + } else { + $realObjs{$program} .= " $source.\$(OBJEXT)"; + } + $sources{$program} .= " $source.$cxxsuffix"; + $sources_changed{$program} = 1; + $important{$program} .= "$source.h "; + $ui_output .= "\\\n\t$source.$cxxsuffix $source.h $source.moc "; + push(@cleanfiles, "$source.$cxxsuffix"); + push(@cleanfiles, "source.h"); + push(@cleanfiles, "$source.moc"); + + $dep_files .= " \$(DEPDIR)/$source.P"; + } + } + if ($dep_lines) { + appendLines($dep_lines); + } +} + +sub tag_ICON() +{ + my $lookup = '([^\s]*)_ICON\s*=\s*([^\n]*)'; + my $install = ""; + my $uninstall = ""; + + while ($MakefileData =~ /\n$lookup/og) { + my $destdir; + if ($1 eq "KDE") { + $destdir = "kde_icondir"; + } else { + $destdir = $1 . "dir"; + } + my $iconauto = ($2 =~ /AUTO\s*$/); + my @appnames = (); + if ( ! $iconauto ) { + my @_appnames = split(" ", $2); + print STDOUT "KDE_ICON processing <@_appnames>\n" if ($verbose); + foreach $appname (@_appnames) { + push(@appnames, quotemeta($appname)); + } + } else { + print STDOUT "KDE_ICON processing \n" if ($verbose); + } + + my @files = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + if ( $iconauto ) + { + push(@files, $entry) + if ($entry =~ /\.xpm/ || $entry =~ /\.png/); + } else { + foreach $appname (@appnames) { + push(@files, $entry) + if ($entry =~ /-$appname\.xpm/ || $entry =~ /-$appname\.png/); + } + } + } + closedir (THISDIR); + + my %directories = (); + + foreach $file (@files) { + my $newfile = $file; + my $prefix = $file; + $prefix =~ s/\.(png|xpm)$//; + my $appname = $prefix; + $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; + $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; + $appname = quotemeta($appname); + $prefix =~ s/$appname$//; + $prefix =~ s/-$//; + + $prefix = 'lo16-app' if ($prefix eq 'mini'); + $prefix = 'lo32-app' if ($prefix eq 'lo'); + $prefix = 'hi48-app' if ($prefix eq 'large'); + $prefix .= '-app' if ($prefix =~ m/^...$/); + + my $type = $prefix; + $type =~ s/^.*-([^-]+)$/$1/; + $prefix =~ s/^(.*)-[^-]+$/$1/; + + my %type_hash = + ( + 'action' => 'actions', + 'app' => 'apps', + 'device' => 'devices', + 'filesys' => 'filesystems', + 'mime' => 'mimetypes' + ); + + if (! defined $type_hash{$type} ) { + print STDERR "unknown icon type $type in $printname ($file)\n"; + next; + } + + my %dir_hash = + ( + 'los' => 'locolor/16x16', + 'lom' => 'locolor/32x32', + 'him' => 'hicolor/32x32', + 'hil' => 'hicolor/48x48', + 'lo16' => 'locolor/16x16', + 'lo22' => 'locolor/22x22', + 'lo32' => 'locolor/32x32', + 'hi16' => 'hicolor/16x16', + 'hi22' => 'hicolor/22x22', + 'hi32' => 'hicolor/32x32', + 'hi48' => 'hicolor/48x48', + 'hi64' => 'hicolor/64x64', + 'hisc' => 'hicolor/scalable' + ); + + $newfile =~ s@.*-($appname\.(png|xpm?))@$1@; + + if (! defined $dir_hash{$prefix}) { + print STDERR "unknown icon prefix $prefix in $printname\n"; + next; + } + + my $dir = $dir_hash{$prefix} . "/" . $type_hash{$type}; + if ($newfile =~ /-[^\.]/) { + my $tmp = $newfile; + $tmp =~ s/^([^-]+)-.*$/$1/; + $dir = $dir . "/" . $tmp; + $newfile =~ s/^[^-]+-//; + } + + if (!defined $directories{$dir}) { + $install .= "\t\$(mkinstalldirs) \$(DESTDIR)\$($destdir)/$dir\n"; + $directories{$dir} = 1; + } + + $install .= "\t\$(INSTALL_DATA) \$(srcdir)/$file \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; + $uninstall .= "\t-rm -f \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; + + } + } + + if (length($install)) { + $target_adds{"install-data-am"} .= "install-kde-icons "; + $target_adds{"uninstall-am"} .= "uninstall-kde-icons "; + appendLines("install-kde-icons:\n" . $install . "\nuninstall-kde-icons:\n" . $uninstall); + } +} + +sub handle_POFILES($$) +{ + my @pofiles = split(" ", $_[0]); + my $lang = $_[1]; + + # Build rules for creating the gmo files + my $tmp = ""; + my $allgmofiles = ""; + my $pofileLine = "POFILES ="; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + $tmp .= "$1.gmo: $pofile\n"; + $tmp .= "\trm -f $1.gmo; \$(GMSGFMT) -o $1.gmo \$(srcdir)/$pofile\n"; + $tmp .= "\ttest ! -f $1.gmo || touch $1.gmo\n"; + $allgmofiles .= " $1.gmo"; + $pofileLine .= " $1.po"; + } + appendLines ($tmp); + my $lookup = 'POFILES\s*=([^\n]*)'; + if ($MakefileData !~ /\n$lookup/o) { + appendLines("$pofileLine\nGMOFILES =$allgmofiles"); + } else { + substituteLine ($lookup, "$pofileLine\nGMOFILES =$allgmofiles"); + } + + if ($allgmofiles) { + + # Add the "clean" rule so that the maintainer-clean does something + appendLines ("clean-nls:\n\t-rm -f $allgmofiles\n"); + + $target_adds{"maintainer-clean"} .= "clean-nls "; + + $lookup = 'DISTFILES\s*=\s*(.*)'; + if ($MakefileData =~ /\n$lookup\n/o) { + $tmp = "DISTFILES = \$(GMOFILES) \$(POFILES) $1"; + substituteLine ($lookup, $tmp); + } + } + + $target_adds{"install-data-am"} .= "install-nls "; + + $tmp = "install-nls:\n"; + if ($lang) { + $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES\n"; + } + $tmp .= "\t\@for base in "; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + $tmp .= "$1 "; + } + + $tmp .= "; do \\\n"; + if ($lang) { + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; + $tmp .= "\t test ! -f \$\$base.gmo || \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n" + } else { + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; + $tmp .= "\t \$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES ; \\\n"; + $tmp .= "\t test ! -f \$\$base.gmo || \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; + } + $tmp .= "\tdone\n\n"; + appendLines ($tmp); + + $target_adds{"uninstall"} .= "uninstall-nls "; + + $tmp = "uninstall-nls:\n"; + foreach $pofile (@pofiles) + { + $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension + if ($lang) { + $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/$1.mo\n"; + } else { + $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$1/LC_MESSAGES/\$(PACKAGE).mo\n"; + } + } + appendLines($tmp); + + $target_adds{"all"} .= "all-nls "; + + $tmp = "all-nls: \$(GMOFILES)\n"; + + appendLines($tmp); + + $target_adds{"distdir"} .= "distdir-nls "; + + $tmp = "distdir-nls:\$(GMOFILES)\n"; + $tmp .= "\tfor file in \$(POFILES); do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + $tmp .= "\tfor file in \$(GMOFILES); do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + + appendLines ($tmp); + + if (!$lang) { + appendLines("merge:\n\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common package-merge POFILES=\"\${POFILES}\" PACKAGE=\${PACKAGE}\n\n"); + } + +} + +#----------------------------------------------------------------------------- + +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_POFILES () +{ + my $lookup = 'POFILES\s*=([^\n]*)'; + return 1 if ($MakefileData !~ /\n$lookup/o); + print STDOUT "POFILES processing <$1>\n" if ($verbose); + + my $tmp = $1; + + # make sure these are all gone. + if ($MakefileData =~ /\n\.po\.gmo:\n/) + { + print STDERR "Warning: Found old .po.gmo rules in $printname. New po rules not added\n"; + return 1; + } + + # Either find the pofiles in the directory (AUTO) or use + # only the specified po files. + my $pofiles = ""; + if ($tmp =~ /^\s*AUTO\s*$/) + { + opendir (THISDIR, "."); + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^#.*#$/); + $pofiles = join(" ", grep(/\.po$/, readdir(THISDIR))); + closedir (THISDIR); + print STDOUT "pofiles found = $pofiles\n" if ($verbose); + if (-f "charset" && -f "kdelibs.po") { + handle_TOPLEVEL(); + } + } + else + { + $tmp =~ s/\034/ /g; + $pofiles = $tmp; + } + return 1 if (!$pofiles); # Nothing to do + + handle_POFILES($pofiles, $kdelang); + + return 0; +} + +sub helper_LOCALINSTALL($) +{ + my $lookup = "\n" . $_[0] . ":"; + if ($MakefileData =~ /($lookup)/) { + + my $install = $MakefileData; + $install =~ s/\n/\035/g; + $install =~ s/.*\035$_[0]:[^\035]*\035//; + my $emptyline = 0; + while (! $emptyline) { + if ($install =~ /([^\035]*)\035(.*)/) { + local $line = $1; + $install = $2; + if ($line !~ /^\s*$/ && $line !~ /^(\@.*\@)*\t/) { + $emptyline = 1; + } else { + replaceDestDir($line); + } + } else { + $emptyline = 1; + } + } + } + +} + +sub tag_LOCALINSTALL () +{ + helper_LOCALINSTALL('install-exec-local'); + helper_LOCALINSTALL('install-data-local'); + helper_LOCALINSTALL('uninstall-local'); + + return 0; +} + +sub replaceDestDir($) { + local $line = $_[0]; + + if ( $line =~ /^\s*(\@.*\@)*\s*\$\(mkinstalldirs\)/ + || $line =~ /^\s*(\@.*\@)*\s*\$\(INSTALL\S*\)/ + || $line =~ /^\s*(\@.*\@)*\s*(-?rm.*) \S*$/) + { + $line =~ s/^(.*) ([^\s]*)\s*$/$1 \$(DESTDIR)$2/ if ($line !~ /\$\(DESTDIR\)/); + } + + if ($line ne $_[0]) { + $_[0] = quotemeta $_[0]; + substituteLine($_[0], $line); + } +} + +#--------------------------------------------------------------------------- +sub tag_CLOSURE () { + return if ($program !~ /_la$/); + + my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; + $MakefileData =~ m/$lookup/; + return if ($1 !~ /CXXLINK/); + + if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ && + $MakefileData !~ /\n$program\_LDFLAGS\s*=.*KDE_PLUGIN/ ) { + print STDERR "Report: $program contains undefined in $printname\n" if ($program =~ /^lib/ && $dryrun); + return; + } + my $closure = $realname{$program} . ".closure"; + my $lines = "$closure: \$($program\_OBJECTS) \$($program\_DEPENDENCIES)\n"; + $lines .= "\t\@echo \"int main() {return 0;}\" > $program\_closure.$cxxsuffix\n"; + $lines .= "\t\@\$\(LTCXXCOMPILE\) -c $program\_closure.$cxxsuffix\n"; + $lines .= "\t\@\$\(CXXLINK\) $program\_closure.lo \$($program\_LDFLAGS) \$($program\_OBJECTS) \$($program\_LIBADD) \$(LIBS)\n"; + $lines .= "\t\@rm -f $program\_closure.* $closure\n"; + $lines .= "\t\@echo \"timestamp\" > $closure\n"; + $lines .= "\n"; + appendLines($lines); + $lookup = $realname{$program} . ": (.*)"; + if ($MakefileData =~ /\n$lookup\n/) { + $lines = "\@KDE_USE_CLOSURE_TRUE@". $realname{$program} . ": $closure $1"; + $lines .= "\n\@KDE_USE_CLOSURE_FALSE@" . $realname{$program} . ": $1"; + substituteLine($lookup, $lines); + } + $closure_output .= " $closure"; +} + +sub tag_DIST () { + my %foundfiles = (); + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile$$/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + next if ($entry =~ /\.moc/ || $entry =~ /\.lo$/ || $entry =~ /\.la$/ || $entry =~ /\.o/); + $foundfiles{$entry} = 1; + } + closedir (THISDIR); + + my @marks = ("EXTRA_DIST", "DIST_COMMON", '\S*_SOURCES', '\S*_HEADERS', 'MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES', '\S*_OBJECTS'); + foreach $mark (@marks) { + while ($MakefileData =~ /\n($mark)\s*=\s*([^\n]*)/g) { + foreach $file (split('[\034\s]', $2)) { + $file =~ s/\.\///; + $foundfiles{$file} = 0 if (defined $foundfiles{$file}); + } + } + } + my @files = ("Makefile", "config.cache", "config.log", "stamp-h", + "stamp-h1", "stamp-h1", "config.h", "Makefile", "config.status", "config.h", "libtool"); + foreach $file (@files) { + $foundfiles{$file} = 0 if (defined $foundfiles{$file}); + } + + my $KDE_DIST = ""; + foreach $file (keys %foundfiles) { + if ($foundfiles{$file} == 1) { + $KDE_DIST .= "$file "; + } + } + if ($KDE_DIST) { + print "KDE_DIST $printname $KDE_DIST\n" if ($verbose); + + my $lookup = "DISTFILES *=(.*)"; + if ($MakefileData =~ /\n$lookup\n/o) { + substituteLine($lookup, "KDE_DIST=$KDE_DIST\n\nDISTFILES=$1 \$(KDE_DIST)\n"); + } + } +} + +#----------------------------------------------------------------------------- +# Returns 0 if the line was processed - 1 otherwise. +# Errors are logged in the global $errorflags +sub tag_DOCFILES () +{ +# if ($MakefileData =~ /\nSUBDIRS\s*=/) { # subdirs +# $MakefileData =~ /\n(.*-recursive:\s*)\n/; +# my $orig_rules = $1; +# my $rules = $orig_rules; +# $rules =~ s/:\s*$//; +# substituteLine($orig_rules, "$rules docs-recursive:"); +# appendLines("docs: docs-recursive docs-am\n"); +# } else { +# appendLines("docs: docs-am\n"); +# } + $target_adds{"all"} .= "docs-am "; + + my $lookup = 'KDE_DOCS\s*=\s*([^\n]*)'; + goto nodocs if ($MakefileData !~ /\n$lookup/o); + print STDOUT "KDE_DOCS processing <$1>\n" if ($verbose); + + my $tmp = $1; + + # Either find the files in the directory (AUTO) or use + # only the specified po files. + my $files = ""; + my $appname = $tmp; + $appname =~ s/^(\S*)\s*.*$/$1/; + if ($appname =~ /AUTO/) { + $appname = basename($makefileDir); + if ("$appname" eq "en") { + print STDERR "Error: KDE_DOCS = AUTO relies on the directory name. Yours is 'en' - you most likely want something else, e.g. KDE_DOCS = myapp\n"; + exit(1); + } + } + + if ($tmp !~ / - /) + { + opendir (THISDIR, "."); + foreach $entry (readdir(THISDIR)) { + next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); + next if (! -f $entry); + $files .= "$entry "; + } + closedir (THISDIR); + print STDOUT "docfiles found = $files\n" if ($verbose); + } + else + { + $tmp =~ s/\034/ /g; + $tmp =~ s/^\S*\s*-\s*//; + $files = $tmp; + } + goto nodocs if (!$files); # Nothing to do + + if ($files =~ /(^| )index\.docbook($| )/) { + + my $lines = ""; + my $lookup = 'MEINPROC\s*='; + if ($MakefileData !~ /\n($lookup)/) { + $lines = "MEINPROC=/\$(kde_bindir)/meinproc\n"; + } + $lookup = 'KDE_XSL_STYLESHEET\s*='; + if ($MakefileData !~ /\n($lookup)/) { + $lines .= "KDE_XSL_STYLESHEET=/\$(kde_datadir)/ksgmltools2/customization/kde-chunk.xsl\n"; + } + $lookup = '\nindex.cache.bz2:'; + if ($MakefileData !~ /\n($lookup)/) { + $lines .= "index.cache.bz2: \$(srcdir)/index.docbook \$(KDE_XSL_STYLESHEET) $files\n"; + $lines .= "\t\@if test -n \"\$(MEINPROC)\"; then echo \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; fi\n"; + $lines .= "\n"; + } + + $lines .= "docs-am: index.cache.bz2\n"; + $lines .= "\n"; + $lines .= "install-docs: docs-am install-nls\n"; + $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; + $lines .= "\t\@if test -f index.cache.bz2; then \\\n"; + $lines .= "\techo \$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; + $lines .= "\t\$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; + $lines .= "\tfi\n"; + $lines .= "\t-rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; + $lines .= "\t\$(LN_S) \$(kde_libs_htmldir)/$kdelang/common \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; + + $lines .= "\n"; + $lines .= "uninstall-docs:\n"; + $lines .= "\t-rm -rf \$(kde_htmldir)/$kdelang/$appname\n"; + $lines .= "\n"; + $lines .= "clean-docs:\n"; + $lines .= "\t-rm -f index.cache.bz2\n"; + $lines .= "\n"; + $target_adds{"install-data-am"} .= "install-docs "; + $target_adds{"uninstall"} .= "uninstall-docs "; + $target_adds{"clean-am"} .= "clean-docs "; + appendLines ($lines); + } else { + appendLines("docs-am: $files\n"); + } + + $target_adds{"install-data-am"} .= "install-nls"; + $target_adds{"uninstall"} .= "uninstall-nls "; + + $tmp = "install-nls:\n"; + $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; + $tmp .= "\t\@for base in $files; do \\\n"; + $tmp .= "\t echo \$(INSTALL_DATA) \$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\t \$(INSTALL_DATA) \$(srcdir)/\$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\tdone\n"; + if ($appname eq 'common') { + $tmp .= "\t\@echo \"merging common and language specific dir\" ;\\\n"; + $tmp .= "\tif test ! -e \$(kde_htmldir)/en/common/kde-common.css; then echo 'no english docs found in \$(kde_htmldir)/en/common/'; exit 1; fi \n"; + $tmp .= "\t\@com_files=`cd \$(kde_htmldir)/en/common && echo *` ;\\\n"; + $tmp .= "\tcd \$(DESTDIR)\$(kde_htmldir)/$kdelang/common ;\\\n"; + $tmp .= "\tif test -n \"\$\$com_files\"; then for p in \$\$com_files ; do \\\n"; + $tmp .= "\t case \" $files \" in \\\n"; + $tmp .= "\t *\" \$\$p \"*) ;; \\\n"; + $tmp .= "\t *) test ! -e \$\$p && echo \$(LN_S) ../../en/common/\$\$p \$(DESTDIR)\$(kde_htmldir)/$kdelang/common/\$\$p && \$(LN_S) ../../en/common/\$\$p \$\$p ;; \\\n"; + $tmp .= "\t esac ; \\\n"; + $tmp .= "\tdone ; fi ; true\n"; + } + $tmp .= "\n"; + $tmp .= "uninstall-nls:\n"; + $tmp .= "\tfor base in $files; do \\\n"; + $tmp .= "\t rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; + $tmp .= "\tdone\n\n"; + appendLines ($tmp); + + $target_adds{"distdir"} .= "distdir-nls "; + + $tmp = "distdir-nls:\n"; + $tmp .= "\tfor file in $files; do \\\n"; + $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; + $tmp .= "\tdone\n"; + + appendLines ($tmp); + + return 0; + + nodocs: + appendLines("docs-am:\n"); + return 1; +} + +#----------------------------------------------------------------------------- +# Find headers in any of the source directories specified previously, that +# are candidates for "moc-ing". +sub findMocCandidates () +{ + my @list = (); + foreach $dir (@headerdirs) + { + opendir (SRCDIR, "$dir"); + @hFiles = grep { /.+\.$hExt$/o } readdir(SRCDIR); + closedir SRCDIR; + foreach $hf (@hFiles) + { + open (HFIN, "$dir/$hf") || die "Could not open $dir/$hf: $!\n"; + my $hfsize = 0; + seek(HFIN, 0, 2); + $hfsize = tell(HFIN); + seek(HFIN, 0, 0); + read HFIN, $hfData, $hfsize; + close HFIN; + # push (@list, $hf) if(index($hfData, "Q_OBJECT") >= 0); ### fast but doesn't handle //Q_OBJECT + if ( $hfData =~ /{([^}]*)Q_OBJECT/s ) { ## handle " { friend class blah; Q_OBJECT " + push (@list, $hf) unless $1 =~ m://[^\n]*Q_OBJECT[^\n]*$:s; ## handle "// Q_OBJECT" + } + } + # The assoc array of root of headerfile and header filename + foreach $hFile (@list) + { + $hFile =~ /(.*)\.[^\.]*$/; # Find name minus extension + if ($mocFiles{$1}) + { + print STDERR "Warning: Multiple header files found for $1\n"; + next; # Use the first one + } + $mocFiles{$1} = "$dir\035$hFile"; # Add relative dir + } + } + + return 0; +} + +#----------------------------------------------------------------------------- + +# The programmer has specified a moc list. Prune out the moc candidates +# list that we found based on looking at the header files. This generates +# a warning if the programmer gets the list wrong, but this doesn't have +# to be fatal here. +sub pruneMocCandidates ($) +{ + my %prunedMoc = (); + local @mocList = split(' ', @_[0]); + + foreach $mocname (@mocList) + { + $mocname =~ s/\.moc$//; + if ($mocFiles{$mocname}) + { + $prunedMoc{$mocname} = $mocFiles{$mocname}; + } + else + { + my $print = $makefileDir; + $print =~ s/^\Q$topdir\E\\//; + # They specified a moc file but we can't find a header that + # will generate this moc file. That's possible fatal! + print STDERR "Warning: No moc-able header file for $print/$mocname\n"; + } + } + + undef %mocFiles; + %mocFiles = %prunedMoc; +} + +#----------------------------------------------------------------------------- + +# Finds the cpp files (If they exist). +# The cpp files get appended to the header file separated by \035 +sub checkMocCandidates () +{ + my @cppFiles; + my $cpp2moc; # which c++ file includes which .moc files + my $moc2cpp; # which moc file is included by which c++ files + + return unless (keys %mocFiles); + opendir(THISDIR, ".") || return; + @cppFiles = grep { /.+\.$cppExt$/o && !/.+\.moc\.$cppExt$/o + && !/.+\.all_$cppExt\.$cppExt$/o } readdir(THISDIR); + closedir THISDIR; + return unless (@cppFiles); + my $files = join (" ", @cppFiles); + $cpp2moc = {}; + $moc2cpp = {}; + foreach $cxxf (@cppFiles) + { + open (CXXFIN, $cxxf) || die "Could not open $cxxf: $!\n"; + seek(CXXFIN, 0, 2); + my $cxxfsize = tell(CXXFIN); + seek(CXXFIN, 0, 0); + read CXXFIN, $cxxfData, $cxxfsize; + close CXXFIN; + while(($cxxfData =~ m/^[ \t]*\#include\s*[<\"](.*\.moc)[>\"]/gm)) { + $cpp2moc->{$cxxf}->{$1} = 1; + $moc2cpp->{$1}->{$cxxf} = 1; + } + } + foreach my $mocFile (keys (%mocFiles)) + { + @cppFiles = keys %{$moc2cpp->{"$mocFile.moc"}}; + if (@cppFiles == 1) { + $mocFiles{$mocFile} .= "\035" . $cppFiles[0]; + push(@deped, $mocFile); + } elsif (@cppFiles == 0) { + push (@newObs, $mocFile); # Produce new object file + next if ($haveAutomocTag); # This is expected... + # But this is an error we can deal with - let them know + print STDERR + "Warning: No c++ file that includes $mocFile.moc\n"; + } else { + # We can't decide which file to use, so it's fatal. Although as a + # guess we could use the mocFile.cpp file if it's in the list??? + print STDERR + "Error: Multiple c++ files that include $mocFile.moc\n"; + print STDERR "\t",join ("\t", @cppFiles),"\n"; + $errorflag = 1; + delete $mocFiles{$mocFile}; + # Let's continue and see what happens - They have been told! + } + } +} + +#----------------------------------------------------------------------------- + +# Add the rules for generating moc source from header files +# For Automoc output *.moc.cpp but normally we'll output *.moc +# (We must compile *.moc.cpp separately. *.moc files are included +# in the appropriate *.cpp file by the programmer) +sub addMocRules () +{ + my $cppFile; + my $hFile; + + foreach $mocFile (keys (%mocFiles)) + { + undef $cppFile; + ($dir, $hFile, $cppFile) = split ("\035", $mocFiles{$mocFile}, 3); + $dir =~ s#^\.#\$(srcdir)#; + if (defined ($cppFile)) + { + $target_adds{"\$(srcdir)/$cppFile"} .= "$mocFile.moc "; + appendLines ("$mocFile.moc: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile.moc\n"); + $cleanMoc .= " $mocFile.moc"; + } + else + { + appendLines ("$mocFile$mocExt: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile$mocExt\n"); + $cleanMoc .= " $mocFile$mocExt"; + } + } +} + +sub make_meta_classes () +{ + return if ($kdeopts{"qtonly"}); + + my $cppFile; + my $hFile; + my $moc_class_headers = ""; + foreach $program (@programs) { + my $mocs = ""; + my @progsources = split(/[\s\034]+/, $sources{$program}); + my @depmocs = split(' ', $depedmocs{$program}); + my %shash = (), %mhash = (); + @shash{@progsources} = 1; # we are only interested in the existence + @mhash{@depmocs} = 1; + + print STDOUT "program=$program\n" if ($verbose); + print STDOUT "psources=[".join(' ', keys %shash)."]\n" if ($verbose); + print STDOUT "depmocs=[".join(' ', keys %mhash)."]\n" if ($verbose); + print STDOUT "globalmocs=[".join(' ', keys(%globalmocs))."]\n" if ($verbose); + foreach my $mocFile (keys (%globalmocs)) + { + undef $cppFile; + ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); + $dir =~ s#^\.#\$(srcdir)#; + if (defined ($cppFile)) + { + $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; + } + else + { + # Bah. This is the case, if no C++ file includes the .moc + # file. We make a .moc.cpp file for that. Unfortunately this + # is not included in the %sources hash, but rather is mentioned + # in %depedmocs. If the user wants to use AUTO he can't just + # use an unspecific METAINCLUDES. Instead he must use + # program_METAINCLUDES. Anyway, it's not working real nicely. + # E.g. Its not clear what happens if user specifies two + # METAINCLUDES=AUTO in the same Makefile.am. + $mocs .= " $mocFile.moc.$cxxsuffix" + if exists $mhash{$mocFile.".moc.$cxxsuffix"}; + } + } + if ($mocs) { + print STDOUT "==> mocs=[".$mocs."]\n" if ($verbose); + my $sourcename = $program."_meta_unload"; + my $ext = ($program =~ /_la$/) ? ".lo" : ".o"; + my $srcfile = $sourcename.".$cxxsuffix"; + my $objfile = $sourcename.$ext; + $moc_class_headers .= " $srcfile"; + my $appl; + $appl = "$srcfile: $mocs\n"; + $appl .= "\t\@echo 'creating $srcfile'\n"; + $appl .= "\t\@-rm -f $srcfile\n"; + $appl .= "\t\@echo 'static const char * _metalist_$program\[\] = {' > $srcfile\n"; + $appl .= "\t\@cat $mocs | grep 'char.*className' | "; + $appl .= "sed -e 's/.*[^A-Za-z0-9_:]\\([A-Za-z0-9_:]*\\)::className.*\$\$/\\\"\\1\\\",/' | sort | uniq >> $srcfile\n"; + $appl .= "\t\@echo '0};' >> $srcfile\n"; + $appl .= "\t\@echo '#include ' >> $srcfile\n"; + $appl .= "\t\@echo '_UNLOAD($program)' >> $srcfile\n"; + $appl .= "\n"; + + $realObjs{$program} .= " \034" . $objfile . " "; + $sources{$program} .= " $srcfile"; + $sources_changed{$program} = 1; + $dep_files .= " \$(DEPDIR)/$sourcename.P"; + appendLines ($appl); + } + print STDOUT "\n" if $verbose; + } + if ($moc_class_headers) { + appendLines ("$cleantarget-moc-classes:\n\t-rm -f $moc_class_headers\n"); + $target_adds{"$cleantarget-am"} .= "$cleantarget-moc-classes "; + } +} + +#----------------------------------------------------------------------------- + +sub updateMakefile () +{ + return if ($dryrun); + + open (FILEOUT, "> $makefile") + || die "Could not create $makefile: $!\n"; + + print FILEOUT "\# $progId - " . '$Revision: 1.1.1.1 $ ' . "\n"; + $MakefileData =~ s/\034/\\\n/g; # Restore continuation lines + print FILEOUT $MakefileData; + close FILEOUT; +} + +#----------------------------------------------------------------------------- + +# The given line needs to be removed from the makefile +# Do this by adding the special "removed line" comment at the line start. +sub removeLine ($$) +{ + my ($lookup, $old) = @_; + + $old =~ s/\034/\\\n#>- /g; # Fix continuation lines + $MakefileData =~ s/\n$lookup/\n#>\- $old/; +} + +#----------------------------------------------------------------------------- + +# Replaces the old line with the new line +# old line(s) are retained but tagged as removed. The new line(s) have the +# "added" tag placed before it. +sub substituteLine ($$) +{ + my ($lookup, $new) = @_; + + if ($MakefileData =~ /\n($lookup)/) { + $old = $1; + $old =~ s/\034/\\\n#>\- /g; # Fix continuation lines + $new =~ s/\034/\\\n/g; + my $newCount = ($new =~ tr/\n//) + 1; + $MakefileData =~ s/\n$lookup/\n#>- $old\n#>\+ $newCount\n$new/; + } else { + print STDERR "Warning: substitution of \"$lookup\" in $printname failed\n"; + } +} + +#----------------------------------------------------------------------------- + +# Slap new lines on the back of the file. +sub appendLines ($) +{ + my ($new) = @_; + $new =~ s/\034/\\\n/g; # Fix continuation lines + my $newCount = ($new =~ tr/\n//) + 1; + $MakefileData .= "\n#>\+ $newCount\n$new"; +} + +#----------------------------------------------------------------------------- + +# Restore the Makefile.in to the state it was before we fiddled with it +sub restoreMakefile () +{ + $MakefileData =~ s/# $progId[^\n\034]*[\n\034]*//g; + # Restore removed lines + $MakefileData =~ s/([\n\034])#>\- /$1/g; + # Remove added lines + while ($MakefileData =~ /[\n\034]#>\+ ([^\n\034]*)/) + { + my $newCount = $1; + my $removeLines = ""; + while ($newCount--) { + $removeLines .= "[^\n\034]*([\n\034]|)"; + } + $MakefileData =~ s/[\n\034]#>\+.*[\n\034]$removeLines/\n/; + } +} + +#----------------------------------------------------------------------------- diff --git a/bibletime-doc/admin/am_edit.py b/bibletime-doc/admin/am_edit.py new file mode 100644 index 0000000..a1bb520 --- /dev/null +++ b/bibletime-doc/admin/am_edit.py @@ -0,0 +1,330 @@ +import getopt, string, posixpath, sys, os, os.path, re + +# Some global globals... +verbose = 0 +thisProg = posixpath.basename(sys.argv[0]) +if not thisProg: # happy only when running in xemacs ;/ + thisProg = 'am_edit.py' +cppsuffixes = ['cpp', 'cc', 'cxx', 'C', 'c++'] +hExt = ['h', 'H', 'hh', 'hxx', 'h++'] +progId = "KDE tags expanded automatically by " + thisProg +use_final = 1 +dryrun = 0 +pathoption = 0 +topdir = os.path.abspath(os.curdir) + "/" +foreigndirs = [] + +class Makefile: + def __init__(self, file): + # some useful globals for the subroutines called here + self.headerdirs = ['.'] + self.haveAutomocTag = 0 + + self.programs = [] + + # lists the objects compiled into $program + self.realobjs = {} + # lists the sources used for $program + self.sources = {} + # lists the objects compiled when final + self.finalObjs = {} + # the binary name of program variable + self.realname = {} + # lists the idl files used for $program + self.idlfiles = {} + # lists all idl generated files for cleantarget + self.idl_output = "" + + self.depedmocs = {} + + self.dep_files = "" + self.dep_finals = "" + # the targets to add + self.target_adds = {} + self.kdelang = "" + self.makefile = file + self.makefileDir = os.path.dirname(self.makefile) + self.options = {} + + + NoMakefileAmFound = "found Makefile.in without Makefile.am" + + def findLine(self, line): + import types + if type(line) is types.StringType: + regexp = re.compile(line) + else: + regexp = line + for line in self.lines: + match = regexp.match(line) + if match: + return match + + def substituteLine(self, old, new): + import types + if type(old) is types.StringType: + regexp = re.compile(old) + else: + regexp = old + + for index in range(len(self.lines)): + line = self.lines[index] + match = regexp.match(line) + if match: + line = '#>- ' + line + newlines = string.split(new, '\n') + self.lines[index:index+1] = [line, '#>+ %d' % len(newlines)] + newlines + return + + def addTarget(self, target, dependson): + if not self.target_adds.has_key(target): + self.target_adds[target] = [dependson] + else: + self.target_adds[target].append(dependson) + + def appendLines(self, newlines): + lines = string.split(newlines, '\n') + ['\n'] + self.lines.extend(['#>+ %d' % len(lines)] + lines) + + def restore(self): + index = 0 + while index < len(self.lines): + line = self.lines[index] + if line[0:3] == '#>+': + # the +1 is the comment itself + linec = string.atoi(line[3:]) + 1 + del self.lines[index:index+linec] + continue + if line[0:3] == '#>-': + self.lines[index] = self.lines[index][4:] + index = index + 1 + + def initialize(self): + global foreigndirs + + os.chdir(self.makefileDir) + self.printname = string.replace(self.makefile, topdir, "") + self.makefile = os.path.basename(self.makefile) + + if not posixpath.exists("Makefile.am"): + raise self.NoMakefileAmFound, self.makefileDir + + for dir in foreigndirs: + if dir.match(self.makefileDir): + print 'leaving ' + self.makefileDir + return 0 + + f = open(self.makefile) + self.lines = [] + + while 1: + line = f.readline() + if not line: break + self.lines.append(string.rstrip(line)) + + f.close() + + # take out the + self.restore() + + optionline = re.compile('^\s*(\w+)\s*=\s*([^\n]*)$') + linecontinued = re.compile('\\\s*\n') + lastline = '' + + index = 0 + while index < len(self.lines): + line = self.lines[index] + if linecontinued.search(line): + self.lines[index] = linecontinued.sub(' ', line) + self.lines[index+1] + continue + else: + index = index + 1 + + match = optionline.search(line) + if match: + self.options[match.group(1)] = match.group(2) + + if self.options.has_key('KDE_OPTIONS'): + options = string.split(self.options['KDE_OPTIONS']) + if 'foreign' in options: + foreigndirs.append(re.compile(self.makefileDir + "/.*")) + return 0 + + self.cxxsuffix = "" + suffixes = re.compile('^\.SUFFIXES:(.*)$') + + for line in self.lines: + match = suffixes.match(line) + if match: + existing_suffixes = string.split(match.group(1)) + for suffix in existing_suffixes: + # leave out the . + if suffix[1:] in cppsuffixes: + self.cxxsuffix = suffix[1:] + break + if self.cxxsuffix: + break + + search_real_programs = {} + + for option in self.options.keys(): + if string.rfind(option, '_OBJECTS') > 0: + + program = option[0:string.find(option, '_OBJECTS')] + objs = self.options[option] + + variable_in_objects = 0 + + objlist = string.split(objs) + variable = re.compile('\$\((\w+)\)') + for obj in objlist: + match = variable.match(obj) + if match and not match.group(1) == 'OBJEXT': + variable_in_objects = 1 + break + + if variable_in_objects: + continue + + if len(program) > 3 and program[3] == 'am_': + program = program[3:] + + if verbose: + print "found program " + program + + self.programs.append(program) + self.realobjs[program] = objs + + if self.options.has_key(program + "_SOURCES"): + self.sources[program] = self.options[program + "_SOURCES"] + else: + self.sources[program] = "" + sys.stderr.write("found program with no _SOURCES: " + program + '\n') + + # unmask to regexp + realprogram = string.replace(program, '_', '.') + search_real_programs[program] = re.compile('.*(' + realprogram + + ')(\$\(EXEEXT\)?)?:.*\$\(' + + program + '_OBJECTS\).*') + + self.realname[program] = ""; + + for line in self.lines: + if string.find(line, '_OBJECTS') > 0: # just a random piece to not use at _every_ line + for program in self.programs: + match = search_real_programs[program].match(line) + if match: + self.realname[program] = match.group(1) + + def finalTouch(self): + if self.options.has_key('DEPDIR'): + sys.stderr.write(self.printname + " defines DEPDIR. This means you're using automake > 1.4 - this is not supported!") + else: + # taken out a random variable + self.substituteLine('bindir\s*=.*', 'DEPDIR = .deps\nbindir = ' + self.options['bindir']) + + self.appendLines('cvs-clean:\n' + + '\t$(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean') + + self.appendLines('kde-rpo-clean:\n'+ + '\t-rm -f *.rpo') + + self.addTarget('clean', 'kde-rpo-clean') + self.addAllTargets() + + def addAllTargets(self): + for target in self.target_adds.keys(): + match = self.findLine(target + ':\s*(.*)') + if match: + self.substituteLine(match.re, target + ': ' + + string.join(self.target_adds[target]) + + ' ' + match.group(1)) + + def writeback(self): + f = open(self.makefile, 'w') + for line in self.lines: + f.write(line) + f.write('\n') + f.close() + + def tag_automake(self): + match = self.findLine('^(.*cd \$\(top_srcdir\)\s+&&\s+\$\(AUTOMAKE\).*)$') + if not match: return 1 + self.substituteLine(match.re, match.group(1) + '\n' + + '\tcd $(top_srcdir) && python ' + + thisProg + ' ' + self.printname) + +def main(): + global use_final, dryrun, pathoption, thisProg, verbose + + optlist, makefiles = getopt.getopt(sys.argv[1:], 'vhp:n', [ + 'version', 'verbose', 'path=', 'help', 'no-final']) + + for option, param in optlist: + if option == '--version': + print "\n" + print thisProg + "$Revision: 1.1.1.1 $" + print "This is really free software, unencumbered by the GPL." + print "You can do anything you like with it except sueing me." + print "Copyright 1998 Kalle Dalheimer " + print "Concept, design and unnecessary questions about perl" + print " by Matthias Ettrich " + print "" + print "Making it useful by Stephan Kulow and" + print "Harri Porten " + print "Updated (Feb-1999), John Birch " + print "Current Maintainer Stephan Kulow" + sys.exit(0) + if option == '--verbose' or option == '-v': + verbose = 1 + if option == '-p' or option == '--path': + thisProg = param + "/" + thisProg + if (not posixpath.exists(thisProg)): + sys.stderr.write(thisProg + " doesn't exist\n") + pathoption=1 + if option == '--help' or option == '-h': + print "Usage " + thisProg + " [OPTION] ... [dir/Makefile.in]..." + print "Patches dir/Makefile.in generated from automake" + print "(where dir can be a full or relative directory name)" + print " -v, --verbose verbosely list files processed" + print " -h, --help print this help, then exit" + print " --version print version number, then exit" + print " -p, --path= use the path to am_edit if the path" + print " --no-final don't patch for --enable-final" + print " called from is not the one to be used" + sys.exit(0) + if option == '--no-final': + use_final = 0 + if option == '-n': + dryrun = 1 + + if not use_final: + thisProg = thisProg + " --no-final" + + if thisProg[0] == '/' and not pathoption: + sys.stderr.write( "Illegal full pathname call performed...\n" + "The call to \"" + thisProg + "\"\n" + "would be inserted in some Makefile.in.\n" + "Please use option --path.\n") + sys.exit(1) + + if len(makefiles) == 0: + import find + makefiles = find.find('Makefile.in') + + for index in range(len(makefiles)): + if not makefiles[index][0] == '/': + makefiles[index] = os.path.normcase(os.path.abspath(makefiles[index])) + + makefiles.sort() + for file in makefiles: + makefile = Makefile(file) + try: + makefile.initialize() + makefile.tag_automake() + makefile.finalTouch() + makefile.writeback() + except Makefile.NoMakefileAmFound, param: + if verbose: print Makefile.NoMakefileAmFound + ' in ' + param + +main() diff --git a/bibletime-doc/admin/conf.change.pl b/bibletime-doc/admin/conf.change.pl new file mode 100644 index 0000000..7793be4 --- /dev/null +++ b/bibletime-doc/admin/conf.change.pl @@ -0,0 +1,123 @@ +#!/usr/bin/perl -w + +# this script patches a config.status file, to use our own perl script +# in the main loop +# we do it this way to circumvent hacking (and thereby including) +# autoconf function (which are GPL) into our LGPL acinclude.m4.in +# written by Michael Matz + +# we have to change two places +# 1. the splitting of the substitutions into chunks of 90 (or even 48 in +# later autoconf's +# 2. the big main loop which patches all Makefile.in's +use File::Basename; + +my $ac_aux_dir = dirname($0); +my ($flag); +my $ac_version = 0; +my $vpath_seen = 0; +$flag = 0; + +while (<>) { +# usage of $flag: 0 -- we have seen nothing yet +# 1 -- we are in (1) +# 2 -- we have ended (1) +# 3 -- we are in (2) +# 4 -- we ended (2) + + if ($flag == 4) { + print; + } elsif ($flag == 0) { +# 1. begins with (including): "ac_max_sed_\S+\s*=\s*[0-9]+..." +# ends with (excluding) "CONFIG_FILE=..." +# in later autoconf (2.14.1) there is no CONFIG_FILES= line, +# but instead the (2) directly follow (1) + if (/^\s*ac_max_sed_([a-z]+).*=\s*([0-9]+)/ ) { + $flag = 1; + if ($1 eq 'lines') { + # lets hope its different with 2141, + # wasn't able to verify that + if ($2 eq '48') { + $ac_version = 250; + } + else { + $ac_version = 2141; + } + } elsif ($1 eq 'cmds') { + $ac_version = 213; + } + # hmm, we don't know the autoconf version, but we try anyway + } else { + print; + } + } elsif ($flag == 1) { + if (/^\s*CONFIG_FILES=/ && ($ac_version != 250)) { + print; + $flag = 2; + } elsif (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { + $flag = 3; + } + } elsif ($flag == 2) { +# 2. begins with: "for ac_file in.*CONFIG_FILES" (the next 'for' after (1)) +# end with: "rm -f conftest.s\*" +# on autoconf 250, it ends with '# CONFIG_HEADER section' + if (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { + $flag = 3; + } else { + print; + } + } elsif ($flag == 3) { + if (/^\s*rm\s+-f\s+conftest/ ) { + $flag = 4; + insert_main_loop(); + } elsif (/^\s*rm\s+-f\s+.*ac_cs_root/ ) { + $flag = 4; + insert_main_loop(); + #die "hhhhhhh"; + if ($ac_version != 2141) { + print STDERR "hmm, don't know autoconf version\n"; + } + } elsif (/^\#\s*CONFIG_HEADER section.*/) { + $flag = 4; + insert_main_loop(); + if($ac_version != 250) { + print STDERR "hmm, something went wrong :-(\n"; + } + } elsif (/VPATH/ ) { + $vpath_seen = 1; + } + } +} + +die "wrong input (flag != 4)" unless $flag == 4; +print STDERR "hmm, don't know autoconf version\n" unless $ac_version; +die "autoconf 2.50 is currently not supported" if $ac_version == 250; + +sub insert_main_loop { + print <> \$ac_cs_root.subs +EOF + } + print <> \$ac_cs_root.sacfiles + fi +done +if test -f \$ac_cs_root.sacfiles ; then + perl $ac_aux_dir/config.pl "\$ac_cs_root" "\$ac_given_srcdir" "\$ac_given_INSTALL" +fi +rm -f \$ac_cs_root.s* + +EOF + return; +} diff --git a/bibletime-doc/admin/config.guess b/bibletime-doc/admin/config.guess new file mode 100755 index 0000000..378eab8 --- /dev/null +++ b/bibletime-doc/admin/config.guess @@ -0,0 +1,1368 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file 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. + +# Written by Per Bothner . +# Please send patches to . +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + + +dummy=dummy-$$ +trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int dummy(){}" > $dummy.c + for c in cc gcc c89 ; do + ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 + if test $? = 0 ; then + CC_FOR_BUILD="$c"; break + fi + done + rm -f $dummy.c $dummy.o $dummy.rel + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 8/24/94.) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # Netbsd (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # Determine the machine/vendor (is the vendor relevant). + case "${UNAME_MACHINE}" in + amiga) machine=m68k-unknown ;; + arm32) machine=arm-unknown ;; + atari*) machine=m68k-atari ;; + sun3*) machine=m68k-sun ;; + mac68k) machine=m68k-apple ;; + macppc) machine=powerpc-apple ;; + hp3[0-9][05]) machine=m68k-hp ;; + ibmrt|romp-ibm) machine=romp-ibm ;; + *) machine=${UNAME_MACHINE}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE}" in + i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k) + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit 0 ;; + alpha:OSF1:*:*) + if test $UNAME_RELEASE = "V4.0"; then + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + fi + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + cat <$dummy.s + .data +\$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text + .globl main + .align 4 + .ent main +main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) + UNAME_MACHINE="alpha" + ;; + 1-0) + UNAME_MACHINE="alphaev5" + ;; + 1-1) + UNAME_MACHINE="alphaev56" + ;; + 1-101) + UNAME_MACHINE="alphapca56" + ;; + 2-303) + UNAME_MACHINE="alphaev6" + ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; + esac + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit 0 ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit 0 ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit 0;; + amiga:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit 0 ;; + arc64:OpenBSD:*:*) + echo mips64el-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + arc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + hkmips:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + pmax:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sgi:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + wgrisc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit 0;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit 0 ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit 0 ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + i86pc:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit 0 ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit 0 ;; + atari*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; + sun3*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mac68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit 0 ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit 0 ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy \ + && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i?86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + sed 's/^ //' << EOF >$dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo rs6000-ibm-aix3.2.5 + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit 0 ;; + *:AIX:*:[45]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + case "${HPUX_REV}" in + 11.[0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + esac ;; + esac + fi ;; + esac + if [ "${HP_ARCH}" = "" ]; then + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` + if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi + rm -f $dummy.c $dummy + fi ;; + esac + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + sed 's/^ //' << EOF >$dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + *9??*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + i?86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit 0 ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit 0 ;; + hppa*:OpenBSD:*:*) + echo hppa-unknown-openbsd + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*X-MP:*:*:*) + echo xmp-cray-unicos + exit 0 ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} + exit 0 ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ + exit 0 ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3D:*:*:*) + echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY-2:*:*:*) + echo cray2-cray-unicos + exit 0 ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit 0 ;; + hp300:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + *:OpenBSD:*:*) + echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + exit 0 ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit 0 ;; + i*:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit 0 ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit 0 ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + *:GNU:*:*) + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit 0 ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux + exit 0 ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + mips:Linux:*:*) + cat >$dummy.c < /* for printf() prototype */ +int main (int argc, char *argv[]) { +#else +int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __MIPSEB__ + printf ("%s-unknown-linux-gnu\n", argv[1]); +#endif +#ifdef __MIPSEL__ + printf ("%sel-unknown-linux-gnu\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + ;; + ppc:Linux:*:*) + # Determine Lib Version + cat >$dummy.c < +#if defined(__GLIBC__) +extern char __libc_version[]; +extern char __libc_release[]; +#endif +main(argc, argv) + int argc; + char *argv[]; +{ +#if defined(__GLIBC__) + printf("%s %s\n", __libc_version, __libc_release); +#else + printf("unknown\n"); +#endif + return 0; +} +EOF + LIBC="" + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null + if test "$?" = 0 ; then + ./$dummy | grep 1\.99 > /dev/null + if test "$?" = 0 ; then LIBC="libc1" ; fi + fi + rm -f $dummy.c $dummy + echo powerpc-unknown-linux-gnu${LIBC} + exit 0 ;; + alpha:Linux:*:*) + cat <$dummy.s + .data + \$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + .text + .globl main + .align 4 + .ent main + main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + LIBC="" + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) UNAME_MACHINE="alpha" ;; + 1-0) UNAME_MACHINE="alphaev5" ;; + 1-1) UNAME_MACHINE="alphaev56" ;; + 1-101) UNAME_MACHINE="alphapca56" ;; + 2-303) UNAME_MACHINE="alphaev6" ;; + 2-307) UNAME_MACHINE="alphaev67" ;; + esac + objdump --private-headers $dummy | \ + grep ld.so.1 > /dev/null + if test "$?" = 0 ; then + LIBC="libc1" + fi + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit 0 ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit 0 ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit 0 ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit 0 ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit 0 ;; + i?86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + ld_supported_emulations=`cd /; ld --help 2>&1 \ + | sed -ne '/supported emulations:/!d + s/[ ][ ]*/ /g + s/.*supported emulations: *// + s/ .*// + p'` + case "$ld_supported_emulations" in + i?86linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 + ;; + elf_i?86) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + i?86coff) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 + ;; + esac + # Either a pre-BFD a.out linker (linux-gnuoldld) + # or one that does not give us useful --help. + # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. + # If ld does not provide *any* "supported emulations:" + # that means it is gnuoldld. + test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0 + case "${UNAME_MACHINE}" in + i?86) + VENDOR=pc; + ;; + *) + VENDOR=unknown; + ;; + esac + # Determine whether the default compiler is a.out or elf + cat >$dummy.c < +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __ELF__ +# ifdef __GLIBC__ +# if __GLIBC__ >= 2 + printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +#else + printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + ;; +# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions +# are messed up and put the nodename in both sysname and nodename. + i?86:DYNIX/ptx:4*:*) + echo i386-sequent-sysv4 + exit 0 ;; + i?86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit 0 ;; + i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit 0 ;; + i?86:*:5:7*) + # Fixed at (any) Pentium or better + UNAME_MACHINE=i586 + if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then + echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + fi + exit 0 ;; + i?86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit 0 ;; + i?86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i386. + echo i386-pc-msdosdjgpp + exit 0 ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + M68*:*:R3V[567]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4.3${OS_REL} && exit 0 + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:* | i?86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit 0 ;; + PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit 0 ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit 0 ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit 0 ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit 0 ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit 0 ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit 0 ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit 0 ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit 0 ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit 0 ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Darwin:*:*) + echo `uname -p`-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + if test "${UNAME_MACHINE}" = "x86pc"; then + UNAME_MACHINE=pc + fi + echo `uname -p`-${UNAME_MACHINE}-nto-qnx + exit 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSR-[KW]:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit 0 ;; + i?86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit 0 ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit 0 ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit 0 ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit 0 ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit 0 ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit 0 ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit 0 ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +cat >$dummy.c < +# include +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0 +rm -f $dummy.c $dummy + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +cat >&2 < in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +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` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibletime-doc/admin/config.pl b/bibletime-doc/admin/config.pl new file mode 100644 index 0000000..011cd25 --- /dev/null +++ b/bibletime-doc/admin/config.pl @@ -0,0 +1,210 @@ +#!/usr/bin/perl +# a script for use by autoconf to make the Makefiles +# from the Makefile.in's +# +# the original autoconf mechanism first splits all substitutions into groups +# of ca. 90, and than invokes sed for _every_ Makefile.in and every group +# (so around 2-3 times per Makefile.in). So this takes forever, as sed +# has to recompile the regexps every time. +# +# this script does better. It changes all Makefile.ins in one process. +# in kdelibs the time for building Makefile went down from 2:59 min to 13 sec! +# +# written by Michael Matz +# +# the first part was done by looking at the config.status files generated +# by configure. +# +my $ac_cs_root=$ARGV[0]; +my $ac_given_srcdir=$ARGV[1]; +my $ac_given_INSTALL=$ARGV[2]; + +# print "ac_cs_root=$ac_cs_root\n"; +# print "ac_given_srcdir=$ac_given_srcdir\n"; +# print "ac_given_INSTALL=$ac_given_INSTALL\n"; + +my ($srcdir, $top_srcdir); +my $INSTALL; +my $bad_perl = ($] < 5.005); + +open(CF, "< $ac_cs_root.subs") || die "can't open $ac_cs_root.subs: $!"; +my @subs = ; +close(CF); +chomp @subs; +@comp_match=(); +@comp_subs=(); + +if ($bad_perl) { + print "Using perl older than version 5.005\n"; + foreach my $pat (@subs) { + if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/g% ) + || ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/;t% ) + ) { + # form : s%bla%blubb%g + # or s%bla%blubb%;t t (newer autoconf) + push @comp_subs, make_closure($1, $2); + } elsif ( ($pat =~ /%([^%]*)%d/ ) + || ($pat =~ m%/([^/]*)/d% ) + ) { + push @comp_subs, make_closure($1, ""); + } else { + die "Uhh. Malformed pattern in $ac_cs_root.subs ($pat)" + unless ( $pat =~ /^\s*$/ ); # ignore white lines + } + } +} else { + foreach my $pat (@subs) { + if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/g% ) + || ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) + || ($pat =~ m%/([^/]*)/([^/]*)/;t% ) + ) { + # form : s%bla%blubb%g + # or s%bla%blubb%;t t (newer autoconf) + push @comp_match, eval "qr/\Q$1\E/"; # compile match pattern + push @comp_subs, $2; + } elsif ( ($pat =~ /%([^%]*)%d/ ) + || ($pat =~ m%/([^/]*)/d% ) + ) { + push @comp_match, eval "qr/\Q$1\E/"; + push @comp_subs, ""; + } else { + die "Uhh. Malformed pattern in $ac_cs_root.subs ($pat)" + unless ( $pat =~ /^\s*$/ ); # ignore white lines + } + } +} +undef @subs; + +# read the list of files to be patched, form: +# ./Makefile arts/Makefile arts/examples/Makefile arts/flow/Makefile + +open(CF, "< $ac_cs_root.sacfiles") || die "can't open $ac_cs_root.sacfiles: $!"; +my @ac_files = ; +close(CF); +chomp @ac_files; + +my $ac_file; +foreach $ac_file (@ac_files) { + next if $ac_file =~ /\.\./; + next if $ac_file =~ /^\s*$/; + my $ac_file_in; + my ($ac_dir, $ac_dots, $ac_dir_suffix); + + if ($ac_file =~ /.*:.*/ ) { + ($ac_file_in = $ac_file) =~ s%[^:]*:%%; + $ac_file =~ s%:.*%%; + } else { + $ac_file_in = $ac_file.".in"; + } + +# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + +# Remove last slash and all that follows it. Not all systems have dirname. + ($ac_dir = $ac_file) =~ s%/[^/][^/]*$%%; + if ( ($ac_dir ne $ac_file) && ($ac_dir ne ".")) { +# The file is in a subdirectory. + if (! -d "$ac_dir") { mkdir "$ac_dir", 0777; } + ($ac_dir_suffix = $ac_dir) =~ s%^./%%; + $ac_dir_suffix="/".$ac_dir_suffix; +# A "../" for each directory in $ac_dir_suffix. + ($ac_dots = $ac_dir_suffix) =~ s%/[^/]*%../%g; + } else { + $ac_dir_suffix=""; + $ac_dots=""; + } + + if ($ac_given_srcdir eq ".") { + $srcdir="."; + if ($ac_dots) { + ( $top_srcdir = $ac_dots) =~ s%/$%%; + } else { $top_srcdir="."; } + } elsif ($ac_given_srcdir =~ m%^/%) { + $srcdir=$ac_given_srcdir.$ac_dir_suffix; + $top_srcdir = $ac_given_srcdir; + } else { + $srcdir = $ac_dots.$ac_given_srcdir.$ac_dir_suffix; + $top_srcdir = $ac_dots.$ac_given_srcdir; + } + + if ($ac_given_INSTALL) { + if ($ac_given_INSTALL =~ m%^/% ) { + $INSTALL = $ac_given_INSTALL; + } else { + $INSTALL = $ac_dots.$ac_given_INSTALL; + } + } + + print "fast creating $ac_file\n"; + unlink $ac_file; + my $ac_comsub=""; + my $fname=$ac_file_in; + $fname =~ s%.*/%%; + my $configure_input="Generated automatically from $fname by config.pl."; + if ($ac_file =~ /.*[Mm]akefile.*/) { + $ac_comsub="# ".$configure_input."\n"; # for the first line in $ac_file + } + + my $ac_file_inputs; + ($ac_file_inputs = $ac_file_in) =~ s%^%$ac_given_srcdir/%; + $ac_file_inputs =~ s%:% $ac_given_srcdir/%g; + + patch_file($ac_file, $ac_file_inputs, $ac_comsub); +} + +sub patch_file { + my ($outf, $infiles, $firstline) = @_; + my $filedata; + my @infiles=split(' ', $infiles); + my $i=0; + + if ($firstline) { + $filedata = $firstline; + } + foreach my $name (@infiles) { + if (open(CF, "< $name")) { + while () { + $filedata .= $_; + } + close(CF); + } else { + print STDERR "can't open $name: $!"."\n"; + } + } + + $filedata =~ s%\@configure_input\@%$configure_input%g; + $filedata =~ s%\@srcdir\@%$srcdir%g; + $filedata =~ s%\@top_srcdir\@%$top_srcdir%g; + $filedata =~ s%\@INSTALL\@%$INSTALL%g; + + if ($bad_perl) { + while ($i <= $#comp_subs) { + my $ref = $comp_subs[$i]; + &$ref(\$filedata); + $i++; + } + } else { + while ($i <= $#comp_match) { + $filedata =~ s/$comp_match[$i]/$comp_subs[$i]/g; + $i++; + } + } + open(CF, "> $outf") || die "can't create $outf: $!"; + print CF $filedata; + close(CF); +} + +sub make_closure { + my ($pat, $sub) = @_; + $pat =~ s/\@/\\@/g; # @bla@ -> \@bla\@ + $pat =~ s/\$/\\\$/g; # $bla -> \$bla + $sub =~ s/\@/\\@/g; + $sub =~ s/\$/\\\$/g; + my $ret = eval "return sub { my \$ref=shift; \$\$ref =~ s%$pat%$sub%g; }"; + if ($@) { + print "can't create CODE: $@\n"; + } + return $ret; +} diff --git a/bibletime-doc/admin/config.sub b/bibletime-doc/admin/config.sub new file mode 100755 index 0000000..4ac0c8b --- /dev/null +++ b/bibletime-doc/admin/config.sub @@ -0,0 +1,1360 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file 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. + +# Please send patches to . +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit 0;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | storm-chaos* | os2-emx*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \ + | arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \ + | pyramid | mn10200 | mn10300 | tron | a29k \ + | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ + | hppa64 \ + | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ + | alphaev6[78] \ + | we32k | ns16k | clipper | i370 | sh | sh[34] \ + | powerpc | powerpcle \ + | 1750a | dsp16xx | pdp10 | pdp11 \ + | mips16 | mips64 | mipsel | mips64el \ + | mips64orion | mips64orionel | mipstx39 | mipstx39el \ + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \ + | pj | pjl | h8500) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65) + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i[234567]86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ + | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \ + | arm-* | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \ + | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ + | xmp-* | ymp-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa2.0n-* | hppa64-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ + | alphaev6[78]-* \ + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ + | clipper-* | orion-* \ + | sparclite-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \ + | [cjt]90-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \ + | bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | ymp) + basic_machine=ymp-cray + os=-unicos + ;; + cray2) + basic_machine=cray2-cray + os=-unicos + ;; + [cjt]90) + basic_machine=${basic_machine}-cray + os=-unicos + ;; + crds | unos) + basic_machine=m68k-crds + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i[34567]86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i[34567]86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i[34567]86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i[34567]86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mipsel*-linux*) + basic_machine=mipsel-unknown + os=-linux-gnu + ;; + mips*-linux*) + basic_machine=mips-unknown + os=-linux-gnu + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium | p5 | k5 | k6 | nexgen) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon) + basic_machine=i686-pc + ;; + pentiumii | pentium2) + basic_machine=i686-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=t3e-cray + os=-unicos + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + xmp) + basic_machine=xmp-cray + os=-unicos + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + mips) + if [ x$os = x-linux-gnu ]; then + basic_machine=mips-unknown + else + basic_machine=mips-mips + fi + ;; + romp) + basic_machine=romp-ibm + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh3 | sh4) + basic_machine=sh-unknown + ;; + sparc | sparcv9) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-ibm) + os=-aix + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxsim* | -vxworks*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibletime-doc/admin/configure.in.min b/bibletime-doc/admin/configure.in.min new file mode 100644 index 0000000..4503fec --- /dev/null +++ b/bibletime-doc/admin/configure.in.min @@ -0,0 +1,55 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(yes) +AC_ENABLE_STATIC(no) +KDE_PROG_LIBTOOL + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS + +AC_PATH_KDE diff --git a/bibletime-doc/admin/debianrules b/bibletime-doc/admin/debianrules new file mode 100755 index 0000000..0fd8318 --- /dev/null +++ b/bibletime-doc/admin/debianrules @@ -0,0 +1,84 @@ +#!/usr/bin/perl -w + +use Shell qw(mv cp mkdir rm) ; +use File::Find; +use Cwd; + +$origPwd = `pwd`; +chomp $origPwd; + + +if (@ARGV && $ARGV[0] eq 'cleanup') { + +if (-d "debian/tmp/usr/share/config") { + if (! -d "debian/tmp/$kde_confdir") { + system("mv debian/tmp/usr/share/config debian/tmp/$kde_confdir"); + } +} +system("rm -f `find debian/ -name \".anchors\"`"); +system("chmod 755 debian/*preinst debian/*postinst"); + +exit; +} + +$QTDIR="/usr/share/qt"; +$kde_prefix="/usr"; +$kde_htmldir="$kde_prefix/share/doc/kde/HTML"; +$kde_icondir="$kde_prefix/share/icons"; +$kde_sounddir="$kde_prefix/share/sounds"; +$kde_datadir="$kde_prefix/share/apps"; +$kde_locale="$kde_prefix/share/locale"; +$kde_confdir="/etc/kde2"; +$kde_cgidir="$kde_prefix/lib/cgi-bin"; +$kde_appsdir="$kde_prefix/share/applnk"; +$kde_mimedir="$kde_prefix/share/mimelnk"; +$kde_wallpaperdir="$kde_prefix/share/wallpapers"; +$kde_bindir="$kde_prefix/bin"; +$kde_servicesdir="$kde_prefix/share/services"; +$kde_servicetypesdir="$kde_prefix/share/servicetypes"; +$kde_includedir="$kde_prefix/include/kde"; +$kde_libdir="$kde_prefix/lib"; +$kde_moduledir="$kde_prefix/lib/kde2"; +$mandir="$kde_prefix/share/man"; +$infodir="$kde_prefix/share/info"; +$IDL="$kde_bindir/cuteidl"; +$DCOPIDL="$kde_bindir/dcopidl"; +$DCOPIDL2CPP="$kde_bindir/dcopidl2cpp"; +$KDB2HTML="$kde_bindir/kdb2html"; +$MCOPIDL="$kde_bindir/mcopidl"; +$ARTSCCONFIG="$kde_bindir/artsc-config"; + +if (@ARGV && $ARGV[0] eq 'echodirs') { + print STDOUT "export kde_htmldir=$kde_htmldir\n"; + print STDOUT "export kde_appsdir=$kde_appsdir\n"; + print STDOUT "export kde_icondir=$kde_icondir\n"; + print STDOUT "export kde_sounddir=$kde_sounddir\n"; + print STDOUT "export kde_datadir=$kde_datadir\n"; + print STDOUT "export kde_cgidir=$kde_cgidir\n"; + print STDOUT "export kde_locale=$kde_locale\n"; + print STDOUT "export kde_confdir=$kde_confdir\n"; + print STDOUT "export kde_mimedir=$kde_mimedir\n"; + print STDOUT "export kde_wallpaperdir=$kde_wallpaperdir\n"; + print STDOUT "export kde_bindir=$kde_bindir\n"; + print STDOUT "export kde_servicesdir=$kde_servicesdir\n"; + print STDOUT "export kde_servicetypesdir=$kde_servicetypesdir\n"; + print STDOUT "export kde_includedir=$kde_includedir\n"; + print STDOUT "export kde_libdir=$kde_libdir\n"; + print STDOUT "export kde_moduledir=$kde_moduledir\n"; + print STDOUT "export mandir=$mandir\n"; + print STDOUT "export infodir=$infodir\n"; + print STDOUT "export QTDIR=$QTDIR\n"; + print STDOUT "export kde_prefix=$kde_prefix\n"; + print STDOUT "export INSTALL_DATA=install -p -c -m 644\n"; + print STDOUT "export IDL=$IDL\n"; + print STDOUT "export DCOPIDL=$DCOPIDL\n"; + print STDOUT "export DCOPIDL2CPP=$DCOPIDL2CPP\n"; + print STDOUT "export KDB2HTML=$KDB2HTML\n"; + print STDOUT "export MCOPIDL=$MCOPIDL\n"; + print STDOUT "export ARTSCCONFIG=$ARTSCCONFIG\n"; + print STDOUT "configkde=--disable-debug --disable-rpath --prefix=\$(kde_prefix) --libexecdir=\$(kde_bindir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --infodir=\$(infodir)\n"; + print STDOUT "configkdevelop=--disable-debug --enable-docbase --enable-kdoc2 --disable-rpath --libdir=\$(kde_libdir) --includedir=\$(kde_includedir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --with-kdelibsdoc-dir=/usr/share/doc/kdelibs3-doc/html\n"; + print STDOUT "configkdepim=--disable-debug --with-extra-includes=/usr/include/libpisock --enable-shared --disable-rpath --prefix=\$(kde_prefix) --libexecdir=\$(kde_bindir) --with-qt-includes=/usr/include/qt --mandir=\$(mandir) --infodir=\$(infodir)\n"; + exit +} + diff --git a/bibletime-doc/admin/depcomp b/bibletime-doc/admin/depcomp new file mode 100755 index 0000000..30f36ee --- /dev/null +++ b/bibletime-doc/admin/depcomp @@ -0,0 +1,367 @@ +#! /bin/sh + +# depcomp - compile a program generating dependencies as side-effects +# Copyright 1999, 2000 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# Originally written by Alexandre Oliva . + +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 +# `libtool' can also be set to `yes' or `no'. + +depfile=${depfile-`echo "$object" | sed 's,\([^/]*\)$,.deps/\1,;s/\.\([^.]*\)$/.P\1/'`} +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! + if "$@" -MT "$object" -MF "$tmpdepfile" -MD -MP; then : + else + stat=$? + 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 + if "$@" -Wp,"$gccflag$tmpdepfile"; then : + else + stat=$? + 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). + tr ' ' ' +' < "$tmpdepfile" | sed 's/^[^\.]*\.o://' | tr ' +' ' ' >> $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" + 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. + tmpdepfile=`echo "$object" | sed 's/\(.*\)\..*$/\1.u/'` + if test "$libtool" = yes; then + "$@" -Wc,-M + else + "$@" -M + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + + if test -f "$tmpdepfile"; then + 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). + tr ' ' ' +' < "$tmpdepfile" | sed 's/^[^\.]*\.o://' | tr ' +' ' ' >> $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" + 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" + ;; + +#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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + test -z "$dashmflag" && dashmflag=-M + ( IFS=" " + case " $* " in + *" --mode=compile "*) # this is libtool, let us make it quiet + for arg + do # cycle over the arguments + case "$arg" in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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) + # 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;; + -*) + ;; + *) + set fnord "$@" "$arg"; shift;; + esac + done + obj_suffix="`echo $object | sed 's/^.*\././'`" + touch "$tmpdepfile" + ${MAKEDEPEND-makedepend} 2>/dev/null -o"$obj_suffix" -f"$tmpdepfile" "$@" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + tail +3 "$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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + ( IFS=" " + case " $* " in + *" --mode=compile "*) + for arg + do # cycle over the arguments + case $arg in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" -E | + sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | + sed '$ s: \\$::' > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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 proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + ( IFS=" " + case " $* " in + *" --mode=compile "*) + for arg + do # cycle over the arguments + case $arg in + "--mode=compile") + # insert --quiet before "--mode=compile" + set fnord "$@" --quiet + shift # fnord + ;; + esac + set fnord "$@" "$arg" + shift # fnord + shift # "$arg" + done + ;; + esac + "$@" -E | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + ) & + proc=$! + "$@" + stat=$? + wait "$proc" + if test "$stat" != 0; then exit $stat; fi + 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 diff --git a/bibletime-doc/admin/install-sh b/bibletime-doc/admin/install-sh new file mode 100755 index 0000000..e9de238 --- /dev/null +++ b/bibletime-doc/admin/install-sh @@ -0,0 +1,251 @@ +#!/bin/sh +# +# install - install a program, script, or datafile +# This comes from X11R5 (mit/util/scripts/install.sh). +# +# Copyright 1991 by the Massachusetts Institute of Technology +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of M.I.T. not be used in advertising or +# publicity pertaining to distribution of the software without specific, +# written prior permission. M.I.T. makes no representations about the +# suitability of this software for any purpose. It is provided "as is" +# without express or implied warranty. +# +# 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}" + +transformbasename="" +transform_arg="" +instcmd="$mvprog" +chmodcmd="$chmodprog 0755" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +dst="" +dir_arg="" + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + -t=*) transformarg=`echo $1 | sed 's/-t=//'` + shift + continue;; + + -b=*) transformbasename=`echo $1 | sed 's/-b=//'` + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + else + # this colon is to work around a 386BSD /bin/sh bug + : + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +else + true +fi + +if [ x"$dir_arg" != x ]; then + dst=$src + src="" + + if [ -d $dst ]; then + instcmd=: + chmodcmd="" + else + instcmd=mkdir + fi +else + +# Waiting for this to be detected by the "$instcmd $src $dsttmp" command +# might cause directories to be created, which would be especially bad +# if $src (and thus $dsttmp) contains '*'. + + if [ -f $src -o -d $src ] + then + true + else + echo "install: $src does not exist" + exit 1 + fi + + if [ x"$dst" = x ] + then + echo "install: no destination specified" + exit 1 + else + true + fi + +# If destination is a directory, append the input filename; if your system +# does not like double slashes in filenames, you may need to add some logic + + if [ -d $dst ] + then + dst="$dst"/`basename $src` + else + true + fi +fi + +## this sed command emulates the dirname command +dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + +# Make sure that the destination directory exists. +# this part is taken from Noah Friedman's mkinstalldirs script + +# Skip lots of stat calls in the usual case. +if [ ! -d "$dstdir" ]; then +defaultIFS=' +' +IFS="${IFS-${defaultIFS}}" + +oIFS="${IFS}" +# Some sh's can't handle IFS=/ for some reason. +IFS='%' +set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS="${oIFS}" + +pathcomp='' + +while [ $# -ne 0 ] ; do + pathcomp="${pathcomp}${1}" + shift + + if [ ! -d "${pathcomp}" ] ; + then + $mkdirprog "${pathcomp}" + else + true + fi + + pathcomp="${pathcomp}/" +done +fi + +if [ x"$dir_arg" != x ] +then + $doit $instcmd $dst && + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi +else + +# If we're going to rename the final executable, determine the name now. + + if [ x"$transformarg" = x ] + then + dstfile=`basename $dst` + else + dstfile=`basename $dst $transformbasename | + sed $transformarg`$transformbasename + fi + +# don't allow the sed command to completely eliminate the filename + + if [ x"$dstfile" = x ] + then + dstfile=`basename $dst` + else + true + fi + +# Make a temp file name in the proper directory. + + dsttmp=$dstdir/#inst.$$# + +# Move or copy the file name to the temp name + + $doit $instcmd $src $dsttmp && + + trap "rm -f ${dsttmp}" 0 && + +# 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 $instcmd $src $dsttmp" command. + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && + +# Now rename the file to the real destination. + + $doit $rmcmd -f $dstdir/$dstfile && + $doit $mvcmd $dsttmp $dstdir/$dstfile + +fi && + + +exit 0 diff --git a/bibletime-doc/admin/libtool.m4.in b/bibletime-doc/admin/libtool.m4.in new file mode 100644 index 0000000..4e67b29 --- /dev/null +++ b/bibletime-doc/admin/libtool.m4.in @@ -0,0 +1,868 @@ +## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 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 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. + +# serial 46 AC_PROG_LIBTOOL +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ +])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ +])])])])])]) + +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# Save cache, so that ltconfig can load it +AC_CACHE_SAVE + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) + +# Reload cache, that may have been modified by ltconfig +AC_CACHE_LOAD + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.13)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], +[libtool_flags="$libtool_flags --enable-dlopen"]) +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[libtool_flags="$libtool_flags --enable-win32-dll"]) +AC_ARG_ENABLE(libtool-lock, + [ --disable-libtool-lock avoid locking (might break parallel builds)]) +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case $host/$CC in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin* | *-*-pw32*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac + ;; + ]) +esac +]) + +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) + +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) + +# AC_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AC_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl +]) + +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no)]) + +# AC_ENABLE_STATIC - implement the --enable-static flag +# Usage: AC_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl +]) + +# AC_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no)]) + + +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(fast-install, +changequote(<<, >>)dnl +<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], +changequote([, ])dnl +[p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl +]) + +# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no)]) + +# AC_LIBTOOL_PICMODE - implement the --with-pic flag +# Usage: AC_LIBTOOL_PICMODE[(MODE)] +# Where MODE is either `yes' or `no'. If omitted, it defaults to +# `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default)]) + + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC_CMD=: + fi +fi +]) + + +# AC_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + re_direlt=['/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_PROG_LD_GNU +]) + +AC_DEFUN([AC_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$lt_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.[012]) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + [lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'] + else + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'] + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + changequote([, ])dnl + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +]) + + +# AC_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +AC_MSG_RESULT([$NM]) +]) + +# AC_CHECK_LIBM - check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32*) + # These system don't have libm + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, main, LIBM="-lm") + ;; +esac +]) + +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) +]) + +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, main, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + INCLTDL= + fi +]) + +# If this macro is not defined by Autoconf, define it here. +ifdef([AC_PROVIDE_IFELSE], + [], + [define([AC_PROVIDE_IFELSE], + [ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + +# AC_LIBTOOL_CXX - enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) + +AC_DEFUN([_AC_LIBTOOL_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +# AC_LIBTOOL_GCJ - enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) + +AC_DEFUN([_AC_LIBTOOL_GCJ], +[AC_REQUIRE([AC_PROG_LIBTOOL]) +AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC +dnl is set to the C++ compiler. +AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ +|| AC_MSG_ERROR([libtool tag configuration failed]) +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log +]) + +dnl old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +dnl This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL])dnl + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) diff --git a/bibletime-doc/admin/ltcf-c.sh b/bibletime-doc/admin/ltcf-c.sh new file mode 100644 index 0000000..288580c --- /dev/null +++ b/bibletime-doc/admin/ltcf-c.sh @@ -0,0 +1,796 @@ +#### This script is meant to be sourced by ltconfig. + +# ltcf-c.sh - Create a C compiler specific configuration +# +# Copyright (C) 1996-2000, 2001 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# This file 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. + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='main(){return(0);}' + +## Linker Characteristics +case $host_os in +cygwin* | mingw*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$with_gcc" != yes; then + with_gnu_ld=no + fi + ;; + +esac + +ld_shlibs=yes +if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX, the GNU linker is very broken + ld_shlibs=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can use + # them. + ld_shlibs=no + ;; + + beos*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw*) + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + allow_undefined_flag=unsupported + always_export_symbols=yes + + extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ + sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/impgen.c~ + test -f $output_objdir/impgen.exe || (cd $output_objdir && \ + if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ + else $CC -o impgen impgen.c ; fi)~ + $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' + + old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' + + # cygwin and mingw dlls have different entry points and sets of symbols + # to exclude. + # FIXME: what about values for MSVC? + dll_entry=__cygwin_dll_entry@12 + dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ + case $host_os in + mingw*) + # mingw values + dll_entry=_DllMainCRTStartup@12 + dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ + ;; + esac + + # mingw and cygwin differ, and it's simplest to just exclude the union + # of the two symbol sets. + dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one (in ltdll.c) + if test "x$lt_cv_need_dllmain" = "xyes"; then + ltdll_obj='$output_objdir/$soname-ltdll.'"$objext " + ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/$soname-ltdll.c~ + test -f $output_objdir/$soname-ltdll.$objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' + else + ltdll_obj= + ltdll_cmds= + fi + + # Extract the symbol export list from an `--export-all' def file, + # then regenerate the def file from the symbol export list, so that + # the compiled dll only exports the symbol export list. + # Be careful not to strip the DATA tag left be newer dlltools. + export_symbols_cmds="$ltdll_cmds"' + $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ + sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' + + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is. + # If DATA tags from a recent dlltool are present, honour them! + archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname-def; + else + echo EXPORTS > $output_objdir/$soname-def; + _lt_hint=1; + cat $export_symbols | while read symbol; do + set dummy \$symbol; + case \[$]# in + 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; + *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; + esac; + _lt_hint=`expr 1 + \$_lt_hint`; + done; + fi~ + '"$ltdll_cmds"' + $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ + $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ + $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ + $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ + $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' + ;; + + darwin* | rhapsody*) + allow_undefined_flag='-undefined suppress' + archive_cmds='$CC `test .$module = .yes && echo -bundle || echo -dynamiclib` $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts -install_name $rpath/$soname `test -n "$verstring" -a x$verstring != x0.0 && echo $verstring`' + # We need to add '_' to the symbols in $export_symbols first + #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' + hardcode_direct=yes + hardcode_shlibpath_var=no + whole_archive_flag_spec='-all_load $convenience' + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + *) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + case "$host_os" in + freebsd*) + skip_need_lc_check=yes + ;; + esac + + if test "$ld_shlibs" = yes; then + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + case $host_os in + cygwin* | mingw*) + # dlltool doesn't understand --whole-archive et. al. + whole_archive_flag_spec= + ;; + *) + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + ;; + esac + fi +else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test "$with_gcc" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix4* | aix5*) + hardcode_direct=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + if test "$with_gcc" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct=yes + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + # Let the compiler handle the export list. + always_export_symbols=no + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other run time loading flags (-brtl), -berok will + # link without error, but may produce a broken library. + allow_undefined_flag=' ${wl}-berok' + # The following three lines along with hardcode_into_libs=yes put the correct path into libraries. + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir${libdir:+:}/usr/lib:/lib' + archive_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags ${wl}-G '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags ${wl}-G '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir${libdir:+:}/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $libobjs $deplibs $linker_flags '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + allow_undefined_flag=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec=' ' + build_libtool_need_lc=yes + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + # see comment about different semantics on the GNU ld section + ld_shlibs=no + ;; + + cygwin* | mingw*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + ;; + + freebsd1*) + ld_shlibs=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd*) + archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + skip_need_lc_check=yes + ;; + + hpux9* | hpux10* | hpux11*) + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; + esac + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_minus_L=yes # Not in the search PATH, but as the default + # location of the library. + export_dynamic_flag_spec='${wl}-E' + ;; + + irix5* | irix6*) + if test "$with_gcc" = yes; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + link_all_deplibs=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + hardcode_direct=yes + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + openbsd*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + fi + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + ;; + + sco3.2v5*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv5*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec= + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=no + hardcode_shlibpath_var=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + unixware7*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac +fi + +## Compiler Characteristics: PIC flags, static flags, etc +if test "X${ac_cv_prog_cc_pic+set}" = Xset; then + : +else + ac_cv_prog_cc_pic= + ac_cv_prog_cc_shlib= + ac_cv_prog_cc_wl= + ac_cv_prog_cc_static= + ac_cv_prog_cc_no_builtin= + ac_cv_prog_cc_can_build_shared=$can_build_shared + + if test "$with_gcc" = yes; then + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_cv_prog_cc_pic='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + ac_cv_prog_cc_pic= + ;; + sysv4*MP*) + if test -d /usr/nec; then + ac_cv_prog_cc_pic=-Kconform_pic + fi + ;; + *) + ac_cv_prog_cc_pic='-fPIC' + ;; + esac + else + # PORTME Check for PIC flags for the system compiler. + case $host_os in + aix*) + # All AIX code is PIC. + ac_cv_prog_cc_static="$ac_cv_prog_cc_static ${ac_cv_prog_cc_wl}-lC" + ;; + + hpux9* | hpux10* | hpux11*) + # Is there a better ac_cv_prog_cc_static that works with the bundled CC? + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + + irix5* | irix6*) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + # PIC (with -KPIC) is the default. + ;; + + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + + newsos6) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ;; + + osf3* | osf4* | osf5*) + # All OSF/1 code is PIC. + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + ;; + + sco3.2v5*) + ac_cv_prog_cc_pic='-Kpic' + ac_cv_prog_cc_static='-dn' + ac_cv_prog_cc_shlib='-belf' + ;; + + solaris*) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Wl,' + ;; + + sunos4*) + ac_cv_prog_cc_pic='-PIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Qoption ld ' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Wl,' + ;; + + uts4*) + ac_cv_prog_cc_pic='-pic' + ac_cv_prog_cc_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + ac_cv_prog_cc_pic='-Kconform_pic' + ac_cv_prog_cc_static='-Bstatic' + fi + ;; + + *) + ac_cv_prog_cc_can_build_shared=no + ;; + esac + fi + case "$host_os" in + # Platforms which do not suport PIC and -DPIC is meaningless + # on them: + *djgpp*) + ac_cv_prog_cc_pic= + ;; + *) + ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" + ;; + esac +fi + +need_lc=yes +if test "$enable_shared" = yes && test "$with_gcc" = yes; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + echo $ac_n "checking whether -lc should be explicitly linked in... $ac_c" 1>&6 + if eval "test \"`echo '$''{'ac_cv_archive_cmds_needs_lc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + need_lc=$ac_cv_archive_cmds_needs_lc + elif test "x$skip_need_lc_check" = "xyes" ; then + echo $ac_n "(skipping, using no) $ac_c" 1>&6 + need_lc=no + else + $rm conftest* + echo "static int dummy;" > conftest.$ac_ext + if { (eval echo ltcf-c.sh:need_lc: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then + # Append any warnings to the config.log. + cat conftest.err 1>&5 + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$ac_cv_prog_cc_wl + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { (eval echo ltcf-c.sh:need_lc: \"$archive_cmds\") 1>&5; (eval $archive_cmds) 2>&1 | grep " -lc " 1>&5 ; }; then + need_lc=no + fi + allow_undefined_flag=$save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + fi + $rm conftest* + echo "$ac_t$need_lc" 1>&6 + ;; + esac +fi +ac_cv_archive_cmds_needs_lc=$need_lc diff --git a/bibletime-doc/admin/ltcf-cxx.sh b/bibletime-doc/admin/ltcf-cxx.sh new file mode 100644 index 0000000..70ccba9 --- /dev/null +++ b/bibletime-doc/admin/ltcf-cxx.sh @@ -0,0 +1,1040 @@ +#### This script is meant to be sourced by ltconfig. + +# ltcf-cxx.sh - Create a C++ compiler specific configuration +# +# Copyright (C) 1996-1999, 2000, 2001 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# Original C++ support by:Gary V. Vaughan +# Alexandre Oliva +# Ossama Othman +# Thomas Thanner +# +# This file 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. + + +# Source file extension for C++ test sources. +ac_ext=cc + +# Object file extension for compiled C++ test sources. +objext=o + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *[]) { return (0); }' + +# C++ compiler +CXX=${CXX-c++} + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +CC=${CC-"$CXX"} +CFLAGS=${CFLAGS-"$CXXFLAGS"} + +# Allow CC (or CXX) to be a program name with arguments. +set dummy $CC +compiler=$2 +cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` + +# we are optimistic. (Too optimistic if you ask me, down there we switch it +# off again for most platforms ;) (MM) +ld_shlibs=yes + +# Check if we are using GNU gcc (taken/adapted from configure script) +# We need to check here since "--with-gcc" is set at configure time, +# not ltconfig time! +cat > conftest.$ac_ext <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + with_gcc=yes + + # Set up default GNU C++ configuration + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if eval "`$CC -print-prog-name=ld` --version 2>&1" | \ + egrep 'GNU ld' > /dev/null; then + with_gnu_ld=yes + + archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + +else + with_gcc=no + with_gnu_ld=no + wlarc= +fi + +echo "ltcf-cxx: with_gcc=$with_gcc ; with_gnu_ld=$with_gnu_ld" + +# PORTME: fill in a description of your system's C++ link characteristics +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + aix4* | aix5*) + archive_cmds='' + hardcode_direct=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + if test "$with_gcc" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct=yes + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + # Let the compiler handle the export list. + always_export_symbols=no + if test "$aix_use_runtimelinking" = yes; then + allow_undefined_flag=' ${wl}-berok' + # The following three lines along with hardcode_into_libs=yes put the correct path into libraries. + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir${libdir:+:}/usr/lib:/lib' + archive_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-G '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-G '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir${libdir:+:}/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags '"$hardcode_libdir_flag_spec"' -o $lib' + archive_expsym_cmds='$CC '"$shared_flag"' $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags '"$hardcode_libdir_flag_spec"' ${wl}'"$exp_sym_flag"':$export_symbols -o $lib' + else + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' + # Warning - without using the other run time loading flags, -berok will + # link without error, but may produce a broken library. + no_undefined_flag='${wl}-bnoerok' + allow_undefined_flag='${wl}-berok" + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec=' ' + build_libtool_need_lc=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + ghcx) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + freebsd*) + # FreeBSD uses GNU C++ and GNU ld + skip_need_lc_check=yes + remove_lgcc=yes + ;; + hpux*) + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_minus_L=yes # Not in the search PATH, but as the default + # location of the library. + export_dynamic_flag_spec='${wl}-E' + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + aCC) + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no ; then + # MM: for HP-UX and g++ -fPIC is needed to link pic objects together + case $host_os in + hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; + *) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; + esac + output_verbose_link_cmds='$CC -shared -fPIC $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + remove_lgcc=yes + fi + if test "$with_gcc" = no ; then + # FIXME: insert proper C++ library support + ld_shlibs=no + fi + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + # SGI C++ + archive_cmds='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$with_gcc" = yes; then + if test "$with_gnu_ld" = no; then + archive_cmds='$CC -D_LANGUAGE_C_CPLUS_PLUS -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib' + fi + fi + ;; + esac + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + link_all_deplibs=yes + ;; + linux*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_expsym_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest.so 2>&1 | egrep "ld"`; rm -f libconftest.so; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + hardcode_libdir_flag_spec='${wl}--rpath,$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' + ;; + cxx) + # Compaq C++ + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + insure) + if test "$with_gcc" = yes; then + # Insure++ together with gcc probably means also GNU ld + # only -whole-archive isn't supported + whole_archive_flag_spec="" + # and we can't use -nostdlib, because bloody insure has no way to + # output the linkline (-Zvm isn't working as documented), so we don't + # know the depending libs. So we hope, insure gets it right anyway. + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + output_verbose_link_cmds="" + fi + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + m88k*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + mvs*) + case $cc_basename in + cxx) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + netbsd*) + if test "$with_gcc" = no || test "$with_gnu_ld" = no; then + # This should only be triggered for NetBSD/a.out + # Add in C++ constructor/destructor support + if test -f /usr/pkg/lib/c++rt0/c++rt0.o.PIC; then + cppopts="/usr/pkg/lib/c++rt0/c++rt0.o.PIC" + elif test -f /usr/lib/c++rt0.o; then + cppopts="/usr/lib/c++rt0.o" + fi + archive_cmds='ld -Bshareable -o $lib '"$cppopts"' $libobjs $deplibs $linkopts' + fi + ;; + openbsd*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + # MM: OpenBSD 2.7 uses G++, but not GNU ld + archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + archive_expsym_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + old_archive_cmds="$old_archive_cmds~"'$RANLIB $oldlib' + hardcode_libdir_flag_spec='${wl}-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + whole_archive_flag_spec='${wl}-Bforcearchive' + remove_lgcc=yes + fi + ;; + osf3*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + else + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + hardcode_libdir_separator=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + cxx) + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + fi + ;; + osf4* | osf5*) + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + no_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' + else + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + hardcode_libdir_separator=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + old_archive_cmds='$CC -o $oldlib $oldobjs' + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + cxx) + allow_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + no_undefined_flag=' -Wl,-expect_unresolved -Wl,\*' + archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -update_registry ${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec='-rpath $libdir' + hardcode_libdir_separator=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + fi + ;; + psos*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + sco*) + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + lcc) + # Lucid + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + no_undefined_flag=' -ztext' + archive_cmds='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. + # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + link_all_deplibs=yes + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmds='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep "\-R|\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds='$CC -xar -o $oldlib $oldobjs' + ;; + gcx) + # Green Hills C++ Compiler + archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + old_archive_cmds='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then + if $CC --version | egrep -v '^2\.7' > /dev/null; then + archive_cmds='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + archive_cmds='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmds="$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" + fi + + hardcode_libdir_flag_spec='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + esac + ;; + unixware*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + vxworks*) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs=no + ;; +esac + + +## Compiler Characteristics: PIC flags, static flags, etc + +# We don't use cached values here since only the C compiler +# characteristics should be cached. +ac_cv_prog_cc_pic= +ac_cv_prog_cc_shlib= +ac_cv_prog_cc_wl= +ac_cv_prog_cc_static= +ac_cv_prog_cc_no_builtin= +ac_cv_prog_cc_can_build_shared=$can_build_shared + +ac_cv_prog_cc_pic_works= +ac_cv_prog_cc_static_works= + +if test "$with_gcc" = yes; then + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + cygwin* | mingw* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + ac_cv_prog_cc_pic='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_cv_prog_cc_pic='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + ac_cv_prog_cc_pic= + ;; + sysv4*MP*) + if test -d /usr/nec; then + ac_cv_prog_cc_pic=-Kconform_pic + fi + ;; + *) + ac_cv_prog_cc_pic='-fPIC' + ;; + esac +else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_cv_prog_cc_static='-Bstatic' + else + lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68) + # Green Hills C++ Compiler + # ac_cv_prog_cc_static="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + ac_cv_prog_cc_pic='-KPIC' + ;; + ghcx) + # Green Hills C++ Compiler + ac_cv_prog_cc_pic='-pic' + ;; + *) + ;; + esac + ;; + freebsd*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + aCC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + ac_cv_prog_cc_pic='+Z' + ;; + *) + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + ac_cv_prog_cc_wl='-Wl,' + ac_cv_prog_cc_static='-non_shared' + ac_cv_prog_cc_pic='-KPIC' + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC) + # KAI C++ Compiler + ac_cv_prog_cc_wl='--backend -Wl,' + ac_cv_prog_cc_pic='-fPIC' + ;; + cxx) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + ac_cv_prog_cc_pic= + ac_cv_prog_cc_static='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx) + ac_cv_prog_cc_pic='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC) + ac_cv_prog_cc_wl='--backend -Wl,' + ;; + RCC) + # Rational C++ 2.4.1 + ac_cv_prog_cc_pic='-pic' + ;; + cxx) + # Digital/Compaq C++ + ac_cv_prog_cc_wl='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + ac_cv_prog_cc_pic= + ac_cv_prog_cc_static='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + sco*) + case $cc_basename in + CC) + ac_cv_prog_cc_pic='-fPIC' + ;; + *) + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + ac_cv_prog_cc_pic='-KPIC' + ac_cv_prog_cc_static='-Bstatic' + ac_cv_prog_cc_wl='-Qoption ld ' + ;; + gcx) + # Green Hills C++ Compiler + ac_cv_prog_cc_pic='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + ac_cv_prog_cc_pic='-pic' + ac_cv_prog_cc_static='-Bstatic' + ;; + lcc) + # Lucid + ac_cv_prog_cc_pic='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + ac_cv_prog_cc_pic='-KPIC' + ;; + *) + ;; + esac + ;; + unixware*) + ;; + vxworks*) + ;; + *) + ac_cv_prog_cc_can_build_shared=no + ;; + esac +fi + +case "$host_os" in + # Platforms which do not suport PIC and -DPIC is meaningless + # on them: + *djgpp*) + ac_cv_prog_cc_pic= + ;; + *) + ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" + ;; +esac + + +# Figure out "hidden" C++ library dependencies from verbose +# compiler output whening linking a shared library. +cat > conftest.$ac_ext <&5; then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval $output_verbose_link_cmds`; do + + case $p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test $p = "-L" \ + || test $p = "-R"; then + prev=$p + continue + else + prev= + fi + + if test "$pre_test_object_deps_done" = no; then + case $p in + -L* | -R*) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$compiler_lib_search_path"; then + compiler_lib_search_path="${prev}${p}" + else + compiler_lib_search_path="${compiler_lib_search_path} ${prev}${p}" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + add="${prev}${p}" + if test "x$remove_lgcc" = "xyes" ; then + case "$add" in + -lgcc ) add="" ;; + esac + fi + if test -n "$add" ; then + if test -z "$postdeps"; then + postdeps="$add" + else + postdeps="${postdeps} ${add}" + fi + fi + fi + ;; + + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test "$pre_test_object_deps_done" = no; then + if test -z "$predep_objects"; then + predep_objects="$p" + else + predep_objects="$predep_objects $p" + fi + else + if test -z "$postdep_objects"; then + postdep_objects="$p" + else + postdep_objects="$postdep_objects $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out +else + echo "ltcf-cxx.sh: error: problem compiling test program" +fi + +$rm -f confest.$objext + +if test "x$skip_need_lc_check" = "xyes" ; then + need_lc=no +else + case " $postdeps " in + *" -lc "*) need_lc=no ;; + *) need_lc=yes ;; + esac +fi diff --git a/bibletime-doc/admin/ltconfig b/bibletime-doc/admin/ltconfig new file mode 100755 index 0000000..caefe9f --- /dev/null +++ b/bibletime-doc/admin/ltconfig @@ -0,0 +1,2794 @@ +#! /bin/sh + +# ltconfig - Create a system-specific libtool. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# This file 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. + +# A lot of this script is taken from autoconf-2.10. + +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} +echo=echo +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec "$SHELL" "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null`} + case X$UNAME in + *-DOS) PATH_SEPARATOR=';' ;; + *) PATH_SEPARATOR=':' ;; + esac +fi + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +if test "X${echo_test_string+set}" != Xset; then + # find a string as large as possible, as long as the shell can cope with it + for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do + # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... + if (echo_test_string="`eval $cmd`") 2>/dev/null && + echo_test_string="`eval $cmd`" && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" + for dir in $PATH /usr/ucb; do + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running ltconfig again with it. + ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}" + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL" + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL $0 --fallback-echo" + elif echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL $0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "$0"'; then + echo_test_string=`eval $prev` + + export echo_test_string + exec "${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}}" "$0" ${1+"$@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e s/^X//' +sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# The name of this program. +progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` + +# Constants: +PROGRAM=ltconfig +PACKAGE=libtool +VERSION=1.4a +TIMESTAMP=" (1.641.2.206mm 2001/04/03 21:47:47)" +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +rm="rm -f" + +help="Try \`$progname --help' for more information." + +# Global variables: +default_ofile=libtool +can_build_shared=yes +enable_shared=yes +# All known linkers require a `.a' archive for static linking (except M$VC, +# which needs '.lib'). +enable_static=yes +enable_fast_install=yes +enable_dlopen=unknown +enable_win32_dll=no +pic_mode=default +ltmain= +silent= +srcdir= +ac_config_guess= +ac_config_sub= +host= +build=NONE +nonopt=NONE +ofile="$default_ofile" +verify_host=yes +tagname= +with_gcc=no +with_gnu_ld=no +need_locks=yes +ac_ext=c +libext=a +cache_file= +max_cmd_len= + +## Dependencies to place before and after the object being linked: +predep_objects= +postdep_objects= +predeps= +postdeps= +compiler_lib_search_path= + +## Link characteristics: +allow_undefined_flag= +no_undefined_flag= +need_lib_prefix=unknown +need_version=unknown +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +archive_cmds= +archive_expsym_cmds= +old_archive_from_new_cmds= +old_archive_from_expsyms_cmds= +striplib= +old_striplib= +export_dynamic_flag_spec= +whole_archive_flag_spec= +thread_safe_flag_spec= +hardcode_into_libs=no +hardcode_libdir_flag_spec= +hardcode_libdir_separator= +hardcode_direct=no +hardcode_minus_L=no +hardcode_shlibpath_var=unsupported +runpath_var= +link_all_deplibs=unknown +always_export_symbols=no +export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' +# include_expsyms should be a list of space-separated symbols to be *always* +# included in the symbol list +include_expsyms= +# exclude_expsyms can be an egrep regular expression of symbols to exclude +# it will be wrapped by ` (' and `)$', so one must not match beginning or +# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', +# as well as any symbol that contains `d'. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" +# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out +# platforms (ab)use it in PIC code, but their linkers get confused if +# the symbol is explicitly referenced. Since portable code cannot +# rely on this symbol name, it's probably fine to never include it in +# preloaded symbol tables. +extract_expsyms_cmds= + +## Tools: +old_AR="$AR" +old_AR_FLAGS="$AR_FLAGS" +old_CC="$CC" +old_CFLAGS="$CFLAGS" +old_CPPFLAGS="$CPPFLAGS" +old_LDFLAGS="$LDFLAGS" +old_LIBS="$LIBS" +old_MAGIC_CMD="$MAGIC_CMD" +old_LD="$LD" +old_LN_S="$LN_S" +old_LTCC="$LTCC" +old_NM="$NM" +old_RANLIB="$RANLIB" +old_STRIP="$STRIP" +old_AS="$AS" +old_DLLTOOL="$DLLTOOL" +old_OBJDUMP="$OBJDUMP" +old_OBJEXT="$OBJEXT" +old_EXEEXT="$EXEEXT" +old_reload_flag="$reload_flag" +old_deplibs_check_method="$deplibs_check_method" +old_file_magic_cmd="$file_magic_cmd" + +# Parse the command line options. +args= +prev= +for option +do + case $option in + -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + eval "$prev=\$option" + prev= + continue + fi + + case $option in + --help) cat <&2 + echo "$help" 1>&2 + exit 1 + ;; + + *) + if test -z "$ltmain"; then + ltmain="$option" + elif test -z "$host"; then +# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1 +# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then +# echo "$progname: warning \`$option' is not a valid host type" 1>&2 +# fi + host="$option" + else + echo "$progname: too many arguments" 1>&2 + echo "$help" 1>&2 + exit 1 + fi ;; + esac +done + +if test -z "$ltmain"; then + echo "$progname: you must specify a LTMAIN file" 1>&2 + echo "$help" 1>&2 + exit 1 +fi + +if test ! -f "$ltmain"; then + echo "$progname: \`$ltmain' does not exist" 1>&2 + echo "$help" 1>&2 + exit 1 +fi + +if test -n "$tagname"; then + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's/[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]//g'` in + "") ;; + *) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$ofile" > /dev/null; then + echo "$progname: tag name $tagname already exists" 1>&2 + exit 1 + fi + + if test ! -f "$ofile"; then + echo "$progname: warning: output file \`$ofile' does not exist" 1>&2 + fi + + if test -z "$LTCC"; then + eval "`$SHELL $ofile --config | grep '^LTCC='`" + if test -z "$LTCC"; then + echo "$progname: warning: output file \`$ofile' does not look like a libtool script" 1>&2 + else + echo "$progname: warning: using \`LTCC=$LTCC', extracted from \`$ofile'" 1>&2 + fi + fi +fi + +# Quote any args containing shell metacharacters. +ltconfig_args= +for arg +do + case $arg in + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ltconfig_args="$ltconfig_args '$arg'" ;; + *) ltconfig_args="$ltconfig_args $arg" ;; + esac +done + +# A relevant subset of AC_INIT. + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 5 compiler messages saved in config.log +# 6 checking for... messages and results +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>>./config.log + +# NLS nuisances. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi +if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi + +if test -n "$cache_file" && test -r "$cache_file" && test -f "$cache_file"; then + echo "loading cache $cache_file within ltconfig" + . $cache_file +fi + +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + +if test -z "$srcdir"; then + # Assume the source directory is the same one as the path to LTMAIN. + srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'` + test "$srcdir" = "$ltmain" && srcdir=. +fi + +trap "$rm conftest*; exit 1" 1 2 15 +if test "$verify_host" = yes; then + # Check for config.guess and config.sub. + ac_aux_dir= + for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/config.guess; then + ac_aux_dir=$ac_dir + break + fi + done + if test -z "$ac_aux_dir"; then + echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2 + echo "$help" 1>&2 + exit 1 + fi + ac_config_guess=$ac_aux_dir/config.guess + ac_config_sub=$ac_aux_dir/config.sub + + # Make sure we can run config.sub. + if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then : + else + echo "$progname: cannot run $ac_config_sub" 1>&2 + echo "$help" 1>&2 + exit 1 + fi + + echo $ac_n "checking host system type""... $ac_c" 1>&6 + + host_alias=$host + case $host_alias in + "") + # Force config.guess to use the C compiler. + # CC_FOR_BUILD overrides the CC variable in config.guess but I had + # problems with it so do it this way for now. + CC="$LTCC" + + if host_alias=`$SHELL $ac_config_guess`; then : + else + echo "$progname: cannot guess host type; you must specify one" 1>&2 + echo "$help" 1>&2 + exit 1 + fi + + # Restore the C compiler. + CC="$old_CC" + ;; + esac + host=`$SHELL $ac_config_sub $host_alias` + echo "$ac_t$host" 1>&6 + + # Make sure the host verified. + test -z "$host" && exit 1 + + # Check for the build system type + echo $ac_n "checking build system type... $ac_c" 1>&6 + + build_alias=$build + case $build_alias in + NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; + esac + + build=`$SHELL $ac_config_sub $build_alias` + build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` + build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` + build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` + echo "$ac_t""$build" 1>&6 + +elif test -z "$host"; then + echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2 + echo "$help" 1>&2 + exit 1 +else + host_alias=$host + build_alias=$host_alias + build=$host +fi + +if test x"$host" != x"$build"; then + ac_tool_prefix=${host_alias}- +else + ac_tool_prefix= +fi + +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` + +# Transform linux* to *-*-linux-gnu*, to support old configure scripts. +case $host_os in +linux-gnu*) ;; +linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` +esac + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" + old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" +fi + +# Source the script associated with the $tagname tag configuration. +if test -n "$tagname"; then + . $ltmain +else + # FIXME: We should use a variable here + # Configure for a C compiler + . $srcdir/ltcf-c.sh +fi + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$NM" && NM=nm +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$objext" && objext=o + +echo $ac_n "checking for objdir... $ac_c" 1>&6 +rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + objdir=_libs +fi +rmdir .libs 2>/dev/null +echo "$ac_t$objdir" 1>&6 + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +set dummy $CC +compiler="$2" + +# We assume here that the value for ac_cv_prog_cc_pic will not be cached +# in isolation, and that seeing it set (from the cache) indicates that +# the associated values are set (in the cache) correctly too. +echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6 +echo "$progname:678:checking for $compiler option to produce PIC" 1>&5 + +if test -z "$ac_cv_prog_cc_pic"; then + echo "$ac_t"none 1>&6 +else + echo "$ac_t""$ac_cv_prog_cc_pic" 1>&6 + + # Check to make sure the pic_flag actually works. + echo $ac_n "checking if $compiler PIC flag $ac_cv_prog_cc_pic works... $ac_c" 1>&6 + echo "$progname:687:checking that $compiler PIC flag $ac_cv_prog_cc_pic works." 1>&5 + if test "X${ac_cv_prog_cc_pic_works+set}" = Xset && \ + test "X${ac_cv_prog_cc_pic_works}" != X; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + ac_cv_prog_cc_pic_works=yes + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $ac_cv_prog_cc_pic -DPIC" + if { (eval echo $progname:697: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + # Append any warnings to the config.log. + cat conftest.err 1>&5 + + case $host_os in + hpux9* | hpux10* | hpux11*) + # On HP-UX, both CC and GCC only warn that PIC is supported... then + # they create non-PIC objects. So, if there were any warnings, we + # assume that PIC is not supported. + if test -s conftest.err; then + ac_cv_prog_cc_pic_works=no + ac_cv_prog_cc_can_build_shared=no + ac_cv_prog_cc_pic= + else + ac_cv_prog_cc_pic_works=yes + ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" + fi + ;; + *) + ac_cv_prog_cc_pic_works=yes + ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" + ;; + esac + else + # Append any errors to the config.log. + cat conftest.err 1>&5 + ac_cv_prog_cc_pic_works=no + ac_cv_prog_cc_can_build_shared=no + ac_cv_prog_cc_pic= + fi + CFLAGS="$save_CFLAGS" + $rm conftest* + fi + # Belt *and* braces to stop my trousers falling down: + if test "X$ac_cv_prog_cc_pic_works" = Xno; then + ac_cv_prog_cc_pic= + ac_cv_prog_cc_can_build_shared=no + fi + echo "$ac_t""$ac_cv_prog_cc_pic_works" 1>&6 +fi + +# Check for any special shared library compilation flags. +if test -n "$ac_cv_prog_cc_shlib"; then + echo "$progname: warning: \`$CC' requires \`$ac_cv_prog_cc_shlib' to build shared libraries" 1>&2 + if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$ac_cv_prog_cc_shlib[ ]" >/dev/null; then : + else + echo "$progname: add \`$ac_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2 + ac_cv_prog_cc_can_build_shared=no + fi +fi + +echo $ac_n "checking if $compiler static flag $ac_cv_prog_cc_static works... $ac_c" 1>&6 +echo "$progname:749: checking if $compiler static flag $ac_cv_prog_cc_static works" >&5 +if test "X${ac_cv_prog_cc_static_works+set}" = Xset && \ + test "X${ac_cv_prog_cc_static_works}" != X; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + $rm conftest* + echo $lt_simple_link_test_code > conftest.$ac_ext + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $ac_cv_prog_cc_static" + if { (eval echo $progname:758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cc_static_works=yes + else + ac_cv_prog_cc_static_works=no + ac_cv_prog_cc_static= + fi + LDFLAGS="$save_LDFLAGS" + $rm conftest* +fi +# Belt *and* braces to stop my trousers falling down: +if test "X$ac_cv_prog_cc_static_works" = Xno; then + ac_cv_prog_cc_static= +fi +echo "$ac_t""$ac_cv_prog_cc_static_works" 1>&6 +pic_flag="$ac_cv_prog_cc_pic" +special_shlib_compile_flags="$ac_cv_prog_cc_shlib" +wl="$ac_cv_prog_cc_wl" +link_static_flag="$ac_cv_prog_cc_static" +no_builtin_flag="$ac_cv_prog_cc_no_builtin" +can_build_shared="$ac_cv_prog_cc_can_build_shared" + +# find the maximum length of command line arguments +echo "$progname:780: finding the maximum length of command line arguments" 1>&5 +echo $ac_n "finding the maximum length of command line arguments... $ac_c" 1>&6 +if test "${lt_cv_sys_max_cmd_len+set}" = set; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + i=0 + testring="ABCDEF" + while test `$CONFIG_SHELL $0 --fallback-echo "X$testring" >/dev/null 2>&1` == `echo "X$testring" >/dev/null 2>&1` && + new_result=`expr "X$testring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 32 # 1 MB should be enough + do + i=`expr $i + 1` + testring=$testring$testring + done + testring= + # add a significant safety factor because C++ compilers can tack on massive amounts + # of additional arguments before passing them to the linker. 1/4 should be good. + len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len - $len` +fi +echo "$progname:@lineno@: result: $lt_cv_sys_max_cmd_len" 1>&5 +echo "${ac_t}$lt_cv_sys_max_cmd_len" 1>&6 + +if test -n $lt_cv_sys_max_cmd_len ; then + max_cmd_len=$lt_cv_sys_max_cmd_len +else + max_cmd_len=none +fi + +# Check to see if options -o and -c are simultaneously supported by compiler +echo $ac_n "checking if $compiler supports -c -o file.$objext... $ac_c" 1>&6 +if test "${lt_cv_compiler_c_o+set}" = set; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + mkdir out + # According to Tom Tromey, Ian Lance Taylor reported there are C compilers + # that will create temporary files in the current directory regardless of + # the output directory. Thus, making CWD read-only will cause this test + # to fail, enabling locking or at least warning the user not to do parallel + # builds. + chmod -w . + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -o out/conftest2.$objext" + echo "$progname:829: checking if $compiler supports -c -o file.$objext" >&5 + if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$objext; then + + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s out/conftest.err; then + lt_cv_compiler_c_o=no + else + lt_cv_compiler_c_o=yes + fi + else + # Append any errors to the config.log. + cat out/conftest.err 1>&5 + lt_cv_compiler_c_o=no + fi + CFLAGS="$save_CFLAGS" + chmod u+w . + $rm conftest* out/* + rmdir out + cd .. + rmdir conftest + $rm -r conftest 2>/dev/null +fi +compiler_c_o=$lt_cv_compiler_c_o +echo "${ac_t}$compiler_c_o" 1>&6 + +# Check to see if we can do hard links to lock some files if needed +hard_links="nottested" +if test "$compiler_c_o" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6 + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + echo "$ac_t$hard_links" 1>&6 + $rm conftest* + if test "$hard_links" = no; then + echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2 + need_locks=warn + fi +else + need_locks=no +fi + +if test "$with_gcc" = yes; then + # Check to see if options -fno-rtti -fno-exceptions are supported by compiler + echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6 + $rm conftest* + echo $lt_simple_compile_test_code > conftest.$ac_ext + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" + echo "$progname:883: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 + if { (eval echo $progname:884: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + echo "$ac_t"no 1>&6 + compiler_rtti_exceptions=no + else + echo "$ac_t"yes 1>&6 + compiler_rtti_exceptions=yes + fi + else + # Append any errors to the config.log. + cat conftest.err 1>&5 + compiler_rtti_exceptions=no + echo "$ac_t"no 1>&6 + fi + CFLAGS="$save_CFLAGS" + $rm conftest* + + if test "$compiler_rtti_exceptions" = "yes"; then + no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' + else + no_builtin_flag=' -fno-builtin' + fi + +fi + +# See if the linker supports building shared libraries. +echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6 + +echo "$ac_t$ld_shlibs" 1>&6 +test "$ld_shlibs" = no && can_build_shared=no + +# Check hardcoding attributes. +echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6 +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || \ + test -n "$runpath_var"; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$hardcode_shlibpath_var" != no && + test "$hardcode_minus_L" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +echo "$ac_t$hardcode_action" 1>&6 + +echo $ac_n "checking whether stripping libraries is possible... $ac_c" 1>&6 +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + echo "${ac_t}yes" 1>&6 +else + echo "${ac_t}no" 1>&6 +fi + +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +test -z "$deplibs_check_method" && deplibs_check_method=unknown + +# PORTME Fill in your ld.so characteristics +library_names_spec= +libname_spec='lib$name' +soname_spec= +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6 +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}.so$major' + ;; + +aix4* | aix5*) + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + else + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + # We preserve .a as extension for shared libraries though AIX4.2 + # and later linker supports .so + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so instead of + # lib.a to let people know that these are not typical AIX shared libraries. + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + # We want symlinks to be created for the different names. + version_type=linux + else + # We preserve .a as extension for shared libraries though AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}.so$major.o' + fi + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + shlibpath_var=LIBPATH + deplibs_check_method=pass_all + # Put the right runpath into libraries. + hardcode_into_libs=yes + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + can_build_shared=no + fi + ;; + esac + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}.so' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + export_dynamic_flag_spec=-rdynamic + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + need_version=no + need_lib_prefix=no + case $with_gcc,$host_os in + yes,cygwin*) + library_names_spec='$libname.dll.a' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll' + postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog .libs/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll; $rm \$dlpath' + ;; + yes,mingw*) + library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"` + ;; + yes,pw32*) + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' +;; + *) + library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}.`test .$module = .yes && echo so || echo dylib` ${libname}${release}${major}.$`test .$module = .yes && echo so || echo dylib` ${libname}.`test .$module = .yes && echo so || echo dylib`' + soname_spec='${libname}${release}${major}.`test .$module = .yes && echo so || echo dylib`' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + *) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + dynamic_linker="$host_os dld.sl" + version_type=sunos + need_lib_prefix=no + need_version=no + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' + soname_spec='${libname}${release}.sl$major' + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6*) + version_type=irix + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}.so$major' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' + case $host_os in + irix5*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux-gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsd*) + version_type=sunos + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + need_version=yes + else + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' + soname_spec='${libname}${release}.so$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + need_version=no + fi + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + # OpenBSD 2.7 the overriding is needed for fast-install + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + need_lib_prefix=no + library_names_spec='$libname.dll $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_version=no + soname_spec='${libname}${release}.so' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}.so$major' + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' + soname_spec='$libname.so.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +*) + dynamic_linker=no + ;; +esac +echo "$ac_t$dynamic_linker" 1>&6 +test "$dynamic_linker" = no && can_build_shared=no + +# Check for command to grab the raw symbol name followed by C symbol from nm. +echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6 + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Transform the above into a raw symbol and a C symbol. +symxfrm='\1 \2\3 \3' + +# Transform an extracted symbol line into a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32*) + symcode='[ABCDGISTW]' + ;; +hpux*) # Its linker distinguishes data from code symbols + global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'" + ;; +irix*) + symcode='[BCDEGRST]' + ;; +solaris* | sysv5*) + symcode='[BDT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $host_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then + symcode='[ABCDGISTW]' +fi + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Write the raw and C identifiers. +global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + $rm conftest* + cat > conftest.$ac_ext <&5 + if { (eval echo $progname:1424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then + # Now try to grab the symbols. + nlist=conftest.nm + if { echo "$progname:1427: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then + + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if egrep ' nm_test_var$' "$nlist" >/dev/null; then + if egrep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{ +EOF + sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$objext conftstm.$objext + save_LIBS="$LIBS" + save_CFLAGS="$CFLAGS" + LIBS="conftstm.$objext" + CFLAGS="$CFLAGS$no_builtin_flag" + if { (eval echo $progname:1479: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + pipe_works=yes + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + LIBS="$save_LIBS" + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + $rm conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + global_symbol_pipe= + fi +done +if test "$pipe_works" = yes; then + echo "${ac_t}ok" 1>&6 +else + echo "${ac_t}failed" 1>&6 +fi + +if test -z "$global_symbol_pipe"; then + global_symbol_to_cdecl= +fi + +# Report the final consequences. +echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6 + +# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in +# configure.in, otherwise build static only libraries. +case $host_os in +cygwin* | mingw* | pw32* | os2*) + if test x$can_build_shared = xyes; then + test x$enable_win32_dll = xno && can_build_shared=no + echo "checking if package supports dlls... $can_build_shared" 1>&6 + fi +;; +esac + +echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6 +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case $host_os in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4* | aix5*) + test "$enable_shared" = yes && enable_static=no + ;; +esac + +echo "$ac_t$enable_shared" 1>&6 + +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes + +echo "checking whether to build static libraries... $enable_static" 1>&6 + +if test "$hardcode_action" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$with_gcc" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# Check whether we must set pic_mode to default +test -z "$pic_flag" && pic_mode=default + +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else +if test "X${lt_cv_dlopen+set}" != Xset; then + lt_cv_dlopen=no lt_cv_dlopen_libs= +echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 +echo "$progname:1583: checking for dlopen in -ldl" >&5 +if test "X${ac_cv_lib_dl_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldl $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dl_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dl_dlopen=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dl_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dlopen""... $ac_c" 1>&6 +echo "$progname:1622: checking for dlopen" >&5 +if test "X${ac_cv_func_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen(); + +int main() { + +/* 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_dlopen) || defined (__stub___dlopen) +choke me +#else +dlopen(); +#endif + +; return 0; } +EOF +if { (eval echo $progname:1652: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_func_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_func_dlopen=no +fi +rm -f conftest* +fi +if test "X$ac_cv_func_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6 +echo "$progname:1669: checking for dlopen in -lsvld" >&5 +if test "X${ac_cv_lib_svld_dlopen+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lsvld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_svld_dlopen=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_svld_dlopen=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_svld_dlopen" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 +echo "$progname:1708: checking for dld_link in -ldld" >&5 +if test "X${ac_cv_lib_dld_dld_link+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dld_dld_link=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dld_dld_link=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dld_dld_link" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shl_load""... $ac_c" 1>&6 +echo "$progname:1747: checking for shl_load" >&5 +if test "X${ac_cv_func_shl_load+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load(); + +int main() { + +/* 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_shl_load) || defined (__stub___shl_load) +choke me +#else +shl_load(); +#endif + +; return 0; } +EOF +if { (eval echo $progname:1777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_func_shl_load=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_func_shl_load=no +fi +rm -f conftest* +fi + +if test "X$ac_cv_func_shl_load" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="shl_load" +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 +echo "$progname:1795: checking for shl_load in -ldld" >&5 +if test "X${ac_cv_lib_dld_shl_load+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_lib_dld_shl_load=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_lib_dld_shl_load=no +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if test "X$ac_cv_lib_dld_shl_load" = Xyes; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" +else + echo "$ac_t""no" 1>&6 +fi + + +fi + + +fi + + +fi + + +fi + +fi + +fi + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) +for ac_hdr in dlfcn.h; do +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 +echo "$progname:1863: checking for $ac_hdr" >&5 +if eval "test \"`echo 'X$''{'ac_cv_header_$ac_safe'+set}'`\" = Xset"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +int fnord = 0; +int main () { return(0); } +EOF +ac_try="$ac_compile >/dev/null 2>conftest.out" +{ (eval echo $progname:1874: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + rm -rf conftest* + eval "ac_cv_header_$ac_safe=yes" +else + echo "$ac_err" >&5 + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_header_$ac_safe=no" +fi +rm -f conftest* +fi +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +done + + if test "x$ac_cv_header_dlfcn_h" = xyes; then + CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + fi + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + LIBS="$lt_cv_dlopen_libs $LIBS" + + echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 +echo "$progname:1902: checking whether a program can dlopen itself" >&5 +if test "X${lt_cv_dlopen_self+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + lt_cv_dlopen_self=cross + else + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LTDL_GLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LTDL_GLOBAL DL_GLOBAL +# else +# define LTDL_GLOBAL 0 +# endif +#endif + +/* We may have to define LTDL_LAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LTDL_LAZY_OR_NOW +# ifdef RTLD_LAZY +# define LTDL_LAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LTDL_LAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LTDL_LAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LTDL_LAZY_OR_NOW DL_NOW +# else +# define LTDL_LAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +void fnord() { int i=42; } +int main() { + void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); + if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); return 1;} + +EOF +if { (eval echo $progname:1957: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +then + lt_cv_dlopen_self=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + lt_cv_dlopen_self=no +fi +rm -fr conftest* +fi + +fi + +echo "$ac_t""$lt_cv_dlopen_self" 1>&6 + + if test "$lt_cv_dlopen_self" = yes; then + LDFLAGS="$LDFLAGS $link_static_flag" + echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 +echo "$progname:1976: checking whether a statically linked program can dlopen itself" >&5 +if test "X${lt_cv_dlopen_self_static+set}" = Xset; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + lt_cv_dlopen_self_static=cross + else + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LTDL_GLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LTDL_GLOBAL DL_GLOBAL +# else +# define LTDL_GLOBAL 0 +# endif +#endif + +/* We may have to define LTDL_LAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LTDL_LAZY_OR_NOW +# ifdef RTLD_LAZY +# define LTDL_LAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LTDL_LAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LTDL_LAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LTDL_LAZY_OR_NOW DL_NOW +# else +# define LTDL_LAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +void fnord() { int i=42; } +int main() { + void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); + if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); return 1; } + +EOF +if { (eval echo $progname:2031: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +then + lt_cv_dlopen_self_static=yes +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + lt_cv_dlopen_self_static=no +fi +rm -fr conftest* +fi + +fi + +echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6 +fi + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + +# Copy echo and quote the copy, instead of the original, because it is +# used later. +ltecho="$echo" +if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then + ltecho="$CONFIG_SHELL \$0 --fallback-echo" +fi +LTSHELL="$SHELL" + +LTCONFIG_VERSION="$VERSION" + +# Only quote variables if we're using ltmain.sh. +case $ltmain in +*.sh) + # Now quote all the things that may contain metacharacters. + for var in ltecho old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ + old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ + old_LN_S old_NM old_RANLIB old_STRIP \ + old_AS old_DLLTOOL old_OBJDUMP \ + old_OBJEXT old_EXEEXT old_reload_flag \ + old_deplibs_check_method old_file_magic_cmd \ + AR AR_FLAGS CC LTCC LD LN_S NM LTSHELL LTCONFIG_VERSION \ + reload_flag reload_cmds wl \ + pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ + thread_safe_flag_spec whole_archive_flag_spec libname_spec \ + library_names_spec soname_spec \ + RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ + old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ + postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ + predep_objects postdep_objects predeps postdeps compiler_lib_search_path \ + old_striplib striplib file_magic_cmd export_symbols_cmds \ + deplibs_check_method allow_undefined_flag no_undefined_flag \ + finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ + hardcode_libdir_flag_spec hardcode_libdir_separator \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + compiler_c_o need_locks exclude_expsyms include_expsyms; do + + case $var in + reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ + extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ### testsuite: skip nested quoting test + ;; + *) + eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" ### testsuite: skip nested quoting test + ;; + esac + done + + case $ltecho in + *'\$0 --fallback-echo"') + ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + + if test -z "$tagname"; then + trap "$rm \"$ofile\"; exit 1" 1 2 15 + echo "creating $ofile" + $rm "$ofile" + cat < "$ofile" +#! $SHELL + +# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. +# +# Copyright (C) 1996-2000 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="sed -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags= + +### BEGIN LIBTOOL CONFIG +EOF + else + echo "appending configuration tag \"$tagname\" to $ofile" + echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" + fi + cfgfile="$ofile" + ;; + +*) + # Double-quote the variables that need it (for aesthetics). + for var in old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ + old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ + old_LN_S old_NM old_RANLIB old_STRIP \ + old_AS old_DLLTOOL old_OBJDUMP \ + old_OBJEXT old_EXEEXT old_reload_flag \ + old_deplibs_check_method old_file_magic_cmd; do + eval "$var=\\\"\$var\\\"" + done + + # Just create a config file. + cfgfile="$ofile.cfg" + if test -z "$tagname"; then + trap "$rm \"$cfgfile\"; exit 1" 1 2 15 + echo "creating $cfgfile" + $rm "$cfgfile" + cat < "$cfgfile" +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) + +### BEGIN LIBTOOL CONFIG +EOF + else + echo "appending to $cfgfile" + echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" + fi + ;; +esac + +cat <> "$cfgfile" +# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# +# AR=$old_AR AR_FLAGS=$old_AR_FLAGS LTCC=$old_LTCC CC=$old_CC \\ +# CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\ +# MAGIC_CMD=$old_MAGIC_CMD LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\ +# LN_S=$old_LN_S NM=$old_NM RANLIB=$old_RANLIB STRIP=$old_STRIP \\ +# AS=$old_AS DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP \\ +# objext=$old_OBJEXT exeext=$old_EXEEXT reload_flag=$old_reload_flag \\ +# deplibs_check_method=$old_deplibs_check_method \\ +# file_magic_cmd=$old_file_magic_cmd \\ +# $0$ltconfig_args +# +# Compiler and other test output produced by $progname, useful for +# debugging $progname, is in ./config.log if it exists. + +# The version of $progname that generated this script. +LTCONFIG_VERSION=$LTCONFIG_VERSION + +# Shell to use when invoking shell scripts. +SHELL=$LTSHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$need_lc + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$ltecho + +# The archiver. +AR=$AR +AR_FLAGS=$AR_FLAGS + +# A C compiler. +LTCC=$LTCC + +# A language-specific compiler. +CC=$CC + +# Is the compiler the GNU C compiler? +with_gcc=$with_gcc + +# The linker used to build libraries. +LD=$LD + +# Whether we need hard or soft links. +LN_S=$LN_S + +# A BSD-compatible nm program. +NM=$NM + +# A symbol stripping program +STRIP=$STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$reload_flag +reload_cmds=$reload_cmds + +# How to pass a linker flag through the compiler. +wl=$wl + +# Object file suffix (normally "o"). +objext="$objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$pic_flag +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$compiler_c_o + +# Must we lock files when doing compilation ? +need_locks=$need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$link_static_flag + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$no_builtin_flag + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$whole_archive_flag_spec + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$thread_safe_flag_spec + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$RANLIB +old_archive_cmds=$old_archive_cmds +old_postinstall_cmds=$old_postinstall_cmds +old_postuninstall_cmds=$old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$old_archive_from_expsyms_cmds + +# Commands used to build and install a shared archive. +archive_cmds=$archive_cmds +archive_expsym_cmds=$archive_expsym_cmds +postinstall_cmds=$postinstall_cmds +postuninstall_cmds=$postuninstall_cmds + +# Commands to strip libraries. +old_striplib=$old_striplib +striplib=$striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$predep_objects + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$postdep_objects + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$predeps + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$postdeps + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$compiler_lib_search_path + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$allow_undefined_flag + +# Flag that forces no undefined symbols. +no_undefined_flag=$no_undefined_flag + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$global_symbol_to_cdecl + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$hardcode_libdir_separator + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$export_symbols_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$include_expsyms + +EOF + +if test -z "$tagname"; then + echo '### END LIBTOOL CONFIG' >> "$ofile" +else + echo "### END LIBTOOL TAG CONFIG: $tagname" >> "$ofile" +fi + +case $ltmain in +*.sh) + echo >> "$ofile" + if test -z "$tagname"; then + case $host_os in + aix3*) + cat <<\EOF >> "$ofile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + cat <<'EOF' >> "$ofile" + # This is a source program that is used to create dlls on Windows + # Don't remove nor modify the starting and closing comments +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ + # This is a source program that is used to create import libraries + # on Windows for dlls which lack them. Don't remove nor modify the + # starting and closing comments +# /* impgen.c starts here */ +# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. +# +# This file is part of GNU libtool. +# +# 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 /* for printf() */ +# #include /* for open(), lseek(), read() */ +# #include /* for O_RDONLY, O_BINARY */ +# #include /* for strdup() */ +# +# /* O_BINARY isn't required (or even defined sometimes) under Unix */ +# #ifndef O_BINARY +# #define O_BINARY 0 +# #endif +# +# static unsigned int +# pe_get16 (fd, offset) +# int fd; +# int offset; +# { +# unsigned char b[2]; +# lseek (fd, offset, SEEK_SET); +# read (fd, b, 2); +# return b[0] + (b[1]<<8); +# } +# +# static unsigned int +# pe_get32 (fd, offset) +# int fd; +# int offset; +# { +# unsigned char b[4]; +# lseek (fd, offset, SEEK_SET); +# read (fd, b, 4); +# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); +# } +# +# static unsigned int +# pe_as32 (ptr) +# void *ptr; +# { +# unsigned char *b = ptr; +# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); +# } +# +# int +# main (argc, argv) +# int argc; +# char *argv[]; +# { +# int dll; +# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; +# unsigned long export_rva, export_size, nsections, secptr, expptr; +# unsigned long name_rvas, nexp; +# unsigned char *expdata, *erva; +# char *filename, *dll_name; +# +# filename = argv[1]; +# +# dll = open(filename, O_RDONLY|O_BINARY); +# if (dll < 1) +# return 1; +# +# dll_name = filename; +# +# for (i=0; filename[i]; i++) +# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') +# dll_name = filename + i +1; +# +# pe_header_offset = pe_get32 (dll, 0x3c); +# opthdr_ofs = pe_header_offset + 4 + 20; +# num_entries = pe_get32 (dll, opthdr_ofs + 92); +# +# if (num_entries < 1) /* no exports */ +# return 1; +# +# export_rva = pe_get32 (dll, opthdr_ofs + 96); +# export_size = pe_get32 (dll, opthdr_ofs + 100); +# nsections = pe_get16 (dll, pe_header_offset + 4 +2); +# secptr = (pe_header_offset + 4 + 20 + +# pe_get16 (dll, pe_header_offset + 4 + 16)); +# +# expptr = 0; +# for (i = 0; i < nsections; i++) +# { +# char sname[8]; +# unsigned long secptr1 = secptr + 40 * i; +# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); +# unsigned long vsize = pe_get32 (dll, secptr1 + 16); +# unsigned long fptr = pe_get32 (dll, secptr1 + 20); +# lseek(dll, secptr1, SEEK_SET); +# read(dll, sname, 8); +# if (vaddr <= export_rva && vaddr+vsize > export_rva) +# { +# expptr = fptr + (export_rva - vaddr); +# if (export_rva + export_size > vaddr + vsize) +# export_size = vsize - (export_rva - vaddr); +# break; +# } +# } +# +# expdata = (unsigned char*)malloc(export_size); +# lseek (dll, expptr, SEEK_SET); +# read (dll, expdata, export_size); +# erva = expdata - export_rva; +# +# nexp = pe_as32 (expdata+24); +# name_rvas = pe_as32 (expdata+32); +# +# printf ("EXPORTS\n"); +# for (i = 0; i> "$ofile" || (rm -f "$ofile"; exit 1) + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + + chmod +x "$ofile" + fi + ;; + +*) + # Compile the libtool program. + echo "FIXME: would compile $ltmain" + ;; +esac + +# Update the list of available tags. +if test -n "$tagname"; then + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" $ofile | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + # Append the new tag name to the list of available tags. + available_tags="$available_tags $tagname" + + # Now substitute the updated of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' ${ofile} > ${ofile}.new"; then + mv ${ofile}.new ${ofile} + chmod +x "$ofile" + else + rm -f ${ofile}.new + echo "$progname: unable to update list of available tagged configurations." + exit 1 + fi +fi + +# Don't cache tagged configuration! +test -n "$cache_file" && test -z "$tagname" || exit 0 + +# AC_CACHE_SAVE +trap '' 1 2 15 +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +exit 0 + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/bibletime-doc/admin/ltmain.sh b/bibletime-doc/admin/ltmain.sh new file mode 100644 index 0000000..1f5c51a --- /dev/null +++ b/bibletime-doc/admin/ltmain.sh @@ -0,0 +1,5395 @@ +# ltmain.sh - Provide generalized library-building support services. +# NOTE: Changing this file will not affect anything until you rerun ltconfig. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Check that we have a working $echo. +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell, and then maybe $echo will work. + exec $SHELL "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat <&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + echo "$modename: not configured to build any kind of library" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +# Global variables. +mode=$default_mode +nonopt= +prev= +prevopt= +run= +show="$echo" +show_help= +execute_dlfiles= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" + +# Parse our command line options once, thoroughly. +while test $# -gt 0 +do + arg="$1" + shift + + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + execute_dlfiles) + execute_dlfiles="$execute_dlfiles $arg" + ;; + tag) + tagname="$arg" + + # Check whether tagname contains only valid characters + case $tagname in + *[!-_A-Za-z0-9,/]*) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then + taglist="$taglist $tagname" + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" + else + echo "$progname: ignoring unknown tag $tagname" 1>&2 + fi + ;; + *) + eval "$prev=\$arg" + ;; + esac + + prev= + prevopt= + continue + fi + + # Have we seen a non-optional argument yet? + case $arg in + --help) + show_help=yes + ;; + + --version) + echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" + exit 0 + ;; + + --config) + sed -n -e '/^### BEGIN LIBTOOL CONFIG/,/^### END LIBTOOL CONFIG/p' < "$0" + # Now print the configurations for the tags. + for tagname in $taglist; do + sed -n -e "/^### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" + done + exit 0 + ;; + + --debug) + echo "$progname: enabling shell trace mode" + set -x + ;; + + --dry-run | -n) + run=: + ;; + + --features) + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + exit 0 + ;; + + --finish) mode="finish" ;; + + --mode) prevopt="--mode" prev=mode ;; + --mode=*) mode="$optarg" ;; + + --quiet | --silent) + show=: + ;; + + --tag) prevopt="--tag" prev=tag ;; + --tag=*) + set tag "$optarg" ${1+"$@"} + shift + prev=tag + ;; + + -dlopen) + prevopt="-dlopen" + prev=execute_dlfiles + ;; + + -*) + $echo "$modename: unrecognized option \`$arg'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + + *) + nonopt="$arg" + break + ;; + esac +done + +if test -n "$prevopt"; then + $echo "$modename: option \`$prevopt' requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 +fi + +if test -z "$show_help"; then + + # Infer the operation mode. + if test -z "$mode"; then + case $nonopt in + *cc | *++ | gcc* | *-gcc*) + mode=link + for arg + do + case $arg in + -c) + mode=compile + break + ;; + esac + done + ;; + *db | *dbx | *strace | *truss) + mode=execute + ;; + *install*|cp|mv) + mode=install + ;; + *rm) + mode=uninstall + ;; + *) + # If we have no mode, but dlfiles were specified, then do execute mode. + test -n "$execute_dlfiles" && mode=execute + + # Just use the default operation mode. + if test -z "$mode"; then + if test -n "$nonopt"; then + $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 + else + $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 + fi + fi + ;; + esac + fi + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$execute_dlfiles" && test "$mode" != execute; then + $echo "$modename: unrecognized option \`-dlopen'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$modename --help --mode=$mode' for more information." + + # These modes are in order of execution frequency so that they run quickly. + case $mode in + # libtool compile mode + compile) + modename="$modename: compile" + # Get the compilation command and the source file. + base_compile= + prev= + lastarg= + srcfile="$nonopt" + suppress_output= + + user_target=no + for arg + do + case $prev in + "") ;; + xcompiler) + # Aesthetically quote the previous argument. + prev= + lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + + case $arg in + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + # Accept any command-line options. + case $arg in + -o) + if test "$user_target" != "no"; then + $echo "$modename: you cannot specify \`-o' more than once" 1>&2 + exit 1 + fi + user_target=next + ;; + + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` + lastarg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + lastarg="$lastarg $arg" + done + IFS="$save_ifs" + lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` + + # Add the arguments to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + case $user_target in + next) + # The next one is the -o target name + user_target=yes + continue + ;; + yes) + # We got the output file + user_target=set + libobj="$arg" + continue + ;; + esac + + # Accept the current argument as the source file. + lastarg="$srcfile" + srcfile="$arg" + + # Aesthetically quote the previous argument. + + # Backslashify any backslashes, double quotes, and dollar signs. + # These are the only characters that are still specially + # interpreted inside of double-quoted scrings. + lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $lastarg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + lastarg="\"$lastarg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + done + + case $user_target in + set) + ;; + no) + # Get the name of the library object. + libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` + ;; + *) + $echo "$modename: you must specify a target with \`-o'" 1>&2 + exit 1 + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + xform='[cCFSfmso]' + case $libobj in + *.ada) xform=ada ;; + *.adb) xform=adb ;; + *.ads) xform=ads ;; + *.asm) xform=asm ;; + *.c++) xform=c++ ;; + *.cc) xform=cc ;; + *.class) xform=class ;; + *.cpp) xform=cpp ;; + *.cxx) xform=cxx ;; + *.f90) xform=f90 ;; + *.for) xform=for ;; + *.java) xform=java ;; + esac + + libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` + + case $libobj in + *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; + *) + $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 + exit 1 + ;; + esac + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base compile + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir= + else + xdir=$xdir/ + fi + lobj=${xdir}$objdir/$objname + + if test -z "$base_compile"; then + $echo "$modename: you must specify a compilation command" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + $run $rm $removelist + trap "$run $rm $removelist; exit 1" 1 2 15 + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2*) + pic_mode=default + ;; + esac + if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + removelist="$removelist $output_obj $lockfile" + trap "$run $rm $removelist; exit 1" 1 2 15 + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $run ln "$0" "$lockfile" 2>/dev/null; do + $show "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + echo "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + echo $srcfile > "$lockfile" + fi + + if test -n "$fix_srcfile_path"; then + eval srcfile=\"$fix_srcfile_path\" + fi + + $run $rm "$libobj" "${libobj}T" + + # Create a libtool object file (analogous to a ".la" file), + # but don't create it if we're doing a dry run. + test -z "$run" && cat > ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "x$output_obj" != "x$lobj"; then + $show "$mv $output_obj $lobj" + if $run $mv $output_obj $lobj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the PIC object to the libtool object file. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed + if test -n "$output_obj" && test "x$output_obj" != "x$obj"; then + $show "$mv $output_obj $obj" + if $run $mv $output_obj $obj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + fi + build_libtool_libs=no + build_old_libs=yes + prefer_static_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test $# -gt 0; do + arg="$1" + base_compile="$base_compile $arg" + shift + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test + ;; + *) qarg=$arg ;; + esac + libtool_args="$libtool_args $qarg" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command="$compile_command @OUTPUT@" + finalize_command="$finalize_command @OUTPUT@" + ;; + esac + + case $prev in + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command="$compile_command @SYMFILE@" + finalize_command="$finalize_command @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + if test ! -f "$arg"; then + $echo "$modename: symbol file \`$arg' does not exist" + exit 1 + fi + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat $save_arg` + do +# moreargs="$moreargs $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + done + else + $echo "$modename: link input file \`$save_arg' does not exist" + exit 1 + fi + arg=$save_arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi + prev= + continue + ;; + xcompiler) + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + xlinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $wl$qarg" + prev= + compile_command="$compile_command $wl$qarg" + finalize_command="$finalize_command $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 + continue + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: not more than one -exported-symbols argument allowed" + exit 1 + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix*) + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + ;; + esac + continue + ;; + + -L*) + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 + exit 1 + fi + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "*) ;; + *) + deplibs="$deplibs -L$dir" + lib_search_path="$lib_search_path $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$dir:"*) ;; + *) dllsearchpath="$dllsearchpath:$dir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "$arg" = "-lc"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # These systems don't actually have c library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + elif test "$arg" = "-lm"; then + case $host in + *-*-cygwin* | *-*-pw32* | *-*-beos*) + # These systems don't actually have math library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody math library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + fi + deplibs="$deplibs $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # The PATH hackery in wrapper scripts is required on Windows + # in order for the loader to find any dlls it needs. + $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 + $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 + fast_install=no + ;; + *) + no_install=yes + ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + continue + ;; + + -static) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Wl,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $wl$flag" + linker_flags="$linker_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + # Some other compiler flag. + -* | +*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + + *.$objext) + # A standard object. + objs="$objs $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs="$deplibs $arg" + old_deplibs="$old_deplibs $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles="$dlfiles $arg" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles="$dlprefiles $arg" + prev= + else + deplibs="$deplibs $arg" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + esac + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + done + + if test -n "$prev"; then + $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base link + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in $compile_command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` + if test "X$output_objdir" = "X$output"; then + output_objdir="$objdir" + else + output_objdir="$output_objdir/$objdir" + fi + # Create the object directory. + if test ! -d $output_objdir; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + status=$? + if test $status -ne 0 && test ! -d $output_objdir; then + exit $status + fi + fi + + # Determine the type of output + case $output in + "") + $echo "$modename: you must specify an output file" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + case "$libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + libs="$libs $deplib" + done + + if test $linkmode = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + uninst_deplibs= # uninstalled libtool libraries + uninst_path= # paths that contain uninstalled libtool libraries + case $linkmode in + lib) + passes="conv link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 + exit 1 + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + for pass in $passes; do + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test $linkmode = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test $pass = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + for deplib in $libs; do + lib= + found=no + case $deplib in + -l*) + if test $linkmode != lib && test $linkmode != prog; then + $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 + continue + fi + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` + for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do + # Search the libtool library + lib="$searchdir/lib${name}.la" + if test -f "$lib"; then + found=yes + break + fi + done + if test "$found" != yes; then + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test $pass = conv && continue + newdependency_libs="$deplib $newdependency_libs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + prog) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test $pass = scan; then + deplibs="$deplib $deplibs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + ;; + *) + $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 + ;; + esac + continue + ;; + -R*) + if test $pass = link; then + dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) lib="$deplib" ;; + *.$libext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + if test "$deplibs_check_method" != pass_all; then + echo + echo "*** Warning: This library needs some functionality provided by $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + echo + echo "*** Warning: Linking the shared library $output against the" + echo "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + continue + ;; + prog) + if test $pass != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac + ;; + *.lo | *.$objext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + elif test $linkmode = prog; then + if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles="$newdlprefiles $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles="$newdlfiles $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac + if test $found = yes || test -f "$lib"; then : + else + $echo "$modename: cannot find the library \`$lib'" 1>&2 + exit 1 + fi + + # Check to see that this really is a libtool archive. + if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + # If the library was installed with an old release of libtool, + # it will not redefine variable installed. + installed=yes + + # Read the .la file + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test $linkmode != prog && test $linkmode != lib; }; then + test -n "$dlopen" && dlfiles="$dlfiles $dlopen" + test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" + fi + + if test $pass = conv; then + # only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + # It is a libtool convenience library, so add in its objects. + convenience="$convenience $ladir/$objdir/$old_library" + old_convenience="$old_convenience $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + elif test $linkmode != prog && test $linkmode != lib; then + $echo "$modename: \`$lib' is not a convenience library" 1>&2 + exit 1 + fi + continue + fi + + # Get the name of the library we link against. + linklib= + for l in $old_library $library_names; do + linklib="$l" + done + if test -z "$linklib"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + + # This library was specified with -dlopen. + if test $pass = dlopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles="$dlprefiles $lib $dependency_libs" + else + newdlfiles="$newdlfiles $lib" + fi + continue + fi + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + abs_ladir="$ladir" + fi + ;; + esac + laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + $echo "$modename: warning: library \`$lib' was moved." 1>&2 + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$libdir" + absdir="$libdir" + fi + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + uninst_path="$uninst_path $abs_ladir" + fi + name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + + # This library was specified with -dlpreopen. + if test $pass = dlpreopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles="$newdlprefiles $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles="$newdlprefiles $dir/$dlname" + else + newdlprefiles="$newdlprefiles $dir/$linklib" + fi + fi + + if test -z "$libdir"; then + # link the convenience library + if test $linkmode = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + if test $linkmode = prog && test $pass != link; then + newlib_search_path="$newlib_search_path $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test + esac + # Need to link against all dependency_libs? + if test $linkalldeplibs = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + continue + fi + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var"; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath " in + *" $dir "*) ;; + *" $absdir "*) ;; + *) temp_rpath="$temp_rpath $dir" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + uninst_deplibs="$uninst_deplibs $lib" + need_relink=yes + fi + # This is a shared library + if test $linkmode = lib && test "$hardcode_into_libs" = all; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + realname="$2" + shift; shift + libname=`eval \\$echo \"$libname_spec\"` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin*) + major=`expr $current - $age` + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + soname=`echo $soroot | sed -e 's/^.*\///'` + newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + $show "extracting exported symbol list from \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$extract_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + $show "generating import library for \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$old_archive_from_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi + + if test $linkmode = prog || test "$mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + $echo "$modename: configuration error: unsupported hardcode properties" + exit 1 + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; + esac + fi + if test $linkmode = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && \ + test "$hardcode_minus_L" != yes && \ + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + fi + fi + fi + + if test $linkmode = prog || test "$mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + add="-l$name" + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + add="-l$name" + fi + + if test $linkmode = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test $linkmode = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + echo "*** Warning: This library needs some functionality provided by $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + convenience="$convenience $dir/$old_library" + old_convenience="$old_convenience $dir/$old_library" + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi + + if test $linkmode = lib; then + if test -n "$dependency_libs" && + { test $hardcode_into_libs != yes || test $build_old_libs = yes || + test $link_static = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath="$xrpath $temp_xrpath";; + esac;; + *) temp_deplibs="$temp_deplibs $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path="$newlib_search_path $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + + if test $link_all_deplibs != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + case $deplib in + -L*) path="$deplib" ;; + *.la) + dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$deplib" && dir="." + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + fi + ;; + esac + if grep "^installed=no" $deplib > /dev/null; then + path="-L$absdir/$objdir" + else + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + if test "$absdir" != "$libdir"; then + $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 + fi + path="-L$absdir" + fi + ;; + *) continue ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi + fi + done + dependency_libs="$newdependency_libs" + if test $pass = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test $pass != dlopen; then + if test $pass != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path="$lib_search_path $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Make sure that $var contains only unique libraries + # and add them in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + case "$deplib" in + -L*) new_libs="$deplib $new_libs" ;; + *) + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done + fi + done + if test $linkmode = prog; then + dlfiles="$newdlfiles" + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 + fi + + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 + fi + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs="$objs$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + eval libname=\"$libname_spec\" + ;; + *) + if test "$module" = no; then + $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + eval libname=\"$libname_spec\" + else + libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 + exit 1 + else + echo + echo "*** Warning: Linking the shared library $output against the non-libtool" + echo "*** objects $objs is not portable!" + libobjs="$libobjs $objs" + fi + fi + + if test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 + fi + + set dummy $rpath + if test $# -gt 2; then + $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + fi + install_libdir="$2" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 + fi + else + + # Parse the version information argument. + IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + IFS="$save_ifs" + + if test -n "$8"; then + $echo "$modename: too many parameters to \`-version-info'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + current="$2" + revision="$3" + age="$4" + + # Check that each of the things are valid numbers. + case $current in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $revision in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $age in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + if test $age -gt $current; then + $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + minor_current=`expr $current + 1` + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current"; + ;; + + irix) + major=`expr $current - $age + 1` + verstring="sgi$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test $loop != 0; do + iface=`expr $revision - $loop` + loop=`expr $loop - 1` + verstring="sgi$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + ;; + + osf) + major=`expr $current - $age` + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test $loop != 0; do + iface=`expr $current - $loop` + loop=`expr $loop - 1` + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring="$verstring:${current}.0" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + major=`expr $current - $age` + versuffix="-$major" + ;; + + *) + $echo "$modename: unknown library version type \`$version_type'" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + verstring="0.0" + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + fi + + if test "$mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`echo "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + removelist="$removelist $p" + ;; + *) ;; + esac + done + if test -n "$removelist"; then + $show "${rm}r $removelist" + $run ${rm}r $removelist + fi + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs="$oldlibs $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + for path in $uninst_path; do + lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` + deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` + dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` + done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + temp_xrpath="$temp_xrpath -R$libdir" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + if test $hardcode_into_libs != yes || test $build_old_libs = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles="$dlfiles $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles="$dlprefiles $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test $build_libtool_need_lc = "yes"; then + deplibs="$deplibs -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behaviour. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $rm conftest.c + cat > conftest.c </dev/null` + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null \ + | grep " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | sed 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ + | sed 10q \ + | egrep "$file_magic_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ + -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | + grep . >/dev/null; then + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + fi + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + echo "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test $allow_undefined = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + if test $hardcode_into_libs = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath="$dep_rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval dep_rpath=\"$hardcode_libdir_flag_spec\" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval library_names=\"$library_names_spec\" + set dummy $library_names + realname="$2" + shift; shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test x$dlname = x; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + for link + do + linknames="$linknames $link" + done + +# # Ensure that we have .o objects for linkers which dislike .lo +# # (e.g. aix) in case we are running --disable-static +# for obj in $libobjs; do +# xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$obj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# if test ! -f $xdir/$oldobj && test "$baseobj" != "$oldobj"; then +# $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" +# $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? +# fi +# done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + eval cmds=\"$export_symbols_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + if test -n "$export_symbols_regex"; then + $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" + $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + $show "$mv \"${export_symbols}T\" \"$export_symbols\"" + $run eval '$mv "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' + fi + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags="$linker_flags $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # The command line is too long to link in one step, link piecewise. + $echo "creating reloadable object files..." + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + delfiles= + last_robj= + k=1 + output=$output_objdir/$save_output-${k}.$objext + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + eval test_cmds=\"$reload_cmds $objlist $last_robj\" + if test "X$objlist" = X || + { len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; }; then + objlist="$objlist $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test $k -eq 1 ; then + # The first file doesn't have a previous command to add. + eval concat_cmds=\"$reload_cmds $objlist $last_robj\" + else + # All subsequent reloadable object files will link in + # the last one created. + eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" + fi + last_robj=$output_objdir/$save_output-${k}.$objext + k=`expr $k + 1` + output=$output_objdir/$save_output-${k}.$objext + objlist=$obj + len=1 + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" + + # Set up a command to remove the reloadale object files + # after they are used. + i=0 + while test $i -lt $k + do + i=`expr $i + 1` + delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" + done + + $echo "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + + # Append the command to remove the reloadable object files + # to the just-reset $cmds. + eval cmds=\"\$cmds~$rm $delfiles\" + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? + exit 0 + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 + fi + + case $output in + *.lo) + if test -n "$objs$old_deplibs"; then + $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 + exit 1 + fi + libobj="$output" + obj=`$echo "X$output" | $Xsed -e "$lo2o"` + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $run $rm $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${obj}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $run eval "echo timestamp > $libobj" || exit $? + exit 0 + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" +# else +# # Just create a symlink. +# $show $rm $libobj +# $run $rm $libobj +# xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$libobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# $show "(cd $xdir && $LN_S $oldobj $baseobj)" +# $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + ;; + + prog) + case $host in + *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; + esac + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 + fi + + if test "$preload" = yes; then + if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && + test "$dlopen_self_static" = unknown; then + $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." + fi + fi + + compile_command="$compile_command $compile_deplibs" + finalize_command="$finalize_command $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$libdir:"*) ;; + *) dllsearchpath="$dllsearchpath:$libdir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + dlsyms= + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + dlsyms="${outputname}S.c" + else + $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 + fi + fi + + if test -n "$dlsyms"; then + case $dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${outputname}.nm" + + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" + + # Parse the name list into a source file. + $show "creating $output_objdir/$dlsyms" + + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ +/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ +/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* Prevent the only kind of declaration conflicts we can make. */ +#define lt_preloaded_symbols some_other_symbol + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + $show "generating symbol list for \`$output'" + + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles="$objs$old_deplibs" + for arg in $progfiles; do + $show "extracting global C symbols from \`$arg'" + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + if test -n "$export_symbols_regex"; then + $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$output.exp" + $run $rm $export_symbols + $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + else + $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' + $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' + $run eval 'mv "$nlist"T "$nlist"' + fi + fi + + for arg in $dlprefiles; do + $show "extracting global C symbols from \`$arg'" + name=`echo "$arg" | sed -e 's%^.*/%%'` + $run eval 'echo ": $name " >> "$nlist"' + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -z "$run"; then + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $mv "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then + : + else + grep -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$dlsyms" + fi + + $echo >> "$output_objdir/$dlsyms" "\ + +#undef lt_preloaded_symbols + +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{\ +" + + sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ + -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ + < "$nlist" >> "$output_objdir/$dlsyms" + + $echo >> "$output_objdir/$dlsyms" "\ + {0, (lt_ptr_t) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + fi + + pic_flag_for_symtable= + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag";; + esac + esac + + # Now compile the dynamic symbol file. + $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" + + # Transform the symbol file into the correct name. + compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + ;; + *) + $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 + exit 1 + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` + fi + + # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G + # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. + # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. + # This does not apply on AIX for ia64, which uses a SysV linker. + case "$host" in + ia64-*-aix5*) ;; + *-*-aix4* | *-*-aix5*) + compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` + finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; + esac + + if test $need_relink = no || test "$build_libtool_libs" != yes; then + # Replace the output file specification. + compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + $show "$link_command" + $run eval "$link_command" + status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $status + fi + + if test -n "$shlibpath_var"; then + # We should set the shlibpath_var + rpath= + for dir in $temp_rpath; do + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) + # Absolute path. + rpath="$rpath$dir:" + ;; + *) + # Relative path: add a thisdir entry. + rpath="$rpath\$thisdir/$dir:" + ;; + esac + done + temp_rpath="$rpath" + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath="$rpath$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $run $rm $output + # Link the executable and exit + $show "$link_command" + $run eval "$link_command" || exit $? + exit 0 + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 + $echo "$modename: \`$output' will be relinked during installation" 1>&2 + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname + + $show "$link_command" + $run eval "$link_command" || exit $? + + # Now create the wrapper script. + $show "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + relink_command="cd `pwd`; $relink_command" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + fi + + # Quote $echo for shipping. + if test "X$echo" = "X$SHELL $0 --fallback-echo"; then + case $0 in + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; + *) qecho="$SHELL `pwd`/$0 --fallback-echo";; + esac + qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` + else + qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` + fi + + # Only actually do things if our run command is non-null. + if test -z "$run"; then + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) output=`echo $output|sed 's,.exe$,,'` ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) exeext=.exe ;; + *) exeext= ;; + esac + $rm $output + trap "$rm $output; exit 1" 1 2 15 + + $echo > $output "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variable: + uninst_deplibs='$uninst_deplibs' +else + # When we are sourced in execute mode, \$file and \$echo are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + echo=\"$qecho\" + file=\"\$0\" + # Make sure echo works. + if test \"X\$1\" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift + elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then + # Yippee, \$echo works! + : + else + # Restart under the correct shell, and then maybe \$echo will work. + exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} + fi + fi\ +" + $echo >> $output "\ + + # Find the directory that this script lives in. + thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` + done + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + echo >> $output "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $mkdir \"\$progdir\" + else + $rm \"\$progdir/\$file\" + fi" + + echo >> $output "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if (eval \$relink_command); then : + else + $rm \"\$progdir/\$file\" + exit 1 + fi + fi + + $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $rm \"\$progdir/\$program\"; + $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $rm \"\$progdir/\$file\" + fi" + else + echo >> $output "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + echo >> $output "\ + + if test -f \"\$progdir/\$program\"; then" + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $echo >> $output "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + + export $shlibpath_var +" + fi + + # fixup the dll searchpath if we need to. + if test -n "$dllsearchpath"; then + $echo >> $output "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + $echo >> $output "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. +" + case $host in + # win32 systems need to use the prog path for dll + # lookup to work + *-*-cygwin* | *-*-pw32*) + $echo >> $output "\ + exec \$progdir/\$program \${1+\"\$@\"} +" + ;; + + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) + $echo >> $output "\ + exec \$progdir\\\\\$program \${1+\"\$@\"} +" + ;; + + *) + $echo >> $output "\ + # Export the path to the program. + PATH=\"\$progdir:\$PATH\" + export PATH + + exec \$program \${1+\"\$@\"} +" + ;; + esac + $echo >> $output "\ + \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" + exit 1 + fi + else + # The program doesn't exist. + \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 + \$echo \"This script is just a wrapper for \$program.\" 1>&2 + echo \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" + chmod +x $output + fi + exit 0 + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$objs$old_deplibs $non_pic_objects" + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + # Add in members from convenience archives. + for xlib in $addlibs; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print | $NL2SP` + done + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + eval cmds=\"$old_archive_from_new_cmds\" + else +# # Ensure that we have .o objects in place in case we decided +# # not to build a shared library, and have fallen back to building +# # static libs even though --disable-static was passed! +# for oldobj in $oldobjs; do +# if test ! -f $oldobj; then +# xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$oldobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` +# obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` +# $show "(cd $xdir && ${LN_S} $obj $baseobj)" +# $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? +# fi +# done + + eval cmds=\"$old_archive_cmds\" + + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the command line is too long to link in one step, link in parts + $echo "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + for obj in $save_oldobjs + do + oldobjs="$objlist $obj" + objlist="$objlist $obj" + eval test_cmds=\"$old_archive_cmds\" + if len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + eval cmds=\"\$concat_cmds~$old_archive_cmds\" + fi + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$generated"; then + $show "${rm}r$generated" + $run ${rm}r$generated + fi + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + $show "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + + # Only create the output if not a dry run. + if test -z "$run"; then + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdependency_libs="$newdependency_libs $libdir/$name" + ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + for lib in $dlfiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlfiles="$newdlfiles $libdir/$name" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlprefiles="$newdlprefiles $libdir/$name" + done + dlprefiles="$newdlprefiles" + fi + $rm $output + # place dlname in correct position for cygwin + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; + esac + $echo > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test $hardcode_into_libs = all && + test "$installed" = no && test $need_relink = yes; then + $echo >> $output "\ +relink_command=\"$relink_command\"" + fi + done + fi + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" + $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? + ;; + esac + exit 0 + ;; + + # libtool install mode + install) + modename="$modename: install" + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then + # Aesthetically quote it. + arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$arg " + arg="$1" + shift + else + install_prog= + arg="$nonopt" + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog$arg" + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + for arg + do + if test -n "$dest"; then + files="$files $dest" + dest="$arg" + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) prev="-f" ;; + -g) prev="-g" ;; + -m) prev="-m" ;; + -o) prev="-o" ;; + -s) + stripme=" -s" + continue + ;; + -*) ;; + + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + prev= + else + dest="$arg" + continue + fi + ;; + esac + + # Aesthetically quote the argument. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog $arg" + done + + if test -z "$install_prog"; then + $echo "$modename: you must specify an install program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -n "$prev"; then + $echo "$modename: the \`$prev' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -z "$files"; then + if test -z "$dest"; then + $echo "$modename: no file or destination specified" 1>&2 + else + $echo "$modename: you must specify a destination" 1>&2 + fi + $echo "$help" 1>&2 + exit 1 + fi + + # Strip any trailing slash from the destination. + dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` + test "X$destdir" = "X$dest" && destdir=. + destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` + + # Not a directory, so check to see that there is only one file specified. + set dummy $files + if test $# -gt 2; then + $echo "$modename: \`$dest' is not a directory" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs="$staticlibs $file" + ;; + + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + library_names= + old_library= + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs="$current_libdirs $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs="$future_libdirs $libdir" ;; + esac + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ + test "X$dir" = "X$file/" && dir= + dir="$dir$objdir" + + if test "$hardcode_into_libs" = all && test -n "$relink_command"; then + $echo "$modename: warning: relinking \`$file'" 1>&2 + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + continue + fi + fi + + # See the names of the shared library. + set dummy $library_names + if test -n "$2"; then + realname="$2" + shift + shift + + srcname="$realname" + test "$hardcode_into_libs" = all && test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + $show "$install_prog $dir/$srcname $destdir/$realname" + $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? + if test -n "$stripme" && test -n "$striplib"; then + $show "$striplib $destdir/$realname" + $run eval "$striplib $destdir/$realname" || exit $? + fi + + if test $# -gt 0; then + # Delete the old symlinks, and create new ones. + for linkname + do + if test "$linkname" != "$realname"; then + $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + fi + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + eval cmds=\"$postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Install the pseudo-library for information purposes. + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + instname="$dir/$name"i + $show "$install_prog $instname $destdir/$name" + $run eval "$install_prog $instname $destdir/$name" || exit $? + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + + # Install the libtool object if requested. + if test -n "$destfile"; then + $show "$install_prog $file $destfile" + $run eval "$install_prog $file $destfile" || exit $? + fi + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` + + $show "$install_prog $staticobj $staticdest" + $run eval "$install_prog \$staticobj \$staticdest" || exit $? + fi + exit 0 + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + uninst_deplibs= + relink_command= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Check the variables that should have been set. + if test -z "$uninst_deplibs"; then + $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 + exit 1 + fi + + finalize=yes + for lib in $uninst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + # If there is no directory component, then add one. + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + fi + libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 + finalize=no + fi + done + + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + if test "$finalize" = yes && test -z "$run"; then + tmpdir="/tmp" + test -n "$TMPDIR" && tmpdir="$TMPDIR" + tmpdir="$tmpdir/libtool-$$" + if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : + else + $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 + continue + fi + file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` + + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" + continue + fi + file="$outputname" + else + $echo "$modename: warning: cannot relink \`$file'" 1>&2 + fi + else + # Install the binary that we compiled earlier. + file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + + # remove .exe since cygwin /usr/bin/install will append another + # one anyways + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + destfile=`echo $destfile | sed -e 's,.exe$,,'` + ;; + esac + ;; + esac + + $show "$install_prog$stripme $file $destfile" + $run eval "$install_prog\$stripme \$file \$destfile" || exit $? + test -n "$outputname" && ${rm}r "$tmpdir" + ;; + esac + done + + for file in $staticlibs; do + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + + $show "$install_prog $file $oldlib" + $run eval "$install_prog \$file \$oldlib" || exit $? + + if test -n "$stripme" && test -n "$striplib"; then + $show "$old_striplib $oldlib" + $run eval "$old_striplib $oldlib" || exit $? + fi + + # Do each command in the postinstall commands. + eval cmds=\"$old_postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$future_libdirs"; then + $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 + fi + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + test -n "$run" && current_libdirs=" -n$current_libdirs" + exec $SHELL $0 --finish$current_libdirs + exit 1 + fi + + exit 0 + ;; + + # libtool finish mode + finish) + modename="$modename: finish" + libdirs="$nonopt" + admincmds= + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for dir + do + libdirs="$libdirs $dir" + done + + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + eval cmds=\"$finish_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || admincmds="$admincmds + $cmd" + done + IFS="$save_ifs" + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $run eval "$cmds" || admincmds="$admincmds + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + exit 0 + + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + echo " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + echo " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + echo " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + echo "See any operating system documentation about shared libraries for" + echo "more information, such as the ld(1) and ld.so(8) manual pages." + echo "----------------------------------------------------------------------" + exit 0 + ;; + + # libtool execute mode + execute) + modename="$modename: execute" + + # The first argument is the command name. + cmd="$nonopt" + if test -z "$cmd"; then + $echo "$modename: you must specify a COMMAND" 1>&2 + $echo "$help" + exit 1 + fi + + # Handle -dlopen flags immediately. + for file in $execute_dlfiles; do + if test ! -f "$file"; then + $echo "$modename: \`$file' is not a file" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + dir= + case $file in + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Read the libtool library. + dlname= + library_names= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" + continue + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + + if test -f "$dir/$objdir/$dlname"; then + dir="$dir/$objdir" + else + $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 + exit 1 + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + ;; + + *) + $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -*) ;; + *) + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` + args="$args \"$file\"" + done + + if test -z "$run"; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved enviroment variables + if test "${save_LC_ALL+set}" = set; then + LC_ALL="$save_LC_ALL"; export LC_ALL + fi + if test "${save_LANG+set}" = set; then + LANG="$save_LANG"; export LANG + fi + + # Now actually exec the command. + eval "exec \$cmd$args" + + $echo "$modename: cannot exec \$cmd$args" + exit 1 + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi + $echo "$cmd$args" + exit 0 + fi + ;; + + # libtool clean and uninstall mode + clean | uninstall) + modename="$modename: $mode" + rm="$nonopt" + files= + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -*) rm="$rm $arg" ;; + *) files="$files $arg" ;; + esac + done + + if test -z "$rm"; then + $echo "$modename: you must specify an RM program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + rmdirs= + + for file in $files; do + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + if test "X$dir" = "X$file"; then + dir=. + objdir="$objdir" + else + objdir="$dir/$objdir" + fi + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + test $mode = uninstall && objdir="$dir" + + # Remember objdir for removal later, being careful to avoid duplicates + if test $mode = clean; then + case " $rmdirs " in + *" $objdir "*) ;; + *) rmdirs="$rmdirs $objdir" ;; + esac + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + . $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles="$rmfiles $objdir/$n" + done + test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" + test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" + + if test $mode = uninstall; then + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + eval cmds=\"$postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + eval cmds=\"$old_postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + # FIXME: should reinstall the best remaining shared library. + fi + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + + # Read the .lo file + . $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" \ + && test "$pic_object" != none; then + rmfiles="$rmfiles $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" \ + && test "$non_pic_object" != none; then + rmfiles="$rmfiles $dir/$non_pic_object" + fi + fi + ;; + + *) + # Do a test to see if this is a libtool program. + if test $mode = clean && + (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + relink_command= + . $dir/$file + + rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles="$rmfiles $objdir/lt-$name" + fi + fi + ;; + esac + $show "$rm $rmfiles" + $run $rm $rmfiles + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + $show "rmdir $dir" + $run rmdir $dir >/dev/null 2>&1 + fi + done + + exit 0 + ;; + + "") + $echo "$modename: you must specify a MODE" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 + ;; + esac + + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 +fi # test -z "$show_help" + +# We need to display help for each of the modes. +case $mode in +"") $echo \ +"Usage: $modename [OPTION]... [MODE-ARG]... + +Provide generalized library-building support services. + + --config show all configuration variables + --debug enable verbose shell tracing +-n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --finish same as \`--mode=finish' + --help display this help message and exit + --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] + --quiet same as \`--silent' + --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + --version print version information + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for +a more detailed description of MODE." + exit 0 + ;; + +clean) + $echo \ +"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + +compile) + $echo \ +"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -static always build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + +execute) + $echo \ +"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + +finish) + $echo \ +"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + +install) + $echo \ +"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + +link) + $echo \ +"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -static do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + +uninstall) + $echo \ +"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + +*) + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; +esac + +echo +$echo "Try \`$modename --help' for more information about other modes." + +exit 0 + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +### END LIBTOOL TAG CONFIG: disable-shared + +### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/bibletime-doc/admin/missing b/bibletime-doc/admin/missing new file mode 100755 index 0000000..5f9da90 --- /dev/null +++ b/bibletime-doc/admin/missing @@ -0,0 +1,265 @@ +#! /bin/sh +# Common stub for a few missing GNU programs while installing. +# Copyright 1996, 1997, 1999, 2000 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +if test $# -eq 0; then + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 +fi + +run=: + +case "$1" in +--run) + # Try to run requested program, and just exit if it succeeds. + run= + shift + "$@" && exit 0 + ;; +esac + +# If it does not exist, or fails to run (possibly an outdated version), +# try to emulate it. +case "$1" in + + -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]" + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing 0.3 - GNU automake" + ;; + + -*) + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 + ;; + + aclocal) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`acinclude.m4' or \`configure.in'. 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 missing on your system. You should only need it if + you modified \`configure.in'. 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 missing on your system. You should only need it if + you modified \`acconfig.h' or \`configure.in'. 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.in` + 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 missing on your system. You should only need it if + you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'. + 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 + ;; + + bison|yacc) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. 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 missing on your system. 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 missing on your system. 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 missing on your system. 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." + file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` + if test -z "$file"; then + file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` + file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` + fi + touch $file + ;; + + tar) + shift + if test -n "$run"; then + echo 1>&2 "ERROR: \`tar' requires --run" + exit 1 + fi + + # 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 ${1+"$@"} && exit 0 + fi + if (gtar --version > /dev/null 2>&1); then + gtar ${1+"$@"} && exit 0 + fi + firstarg="$1" + if shift; then + case "$firstarg" in + *o*) + firstarg=`echo "$firstarg" | sed s/o//` + tar "$firstarg" ${1+"$@"} && exit 0 + ;; + esac + case "$firstarg" in + *h*) + firstarg=`echo "$firstarg" | sed s/h//` + tar "$firstarg" ${1+"$@"} && 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 you do not seem to have it handy on your + system. 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 prerequirements 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 diff --git a/bibletime-doc/admin/mkinstalldirs b/bibletime-doc/admin/mkinstalldirs new file mode 100755 index 0000000..a2714af --- /dev/null +++ b/bibletime-doc/admin/mkinstalldirs @@ -0,0 +1,40 @@ +#! /bin/sh +# mkinstalldirs --- make directory hierarchy +# Author: Noah Friedman +# Created: 1993-05-16 +# Public domain + +# $Id: mkinstalldirs,v 1.1.1.1 2001/11/24 19:50:34 mgruner Exp $ + +errstatus=0 + +for file +do + set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + shift + + pathcomp= + for d + do + 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 + fi + fi + + pathcomp="$pathcomp/" + done +done + +exit $errstatus + +# mkinstalldirs ends here diff --git a/bibletime-doc/admin/ylwrap b/bibletime-doc/admin/ylwrap new file mode 100755 index 0000000..8aa0314 --- /dev/null +++ b/bibletime-doc/admin/ylwrap @@ -0,0 +1,142 @@ +#! /bin/sh +# ylwrap - wrapper for lex/yacc invocations. +# Copyright 1996, 1997, 1998, 1999 Free Software Foundation, Inc. +# Written by Tom Tromey . +# +# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Usage: +# ylwrap PROGRAM INPUT [OUTPUT DESIRED]... -- [ARGS]... +# * PROGRAM is program to run. +# * INPUT is the input file +# * OUTPUT is file PROG generates +# * DESIRED is file we actually want +# * ARGS are passed to PROG +# Any number of OUTPUT,DESIRED pairs may be used. + +# The program to run. +prog="$1" +shift +# Make any relative path in $prog absolute. +case "$prog" in + /* | [A-Za-z]:*) ;; + */*) prog="`pwd`/$prog" ;; +esac + +# The input. +input="$1" +shift +case "$input" in + /* | [A-Za-z]:*) + # Absolute path; do nothing. + ;; + *) + # Relative path. Make it absolute. Why? Because otherwise any + # debugging info in the generated file will point to the wrong + # place. This is really gross. + input="`pwd`/$input" + ;; +esac + +# We don't want to use the absolute path if the input in the current +# directory like when making a tar ball. +input_base=`echo $input | sed -e 's|.*/||'` +if test -f $input_base && cmp $input_base $input >/dev/null 2>&1; then + input=$input_base +fi + +pairlist= +while test "$#" -ne 0; do + if test "$1" = "--"; then + shift + break + fi + pairlist="$pairlist $1" + shift +done + +# FIXME: add hostname here for parallel makes that run commands on +# other machines. But that might take us over the 14-char limit. +dirname=ylwrap$$ +trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15 +mkdir $dirname || exit 1 + +cd $dirname +case "$input" in + /* | [A-Za-z]:*) + # Absolute path; do nothing. + ;; + *) + # Make a symbolic link, hard link or hardcopy. + ln -s ../"$input" . > /dev/null 2>&1 || ln ../"$input" . > /dev/null 2>&1 || cp ../"$input" . + ;; +esac +$prog ${1+"$@"} "$input" +status=$? + +if test $status -eq 0; then + set X $pairlist + shift + first=yes + # Since DOS filename conventions don't allow two dots, + # the DOS version of Bison writes out y_tab.c instead of y.tab.c + # and y_tab.h instead of y.tab.h. Test to see if this is the case. + y_tab_nodot="no" + if test -f y_tab.c || test -f y_tab.h; then + y_tab_nodot="yes" + fi + + while test "$#" -ne 0; do + from="$1" + # Handle y_tab.c and y_tab.h output by DOS + if test $y_tab_nodot = "yes"; then + if test $from = "y.tab.c"; then + from="y_tab.c" + else + if test $from = "y.tab.h"; then + from="y_tab.h" + fi + fi + fi + if test -f "$from"; then + # If $2 is an absolute path name, then just use that, + # otherwise prepend `../'. + case "$2" in + /* | [A-Za-z]:*) target="$2";; + *) target="../$2";; + esac + mv "$from" "$target" || status=$? + else + # A missing file is only an error for the first file. This + # is a blatant hack to let us support using "yacc -d". If -d + # is not specified, we don't want an error when the header + # file is "missing". + if test $first = yes; then + status=1 + fi + fi + shift + shift + first=no + done +else + status=$? +fi + +# Remove the directory. +cd .. +rm -rf $dirname + +exit $status diff --git a/bibletime-doc/bibletime-doc.spec b/bibletime-doc/bibletime-doc.spec new file mode 100644 index 0000000..c15ddce --- /dev/null +++ b/bibletime-doc/bibletime-doc.spec @@ -0,0 +1,76 @@ +%define name bibletime-doc +%define version @VERSION +%define release 1 + +# This should be set to your os. +# Possible values are Mandrake, Red Hat, Turbolinux, Caldera, SuSE, Debian, etc. +%define ostype Debian + +# This should be set to the version of your OS (6.0, 6.1, 6.2, 7.0, 7.1, 7.2, 8 +%define osversion 3.0 + +# This is your cpu i486, i586, i686, ppc, sparc, alfa, etc. +%define buildarch noarch + +# This the RPM group on your system that this will installed into. +# Graphical desktop/KDE, X11/apps, etc. +%define rpmgroup Graphical desktop/KDE + +Summary: BibleTime %{version} is an easy to use Bible study tool for KDE2. +Name: %{name} +Version: %{version} +Release: %{release} +#Icon: bibletime.xpm +Copyright: GPL +Vendor: The team of BibleTime +Url: http://www.bibletime.de +Packager: Brook Humphrey , Joachim Ansorg +Group: %{rpmgroup} +BuildArch: %{buildarch} +Source0: %{name}-%{version}.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}--rootbibletime +Prefix: /usr + +%description +BibleTime %{version}-%{release} is a free and easy to use bible study tool for UNIX systems. + +BibleTime provides easy handling of digitalized texts (Bibles, commentaries and lexicons) and powerful features to work with these texts (search in texts, write own notes, save, print etc.). Bibletime is a frontend for the SWORD Bible Framework. + +This is a relocatable package, you can install it on different target with +rpm -Uvh bibletime-xxx.rpm --prefix /usr/local/opt/apps/noncommercial +default is %{_prefix} + +The SWORD Project is an effort to create an ever expanding software package for research and study of God and His Word. The SWORD Bible Framework allows easy manipulation of Bible texts, commentaries, lexicons, dictionaries, etc. Many frontends are build using this framework. An installed module set may be shared between any frontend using the framework. + +This rpm was compiled on a %{ostype} %{osversion} system for %{buildarch} class cpu's. + +This RPM has these compiled options Sword is compiled %{swordlibs} and KDE/QT is compiled %{kdelibs}. + +Although this binary no longer requires sword to run the source.rpm will not build correctly +without the sword-devel package installed. + +%prep +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/%{name}-%{version} + + + +%setup -q +make -f Makefile.cvs +./configure; +make + +%install +make prefix=$RPM_BUILD_ROOT%{prefix} install + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +#Sword config files +# global BibleTime config files +%{prefix}/share/doc/HTML/*/bibletime/* +%{prefix}/share/locale/*/LC_MESSAGES/bibletime* + + diff --git a/bibletime-doc/bibletime-doc.spec.in b/bibletime-doc/bibletime-doc.spec.in new file mode 100644 index 0000000..6724ad5 --- /dev/null +++ b/bibletime-doc/bibletime-doc.spec.in @@ -0,0 +1,76 @@ +%define name @PACKAGE@ +%define version @VERSION +%define release 1 + +# This should be set to your os. +# Possible values are Mandrake, Red Hat, Turbolinux, Caldera, SuSE, Debian, etc. +%define ostype @DISTRIBUTION@ + +# This should be set to the version of your OS (6.0, 6.1, 6.2, 7.0, 7.1, 7.2, 8 +%define osversion @DISTRIBUTION_VERSION@ + +# This is your cpu i486, i586, i686, ppc, sparc, alfa, etc. +%define buildarch noarch + +# This the RPM group on your system that this will installed into. +# Graphical desktop/KDE, X11/apps, etc. +%define rpmgroup @RPM_GROUP@ + +Summary: BibleTime %{version} is an easy to use Bible study tool for KDE2. +Name: %{name} +Version: %{version} +Release: %{release} +#Icon: bibletime.xpm +Copyright: GPL +Vendor: The team of BibleTime +Url: http://www.bibletime.de +Packager: Brook Humphrey , Joachim Ansorg +Group: %{rpmgroup} +BuildArch: %{buildarch} +Source0: %{name}-%{version}.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}--rootbibletime +Prefix: @RPM_PREFIX@ + +%description +BibleTime %{version}-%{release} is a free and easy to use bible study tool for UNIX systems. + +BibleTime provides easy handling of digitalized texts (Bibles, commentaries and lexicons) and powerful features to work with these texts (search in texts, write own notes, save, print etc.). Bibletime is a frontend for the SWORD Bible Framework. + +This is a relocatable package, you can install it on different target with +rpm -Uvh bibletime-xxx.rpm --prefix /usr/local/opt/apps/noncommercial +default is %{_prefix} + +The SWORD Project is an effort to create an ever expanding software package for research and study of God and His Word. The SWORD Bible Framework allows easy manipulation of Bible texts, commentaries, lexicons, dictionaries, etc. Many frontends are build using this framework. An installed module set may be shared between any frontend using the framework. + +This rpm was compiled on a %{ostype} %{osversion} system for %{buildarch} class cpu's. + +This RPM has these compiled options Sword is compiled %{swordlibs} and KDE/QT is compiled %{kdelibs}. + +Although this binary no longer requires sword to run the source.rpm will not build correctly +without the sword-devel package installed. + +%prep +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/%{name}-%{version} + + + +%setup -q +make -f Makefile.cvs +./configure; +make + +%install +make prefix=$RPM_BUILD_ROOT%{prefix} install + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +#Sword config files +# global BibleTime config files +%{prefix}/share/doc/HTML/*/bibletime/* +%{prefix}/share/locale/*/LC_MESSAGES/bibletime* + + diff --git a/bibletime-doc/bibletime.m4 b/bibletime-doc/bibletime.m4 new file mode 100644 index 0000000..64b08fa --- /dev/null +++ b/bibletime-doc/bibletime.m4 @@ -0,0 +1,156 @@ +## -*- autoconf -*- + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + diff --git a/bibletime-doc/config.guess b/bibletime-doc/config.guess new file mode 100755 index 0000000..ed2e03b --- /dev/null +++ b/bibletime-doc/config.guess @@ -0,0 +1,1321 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002 Free Software Foundation, Inc. + +timestamp='2002-03-20' + +# This file 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. + +# Originally written by Per Bothner . +# Please send patches to . Submit a context +# diff and a properly formatted ChangeLog entry. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + + +dummy=dummy-$$ +trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int dummy(){}" > $dummy.c ; + for c in cc gcc c89 c99 ; do + ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ; + if test $? = 0 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + rm -f $dummy.c $dummy.o $dummy.rel ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + case "${UNAME_MACHINE_ARCH}" in + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE_ARCH}" in + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit 0 ;; + amiga:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + arc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + hp300:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mac68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + macppc:OpenBSD:*:*) + echo powerpc-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvmeppc:OpenBSD:*:*) + echo powerpc-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + pmax:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sgi:OpenBSD:*:*) + echo mipseb-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sun3:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + wgrisc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:OpenBSD:*:*) + echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + alpha:OSF1:*:*) + if test $UNAME_RELEASE = "V4.0"; then + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + fi + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + cat <$dummy.s + .data +\$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text + .globl main + .align 4 + .ent main +main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + eval $set_cc_for_build + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) + UNAME_MACHINE="alpha" + ;; + 1-0) + UNAME_MACHINE="alphaev5" + ;; + 1-1) + UNAME_MACHINE="alphaev56" + ;; + 1-101) + UNAME_MACHINE="alphapca56" + ;; + 2-303) + UNAME_MACHINE="alphaev6" + ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; + 2-1307) + UNAME_MACHINE="alphaev68" + ;; + esac + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit 0 ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit 0 ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit 0;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit 0 ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit 0;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit 0 ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit 0 ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + i86pc:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit 0 ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit 0 ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit 0 ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit 0 ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy \ + && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit 0 ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo rs6000-ibm-aix3.2.5 + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit 0 ;; + *:AIX:*:[45]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`./$dummy` + if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi + rm -f $dummy.c $dummy + fi ;; + esac + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit 0 ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3D:*:*:*) + echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit 0 ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit 0 ;; + i*:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit 0 ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit 0 ;; + x86:Interix*:3*) + echo i386-pc-interix3 + exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit 0 ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + *:GNU:*:*) + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit 0 ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + mips:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef mips + #undef mipsel + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=mipsel + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=mips + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` + rm -f $dummy.c + test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0 + ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-gnu + exit 0 ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-gnu + exit 0 ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit 0 ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit 0 ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit 0 ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit 0 ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit 0 ;; + i*86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + # Set LC_ALL=C to ensure ld outputs messages in English. + ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ + | sed -ne '/supported targets:/!d + s/[ ][ ]*/ /g + s/.*supported targets: *// + s/ .*// + p'` + case "$ld_supported_targets" in + elf32-i386) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + a.out-i386-linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 ;; + coff-i386) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 ;; + "") + # Either a pre-BFD a.out linker (linux-gnuoldld) or + # one that does not give us useful --help. + echo "${UNAME_MACHINE}-pc-linux-gnuoldld" + exit 0 ;; + esac + # Determine whether the default compiler is a.out or elf + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + #ifdef __ELF__ + # ifdef __GLIBC__ + # if __GLIBC__ >= 2 + LIBC=gnu + # else + LIBC=gnulibc1 + # endif + # else + LIBC=gnulibc1 + # endif + #else + #ifdef __INTEL_COMPILER + LIBC=gnu + #else + LIBC=gnuaout + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` + rm -f $dummy.c + test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 + test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit 0 ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit 0 ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit 0 ;; + i*86:*:5:[78]*) + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + exit 0 ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit 0 ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i386. + echo i386-pc-msdosdjgpp + exit 0 ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + M68*:*:R3V[567]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4.3${OS_REL} && exit 0 + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit 0 ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit 0 ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit 0 ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit 0 ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit 0 ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit 0 ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit 0 ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit 0 ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit 0 ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit 0 ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit 0 ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Darwin:*:*) + echo `uname -p`-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + exit 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit 0 ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit 0 ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit 0 ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit 0 ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit 0 ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit 0 ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit 0 ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit 0 ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit 0 ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit 0 ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +eval $set_cc_for_build +cat >$dummy.c < +# include +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0 +rm -f $dummy.c $dummy + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +cat >&2 < in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +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` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibletime-doc/config.sub b/bibletime-doc/config.sub new file mode 100755 index 0000000..f365797 --- /dev/null +++ b/bibletime-doc/config.sub @@ -0,0 +1,1443 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002 Free Software Foundation, Inc. + +timestamp='2002-03-07' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file 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. + +# Please send patches to . Submit a context +# diff and a properly formatted ChangeLog entry. +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit 0;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ + | c4x | clipper \ + | d10v | d30v | dsp16xx \ + | fr30 \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | i370 | i860 | i960 | ia64 \ + | m32r | m68000 | m68k | m88k | mcore \ + | mips | mips16 | mips64 | mips64el | mips64orion | mips64orionel \ + | mips64vr4100 | mips64vr4100el | mips64vr4300 \ + | mips64vr4300el | mips64vr5000 | mips64vr5000el \ + | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \ + | mipsisa32 | mipsisa64 \ + | mn10200 | mn10300 \ + | ns16k | ns32k \ + | openrisc | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | pyramid \ + | sh | sh[34] | sh[34]eb | shbe | shle | sh64 \ + | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ + | strongarm \ + | tahoe | thumb | tic80 | tron \ + | v850 | v850e \ + | we32k \ + | x86 | xscale | xstormy16 | xtensa \ + | z8k) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armv*-* \ + | avr-* \ + | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c54x-* \ + | clipper-* | cydra-* \ + | d10v-* | d30v-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fr30-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | m32r-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | mcore-* \ + | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \ + | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \ + | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | pyramid-* \ + | romp-* | rs6000-* \ + | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* | sh64-* \ + | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ + | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \ + | v850-* | v850e-* | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ + | xtensa-* \ + | ymp-* \ + | z8k-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | j90) + basic_machine=j90-cray + os=-unicos + ;; + crds | unos) + basic_machine=m68k-crds + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + decsystem10* | dec10*) + basic_machine=pdp10-dec + os=-tops10 + ;; + decsystem20* | dec20*) + basic_machine=pdp10-dec + os=-tops20 + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i*86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i*86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i*86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i*86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + morphos) + basic_machine=powerpc-unknown + os=-morphos + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + or32 | or32-*) + basic_machine=or32-unknown + os=-coff + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium | p5 | k5 | k6 | nexgen | viac3) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon) + basic_machine=i686-pc + ;; + pentiumii | pentium2) + basic_machine=i686-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64) basic_machine=powerpc64-unknown + ;; + ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64le | powerpc64little | ppc64-le | powerpc64-little) + basic_machine=powerpc64le-unknown + ;; + ppc64le-* | powerpc64little-*) + basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + s390 | s390-*) + basic_machine=s390-ibm + ;; + s390x | s390x-*) + basic_machine=s390x-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sparclite-wrs | simso-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3d) + basic_machine=alpha-cray + os=-unicos + ;; + t3e) + basic_machine=alphaev5-cray + os=-unicos + ;; + t90) + basic_machine=t90-cray + os=-unicos + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + toad1) + basic_machine=pdp10-xkl + os=-tops20 + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + windows32) + basic_machine=i386-pc + os=-windows32-msvcrt + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + romp) + basic_machine=romp-ibm + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh3 | sh4 | sh3eb | sh4eb) + basic_machine=sh-unknown + ;; + sh64) + basic_machine=sh64-unknown + ;; + sparc | sparcv9 | sparcv9b) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -rtmk-nova*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i*86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -atheos*) + os=-atheos + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -nova*) + os=-rtmk-nova + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + # This must come before the *-dec entry. + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + or32-*) + os=-coff + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-ibm) + os=-aix + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxsim* | -vxworks*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + -vos*) + vendor=stratus + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/bibletime-doc/configure b/bibletime-doc/configure new file mode 100755 index 0000000..db4e5ae --- /dev/null +++ b/bibletime-doc/configure @@ -0,0 +1,7785 @@ +#! /bin/sh + +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.13 +# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: +ac_default_prefix=${KDEDIR:-/usr/local/kde} +ac_help="$ac_help + --disable-fast-perl disable fast Makefile generation (needs perl)" +ac_help="$ac_help + --enable-debug enables debug symbols [default=no]" +ac_help="$ac_help + --disable-debug disables debug output and debug symbols [default=no]" +ac_help="$ac_help + --enable-strict compiles with strict compiler options (may not work!)" +ac_help="$ac_help + --enable-profile creates profiling infos [default=no]" +ac_help="$ac_help + --enable-final build size optimized apps (experimental - needs lots of memory)" +ac_help="$ac_help + --disable-closure don't delay template instantiation" +ac_help="$ac_help + --enable-shared[=PKGS] build shared libraries [default=no]" +ac_help="$ac_help + --enable-static[=PKGS] build static libraries [default=yes]" +ac_help="$ac_help + --enable-fast-install[=PKGS] optimize for fast installation [default=yes]" +ac_help="$ac_help + --with-gnu-ld assume the C compiler uses GNU ld [default=no]" +ac_help="$ac_help + --disable-libtool-lock avoid locking (might break parallel builds)" +ac_help="$ac_help + --with-pic try to use only PIC/non-PIC objects [default=use both]" +ac_help="$ac_help + --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])" +ac_help="$ac_help + --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer" +ac_help="$ac_help + --with-xinerama enable support for Xinerama " +ac_help="$ac_help + --enable-mt link to threaded Qt (experimental)" +ac_help="$ac_help + --with-extra-includes=DIR + adds non standard include paths" +ac_help="$ac_help + --with-extra-libs=DIR adds non standard library paths" +ac_help="$ac_help + --with-qt-dir=DIR where the root of Qt is installed " +ac_help="$ac_help + --with-qt-includes=DIR where the Qt includes are. " +ac_help="$ac_help + --with-qt-libraries=DIR where the Qt library is installed." +ac_help="$ac_help + --disable-rpath do not use the rpath feature of ld" +ac_help="$ac_help + --disable-path-check don't try to find out, where to install" +ac_help="$ac_help + --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] " +ac_help="$ac_help + --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] " +ac_help="$ac_help + --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] " +ac_help="$ac_help + --with-rpm-group=DIR The group which will be used for the RPM system [auto] " + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE +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' + +# Initialize some other variables. +subdirs= +MFLAGS= MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} +# Maximum number of lines to put in a shell here document. +ac_max_here_lines=12 + +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 + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # 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 ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build="$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" ;; + + -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ + | --da=*) + datadir="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) 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) + # 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 << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [same as prefix] + --bindir=DIR user executables in DIR [EPREFIX/bin] + --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] + --libexecdir=DIR program executables in DIR [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data in DIR + [PREFIX/share] + --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data in DIR + [PREFIX/com] + --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] + --libdir=DIR object code libraries in DIR [EPREFIX/lib] + --includedir=DIR C header files in DIR [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] + --infodir=DIR info documentation in DIR [PREFIX/info] + --mandir=DIR man documentation in DIR [PREFIX/man] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --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 +EOF + cat << EOF +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +EOF + if test -n "$ac_help"; then + echo "--enable and --with options recognized:$ac_help" + fi + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$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) + 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 ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.13" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + 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 "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 6 checking for... messages and results +# 5 compiler messages saved in config.log +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>./config.log + +echo "\ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. +" 1>&5 + +# Strip out --no-create and --no-recursion so they do not pile up. +# Also quote any args containing shell metacharacters. +ac_configure_args= +for ac_arg +do + case "$ac_arg" in + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) ;; + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) ac_configure_args="$ac_configure_args $ac_arg" ;; + esac +done + +# NLS nuisances. +# Only set these to C if already set. These must not be set unconditionally +# because not all systems understand e.g. LANG=C (notably SCO). +# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! +# Non-C LC_CTYPE values break the ctype check. +if test "${LANG+set}" = set; then LANG=C; export LANG; fi +if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi +if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi + +# 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 + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=acinclude.m4 + +# 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_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + 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 "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# 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 "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_exeext= +ac_objext=o +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + +ac_aux_dir= +for ac_dir in admin $srcdir/admin; 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 + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in admin $srcdir/admin" 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + + +unset CDPATH + + +# Do some error checking and defaulting for the host and target type. +# The inputs are: +# configure --host=HOST --target=TARGET --build=BUILD NONOPT +# +# The rules are: +# 1. You are not allowed to specify --host, --target, and nonopt at the +# same time. +# 2. Host defaults to nonopt. +# 3. If nonopt is not specified, then host defaults to the current host, +# as determined by config.guess. +# 4. Target and build default to nonopt. +# 5. If nonopt is not specified, then target and build default to host. + +# The aliases save the names the user supplied, while $host etc. +# will get canonicalized. +case $host---$target---$nonopt in +NONE---*---* | *---NONE---* | *---*---NONE) ;; +*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; +esac + + +# Make sure we can run config.sub. +if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : +else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } +fi + +echo $ac_n "checking host system type""... $ac_c" 1>&6 +echo "configure:635: checking host system type" >&5 + +host_alias=$host +case "$host_alias" in +NONE) + case $nonopt in + NONE) + if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : + else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } + fi ;; + *) host_alias=$nonopt ;; + esac ;; +esac + +host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$host" 1>&6 + +echo $ac_n "checking target system type""... $ac_c" 1>&6 +echo "configure:656: checking target system type" >&5 + +target_alias=$target +case "$target_alias" in +NONE) + case $nonopt in + NONE) target_alias=$host_alias ;; + *) target_alias=$nonopt ;; + esac ;; +esac + +target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` +target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$target" 1>&6 + +echo $ac_n "checking build system type""... $ac_c" 1>&6 +echo "configure:674: checking build system type" >&5 + +build_alias=$build +case "$build_alias" in +NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; +esac + +build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` +build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$build" 1>&6 + +test "$host_alias" != "$target_alias" && + test "$program_prefix$program_suffix$program_transform_name" = \ + NONENONEs,x,x, && + program_prefix=${target_alias}- + +if test "$program_transform_name" = s,x,x,; then + program_transform_name= +else + # Double any \ or $. echo might interpret backslashes. + cat <<\EOF_SED > conftestsed +s,\\,\\\\,g; s,\$,$$,g +EOF_SED + program_transform_name="`echo $program_transform_name|sed -f conftestsed`" + rm -f conftestsed +fi +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" + +# sed with no file args requires a program. +test "$program_transform_name" = "" && program_transform_name="s,x,x," + + + + + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + # 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 +# 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" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:733: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/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 + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +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 "$ac_t""$INSTALL" 1>&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_PROGRAM}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + echo $ac_n "checking for -p flag to install""... $ac_c" 1>&6 +echo "configure:790: checking for -p flag to install" >&5 + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + echo "$ac_t""$ac_res" 1>&6 + fi + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi + +echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 +echo "configure:813: checking whether build environment is sane" >&5 +# Just in case +sleep 1 +echo timestamp > conftestfile +# 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 conftestfile 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "$*" != "X $srcdir/configure conftestfile" \ + && test "$*" != "X conftestfile $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 "configure: error: ls -t appears to fail. Make sure there is not a broken +alias in your environment" 1>&2; exit 1; } + fi + + test "$2" = conftestfile + ) +then + # Ok. + : +else + { echo "configure: error: newly created file is older than distributed files! +Check your system clock" 1>&2; exit 1; } +fi +rm -f conftest* +echo "$ac_t""yes" 1>&6 +echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 +echo "configure:851: checking whether ${MAKE-make} sets \${MAKE}" >&5 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftestmake <<\EOF +all: + @echo 'ac_maketemp="${MAKE}"' +EOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +eval `${MAKE-make} -f conftestmake 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 conftestmake +fi +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then + echo "$ac_t""yes" 1>&6 + SET_MAKE= +else + echo "$ac_t""no" 1>&6 + SET_MAKE="MAKE=${MAKE-make}" +fi + + +PACKAGE=bibletime-doc + +VERSION=1.1 + +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } +fi +cat >> confdefs.h <> confdefs.h <&6 +echo "configure:897: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:910: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:923: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:936: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:949: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi + + + + unset CDPATH + + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + + # Check whether --enable-fast-perl or --disable-fast-perl was given. +if test "${enable_fast_perl+set}" = set; then + enableval="$enable_fast_perl" + with_fast_perl=$enableval +else + with_fast_perl=yes +fi + + + + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + + + + + + # Check whether --enable-debug or --disable-debug was given. +if test "${enable_debug+set}" = set; then + enableval="$enable_debug" + + if test $enableval = "no"; then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + +else + kde_use_debug_code="no" + kde_use_debug_define=no + +fi + + + # Check whether --enable-dummyoption or --disable-dummyoption was given. +if test "${enable_dummyoption+set}" = set; then + enableval="$enable_dummyoption" + : +fi + + + # Check whether --enable-strict or --disable-strict was given. +if test "${enable_strict+set}" = set; then + enableval="$enable_strict" + + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + +else + kde_use_strict_options="no" +fi + + + # Check whether --enable-profile or --disable-profile was given. +if test "${enable_profile+set}" = set; then + enableval="$enable_profile" + kde_use_profiling=$enableval +else + kde_use_profiling="no" + +fi + + + CFLAGS=" $CFLAGS" + + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1052: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1082: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_prog_rejected=no + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + break + fi + done + IFS="$ac_save_ifs" +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 $# -gt 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 + set dummy "$ac_dir/$ac_word" "$@" + shift + ac_cv_prog_CC="$@" + fi +fi +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + if test -z "$CC"; then + case "`uname -s`" in + *win32* | *WIN32*) + # Extract the first word of "cl", so it can be a program name with args. +set dummy cl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1133: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="cl" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + fi + test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } +fi + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1165: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext << EOF + +#line 1176 "configure" +#include "confdefs.h" + +main(){return(0);} +EOF +if { (eval echo configure:1181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1207: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:1212: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes +else + GCC= +fi + +ac_test_CFLAGS="${CFLAGS+set}" +ac_save_CFLAGS="$CFLAGS" +CFLAGS= +echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1240: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&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 + + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + for ac_prog in $CCC c++ g++ gcc CC cxx cc++ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1305: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CXX="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CXX="$ac_cv_prog_CXX" +if test -n "$CXX"; then + echo "$ac_t""$CXX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CXX" && break +done +test -n "$CXX" || CXX="gcc" + + +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1337: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 + + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + +cat > conftest.$ac_ext << EOF + +#line 1353 "configure" +#include "confdefs.h" + +int main(){return(0);} +EOF +if { (eval echo configure:1358: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cxx_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cxx_cross=no + else + ac_cv_prog_cxx_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cxx_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6 +if test $ac_cv_prog_cxx_works = no; then + { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1384: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 +cross_compiling=$ac_cv_prog_cxx_cross + +echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 +echo "configure:1389: checking whether we are using GNU C++" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.C <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gxx=yes +else + ac_cv_prog_gxx=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gxx" 1>&6 + +if test $ac_cv_prog_gxx = yes; then + GXX=yes +else + GXX= +fi + +ac_test_CXXFLAGS="${CXXFLAGS+set}" +ac_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS= +echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 +echo "configure:1417: checking whether ${CXX-g++} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.cc +if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes +else + ac_cv_prog_cxx_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6 +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi + + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + +echo $ac_n "checking whether $CXX supports -Wno-long-long""... $ac_c" 1>&6 +echo "configure:1455: checking whether $CXX supports -Wno-long-long" >&5 +kde_cache=`echo Wno-long-long | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -Wno-long-long -c conftest.cc 2>&1`"; then + if test -z "`$CXX -Wno-long-long -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-Wno-long-long $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -Wnon-virtual-dtor""... $ac_c" 1>&6 +echo "configure:1484: checking whether $CXX supports -Wnon-virtual-dtor" >&5 +kde_cache=`echo Wnon-virtual-dtor | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -Wnon-virtual-dtor -c conftest.cc 2>&1`"; then + if test -z "`$CXX -Wnon-virtual-dtor -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fno-builtin""... $ac_c" 1>&6 +echo "configure:1513: checking whether $CXX supports -fno-builtin" >&5 +kde_cache=`echo fno-builtin | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-builtin -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-builtin -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-fno-builtin $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + + case $host in *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + +echo $ac_n "checking whether $CXX supports -pg""... $ac_c" 1>&6 +echo "configure:1565: checking whether $CXX supports -pg" >&5 +kde_cache=`echo pg | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -pg -c conftest.cc 2>&1`"; then + if test -z "`$CXX -pg -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + fi + + +echo $ac_n "checking whether $CXX supports -fno-exceptions""... $ac_c" 1>&6 +echo "configure:1599: checking whether $CXX supports -fno-exceptions" >&5 +kde_cache=`echo fno-exceptions | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-exceptions -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-exceptions -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="$CXXFLAGS -fno-exceptions" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fno-check-new""... $ac_c" 1>&6 +echo "configure:1628: checking whether $CXX supports -fno-check-new" >&5 +kde_cache=`echo fno-check-new | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-check-new -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-check-new -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="$CXXFLAGS -fno-check-new" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fexceptions""... $ac_c" 1>&6 +echo "configure:1657: checking whether $CXX supports -fexceptions" >&5 +kde_cache=`echo fexceptions | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fexceptions -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fexceptions -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + USE_EXCEPTIONS="-fexceptions" +else + echo "$ac_t""no" 1>&6 + : + USE_EXCEPTIONS= +fi + + + USE_RTTI= + + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + { echo "configure: error: You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so" 1>&2; exit 1; } + fi + fi + ;; + esac + + __val=$CXX + __forbid=" -fno-rtti -rpath " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) echo "configure: warning: found forbidden $i in CXX, removing it" 1>&2 ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + CXX=$__new + fi + + __val=$CXXFLAGS + __forbid=" -fno-rtti -rpath " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) echo "configure: warning: found forbidden $i in CXXFLAGS, removing it" 1>&2 ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + CXXFLAGS=$__new + fi + + + + echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6 +echo "configure:1741: checking how to run the C++ preprocessor" >&5 +if test -z "$CXXCPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + CXXCPP="${CXX-g++} -E" + cat > conftest.$ac_ext < +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:1762: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CXXCPP=/lib/cpp +fi +rm -f conftest* + ac_cv_prog_CXXCPP="$CXXCPP" +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross +fi +fi +CXXCPP="$ac_cv_prog_CXXCPP" +echo "$ac_t""$CXXCPP" 1>&6 + + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + + + + # Check whether --enable-final or --disable-final was given. +if test "${enable_final+set}" = set; then + enableval="$enable_final" + kde_use_final=$enableval +else + kde_use_final=no +fi + + + + REPO="" + NOREPO="" + + +echo $ac_n "checking whether $CXX supports -frepo""... $ac_c" 1>&6 +echo "configure:1823: checking whether $CXX supports -frepo" >&5 +kde_cache=`echo frepo | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -frepo -c conftest.cc 2>&1`"; then + if test -z "`$CXX -frepo -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + REPO="-frepo" + NOREPO="-fno-repo" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + + if test -z "$REPO"; then + +echo $ac_n "checking whether $CXX supports -instances=explicit""... $ac_c" 1>&6 +echo "configure:1857: checking whether $CXX supports -instances=explicit" >&5 +kde_cache=`echo instances=explicit | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -instances=explicit -c conftest.cc 2>&1`"; then + if test -z "`$CXX -instances=explicit -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + REPO="-instances=explicit" + NOREPO="-instances=extern" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + fi + + if test -n "$REPO"; then + cat >> confdefs.h <&6 +echo "configure:2017: checking for ld used by GCC" >&5 + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | [A-Za-z]:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 +echo "configure:2047: checking for GNU ld" >&5 +else + echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 +echo "configure:2050: checking for non-GNU ld" >&5 +fi +if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi +fi + +LD="$lt_cv_path_LD" +if test -n "$LD"; then + echo "$ac_t""$LD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } +echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 +echo "configure:2085: checking if the linker ($LD) is GNU ld" >&5 +if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi +fi + +echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6 +with_gnu_ld=$lt_cv_prog_gnu_ld + + +echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 +echo "configure:2102: checking for $LD option to reload object files" >&5 +if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + lt_cv_ld_reload_flag='-r' +fi + +echo "$ac_t""$lt_cv_ld_reload_flag" 1>&6 +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" + +echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 +echo "configure:2114: checking for BSD-compatible nm" >&5 +if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi +fi + +NM="$lt_cv_path_NM" +echo "$ac_t""$NM" 1>&6 + +echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 +echo "configure:2152: checking whether ln -s works" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftestdata +if ln -s X conftestdata 2>/dev/null +then + rm -f conftestdata + ac_cv_prog_LN_S="ln -s" +else + ac_cv_prog_LN_S=ln +fi +fi +LN_S="$ac_cv_prog_LN_S" +if test "$ac_cv_prog_LN_S" = "ln -s"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 +echo "configure:2173: checking how to recognise dependant libraries" >&5 +if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.012) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library' + else + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac + +fi + +echo "$ac_t""$lt_cv_deplibs_check_method" 1>&6 +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method + +if test $host != $build; then + ac_tool_prefix=${host_alias}- +else + ac_tool_prefix= +fi + +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 +echo "configure:2361: checking for ${ac_tool_prefix}file" >&5 +if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="/usr/bin:$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/${ac_tool_prefix}file; then + lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + echo "$ac_t""$MAGIC_CMD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + echo $ac_n "checking for file""... $ac_c" 1>&6 +echo "configure:2423: checking for file" >&5 +if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="/usr/bin:$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/file; then + lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + echo "$ac_t""$MAGIC_CMD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2494: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +if test -z "$ac_cv_prog_RANLIB"; then +if test -n "$ac_tool_prefix"; then + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2526: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +else + RANLIB=":" +fi +fi + +# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2561: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +STRIP="$ac_cv_prog_STRIP" +if test -n "$STRIP"; then + echo "$ac_t""$STRIP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +if test -z "$ac_cv_prog_STRIP"; then +if test -n "$ac_tool_prefix"; then + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2593: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_STRIP="strip" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_STRIP" && ac_cv_prog_STRIP=":" +fi +fi +STRIP="$ac_cv_prog_STRIP" +if test -n "$STRIP"; then + echo "$ac_t""$STRIP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +else + STRIP=":" +fi +fi + + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +libtool_flags="$libtool_flags --enable-dlopen" + +# Check whether --enable-libtool-lock or --disable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then + enableval="$enable_libtool_lock" + : +fi + +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +# Check whether --with-pic or --without-pic was given. +if test "${with_pic+set}" = set; then + withval="$with_pic" + pic_mode="$withval" +else + pic_mode=default +fi + +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '#line 2660 "configure"' > conftest.$ac_ext + if { (eval echo configure:2661: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 +echo "configure:2682: checking whether the C compiler needs -belf" >&5 +if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + lt_cv_cc_needs_belf=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + lt_cv_cc_needs_belf=no +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +fi + +echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6 + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + + +esac + + +echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 +echo "configure:2733: checking for Cygwin environment" >&5 +if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_cygwin=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_cygwin=no +fi +rm -f conftest* +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_cygwin" 1>&6 +CYGWIN= +test "$ac_cv_cygwin" = yes && CYGWIN=yes +echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 +echo "configure:2766: checking for mingw32 environment" >&5 +if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_mingw32=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_mingw32=no +fi +rm -f conftest* +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_mingw32" 1>&6 +MINGW32= +test "$ac_cv_mingw32" = yes && MINGW32=yes + +# Save cache, so that ltconfig can load it +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; } + +# Reload cache, that may have been modified by ltconfig +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log + + + +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| { echo "configure: error: libtool tag configuration failed" 1>&2; exit 1; } +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log + + + + + + + + + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking for object suffix""... $ac_c" 1>&6 +echo "configure:2913: checking for object suffix" >&5 +if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftest* +echo 'int i = 1;' > conftest.$ac_ext +if { (eval echo configure:2919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + for ac_file in conftest.*; do + case $ac_file in + *.c) ;; + *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;; + esac + done +else + { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; } +fi +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_objext" 1>&6 +OBJEXT=$ac_cv_objext +ac_objext=$ac_cv_objext + + + +echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 +echo "configure:2939: checking for executable suffix" >&5 +if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$CYGWIN" = yes || test "$MINGW32" = yes; then + ac_cv_exeext=.exe +else + rm -f conftest* + echo 'int main () { return 0; }' > conftest.$ac_ext + ac_cv_exeext= + if { (eval echo configure:2949: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + for file in conftest.*; do + case $file in + *.$ac_ext | *.c | *.o | *.obj) ;; + *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; + esac + done + else + { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; } + fi + rm -f conftest* + test x"${ac_cv_exeext}" = x && ac_cv_exeext=no +fi +fi + +EXEEXT="" +test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext} +echo "$ac_t""${ac_cv_exeext}" 1>&6 +ac_exeext=$EXEEXT + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + + + + + + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" + + +# Check whether --enable-objprelink or --disable-objprelink was given. +if test "${enable_objprelink+set}" = set; then + enableval="$enable_objprelink" + kde_use_objprelink=$enableval +else + kde_use_objprelink=no +fi + + if test "x$kde_use_objprelink" = "xyes"; then + + + echo $ac_n "checking for objprelink""... $ac_c" 1>&6 +echo "configure:3001: checking for objprelink" >&5 + if test -n "$OBJPRELINK"; then + kde_cv_path="$OBJPRELINK"; + else + kde_cache=`echo objprelink | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/objprelink"; then + if test -n "" + then + evalstr="$dir/objprelink 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/objprelink" + break + fi + else + kde_cv_path="$dir/objprelink" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + kde_use_objprelink=no + else + echo "$ac_t""$kde_cv_path" 1>&6 + OBJPRELINK=$kde_cv_path + + fi + + + if test "x$kde_use_objprelink" = "xyes"; then + echo $ac_n "checking Patching libtool to run objprelink.""... $ac_c" 1>&6 +echo "configure:3058: checking Patching libtool to run objprelink." >&5 + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + echo "$ac_t""done" 1>&6 + fi + fi + + +echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 +echo "configure:3077: checking whether to enable maintainer-specific portions of Makefiles" >&5 + # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then + enableval="$enable_maintainer_mode" + USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no +fi + + echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 + + +if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= +fi + MAINT=$MAINTAINER_MODE_TRUE + + + + + + # Extract the first word of "msgfmt", so it can be a program name with args. +set dummy msgfmt; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3105: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&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 -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"; 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="msgfmt" + ;; +esac +fi +MSGFMT="$ac_cv_path_MSGFMT" +if test -n "$MSGFMT"; then + echo "$ac_t""$MSGFMT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + # Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3139: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$GMSGFMT" in + /*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_GMSGFMT="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" + ;; +esac +fi +GMSGFMT="$ac_cv_path_GMSGFMT" +if test -n "$GMSGFMT"; then + echo "$ac_t""$GMSGFMT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + echo "$ac_t""found msgfmt program is not GNU msgfmt; ignore it" 1>&6 + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + + + + # Extract the first word of "xgettext", so it can be a program name with args. +set dummy xgettext; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3184: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&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 -n "$XGETTEXT"; then + echo "$ac_t""$XGETTEXT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + + if test "$XGETTEXT" != ":"; then + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + echo "$ac_t""found xgettext programs is not GNU xgettext; ignore it" 1>&6 + XGETTEXT=":" + fi + fi + + + +echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 +echo "configure:3228: checking how to run the C preprocessor" >&5 +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # This must be in double quotes, not single quotes, because CPP may get + # substituted into the Makefile and "${CC-cc}" will confuse make. + CPP="${CC-cc} -E" + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3249: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3266: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -nologo -E" + cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3283: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP=/lib/cpp +fi +rm -f conftest* +fi +rm -f conftest* +fi +rm -f conftest* + ac_cv_prog_CPP="$CPP" +fi + CPP="$ac_cv_prog_CPP" +else + ac_cv_prog_CPP="$CPP" +fi +echo "$ac_t""$CPP" 1>&6 + + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + echo $ac_n "checking for main in -lutil""... $ac_c" 1>&6 +echo "configure:3316: checking for main in -lutil" >&5 +ac_lib_var=`echo util'_'main | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lutil $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBUTIL="-lutil" +else + echo "$ac_t""no" 1>&6 +fi + + echo $ac_n "checking for main in -lcompat""... $ac_c" 1>&6 +echo "configure:3352: checking for main in -lcompat" >&5 +ac_lib_var=`echo compat'_'main | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lcompat $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBCOMPAT="-lcompat" +else + echo "$ac_t""no" 1>&6 +fi + + kde_have_crypt= + echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 +echo "configure:3389: checking for crypt in -lcrypt" >&5 +ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lcrypt $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBCRYPT="-lcrypt"; kde_have_crypt=yes +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for crypt in -lc""... $ac_c" 1>&6 +echo "configure:3427: checking for crypt in -lc" >&5 +ac_lib_var=`echo c'_'crypt | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lc $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + kde_have_crypt=yes +else + echo "$ac_t""no" 1>&6 + + echo "configure: warning: you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support" 1>&2 + kde_have_crypt=no + +fi + +fi + + + if test $kde_have_crypt = yes; then + cat >> confdefs.h <&6 +echo "configure:3483: checking for socklen_t" >&5 + if eval "test \"`echo '$''{'ac_cv_socklen_t'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + cat > conftest.$ac_ext < +#include + +int main() { + +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + +; return 0; } +EOF +if { (eval echo configure:3513: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_socklen_t=socklen_t +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + cat > conftest.$ac_ext < +#include + +int main() { + +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + +; return 0; } +EOF +if { (eval echo configure:3534: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_socklen_t=int +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_socklen_t=size_t + +fi +rm -f conftest* + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + +fi + + + echo "$ac_t""$ac_cv_socklen_t" 1>&6 + if test "$ac_cv_socklen_t" != "socklen_t"; then + cat >> confdefs.h <> confdefs.h <&6 +echo "configure:3580: checking for dnet_ntoa in -ldnet" >&5 +ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldnet $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6 +echo "configure:3621: checking for dnet_ntoa in -ldnet_stub" >&5 +ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldnet_stub $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" +else + echo "$ac_t""no" 1>&6 +fi + + fi + echo $ac_n "checking for inet_ntoa""... $ac_c" 1>&6 +echo "configure:3662: checking for inet_ntoa" >&5 +if eval "test \"`echo '$''{'ac_cv_func_inet_ntoa'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char inet_ntoa(); + +int main() { + +/* 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_inet_ntoa) || defined (__stub___inet_ntoa) +choke me +#else +inet_ntoa(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3690: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_inet_ntoa=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_inet_ntoa=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'inet_ntoa`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_inet_ntoa = no; then + echo $ac_n "checking for inet_ntoa in -lnsl""... $ac_c" 1>&6 +echo "configure:3711: checking for inet_ntoa in -lnsl" >&5 +ac_lib_var=`echo nsl'_'inet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lnsl $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" +else + echo "$ac_t""no" 1>&6 +fi + + fi + echo $ac_n "checking for connect""... $ac_c" 1>&6 +echo "configure:3752: checking for connect" >&5 +if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char connect(); + +int main() { + +/* 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_connect) || defined (__stub___connect) +choke me +#else +connect(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3780: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_connect=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_connect=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'connect`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_connect = no; then + echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6 +echo "configure:3801: checking for connect in -lsocket" >&5 +ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lsocket $X_EXTRA_LIBS $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" +else + echo "$ac_t""no" 1>&6 +fi + + fi + + echo $ac_n "checking for remove""... $ac_c" 1>&6 +echo "configure:3843: checking for remove" >&5 +if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char remove(); + +int main() { + +/* 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_remove) || defined (__stub___remove) +choke me +#else +remove(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3871: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_remove=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_remove=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'remove`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_remove = no; then + echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6 +echo "configure:3892: checking for remove in -lposix" >&5 +ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lposix $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" +else + echo "$ac_t""no" 1>&6 +fi + + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + echo $ac_n "checking for shmat""... $ac_c" 1>&6 +echo "configure:3935: checking for shmat" >&5 +if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char shmat(); + +int main() { + +/* 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_shmat) || defined (__stub___shmat) +choke me +#else +shmat(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_shmat=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_shmat=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'shmat`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6 +echo "configure:3981: checking for shmat in -lipc" >&5 +ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lipc $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" +else + echo "$ac_t""no" 1>&6 +fi + +fi + + + # Solaris 2.6 and others need -lresolv for res_init + for ac_func in res_init +do +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +echo "configure:4027: checking for $ac_func" >&5 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* 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(); + +int main() { + +/* 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 +$ac_func(); +#endif + +; return 0; } +EOF +if { (eval echo configure:4055: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_$ac_func=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + cat >> confdefs.h <&6 +kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + cat > conftest.$ac_ext < + +int main() { + +res_init(); + +; return 0; } +EOF +if { (eval echo configure:4090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + cat >> confdefs.h <<\EOF +#define HAVE_RES_INIT 1 +EOF + + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 +fi +rm -f conftest* + LIBS=$kde_libs_safe + +fi +done + + + LIBSOCKET="$X_EXTRA_LIBS" + + + + echo $ac_n "checking for killpg in -lucb""... $ac_c" 1>&6 +echo "configure:4115: checking for killpg in -lucb" >&5 +ac_lib_var=`echo ucb'_'killpg | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lucb $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBUCB="-lucb" +else + echo "$ac_t""no" 1>&6 +fi + + + case $host in *-*-lynxos* ) + echo $ac_n "checking LynxOS header file wrappers""... $ac_c" 1>&6 +echo "configure:4157: checking LynxOS header file wrappers" >&5 + CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__" + echo "$ac_t""disabled" 1>&6 + echo $ac_n "checking for gethostbyname in -lbsd""... $ac_c" 1>&6 +echo "configure:4161: checking for gethostbyname in -lbsd" >&5 +ac_lib_var=`echo bsd'_'gethostbyname | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lbsd $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBSOCKET="-lbsd" +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + + echo $ac_n "checking size of int""... $ac_c" 1>&6 +echo "configure:4203: checking size of int" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_int=4 +else + cat > conftest.$ac_ext < +#include +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(int)); + exit(0); +} +EOF +if { (eval echo configure:4223: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_int=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_int=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_int" 1>&6 +cat >> confdefs.h <&6 +echo "configure:4242: checking size of long" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_long=4 +else + cat > conftest.$ac_ext < +#include +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(long)); + exit(0); +} +EOF +if { (eval echo configure:4262: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_long=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_long=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_long" 1>&6 +cat >> confdefs.h <&6 +echo "configure:4281: checking size of char *" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_char_p'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_char_p=4 +else + cat > conftest.$ac_ext < +#include +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(char *)); + exit(0); +} +EOF +if { (eval echo configure:4301: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_char_p=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_char_p=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_char_p" 1>&6 +cat >> confdefs.h <&6 +echo "configure:4320: checking size of char" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_char'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_char=1 +else + cat > conftest.$ac_ext < +#include +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(char)); + exit(0); +} +EOF +if { (eval echo configure:4340: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_char=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_char=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_char" 1>&6 +cat >> confdefs.h <&6 +echo "configure:4361: checking for dlopen in -ldl" >&5 +ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldl $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + +LIBDL="-ldl" +ac_cv_have_dlfcn=yes + +else + echo "$ac_t""no" 1>&6 +fi + + +echo $ac_n "checking for shl_unload in -ldld""... $ac_c" 1>&6 +echo "configure:4405: checking for shl_unload in -ldld" >&5 +ac_lib_var=`echo dld'_'shl_unload | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + +LIBDL="-ldld" +ac_cv_have_shload=yes + +else + echo "$ac_t""no" 1>&6 +fi + + + + + + +echo $ac_n "checking for extra includes""... $ac_c" 1>&6 +echo "configure:4453: checking for extra includes" >&5 +# Check whether --with-extra-includes or --without-extra-includes was given. +if test "${with_extra_includes+set}" = set; then + withval="$with_extra_includes" + kde_use_extra_includes="$withval" +else + kde_use_extra_includes=NONE + +fi + +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi + + +echo "$ac_t""$kde_use_extra_includes" 1>&6 + +kde_extra_libs= +echo $ac_n "checking for extra libs""... $ac_c" 1>&6 +echo "configure:4484: checking for extra libs" >&5 +# Check whether --with-extra-libs or --without-extra-libs was given. +if test "${with_extra_libs+set}" = set; then + withval="$with_extra_libs" + kde_use_extra_libs=$withval +else + kde_use_extra_libs=NONE + +fi + +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + + + +echo "$ac_t""$kde_use_extra_libs" 1>&6 + + + + +echo $ac_n "checking for libz""... $ac_c" 1>&6 +echo "configure:4518: checking for libz" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_z'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext < + +int main() { +return (zlibVersion() == ZLIB_VERSION); +; return 0; } +EOF +if { (eval echo configure:4544: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_z='-lz'" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_z=no" +fi +rm -f conftest* +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" + +fi +if test ! "$ac_cv_lib_z" = no; then + cat >> confdefs.h <&6 +else + { echo "configure: error: not found. Check your installation and look into config.log" 1>&2; exit 1; } + LIBZ="" + +fi + + +echo $ac_n "checking for X""... $ac_c" 1>&6 +echo "configure:4574: checking for X" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +if eval "test \"`echo '$''{'kde_cv_have_x'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +if test "$ac_x_includes" = NO; then + # Guess where to find include files, by looking for this one X11 .h file. + test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h + + # First, try using that file with no special directory specified. +cat > conftest.$ac_ext < +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:4613: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + rm -rf conftest* + # We can compile using X headers with no special include directory. +ac_x_includes= +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + # Look for the header file in a standard set of common directories. +# Check X11 before X11Rn because it is often a symlink to the current release. + for ac_dir in \ + /usr/X11/include \ + /usr/X11R6/include \ + /usr/X11R5/include \ + /usr/X11R4/include \ + \ + /usr/include/X11 \ + /usr/include/X11R6 \ + /usr/include/X11R5 \ + /usr/include/X11R4 \ + \ + /usr/local/X11/include \ + /usr/local/X11R6/include \ + /usr/local/X11R5/include \ + /usr/local/X11R4/include \ + \ + /usr/local/include/X11 \ + /usr/local/include/X11R6 \ + /usr/local/include/X11R5 \ + /usr/local/include/X11R4 \ + \ + /usr/X386/include \ + /usr/x386/include \ + /usr/XFree86/include/X11 \ + \ + /usr/include \ + /usr/local/include \ + /usr/unsupported/include \ + /usr/athena/include \ + /usr/local/x11r5/include \ + /usr/lpp/Xamples/include \ + \ + /usr/openwin/include \ + /usr/openwin/share/include \ + ; \ + do + if test -r "$ac_dir/$x_direct_test_include"; then + ac_x_includes=$ac_dir + break + fi + done +fi +rm -f conftest* +fi # $ac_x_includes = NO + +if test "$ac_x_libraries" = NO; then + # Check for the libraries. + + test -z "$x_direct_test_library" && x_direct_test_library=Xt + test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc + + # See if we find them without any special options. + # Don't add to $LIBS permanently. + ac_save_LIBS="$LIBS" + LIBS="-l$x_direct_test_library $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + LIBS="$ac_save_LIBS" +# We can link X programs with no special library path. +ac_x_libraries= +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + LIBS="$ac_save_LIBS" +# First see if replacing the include by lib works. +# Check X11 before X11Rn because it is often a symlink to the current release. +for ac_dir in `echo "$ac_x_includes" | sed s/include/lib/` \ + /usr/X11/lib \ + /usr/X11R6/lib \ + /usr/X11R5/lib \ + /usr/X11R4/lib \ + \ + /usr/lib/X11 \ + /usr/lib/X11R6 \ + /usr/lib/X11R5 \ + /usr/lib/X11R4 \ + \ + /usr/local/X11/lib \ + /usr/local/X11R6/lib \ + /usr/local/X11R5/lib \ + /usr/local/X11R4/lib \ + \ + /usr/local/lib/X11 \ + /usr/local/lib/X11R6 \ + /usr/local/lib/X11R5 \ + /usr/local/lib/X11R4 \ + \ + /usr/X386/lib \ + /usr/x386/lib \ + /usr/XFree86/lib/X11 \ + \ + /usr/lib \ + /usr/local/lib \ + /usr/unsupported/lib \ + /usr/athena/lib \ + /usr/local/x11r5/lib \ + /usr/lpp/Xamples/lib \ + /lib/usr/lib/X11 \ + \ + /usr/openwin/lib \ + /usr/openwin/share/lib \ + ; \ +do + for ac_extension in a so sl; do + if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then + ac_x_libraries=$ac_dir + break 2 + fi + done +done +fi +rm -f conftest* +fi # $ac_x_libraries = NO + +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + rm -fr conftestdir +if mkdir conftestdir; then + cd conftestdir + # Make sure to not put "make" in the Imakefile rules, since we grep it out. + cat > Imakefile <<'EOF' +acfindx: + @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"' +EOF + if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then + # GNU make sometimes prints "make[1]: Entering...", which would confuse us. + eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` + # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. + for ac_extension in a so sl; do + if test ! -f $ac_im_usrlibdir/libX11.$ac_extension && + test -f $ac_im_libdir/libX11.$ac_extension; then + ac_im_usrlibdir=$ac_im_libdir; break + fi + done + # Screen out bogus values from the imake configuration. They are + # bogus both because they are the default anyway, and because + # using them would break gcc on systems where it needs fixed includes. + case "$ac_im_incroot" in + /usr/include) ;; + *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes="$ac_im_incroot" ;; + esac + case "$ac_im_usrlibdir" in + /usr/lib | /lib) ;; + *) test -d "$ac_im_usrlibdir" && ac_x_libraries="$ac_im_usrlibdir" ;; + esac + fi + cd .. + rm -fr conftestdir +fi + + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + { echo "configure: error: Can't find X includes. Please check your installation and add the correct paths!" 1>&2; exit 1; } +fi + +if test "$kde_x_libraries" = NO; then + { echo "configure: error: Can't find X libraries. Please check your installation and add the correct paths!" 1>&2; exit 1; } +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" + +fi + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + echo "$ac_t""$have_x" 1>&6 + no_x=yes +else + echo "$ac_t""libraries $kde_x_libraries, headers $kde_x_includes" 1>&6 +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + + + + + + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6 +echo "configure:4863: checking for IceConnectionNumber in -lICE" >&5 +ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lICE $X_EXTRA_LIBS $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBSM="-lSM -lICE" +else + echo "$ac_t""no" 1>&6 +fi + + +LDFLAGS="$ac_save_LDFLAGS" + + + +LIB_X11='-lX11 $(LIBSOCKET)' + + +echo $ac_n "checking for libXext""... $ac_c" 1>&6 +echo "configure:4911: checking for libXext" >&5 +if eval "test \"`echo '$''{'kde_cv_have_libXext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +cat > conftest.$ac_ext < +#ifdef STDC_HEADERS +# include +#endif + +int main() { + +printf("hello Xext\n"); + +; return 0; } +EOF +if { (eval echo configure:4937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + kde_cv_have_libXext=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + kde_cv_have_libXext=no + +fi +rm -f conftest* + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + +fi + + +echo "$ac_t""$kde_cv_have_libXext" 1>&6 + +if test "$kde_cv_have_libXext" = "no"; then + { echo "configure: error: We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either." 1>&2; exit 1; } +fi + +echo $ac_n "checking for Xinerama""... $ac_c" 1>&6 +echo "configure:4964: checking for Xinerama" >&5 + + # Check whether --with-xinerama or --without-xinerama was given. +if test "${with_xinerama+set}" = set; then + withval="$with_xinerama" + + no_xinerama=no + +else + + no_xinerama=yes + + +fi + + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + if eval "test \"`echo '$''{'ac_cv_have_xinerama'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + cat > conftest.$ac_ext < + #include +int main() { +XineramaIsActive(NULL); +; return 0; } +EOF +if { (eval echo configure:5002: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_have_xinerama="yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_have_xinerama="no" +fi +rm -f conftest* + +fi + +else + ac_cv_have_xinerama=no; +fi + +echo "$ac_t""$ac_cv_have_xinerama" 1>&6 + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + cat >> confdefs.h <<\EOF +#define HAVE_XINERAMA 1 +EOF + + LIBXINERAMA="-lXinerama" +fi + + + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + + +if test -z ""; then + kde_qtver=2 + kde_qtsubver=1 +else + kde_qtsubver=`echo "" | sed -e 's#[0-9]\+\.\([0-9]\+\).*#\1#'` + # following is the check if subversion isn´t found in passed argument + if test "$kde_qtsubver" = ""; then + kde_qtsubver=1 + fi + kde_qtver=`echo "" | sed -e 's#^\([0-9]\+\)\..*#\1#'` + if test "$kde_qtver" = "1"; then + kde_qtsubver=42 + else + # this is the version number fallback to 2.1, unless major version is 1 or 2 + if test "$kde_qtver" != "2"; then + kde_qtver=2 + kde_qtsubver=1 + fi + fi +fi + +if test -z ""; then + if test $kde_qtver = 2; then + if test $kde_qtsubver -gt 0; then + kde_qt_minversion=">= Qt 2.2.2" + else + kde_qt_minversion=">= Qt 2.0.2" + fi + else + kde_qt_minversion=">= 1.42 and < 2.0" + fi +else + kde_qt_minversion= +fi + +if test -z ""; then + if test $kde_qtver = 2; then + if test $kde_qtsubver -gt 0; then + kde_qt_verstring="QT_VERSION >= 222" + else + kde_qt_verstring="QT_VERSION >= 200" + fi + else + kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200" + fi +else + kde_qt_verstring= +fi + +if test $kde_qtver = 2; then + kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt" +else + kde_qt_dirs="$QTDIR /usr/lib/qt" +fi + + + + +echo $ac_n "checking for libpng""... $ac_c" 1>&6 +echo "configure:5107: checking for libpng" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_png'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext < + +int main() { + + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + +; return 0; } +EOF +if { (eval echo configure:5137: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_png='-lpng $LIBZ -lm'" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_png=no" + +fi +rm -f conftest* +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" + +fi +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + cat >> confdefs.h <&6 +else + echo "$ac_t""no" 1>&6 + LIBPNG="" + +fi + + + +echo $ac_n "checking for libjpeg6b""... $ac_c" 1>&6 +echo "configure:5169: checking for libjpeg6b" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_jpeg_6b'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg6b -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_jpeg_6b=-ljpeg6b" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_jpeg_6b=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" + +fi + + +if eval "test ! \"`echo $ac_cv_lib_jpeg_6b`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_6b" + echo "$ac_t""$ac_cv_lib_jpeg_6b" 1>&6 +else + echo "$ac_t""no" 1>&6 + +echo $ac_n "checking for libjpeg""... $ac_c" 1>&6 +echo "configure:5230: checking for libjpeg" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_jpeg_normal'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_jpeg_normal=-ljpeg" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_jpeg_normal=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" + +fi + + +if eval "test ! \"`echo $ac_cv_lib_jpeg_normal`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_normal" + echo "$ac_t""$ac_cv_lib_jpeg_normal" 1>&6 +else + echo "$ac_t""no" 1>&6 + + LIBJPEG= + + +fi + + + +fi + + + +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" + +jpeg_incdir=NO +for i in $jpeg_incdirs; +do + for j in jpeglib.h; + do + echo "configure: 5308: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + jpeg_incdir=$i + break 2 + fi + done +done + +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + cat >> confdefs.h <&2 + else + echo "configure: warning: libjpeg not found. disable JPEG support." 1>&2 + fi + jpeg_incdir= + LIBJPEG= +fi + + + + + + + + + +# Check whether --enable-mt or --disable-mt was given. +if test "${enable_mt+set}" = set; then + enableval="$enable_mt" + kde_use_qt_mt=$enableval +else + kde_use_qt_mt=no + +fi + + +USING_QT_MT="" + + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + echo "configure: warning: Compiler is not gcc. MT support disabled." 1>&2 + fi + ;; + *) + echo "configure: warning: MT not yet supported on $host - disabled." 1>&2 + ;; + esac + +fi + +kde_qt_was_given=yes + + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + + + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +echo $ac_n "checking for Qt""... $ac_c" 1>&6 +echo "configure:5422: checking for Qt" >&5 + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +# Check whether --with-qt-dir or --without-qt-dir was given. +if test "${with_qt_dir+set}" = set; then + withval="$with_qt_dir" + ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + +fi + + +# Check whether --with-qt-includes or --without-qt-includes was given. +if test "${with_qt_includes+set}" = set; then + withval="$with_qt_includes" + + ac_qt_includes="$withval" + +fi + + +kde_qt_libs_given=no + +# Check whether --with-qt-libraries or --without-qt-libraries was given. +if test "${with_qt_libraries+set}" = set; then + withval="$with_qt_libraries" + ac_qt_libraries="$withval" + kde_qt_libs_given=yes + +fi + + +if eval "test \"`echo '$''{'ac_cv_have_qt'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + #try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + + +qt_incdir=NO +for i in $qt_incdirs; +do + for j in $kde_qt_header; + do + echo "configure: 5484: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + qt_incdir=$i + break 2 + fi + done +done + +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&5 ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + + + +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + { echo "configure: error: Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +else + have_qt="yes" +fi + +fi + + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + echo "$ac_t""$have_qt" 1>&6; +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + echo "$ac_t""libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT" 1>&6 + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then + + +echo $ac_n "checking if Qt compiles without flags""... $ac_c" 1>&6 +echo "configure:5641: checking if Qt compiles without flags" >&5 +if eval "test \"`echo '$''{'kde_cv_qt_direct'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_includes" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +LIBS="$LIBQT -lXext -lX11 $LIBSOCKET" +LD_LIBRARY_PATH= +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + + + +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext < +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + kde_cv_qt_direct="yes" +else + kde_cv_qt_direct="no" + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + +fi + + +if test "$kde_cv_qt_direct" = "yes"; then + echo "$ac_t""yes" 1>&6 + qt_libraries= +else + echo "$ac_t""no" 1>&6 + +fi + +fi + + + + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + + + + + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + + echo $ac_n "checking for moc""... $ac_c" 1>&6 +echo "configure:5789: checking for moc" >&5 + if test -n "$MOC"; then + kde_cv_path="$MOC"; + else + kde_cache=`echo moc | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$qt_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/moc"; then + if test -n "" + then + evalstr="$dir/moc 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/moc" + break + fi + else + kde_cv_path="$dir/moc" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MOC=$kde_cv_path + + fi + + if test -z "$UIC_NOT_NEEDED"; then + + echo $ac_n "checking for uic""... $ac_c" 1>&6 +echo "configure:5855: checking for uic" >&5 + if test -n "$UIC"; then + kde_cv_path="$UIC"; + else + kde_cache=`echo uic | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$qt_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/uic"; then + if test -n "" + then + evalstr="$dir/uic 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/uic" + break + fi + else + kde_cv_path="$dir/uic" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + UIC="" + else + echo "$ac_t""$kde_cv_path" 1>&6 + UIC=$kde_cv_path + + fi + + if test -z "$UIC" ; then + + echo "configure: warning: No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +" 1>&2 + + exit 1 + fi + else + UIC="echo uic not available: " + fi + + + + + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' + + + + + + + + +echo $ac_n "checking for rpath""... $ac_c" 1>&6 +echo "configure:5940: checking for rpath" >&5 +# Check whether --enable-rpath or --disable-rpath was given. +if test "${enable_rpath+set}" = set; then + enableval="$enable_rpath" + USE_RPATH=$enableval +else + USE_RPATH=yes +fi + + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi + + +echo "$ac_t""$USE_RPATH" 1>&6 + +echo $ac_n "checking for KDE""... $ac_c" 1>&6 +echo "configure:5969: checking for KDE" >&5 + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +if eval "test \"`echo '$''{'ac_cv_have_kde'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + #try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z ""; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" + +kde_incdir=NO +for i in $kde_incdirs; +do + for j in $kde_check_header; + do + echo "configure: 6013: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + kde_incdir=$i + break 2 + fi + done +done + +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + { echo "configure: error: +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!" 1>&2; exit 1; } +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" + +kde_libdir=NO +for i in $kde_libdirs; +do + for j in $kde_check_lib; + do + echo "configure: 6039: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + kde_libdir=$i + break 2 + fi + done +done + +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +{ echo "configure: error: +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!" 1>&2; exit 1; } +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else + ac_cv_have_kde="have_kde=no" + +fi + +fi + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + echo "$ac_t""will be installed in $ac_kde_prefix" 1>&6 + else + ac_kde_exec_prefix="$exec_prefix" + echo "$ac_t""will be installed in $ac_kde_prefix and $ac_kde_exec_prefix" 1>&6 + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + echo "$ac_t""libraries $ac_kde_libraries, headers $ac_kde_includes" 1>&6 + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi + + + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + + + + + + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" + + + + + + # Check whether --enable-path-check or --disable-path-check was given. +if test "${enable_path_check+set}" = set; then + enableval="$enable_path_check" + + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + +else + + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + + +fi + + + + + +echo $ac_n "checking for KDE paths""... $ac_c" 1>&6 +echo "configure:6149: checking for KDE paths" >&5 +kde_result="" +kde_cached_paths=yes +if eval "test \"`echo '$''{'kde_cv_all_paths'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + +if test "$ac_use_path_checking" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=defaults" + + +else + + if test $kde_qtver = 1; then + echo "$ac_t""compiling" 1>&6 + + + echo $ac_n "checking for KDE headers installed""... $ac_c" 1>&6 +echo "configure:6236: checking for KDE headers installed" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if { (eval echo configure:6279: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo "$ac_t""yes" 1>&6 + else + { echo "configure: error: your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } + fi + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +echo $ac_n "checking for KDE libraries installed""... $ac_c" 1>&6 +echo "configure:6316: checking for KDE libraries installed" >&5 +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if { (eval echo configure:6319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$kde_result" + + + + else + { echo "configure: error: path checking not yet supported for KDE 2" 1>&2; exit 1; } + fi + +fi + + kde_cached_paths=no + +fi + +eval "$kde_cv_all_paths" + if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi + +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + +if test "$ac_use_path_checking" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=defaults" + + +else + + if test $kde_qtver = 1; then + echo "$ac_t""compiling" 1>&6 + + + echo $ac_n "checking for KDE headers installed""... $ac_c" 1>&6 +echo "configure:6470: checking for KDE headers installed" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if { (eval echo configure:6513: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo "$ac_t""yes" 1>&6 + else + { echo "configure: error: your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } + fi + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +echo $ac_n "checking for KDE libraries installed""... $ac_c" 1>&6 +echo "configure:6550: checking for KDE libraries installed" >&5 +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if { (eval echo configure:6553: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$kde_result" + + + + else + { echo "configure: error: path checking not yet supported for KDE 2" 1>&2; exit 1; } + fi + +fi + + eval "$kde_cv_all_paths" + if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi + + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + { echo "configure: error: configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +" 1>&2; exit 1; } +else + rm -f conftest* + echo "$ac_t""$kde_result" 1>&6 +fi + +bindir=$kde_bindir + + + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + + echo $ac_n "checking for dcopidl""... $ac_c" 1>&6 +echo "configure:6642: checking for dcopidl" >&5 + if test -n "$DCOPIDL"; then + kde_cv_path="$DCOPIDL"; + else + kde_cache=`echo dcopidl | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/dcopidl"; then + if test -n "" + then + evalstr="$dir/dcopidl 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/dcopidl" + break + fi + else + kde_cv_path="$dir/dcopidl" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program dcopidl was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + DCOPIDL=$kde_cv_path + + fi + + + echo $ac_n "checking for dcopidl2cpp""... $ac_c" 1>&6 +echo "configure:6702: checking for dcopidl2cpp" >&5 + if test -n "$DCOPIDL2CPP"; then + kde_cv_path="$DCOPIDL2CPP"; + else + kde_cache=`echo dcopidl2cpp | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/dcopidl2cpp"; then + if test -n "" + then + evalstr="$dir/dcopidl2cpp 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/dcopidl2cpp" + break + fi + else + kde_cv_path="$dir/dcopidl2cpp" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program dcopidl2cpp was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + DCOPIDL2CPP=$kde_cv_path + + fi + + + echo $ac_n "checking for mcopidl""... $ac_c" 1>&6 +echo "configure:6762: checking for mcopidl" >&5 + if test -n "$MCOPIDL"; then + kde_cv_path="$MCOPIDL"; + else + kde_cache=`echo mcopidl | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/mcopidl"; then + if test -n "" + then + evalstr="$dir/mcopidl 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/mcopidl" + break + fi + else + kde_cv_path="$dir/mcopidl" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program mcopidl was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MCOPIDL=$kde_cv_path + + fi + + + echo $ac_n "checking for artsc-config""... $ac_c" 1>&6 +echo "configure:6822: checking for artsc-config" >&5 + if test -n "$ARTSCCONFIG"; then + kde_cv_path="$ARTSCCONFIG"; + else + kde_cache=`echo artsc-config | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/artsc-config"; then + if test -n "" + then + evalstr="$dir/artsc-config 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/artsc-config" + break + fi + else + kde_cv_path="$dir/artsc-config" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program artsc-config was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + ARTSCCONFIG=$kde_cv_path + + fi + + + echo $ac_n "checking for kde-config""... $ac_c" 1>&6 +echo "configure:6882: checking for kde-config" >&5 + if test -n "$KDECONFIG"; then + kde_cv_path="$KDECONFIG"; + else + kde_cache=`echo kde-config | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/kde-config"; then + if test -n "" + then + evalstr="$dir/kde-config 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/kde-config" + break + fi + else + kde_cv_path="$dir/kde-config" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + else + echo "$ac_t""$kde_cv_path" 1>&6 + KDECONFIG=$kde_cv_path + + fi + + + echo $ac_n "checking for meinproc""... $ac_c" 1>&6 +echo "configure:6938: checking for meinproc" >&5 + if test -n "$MEINPROC"; then + kde_cv_path="$MEINPROC"; + else + kde_cache=`echo meinproc | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/meinproc"; then + if test -n "" + then + evalstr="$dir/meinproc 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/meinproc" + break + fi + else + kde_cv_path="$dir/meinproc" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MEINPROC=$kde_cv_path + + fi + + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + +KDE_XSL_STYLESHEET=NO +for i in $kde_sharedirs; +do + for j in apps/ksgmltools2/customization/kde-chunk.xsl; + do + echo "configure: 7002: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + KDE_XSL_STYLESHEET=$i + break 2 + fi + done +done + + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + + + + + + + + + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + { echo "configure: error: $KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + " 1>&2; exit 1; } + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + + + + + + + + + + + + + + + + + + + + + +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi + + + + + + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + + LIB_KDEUI='-lkdeui' + + LIB_KFORMULA='-lkformula' + + LIB_KIO='-lkio' + + LIB_KSYCOCA='-lksycoca' + + LIB_SMB='-lsmb' + + LIB_KFILE='-lkfile' + + LIB_KAB='-lkab' + + LIB_KHTML='-lkhtml' + + LIB_KSPELL='-lkspell' + + LIB_KPARTS='-lkparts' + + LIB_KWRITE='-lkwrite' + +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + + LIB_KFM='-lkfm $(LIB_KDECORE)' + + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + +fi + + + + + +echo $ac_n "checking for the used Linux distribution""... $ac_c" 1>&6 +echo "configure:7118: checking for the used Linux distribution" >&5 + +# Check whether --with-distribution or --without-distribution was given. +if test "${with_distribution+set}" = set; then + withval="$with_distribution" + + ac_distribution=$withval + +else + ac_distribution=auto + +fi + + +# Check whether --with-distribution-version or --without-distribution-version was given. +if test "${with_distribution_version+set}" = set; then + withval="$with_distribution_version" + + ac_distribution_version=$withval + +else + ac_distribution_version=auto + +fi + + +# Check whether --with-rpm-prefix or --without-rpm-prefix was given. +if test "${with_rpm_prefix+set}" = set; then + withval="$with_rpm_prefix" + + ac_rpm_prefix=$withval + +else + ac_rpm_prefix=auto + +fi + + +# Check whether --with-rpm-group or --without-rpm-group was given. +if test "${with_rpm_group+set}" = set; then + withval="$with_rpm_group" + + ac_rpm_group=$withval + +else + ac_rpm_group=auto + +fi + + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=$ac_distribution +fi + +if test "$ac_distribution" = "auto"; then +if eval "test \"`echo '$''{'DISTRIBUTION'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi + +fi + +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=$ac_distribution_version +fi +if test "$ac_distribution_version" = "auto"; then +if eval "test \"`echo '$''{'DISTRIBUTION_VERSION'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print }'` +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print }'` +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=`cat /etc/debian_version` +fi + +fi + +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=$ac_rpm_prefix +fi +if test "$ac_rpm_prefix" = "auto"; then +if eval "test \"`echo '$''{'RPM_PREFIX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi + +fi + +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=$ac_rpm_group +fi +if test "$ac_rpm_prefix" = "auto"; then +if eval "test \"`echo '$''{'RPM_GROUP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi + +fi + +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + cat >> confdefs.h <> confdefs.h <&6 + +echo $ac_n "checking for RPM installation prefix""... $ac_c" 1>&6 +echo "configure:7280: checking for RPM installation prefix" >&5 +echo "$ac_t""$RPM_PREFIX" 1>&6 + +echo $ac_n "checking for the correct RPM group""... $ac_c" 1>&6 +echo "configure:7284: checking for the correct RPM group" >&5 +echo "$ac_t""$RPM_GROUP" 1>&6 + + + + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + echo $ac_n "checking if $i should be compiled""... $ac_c" 1>&6 +echo "configure:7309: checking if $i should be compiled" >&5 + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + echo "$ac_t""$install_it" 1>&6 + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + + + +trap '' 1 2 15 +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Any assignment to VPATH causes Sun make to only execute +# the first set of double-colon rules, so remove it if not needed. +# If there is a colon in the path, we need to keep it. +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' +fi + +trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 + +# Transform confdefs.h into DEFS. +# Protect against shell expansion while executing Makefile rules. +# Protect against Makefile macro expansion. +cat > conftest.defs <<\EOF +s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g +s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g +s%\[%\\&%g +s%\]%\\&%g +s%\$%$$%g +EOF +DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` +rm -f conftest.defs + + +# Without the "./", some shells look in PATH for config.status. +: ${CONFIG_STATUS=./config.status} + +echo creating $CONFIG_STATUS +rm -f $CONFIG_STATUS +cat > $CONFIG_STATUS </dev/null | sed 1q`: +# +# $0 $ac_configure_args +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" +for ac_option +do + case "\$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" + exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "$CONFIG_STATUS generated by autoconf version 2.13" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "\$ac_cs_usage"; exit 0 ;; + *) echo "\$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=$srcdir +ac_given_INSTALL="$INSTALL" + +trap 'rm -fr `echo "\ +./Makefile \ +admin/Makefile \ +docs/Makefile \ +docs/de/Makefile \ +docs/de/handbook/Makefile \ +docs/de/handbook/html/Makefile \ +docs/de/handbook/unicode/Makefile \ +docs/de/helpdialog/Makefile \ +docs/de/helpdialog/html/Makefile \ +docs/de/helpdialog/unicode/Makefile \ +docs/de/howto/Makefile \ +docs/de/howto/html/Makefile \ +docs/de/howto/unicode/Makefile \ +docs/de/install/Makefile \ +docs/de/install/html/Makefile \ +docs/de/install/unicode/Makefile \ +docs/en/Makefile \ +docs/en/handbook/Makefile \ +docs/en/handbook/html/Makefile \ +docs/en/handbook/unicode/Makefile \ +docs/en/helpdialog/Makefile \ +docs/en/helpdialog/html/Makefile \ +docs/en/helpdialog/unicode/Makefile \ +docs/en/howto/Makefile \ +docs/en/howto/html/Makefile \ +docs/en/howto/unicode/Makefile \ +docs/en/install/Makefile \ +docs/en/install/html/Makefile \ +docs/en/install/unicode/Makefile \ +po/Makefile \ +README INSTALL bibletime-doc.spec \ +" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +EOF +cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF +$ac_vpsub +$extrasub +s%@SHELL@%$SHELL%g +s%@CFLAGS@%$CFLAGS%g +s%@CPPFLAGS@%$CPPFLAGS%g +s%@CXXFLAGS@%$CXXFLAGS%g +s%@FFLAGS@%$FFLAGS%g +s%@DEFS@%$DEFS%g +s%@LDFLAGS@%$LDFLAGS%g +s%@LIBS@%$LIBS%g +s%@exec_prefix@%$exec_prefix%g +s%@prefix@%$prefix%g +s%@program_transform_name@%$program_transform_name%g +s%@bindir@%$bindir%g +s%@sbindir@%$sbindir%g +s%@libexecdir@%$libexecdir%g +s%@datadir@%$datadir%g +s%@sysconfdir@%$sysconfdir%g +s%@sharedstatedir@%$sharedstatedir%g +s%@localstatedir@%$localstatedir%g +s%@libdir@%$libdir%g +s%@includedir@%$includedir%g +s%@oldincludedir@%$oldincludedir%g +s%@infodir@%$infodir%g +s%@mandir@%$mandir%g +s%@host@%$host%g +s%@host_alias@%$host_alias%g +s%@host_cpu@%$host_cpu%g +s%@host_vendor@%$host_vendor%g +s%@host_os@%$host_os%g +s%@target@%$target%g +s%@target_alias@%$target_alias%g +s%@target_cpu@%$target_cpu%g +s%@target_vendor@%$target_vendor%g +s%@target_os@%$target_os%g +s%@build@%$build%g +s%@build_alias@%$build_alias%g +s%@build_cpu@%$build_cpu%g +s%@build_vendor@%$build_vendor%g +s%@build_os@%$build_os%g +s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g +s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@PACKAGE@%$PACKAGE%g +s%@VERSION@%$VERSION%g +s%@ACLOCAL@%$ACLOCAL%g +s%@AUTOCONF@%$AUTOCONF%g +s%@AUTOMAKE@%$AUTOMAKE%g +s%@AUTOHEADER@%$AUTOHEADER%g +s%@MAKEINFO@%$MAKEINFO%g +s%@SET_MAKE@%$SET_MAKE%g +s%@CONF_FILES@%$CONF_FILES%g +s%@CC@%$CC%g +s%@CXX@%$CXX%g +s%@USE_EXCEPTIONS@%$USE_EXCEPTIONS%g +s%@USE_RTTI@%$USE_RTTI%g +s%@CXXCPP@%$CXXCPP%g +s%@NOOPT_CXXFLAGS@%$NOOPT_CXXFLAGS%g +s%@REPO@%$REPO%g +s%@NOREPO@%$NOREPO%g +s%@KDE_USE_FINAL_TRUE@%$KDE_USE_FINAL_TRUE%g +s%@KDE_USE_FINAL_FALSE@%$KDE_USE_FINAL_FALSE%g +s%@KDE_USE_CLOSURE_TRUE@%$KDE_USE_CLOSURE_TRUE%g +s%@KDE_USE_CLOSURE_FALSE@%$KDE_USE_CLOSURE_FALSE%g +s%@KDE_CXXFLAGS@%$KDE_CXXFLAGS%g +s%@OBJEXT@%$OBJEXT%g +s%@EXEEXT@%$EXEEXT%g +s%@LN_S@%$LN_S%g +s%@RANLIB@%$RANLIB%g +s%@STRIP@%$STRIP%g +s%@LIBTOOL@%$LIBTOOL%g +s%@KDE_PLUGIN@%$KDE_PLUGIN%g +s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g +s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g +s%@MAINT@%$MAINT%g +s%@MSGFMT@%$MSGFMT%g +s%@GMSGFMT@%$GMSGFMT%g +s%@XGETTEXT@%$XGETTEXT%g +s%@CPP@%$CPP%g +s%@LIBUTIL@%$LIBUTIL%g +s%@LIBCOMPAT@%$LIBCOMPAT%g +s%@LIBCRYPT@%$LIBCRYPT%g +s%@LIBSOCKET@%$LIBSOCKET%g +s%@LIBRESOLV@%$LIBRESOLV%g +s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g +s%@LIBUCB@%$LIBUCB%g +s%@LIBDL@%$LIBDL%g +s%@X_INCLUDES@%$X_INCLUDES%g +s%@X_LDFLAGS@%$X_LDFLAGS%g +s%@x_libraries@%$x_libraries%g +s%@x_includes@%$x_includes%g +s%@LIBSM@%$LIBSM%g +s%@X_PRE_LIBS@%$X_PRE_LIBS%g +s%@LIB_X11@%$LIB_X11%g +s%@LIBXINERAMA@%$LIBXINERAMA%g +s%@USER_INCLUDES@%$USER_INCLUDES%g +s%@USER_LDFLAGS@%$USER_LDFLAGS%g +s%@LIBZ@%$LIBZ%g +s%@LIBPNG@%$LIBPNG%g +s%@LIBJPEG@%$LIBJPEG%g +s%@qt_libraries@%$qt_libraries%g +s%@qt_includes@%$qt_includes%g +s%@QT_INCLUDES@%$QT_INCLUDES%g +s%@QT_LDFLAGS@%$QT_LDFLAGS%g +s%@MOC@%$MOC%g +s%@UIC@%$UIC%g +s%@LIB_QT@%$LIB_QT%g +s%@KDE_EXTRA_RPATH@%$KDE_EXTRA_RPATH%g +s%@KDE_RPATH@%$KDE_RPATH%g +s%@kde_libraries@%$kde_libraries%g +s%@kde_includes@%$kde_includes%g +s%@KDE_LDFLAGS@%$KDE_LDFLAGS%g +s%@KDE_INCLUDES@%$KDE_INCLUDES%g +s%@all_includes@%$all_includes%g +s%@all_libraries@%$all_libraries%g +s%@AUTODIRS@%$AUTODIRS%g +s%@DCOPIDL@%$DCOPIDL%g +s%@DCOPIDL2CPP@%$DCOPIDL2CPP%g +s%@DCOP_DEPENDENCIES@%$DCOP_DEPENDENCIES%g +s%@MCOPIDL@%$MCOPIDL%g +s%@ARTSCCONFIG@%$ARTSCCONFIG%g +s%@KDECONFIG@%$KDECONFIG%g +s%@MEINPROC@%$MEINPROC%g +s%@KDE_XSL_STYLESHEET@%$KDE_XSL_STYLESHEET%g +s%@kde_libs_prefix@%$kde_libs_prefix%g +s%@kde_libs_htmldir@%$kde_libs_htmldir%g +s%@kde_htmldir@%$kde_htmldir%g +s%@kde_appsdir@%$kde_appsdir%g +s%@kde_icondir@%$kde_icondir%g +s%@kde_sounddir@%$kde_sounddir%g +s%@kde_datadir@%$kde_datadir%g +s%@kde_locale@%$kde_locale%g +s%@kde_confdir@%$kde_confdir%g +s%@kde_mimedir@%$kde_mimedir%g +s%@kde_wallpaperdir@%$kde_wallpaperdir%g +s%@kde_bindir@%$kde_bindir%g +s%@kde_templatesdir@%$kde_templatesdir%g +s%@kde_servicesdir@%$kde_servicesdir%g +s%@kde_servicetypesdir@%$kde_servicetypesdir%g +s%@kde_moduledir@%$kde_moduledir%g +s%@LIB_KDECORE@%$LIB_KDECORE%g +s%@LIB_KDEUI@%$LIB_KDEUI%g +s%@LIB_KFORMULA@%$LIB_KFORMULA%g +s%@LIB_KIO@%$LIB_KIO%g +s%@LIB_KSYCOCA@%$LIB_KSYCOCA%g +s%@LIB_SMB@%$LIB_SMB%g +s%@LIB_KFILE@%$LIB_KFILE%g +s%@LIB_KAB@%$LIB_KAB%g +s%@LIB_KHTML@%$LIB_KHTML%g +s%@LIB_KSPELL@%$LIB_KSPELL%g +s%@LIB_KPARTS@%$LIB_KPARTS%g +s%@LIB_KWRITE@%$LIB_KWRITE%g +s%@LIB_KFM@%$LIB_KFM%g +s%@DISTRIBUTION@%$DISTRIBUTION%g +s%@DISTRIBUTION_VERSION@%$DISTRIBUTION_VERSION%g +s%@RPM_PREFIX@%$RPM_PREFIX%g +s%@RPM_GROUP@%$RPM_GROUP%g +s%@TOPSUBDIRS@%$TOPSUBDIRS%g + +CEOF +EOF + +cat >> $CONFIG_STATUS <<\EOF + +# 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_cmds=90 # Maximum number of lines to put in a sed script. +ac_file=1 # Number of current file. +ac_beg=1 # First line for current file. +ac_end=$ac_max_sed_cmds # 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" conftest.subs > conftest.s$ac_file + else + sed "${ac_end}q" conftest.subs > conftest.s$ac_file + fi + if test ! -s conftest.s$ac_file; then + ac_more_lines=false + rm -f conftest.s$ac_file + else + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f conftest.s$ac_file" + else + ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" + fi + ac_file=`expr $ac_file + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_cmds` + fi +done +if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat +fi +EOF + +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; +"") ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file +fi; done +rm -f conftest.s* + +EOF +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF + +exit 0 +EOF +if test "x$with_fast_perl" = "xyes" ; then + perl -i.bak $ac_aux_dir/conf.change.pl $CONFIG_STATUS || mv $CONFIG_STATUS.bak $CONFIG_STATUS; + rm -f $CONFIG_STATUS.bak; +fi +chmod +x $CONFIG_STATUS +rm -fr confdefs* $ac_clean_files +test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + diff --git a/bibletime-doc/configure.in b/bibletime-doc/configure.in new file mode 100644 index 0000000..9780b35 --- /dev/null +++ b/bibletime-doc/configure.in @@ -0,0 +1,97 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(bibletime-doc, 1.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(no) +AC_ENABLE_STATIC(yes) +KDE_PROG_LIBTOOL + +AM_MAINTAINER_MODE + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS +AC_PATH_KDE + +dnl in this space add everything you want to check for; +dnl examples are specific headers, libraries, etc. +dnl everything to compile and run a KDE program is already checked + +dnl Chek for the used distribution +AC_CHECK_DISTRIBUTION + +dnl add here all your Makefiles. They are created by configure +dnl AC_OUTPUT(README INSTALL bibletime-doc.spec) +KDE_CREATE_SUBDIRSLIST +AC_OUTPUT( \ +./Makefile \ +admin/Makefile \ +docs/Makefile \ +docs/de/Makefile \ +docs/de/handbook/Makefile \ +docs/de/handbook/html/Makefile \ +docs/de/handbook/unicode/Makefile \ +docs/de/helpdialog/Makefile \ +docs/de/helpdialog/html/Makefile \ +docs/de/helpdialog/unicode/Makefile \ +docs/de/howto/Makefile \ +docs/de/howto/html/Makefile \ +docs/de/howto/unicode/Makefile \ +docs/de/install/Makefile \ +docs/de/install/html/Makefile \ +docs/de/install/unicode/Makefile \ +docs/en/Makefile \ +docs/en/handbook/Makefile \ +docs/en/handbook/html/Makefile \ +docs/en/handbook/unicode/Makefile \ +docs/en/helpdialog/Makefile \ +docs/en/helpdialog/html/Makefile \ +docs/en/helpdialog/unicode/Makefile \ +docs/en/howto/Makefile \ +docs/en/howto/html/Makefile \ +docs/en/howto/unicode/Makefile \ +docs/en/install/Makefile \ +docs/en/install/html/Makefile \ +docs/en/install/unicode/Makefile \ +po/Makefile \ +README INSTALL bibletime-doc.spec \ +) diff --git a/bibletime-doc/configure.in.in b/bibletime-doc/configure.in.in new file mode 100644 index 0000000..782688d --- /dev/null +++ b/bibletime-doc/configure.in.in @@ -0,0 +1,63 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(bibletime-doc, 1.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(no) +AC_ENABLE_STATIC(yes) +KDE_PROG_LIBTOOL + +AM_MAINTAINER_MODE + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS +AC_PATH_KDE + +dnl in this space add everything you want to check for; +dnl examples are specific headers, libraries, etc. +dnl everything to compile and run a KDE program is already checked + +dnl Chek for the used distribution +AC_CHECK_DISTRIBUTION + +dnl add here all your Makefiles. They are created by configure +dnl AC_OUTPUT(README INSTALL bibletime-doc.spec) diff --git a/bibletime-doc/docs/Makefile.am b/bibletime-doc/docs/Makefile.am new file mode 100644 index 0000000..683d52f --- /dev/null +++ b/bibletime-doc/docs/Makefile.am @@ -0,0 +1,4 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + +SUBDIRS = en de diff --git a/bibletime-doc/docs/Makefile.in b/bibletime-doc/docs/Makefile.in new file mode 100644 index 0000000..72f9dde --- /dev/null +++ b/bibletime-doc/docs/Makefile.in @@ -0,0 +1,468 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = en de +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=documentation-links.html gen_am.sh ksgmltools-bug-read-me.txt gen_am.dat + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/Makefile.am b/bibletime-doc/docs/de/Makefile.am new file mode 100644 index 0000000..82c2c9d --- /dev/null +++ b/bibletime-doc/docs/de/Makefile.am @@ -0,0 +1,6 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = handbook helpdialog howto install + diff --git a/bibletime-doc/docs/de/Makefile.in b/bibletime-doc/docs/de/Makefile.in new file mode 100644 index 0000000..95d0b0d --- /dev/null +++ b/bibletime-doc/docs/de/Makefile.in @@ -0,0 +1,463 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = handbook helpdialog howto install +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/handbook/Makefile.am b/bibletime-doc/docs/de/handbook/Makefile.am new file mode 100644 index 0000000..22320de --- /dev/null +++ b/bibletime-doc/docs/de/handbook/Makefile.am @@ -0,0 +1,39 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +po-files: + for f in `ls ../../en/handbook/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/handbook\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + + +unicode-files: + for f in `ls ../../en/handbook/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/handbook\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/handbook\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/de/handbook/Makefile.in b/bibletime-doc/docs/de/handbook/Makefile.in new file mode 100644 index 0000000..08edec2 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/Makefile.in @@ -0,0 +1,495 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/handbook + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/handbook/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +po-files: + for f in `ls ../../en/handbook/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/handbook\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + +unicode-files: + for f in `ls ../../en/handbook/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/handbook\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/handbook\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/handbook/html/Makefile.am b/bibletime-doc/docs/de/handbook/html/Makefile.am new file mode 100644 index 0000000..576a7fb --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-op-module-bookmk-1.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-module-tree-bookmark-bookmarkandfolder.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchscope.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_bars_toolbar_Configtoolbar.png hdbk_bars_toolbar_action_cascade.png hdbk_bars_toolbar_action_cascade_auto.png hdbk_bars_toolbar_action_contents.png hdbk_bars_toolbar_action_exit.png hdbk_bars_toolbar_action_footnotes.png hdbk_bars_toolbar_action_print.png hdbk_bars_toolbar_action_reset.png hdbk_bars_toolbar_action_search.png hdbk_bars_toolbar_action_strongs.png hdbk_bars_toolbar_action_tile.png hdbk_bars_toolbar_action_tile_auto.png hdbk_bars_toolbar_close.png hdbk_op_module_bookmk_1.png hdbk_op_module_select_1.png hdbk_op_module_select_2.png hdbk_op_module_tree_1.png hdbk_op_module_tree_bookmark_bookmarkandfolder.png hdbk_op_pencil.png hdbk_op_search_dialog_searchanal.png hdbk_op_search_dialog_searchresult.png hdbk_op_search_dialog_searchscope.png hdbk_op_search_dialog_searchtext.png hdbk_start_bticon.png hdbk_start_screen_terms.png hdbk_start_sequence_tips.png + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; diff --git a/bibletime-doc/docs/de/handbook/html/Makefile.in b/bibletime-doc/docs/de/handbook/html/Makefile.in new file mode 100644 index 0000000..27d032a --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/Makefile.in @@ -0,0 +1,390 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-op-module-bookmk-1.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-module-tree-bookmark-bookmarkandfolder.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchscope.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_bars_toolbar_Configtoolbar.png hdbk_bars_toolbar_action_cascade.png hdbk_bars_toolbar_action_cascade_auto.png hdbk_bars_toolbar_action_contents.png hdbk_bars_toolbar_action_exit.png hdbk_bars_toolbar_action_footnotes.png hdbk_bars_toolbar_action_print.png hdbk_bars_toolbar_action_reset.png hdbk_bars_toolbar_action_search.png hdbk_bars_toolbar_action_strongs.png hdbk_bars_toolbar_action_tile.png hdbk_bars_toolbar_action_tile_auto.png hdbk_bars_toolbar_close.png hdbk_op_module_bookmk_1.png hdbk_op_module_select_1.png hdbk_op_module_select_2.png hdbk_op_module_tree_1.png hdbk_op_module_tree_bookmark_bookmarkandfolder.png hdbk_op_pencil.png hdbk_op_search_dialog_searchanal.png hdbk_op_search_dialog_searchresult.png hdbk_op_search_dialog_searchscope.png hdbk_op_search_dialog_searchtext.png hdbk_start_bticon.png hdbk_start_screen_terms.png hdbk_start_sequence_tips.png +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=hdbk-op-module-tree-select.html hdbk-bars.html hdbk-op-search.html hdbk-bars-menubar-file.html hdbk-bars-menubar-settings.html hdbk-bars-menubar-Window.html hdbk-bars-menubar.html hdbk-config.html hdbk-op-output.html hdbk-bars-menubar-mainindex.html hdbk-intro-ToDo.html hdbk-bars-toolbar-action.html hdbk-bars-menubar-view.html hdbk-bars-menubar-Help.html hdbk-start-screen.html index.html hdbk-config-bt.html hdbk-op-MDI-Window.html hdbk-op.html hdbk-intro.html hdbk-term.html hdbk-intro-motivation.html hdbk-term-hotkeys.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/handbook/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/handbook/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Help.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Help.html new file mode 100644 index 0000000..86c8f38 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Help.html @@ -0,0 +1 @@ +Hilfe

Hilfe

Hilfe

Handbuch

Wählen Sie Handbuch aus, um dieses Dokument im KDE Hilfezentrum zu lesen.

Installation

Wählen Sie Installation aus, um die Installationsanleitung für BibleTime im KDE Hilfezentrum zu öffnen.

Anleitung zum Bibelstudium

Wählen Sie Anleitung zum Bibelstudium um einen guten Grundlagentext mit Empfelungen zum Bibelstudium zu öffnen.

Was ist das?

Dies erlaubt ihnen auf bestimmte Elemente zu klicken, um eine Kontextinformation zu erhalten.

Fehlerbericht

Schicken Sie einen Fehlerbericht zu den Entwicklern des Programmes, um die Entwicklung zu unterstützen. Bevor Sie einen Fehlerbericht schicken, konfigurieren Sie die Anwendung zum Fehlerberichten so, dass es ihr Mailprogramm benutzt. Dies kann durch konfigurieren im Einen Fehlerbericht schicken... Dialog gemacht werden.

Täglicher Tipp

Öffnet den Tipp des Tages Dialog.

Über BibleTime

Öffnet ein Fenster mit allgemeinen Informationen zu BibleTime

Über KDE

Öffnet ein Fenster mit allgemeinen Informationen zu KDE

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Window.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Window.html new file mode 100644 index 0000000..de73671 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-Window.html @@ -0,0 +1 @@ +Fenster

Fenster

Fenster

Profil speichern

Speichert die aktuelle Konfiguration zum gewählten Profil

Profile laden

Lädt den Inhalt des gewählten Profiles in die aktuelle Sitzung von BibleTime.

Profile einrichten

Dies öffnet den Profile Teil des Optionendialoges. Hier erzeugen und verwalten Sie die Profile.

Vollbild Modus

Wenn Vollbild Modus ausgewählt wurde, wird BibleTime die gesamte Fläche des Monitors bedecken. Um dies wieder rückgängig zu machen, wählen Sie Vollbild Modus erneut aus.

Staffeln

Geöffnete Dokumentenfenster staffeln

Kacheln

Geöffnete Dokumentenfenster kacheln

Automatisch staffeln

Staffelt automatisch die neu geöffneten Anzeigefenster

Automatisch Kacheln

ditto für das kacheln neu geöffneter Anzeigefenster

Alle Schließen

Schließt alle geöffneten Anzeigefenster

Liste des geöffneten Module

zeigt eine Liste aller zur Zeit gewählter Module.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-file.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-file.html new file mode 100644 index 0000000..3533e29 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-file.html @@ -0,0 +1 @@ +Datei

Datei

Datei

Druckschlange leeren

Entfernt alle Einträge aus der BibleTime Druckschlange. Die BibleTime Druckschlange wird nicht automatisch gelöscht.

Drucken

Dieser Menüeintrag öffnet den Druckdialog. Hier können Sie wie in jeder anderen KDE Anwendung drucken oder betrachten.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-mainindex.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-mainindex.html new file mode 100644 index 0000000..d9effc2 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-mainindex.html @@ -0,0 +1 @@ +Hauptgruppe

Hauptgruppe

Hauptgruppe

In Modulen suchen

Wenn Durchsuche gewählte Module ausgewählt ist, dann wird derSuchdialog angezeigt. Jedes im linken Bereich ausgewählte Dokument sind in der Module auswählen Karteikarte vorausgewählt.

Hauptgruppe zurücksetzen

Wenn Hauptgruppe zurücksetzen ausgewählt wird, wird der linke Bereich neu aufgebaut.Jede Einstellung sowie die Lesezeichen werden gelöscht.

Entferne ausgewählte Elemente

Wenn Entferne ausgewählte Einträge ausgewählt wird, wird jeder in der Hauptgruppe gewählte Eintrag gelöscht. Diese Aktion kann nur teilweise durch Hauptgruppe zurücksetzen rückgängig gemacht werden. Benutzen Sie diese Funktion mit Vorsicht.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-settings.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-settings.html new file mode 100644 index 0000000..8d62f19 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-settings.html @@ -0,0 +1 @@ +Einstellungen

Einstellungen

Einstellungen

Werkzeugleiste einrichten

Zeigt den Werkzeugleiste einrichten Dialog.

BibleTime einrichten

Öffnet den Optionendialog. Von diesem Dialog aus können Sie alle Einstellungen wie Schriften, Profile, Sword-Einstellungen und Tastenkürzel vornehmen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-view.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-view.html new file mode 100644 index 0000000..84a7de5 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar-view.html @@ -0,0 +1,2 @@ +Ansicht

Ansicht

Ansicht

Werkzeugleiste anzeigen

+>Wenn Werkzeigleiste anzeigen ausgewählt ist, dass wird die Werkzeugleiste angezeigt. Wenn Werkzeigleiste anzeigen nicht ausgewählt ist, dass wird die Werkzeugleiste versteckt.

Zeige Hauptgruppe

Wenn Zeige Hauptgruppe ausgewählt ist, dann wird der linke Bereich, der die vorhandenen Sword-Dokumente zeigt, angezeigt. Wenn Zeige Hauptgruppe nicht ausgewählt ist, dann wird der linke Bereich versteckt.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar.html new file mode 100644 index 0000000..1077143 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-menubar.html @@ -0,0 +1 @@ +Menüzeile

Menüzeile

Menüzeile

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-Configtoolbar.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-Configtoolbar.png new file mode 100644 index 0000000000000000000000000000000000000000..54d184c35bebb6fa74275863a84adc019498e970 GIT binary patch literal 15524 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a846144b31e832b2c63b6b47c83ab4197767b5 GIT binary patch literal 492 zcmV7V(DW?f?J*en~_@RCt{2 zRy$I|Fc5uasKPPQ4{(~wtrB-!ty z-5mq}9bL^KW6bKrL<9hMtbO6<;{^b)J6^(b3*z^7$4gkxCa{HbMs)&fJ6B4=4cY2wVn{gRIFgnZKtF;z=-)|>?MZ}Jo7(g@mA^}X)a?cEDCM*)L6hw6M|It*0OOcy~f0BUY iJS(6yzwfwXP5c6~aMW-5fK1&00000NS%G}EByV>Y zhW{YAVDIwDKoRy5PhVH|3+!Uz^6bIyeMEplS3F%DLn`LHoo2{)Sb@j2ewE+O$^8?z zhHu>AbxrPY`Kw!g3RfB$PhDWV*D^`r-~Wxe4L5IQ*(IfYZk}7r&`|xh?fPd%h8z9H zYoa^8zdbHFZ#Czaf_E$Z4&1U7baXlNdr8BMN}2FId7=}QXFKFSpO?a0^Y?f8=a;G5 zl6VCK85~@8l{RQOxHNs9SGu6=V29NXj)Z55=QcAn6v|EzH8`|W>p*z}tL5`~vu}FZ z8!czBXZ^3Hkj6Q~+aXIWB;HH6;9TrGd1s*u%N|Z(2|5?bxb)}Vh=@;&Pa6su?WQ)E Q0{zF}>FVdQ&MBb@0Omk}YXATM literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-contents.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-contents.png new file mode 100644 index 0000000000000000000000000000000000000000..293b736bb55212db60d813d9c2c22a3282441412 GIT binary patch literal 1383 zcmV-t1(^DYP)_&$2_1PAx-sDRvI026>U z0Eozc39+E6AwUp7U~0SmJ%j*q?b7)L7bXDk{ZNH^44z#I*@v z0x&l2ZE+Ct>-n>+EDRtB2&gu;MG6F9Ow$EzKnTFKE0@USau6*P1X1lO5cn+t7J!h8 zznr9R^aIZ9vHRQ-@jBv$Pt#3V}n= z%*_173mZ33d~PF!m4mE(fH8(t z9l-4L4VHBGH*Bk=ATU@vzXAZ(I%E!~h@c|b!A2T6lF1~gj`Y0#YFz+rDG&n8UFQ(d zC|q@Xi3nOl!qaU4RGc@N1#tiy15gsSTv(whoCDGQ&W_X~09q(ujR71cC}T`q0TBym zlt}oALr~HE`KXq!J~q5 zA&{5=W8x_g1fmvJN>!ih7WuC)_C^2^#Fnc8!yjkE;0V}R5Q!I|xatI~K8n6qRE;ap z1i%=Fm{MK9@KcFJ#3HtgYtjW$8DMpzm?*H;aTRRc*l(->aX9N&1439}A`WXT&iDjP zQc$lz?Jc4*j9MrVacRz+Bs2LP08_VS_~yVzI6I5j0B2?qQ^xqS1m$V0En#ikp@<+( z5G;bliDCNB-`KHz8>sjpI=2SY)N5}_c5IaGPdv}d6XS>+pja#-goPORCB#^?@ng;q zhhR}CjBjwI>+Jt*AD92Q!O*((q*E#K1B29;f-we?jVY)?yjvWBL*po=*!1i(m|zxL zDia>Cet606d1lPj=3e?J3-d(k>PC6je$LaQ#QL2MeqO^oAt z9*;jZgaj6=KukF%z|EUeT)%dagI^xtfz@ls+?AofuNNmCN+~?gBbo3>CX+PYFMvK zFLw`vg+2=Xy{uT;)x>QmeW_HMSAiPDtFKFTY?SvmZ$VG&!`gKWt;*n>!&=9lPrs%= z-_7!DhE@0FNhH#o{^=Y5Go>&GGNAAY8`TQ+V1#d7za>DR5R$N|DeCrFA&a0MFBOq&upEs;$@U?AR!` zA6n1WiE*->uq4yNt&-2%4?hjog6Fm2CT@1?OKtz@knGrKc;y^K<8|u2PvF9te-u2j pCS$6Vb!Fq{>g}n;{A+4ze*^m>+(S}x>f8VT002ovPDHLkV1iIAZ|ML4 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-exit.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-exit.png new file mode 100644 index 0000000000000000000000000000000000000000..49ccbefc58fa4f2cd89803dd87dff63e4620adf3 GIT binary patch literal 367 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 Wa~NF~P4%V#0000NS%G~10G|+7 zAYETyU#fL?&z?OE4Go*U?^FYY7)yfuf*Bm1-ADs*lDyqrSo$+=1_C+do-U3d6}Q$- zxXat1z|(U60E3nugRnyi1JCdGDUIw=rfM$l7y9n|@;vH+xUP@rnrl0+Zu=3FSQeB~ z$Z(`Z$6?VK$0Lc0k`BB+&7;Azrs+_MjnxMSg9ahp;+vP-CmG%gnya?atbJ|7ThS?7 z_OM#<&->4p=l^ew@SRB-%`+a#*#n*6Ug8>25}cn_Ql40p%HW`(tm&DXn4apJn4X!O ztzfEWsAr&HV4!bc2t*2jRu&4$MVZAVl@7U;#U+`^da1>FDWwJZc_n(u`MGV;XI}%2 z)B+osnVy$eQVKLPDLFCG$kIGH%{V17IVsWD)Y2%;B-u1AEhQ}}%{0wo&eFI`KwX?5 dT`s9PiIoh71_m*bE&M=122WQ%mvv4FO#p4MiX8v| literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-tile.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action-tile.png new file mode 100644 index 0000000000000000000000000000000000000000..5dfd05f6ade0b433921f77604cddcf0efae892b4 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@mUKs7M+SzC{oH>NS%G|>0G|+7 zAYETyU#fL?&z?Qz4^Gbj@)=8l{DK)Ap4~_Tagw~!UluT}tcae{QYq~;`6G8h^d#7MUA0|gm8UHx3vIVCg!0QuuwP5=M^ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action.html new file mode 100644 index 0000000..a47ae1d --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-action.html @@ -0,0 +1 @@ +Knopf-Aktion

Knopf-Aktion

Knopf-Aktion

Symbol
Schließt BibleTime

Symbol
Druckt Einträge der Druckschlange.

Symbol
Suche in ausgewählten Modulen.

Symbol
Dokumentenfenster staffeln.

Symbol
Dokumentenfenster automatisch staffeln.

Symbol
Dokumentenfenster kacheln.

Symbol
Dokumentenfenster automatisch kacheln.

Symbol
Alle Dokumentenfenster schließen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-close.png b/bibletime-doc/docs/de/handbook/html/hdbk-bars-toolbar-close.png new file mode 100644 index 0000000000000000000000000000000000000000..bb4b445a88f2089c5559f32cf3349c073301cd77 GIT binary patch literal 1155 zcmV-}1bq96P)Zos|$sCxjzHut{rU zr`U-9z}nivHid}2jo=Tk)t{k_kjrj%cWyhU&>42kCSID;oDV{h+1YuYneR5hfBVPg z{N|-jr=znhgOn0dN(dpqIR|45udlB^TGRW<S*LC4I4%XM#5r!cEXelK|qtQZ;F9CYJ zp5ETxhVT1U!~k&4?Kl8vt&wFJvMhrT0zwFAt@U_3o(r)MV1IvKx7%${N>w;5ZKI^}5}? z5jQ)RQbKEOPfSV)$C)1nr2xk7gb)xyKq&=d45z230D!?@fFKBjlZKpgaLyrwuWb$z*~gNoIn% z3}7ZXo6V-Cl%myYAqWE72RP@2JO|!=Ua3?t91ijD@KAWRwzdYXwT%Z86H>~8ZfSLB zHk*25V*`{@P)Z@Cv=z=+zu$-FdG8ZmzXj zO#=X>)CN+%w3eMh?${S<{OAr(Db>LHZD|p}SG)c-fHB|qb-uQLYBaxE^S}Kw`wNg( VXFujO5VrsT002ovPDHLkV1fty2j2hy literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-bars.html b/bibletime-doc/docs/de/handbook/html/hdbk-bars.html new file mode 100644 index 0000000..d61d2cc --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-bars.html @@ -0,0 +1 @@ +Chapter 5. Werkzeugleiste und Menüleiste

Werkzeugleiste und Menüleiste

Chapter 5. Werkzeugleiste und Menüleiste

Werkzeugleiste

Die Aktion jedes Knopfes wird in der Dialogbox beschrieben. Bewegen des Mauspfeils über einen Knopf zeigt den Tooltip des Knopfes der die Aktion des Knopfes beschreibt.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-config-bt.html b/bibletime-doc/docs/de/handbook/html/hdbk-config-bt.html new file mode 100644 index 0000000..7eb9396 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-config-bt.html @@ -0,0 +1 @@ +Optionendialog

Optionendialog

Optionendialog

Der Optionendialgo erlaubt Ihnen, viele BibleTime und Sword Features anzupassen.

Start

Das Startverhalten kann angepasst werden. Wählen Sie aus den folgenden Optionen aus:

Tip des Tages anzeigen
Startlogo anzeigen
Fenster im Arbeitsbereich wiederherstellen
Optionendialog

Der Optionendialog - Start.

Schriften

Die Anzeigeschrift kann verändert werden. Wenn Sie ein Modul haben, das eine spezielle Schrift benötigt, überprüfen Sie hier, ob die Schrift für BibleTime verfügbar ist.

Optionendialog - Schriften

Der Optionendialog - Schriften.

Unicode Schriften (ISO10646)

Sword Module benutzen entweder das ISO-8859-1 (Latin-1) oder das ISO-10646 (Unicode) Encoding. Sie können herausfinden, welches Encoding verwendet wurde, durch right mouse button auf dem Hauptindex, und Auswahl von Über dieses Modul.

Über dieses Modul

Das "Über dieses Modul"-Fenster zeigt an, welches Encoding benutzt wird.

Solange Ihre benötigten Module korrekt angezeigt werden, muss hier nichts unternommen werden. Wenn ein Modul als eine Folge von Fragezeichen (???????????????????) angezeigt wird, dann enthält die eingestellte Schriftart nicht die Zeichen, die in Ihrem Dokument verwendet wurden.

Wählen Sie im Optionendialog Schriften auswählen in dem Unicode Bereich der Anwendung. Sie müssen eine Schrift auswählen, die den ISO-10646-1 Zeichensatz enthält. Versuchen Sie clearlyu als einen ersten Schritt. (es ist in den meisten Distibutionen enthalten). Wenn Ihr Modul immer noch nicht korrekt dargestellt wird, dann versuchen Sie es mit einer geeigneteren Schriftart.

Tip

Wenn Sie eine kleine Unicode-Schriftart wie clearlyu (about 22kb) benutzen, wird BibleTime schneller laufen, als wenn Sie eine umfangreiche Schriftart wie Bitstream Cyberbit (ungefähr 12Mb) verwenden.

Schriftarten bekommen

Es gibt eine Anzahl von Schriften, die Unicode unterstützen, und einige von ihnen sind kostenlos verfügbar. Wenige der verfügbaren Schriften enthalten alle Symbole, die im Unicode Standard definiert sind.

Hier ist eine Liste von einigen verfügbaren Schriften:

Table 4.1. Unicode Schriften

ClearlyuIst in einigen Distributionen enthalten. Enthält Europäisch, Griechisch, Hebräisch, Thai. Enthält keine chinesischen Schriftzeichen oder Arabisch
ftp://ftp.crosswire.org/pub/sword/iso/latest/FONTS.Verschiedene Schriften sind auf der Crosswire FTP Seite verfügbar.
Bitstream CyberBitDeckt fast den ganzen Unicode-Bereich ab.
Caslon, Monospace, Cupola, CalibanTeilweise Abdeckung, siehe die Information auf der angegebenen Seite.

Für eine Liste von anderen Unicode Schriften und den abgedeckten Bereichen: Unicode Schriftenliste

Schriften für XFree86 installieren (Ihren X-Server)

Wenn Ihre Distribution einen Schriftarten Installer enthält (Linux-Mandrake™ bietet Drake Font), verwenden Sie den Installer. Wenn das nicht funktioniert, oder Sie keinen haben, müssen Sie die Schrift manuell installieren. Anweisungen dafür finden Sie Das Unicode HOWTO. Das wurde getestet und funktioniert unter Linux-Mandrake™ 7.1.

Installieren der Schrift für das Drucken

Ein bekanntes Problem in Qt verhindert das Drucken von Zeichen außerhalb des Bereiches des Latin-1 Zeichensatzes. Das wird mit der Freigabe von Qt3 und KDE 3 gelöst sein. Wenn Sie es trotzdem versuchen möchten, das Font HowTo beschreibt den Prozess der Installation von Schriften für das Drucksystem.

Farben

Die Farben der Objekte in den Anzeigefenstern können angepasst werden. Folgende Objekte können verändert werden:

Text
Hervorgehobener Vers
Fußnoten
Morphologische Tags
Hintergrund
Hyperlinks
Strongnummern
Worte Jesu

Einige Optionen, wie die "Worte Jesu" treffen nur für bestimmte Texte zu, die diese speziellen Features unterstützen.

Optionendialog - Farbe

Der Optionendialog - Farbe

Profile

Profile definieren die Erscheinung des Arbeitsbereiches, z.B. welche Fenster geöffnet sind, und welche Texte in diesen Fenstern angezeigt werden sollen. Wenn ein Profil einmal erstellt ist, erwenden Sie den Eintrag Fenster -> Profil sichern, um die aktuelle Sitzung in ein Profil zu sichern. Verwenden Sie Fenster -> Profil laden, um ein bereits gespeichertes Profil in BibleTime zu laden.

Sword

Viele Funktionen, die von Sword bereitgestellt werden, können in BibleTime angepasst werden.

Optionendialog - Sword

Der Optionendialog - Sword.

Sword Allgemein

Schlüsselcache für Lexikons

Bibletime kann einen Keycache für Lexikons anlegen. Dies beschleunigt das Öffnen großer Lexika. Es verbraucht allerdings etwas Festplattenkapazität, also sollten Sie dieses Feature abschalten, wenn Sie nur über sehr wenig freien Speicher haben.

Scrollverhalten

Per Voreinstellung bewegt der Pfeil nach unten das Anzeigefenster zum nächsten Vers. Mit dieser Option kann man das Verhalten so ändern, dass es zum vorigen Vers springt.

Wählen Sie eine Sprache für die Bücher der Bibel

Dieses Feature ermöglicht die Auswahl der Sprache, die für die Buchnamen der Bibel verwendet wird.Z.B. kann die King James Version mit deutschen Buchnamen dargestellt werden.Wenn Ihre Sprache nicht unterstützt wird, und Sie gerne eine Übersetzung anfertigen wollen, dann besuchen Sie bitte die Crosswire Entwicklerseiten.

Sword Standardmodule

Hier werden Standardmodule festgelegt.

Sword Filtereinstellungen

Filter kontrollieren die Erscheinung des Textes in den Anzeigefenstern. Hier können Sie die Voreinstellungen für verschiedene Filter festlegen.

Folgendes kann durch Filter kontrolliert werden:

  • Zeilenumbruch nach jedem Vers anzeigen

  • Versnummern anzeigen

  • Fußnoten anzeigen

  • Strongnummern anzeigen

  • Überschriften anzeigen

  • Morphologische Tags anzeigen

  • Wurzeln anzeigen

  • Hebräische Vokalzeichen anzeigen

  • Hebräische Kantillationszeichen anzeigen

  • Griechische Akzente anzeigen

Tastenkürzel

Es handelt sich um spezielle Tastenbefehle, die anstatt der Menüeinträge und Icons verwendet werden können. Eine Anzahl der Kommandos in BibleTime haben vordefinierte Tastenkürzel. Allen Kommandos in BibleTime können hier Tastenküzel zugewiesen werden.

Table 4.2. Standard-Tastenkürzel

AktionTastenkombination
Automatisch KachelnCtrl+Alt+T
Automatisch staffeln Ctrl+Alt+A
Staffeln Ctrl+A
Alle schließen Shift+Ctrl+A
Werkzeugleisten konfigurieren 
Voreinstellungen  
Verlassen Ctrl+Q
Ausgewählte Einträge entfernenCtrl+Alt+D
Hauptgruppe zurücksetzen Ctrl+Alt+R
In den ausgewählten Modulen suchen Ctrl+Alt+S
Kacheln Ctrl+T
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-config.html b/bibletime-doc/docs/de/handbook/html/hdbk-config.html new file mode 100644 index 0000000..90c2abe --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-config.html @@ -0,0 +1 @@ +Chapter 4. BibleTime konfigurieren

BibleTime konfigurieren

Chapter 4. BibleTime konfigurieren

Die BibleTime-Benutzerschnittstelle kann vielseitig konfiguriert werden. Um den Konfigurationsdialog aufzurufen, wählen Sie in der Hauptwerkzeugleiste Einstellungen. Von hier aus wählen Sie Werkzeugleisten konfigurieren, um den Konfigurationsdialog der Werkzeugleisten aufzurufen, oder Sie wählen BibleTime konfigurieren, um den BibleTime Konfigurationsdialog aufzurufen.

Werkzeugleisten-Konfigurationsdialog

Der Werkzeugleisten-Konfigurationsdialog ermöglicht das Hinzufügen und Entfernen von Aktionen von der Haupterkzeugleiste von BibleTime. Die Reihenfolge der Aktionen kann auch verändert werden.

Werkzeugleisten-Konfigurationsdialog

Der Werkzeugleisten-Konfigurationsdialog.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-intro-ToDo.html b/bibletime-doc/docs/de/handbook/html/hdbk-intro-ToDo.html new file mode 100644 index 0000000..6ba14cf --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-intro-ToDo.html @@ -0,0 +1 @@ +ToDo

ToDo

ToDo

Jede Menge!

Wir haben viel zu tun. Da wir ein sehr kleines Team von aktiven Entwicklern sind, ist es sehr schwierig vernünftige Ergebnisse in einer kurzen Zeit zu bekommen. Falls Sie daran interessiert sind dem BibleTime Team zu helfen, kontaktieren Sie uns bitte auf SourceForge BibleTime Hompage. Informationen können ebenso auf der BibleTime Homepage gefunden werden.

Das BibleTime Projekt benötigt Programmierer / Entwickler, Kritiker, Tester und eifrige Beter. Falls Sie bei einer dieser Aufgaben helfen können oder falls Sie an eine andere denken, wenden Sie sich bitte an uns. Ohne Ihre Hilfe wird BibleTime sehr sehr langsam weiterentwickelt und es wird sehr lange dauern, bis Sie ein voll funktionsfähiges Bibelstudien Werkzeug bekommen werden.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-intro-motivation.html b/bibletime-doc/docs/de/handbook/html/hdbk-intro-motivation.html new file mode 100644 index 0000000..483a782 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-intro-motivation.html @@ -0,0 +1 @@ +Motivation

Motivation

Motivation

Unser Verlangen ist es, Gott zu dienen und unseren Teil dazu beizutragen, dass andere in ihrer Beziehung mit IHM wachsen. Wir haben eine klaffende Lücke gefunden: Es gab keine benutzerfreundliche Bibelstudiensoftware unter Linux. Wir haben BibleTime entwickelt um diese Lücke zu füllen. Wir haben uns bemüht dies zu einem mächtigen und qualitativen Programm zu machen, das jedoch gleichzeitig einfach und intuitiv zu bedienen ist. Es ist unser Verlangen, dass Gott gepriesen wird, da Er die Quelle aller guten Dinge ist.

 

Alle gute Gabe und alle vollkommene Gabe kommt von obenherab, von dem Vater des Lichts, bei welchem ist keine Veränderung noch Wechsel des Lichtes und der Finsternis.

 
--James 1:17, NASB 

Gott segne Sie, wenn Sie dieses Programm benutzen, und möge Er durch die Arbeit unserer Hände verherrlicht werden.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-intro.html b/bibletime-doc/docs/de/handbook/html/hdbk-intro.html new file mode 100644 index 0000000..c43cf8c --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-intro.html @@ -0,0 +1 @@ +Chapter 1. Einführung

Einführung

Chapter 1. Einführung

BibleTime ist ein mächtiges Bibelstudien-Werkzeug, geschrieben für die KDEUmgebung auf dem Linux Betriebssystem. Es basiert auf der Sword Bibliothek, welche die Back-End Funktionalität für BibleTime zur Verfügung stellt, zum Beispiel Bibeltexte anschauen, Suchen, Lesezeichen anlegen usw. Sword ist das Hauptprodukt der Crosswire Bibelgesellschaft.

BibleTime wurde konzipiert, um mit Dokumenten benutzt zu werden, die in Theological Markup Language (ThML) und im General Bible Format (GBF) vorliegen. Diese Formatierungssprachen zielen auf die Erfordernisse religiöser Texte. Vollständige Informationen über die unterstützten Dokumentenformate können im Entwicklungsbereich der Crosswire Bible Society gefunden werden.

Über 200 Dokumente in 50 Sprachen sind auf dem Webserver der Crosswire Bible Society verfügbar. Dazu gehören:

Bibeln

Der gesamte Text, optional mit Strong-Nummern und Fußnoten im Text

Kommentare

Mit einem Persönlichen Kommentar können Sie ihre eigenen persönlichen Notizen zu verschiedenen Bereichen der Bibel anlegen.

Lexika

Für Wortdefinitionen und Bibelthemen. Sie können einen Schlüssel aus einer Liste auswählen, der dann angezeigt wird.

Weitere Dokumente werden zur Sword Bibliothek hinzugefügt werden, daher schauen Sie dort öfters nach.

Änderungen

Bitte lesen sie die Datei Changelog des Quellcode Paketes, falls Sie an detailierteren Änderungen interessiert sind.

Eine Auflistung der im aktuellen Paket enthaltenen Funktionen kann im Quellcode im CVS Log für bibletime/bibletime/ChangeLog gefunden werden.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-MDI-Window.html b/bibletime-doc/docs/de/handbook/html/hdbk-op-MDI-Window.html new file mode 100644 index 0000000..1a4ce24 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-op-MDI-Window.html @@ -0,0 +1 @@ +Multiple Document Interface (MDI) Fenster

Multiple Document Interface (MDI) Fenster

Multiple Document Interface (MDI) Fenster

Hier werden Dokumente "Anzegefenstern" angezeigt, die speziell auf die verschiedenen Modultypen abgestimmt sind. Die Crosswire Bible Society wird möglicherweise andere Dokumenttypen für Sword schaffen. Wenn sie freigegeben werden, wird BibleTime sie auch unterstützen.

Geöffnete Fenster verwalten

Dokumentenfenster können mit Hilfe von üblichen KDE Fenster/Titelzeilen Funktionen kontrolliert und verändert werden. Als Erweiterung zu diesen können Sie geöffnete Dokumentenfenster kacheln und stapeln. Benutzen Sie die entsprechenden Knöpfe in der Werkzeugleiste oder die Menüfunktionen im "Fenster" Untermenü der Menüleiste.

In geöffneten Dokumenten navigieren

Die Navigation innerhalb eines Dokumentes ist durch das Schlüssel-Kontrollmenü und durch eine Scrollleiste verwirklicht.

Tip

Um zu einer bestimmter Stelle zu springen benutzen Sie die Schlüsselkontrolle.

Tip

Um sich in dem Bereich des Dokumentes zu bewegen benutzen Sie die Scrollleiste.

Tip

Für Bibeltexte ist die Indexreihenfolge Buch - Kapitel - Vers

Tip

Für Kommentare ist die Indexreihenfolge Buch - Kapitel - Vers

Tip

Für Lexika ist der Index Schlüsselwort

Tip

Drag&Drop funktioniert hier; Wenn Sie einen Vers eines geöffneten Fensters oder ein Lesezeichen ziehen und auf einem anderen Dokumentenfenster fallen lassen, wird dieses von der aktuell angezeigten Stelle zur Stelle des Verses oder des Lesezeichens springen.

Bearbeiten Sie ihren eigenen Kommentar

Die Werkzeugleiste des Kommentarfensters hat einen weiteren Button, mit dem Bild eines Stiftes.Geben Sie ihre Notizen ein Für das "Personal-commentary" Modul, left mouse button den Button mit dem Bild eines Stiftes um Ihre Notizen einzugeben, oder um eingegebene zu bearbeiten. Wenn Sie fertig sind, left mouse button den "Speichern" (Ddisketten) Button, um Ihre Notizen zu sichern. Um die Notizen für einen Vers zu löschen, left mouse button den Vers löschen Button Vers Löschen Symbol.

Tip

Das Personal Commentary ist ein Sword Modul. Wenn Sie es nicht im Hauptindex finden, dann laden Sie es von derCrosswire Bible Society herunter.

Tip

Falls Sie nicht in das Modul Persönlicher Kommentar schreiben können, sind die Zugriffsrechte für den persönlichen Kommentar falsch. Setzen Sie die Zugrigffsrechte zurück, um ihrem Benutzer zu erlauben hinein zu schreiben.

Tip

Hier funktioniert Drag&Drop, wie bei anderen Kommentaren und Bibeltexten.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-module-bookmk-1.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-module-bookmk-1.png new file mode 100644 index 0000000000000000000000000000000000000000..4bbcd586e8028d52027a5f7729038d106714c8f4 GIT binary patch literal 7815 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 Z{{!S!qyq$kTYCTi002ovPDHLkV1hVc+Drfd literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-1.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-1.png new file mode 100644 index 0000000000000000000000000000000000000000..2f44816632e7cdc14e94f35fdc470a5ccb383030 GIT binary patch literal 13887 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 T=6tsK_g-FFMXEyLW6=Ks+i%DX literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-2.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-module-select-2.png new file mode 100644 index 0000000000000000000000000000000000000000..fceccfd8b334e7b4aa71ee9fd73c28f0a517b294 GIT binary patch literal 21312 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 z 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 EFVwoaumAu6 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-module-tree-bookmark-bookmarkandfolder.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-module-tree-bookmark-bookmarkandfolder.png new file mode 100644 index 0000000000000000000000000000000000000000..caa339a1385a8f8d8959c433d95857eefbfa7f8a GIT binary patch literal 18145 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 z%0A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 Modul zum Anschauen auswählen

Ein Modul zum Anschauen auswählen

Ein Modul zum Anschauen auswählen

Wenn Sie Dokument auswählen wolllen, klicken Sie einfach auf die gewünschte Dokumentengruppe (Bibeln, Kommentare oder Lexika) um den Inhalt der Dokumentengruppe anzuzeigen. Um ein Dokument zu öffnen klicken Sie auf dessen Symbol.

Tip

Hier funktioniert Drag&Drop

Ein Dokument kann aus einem bereits geöffneten Dokument heraus geöffnet werden. Klicken Sie einfach auf eine Versnummer (Mauspfeil ändert sich zu einer Hand) und ziehen Sie diese zur Modulliste. Lassen Sie sie hier auf dem Namen des von Ihnen gewünschten Modules fallen; dieses Modul wird nun an der Stelle des herübergezogenen Verses geöffnet. Wenn Sie eine Versnummer auf ein bereits geöffnetes Modul ziehen, wird dieses automatisch zur gewünschten Stelle springen. Dies funktioniert nur für Bibeln und Kommentare.

Zwei weitere Funktionen sind durch right mouse button auf dem Modul verfügbar. "Über dieses ModulA" öffnet ein Fenster mit Informationen über Copyright und andere wichtige Eigenschaften dieses Dokumentes. "Dieses Modul entschlüsseln" öffnet einen kleinen Dialog für verschlüsselte Dokumente. Dies erlaubt es den Besitzern des Schlüssels, diesen einzugeben, um das Modul zu entschlüssenl und damit lesbar zu machen. Die Crosswire Bible Society muss Module verschlüsseln, bis entweder der Copyrightinhaber die Erlaubnis für die Weitergabe des Moduls erteilt, oder der Text in Public Domain übergegangen ist (Copyright verfallen). See information on locked modules on the Crosswire Bible Society web site.

Auf den Suchdialog zugreifen

Sie können in einem Modul suchen durch right mouse button auf dem Modulnamen in der Modulliste und Auswahl von "Search in module(s)". Durch Shift-right mouse button auf anderen Modulnamen können Sie mehrere Module auswählen.

Auf Lesezeichen zugreifen

Tip

Hier funktioniert Drag&Drop

Klicken Sie mit der rechten Maustaste auf einen leeren Bereich der Hauptgruppe und wählen Sie "Erzeuge einen neuen Ordner" um einen neuen Ordner anzulegen. Sie können normale Drag&Drop Funktionen benutzen, um Verse aus den Suchdialogsergebnissen in den Lesezeichen Ordner zu ziehen und um Lesezeichen in Ordnern neu anzuordnen. Es gibt auch eine Import/Export Funktion für Lesezeichen. Wählen Sie "Exportiere Lesezeichen" im Menü der rechten Maustaste. Dies wird eine Dialogbox öffnen, in der Sie die Lesezeichen speichern können. Sie können mit anderen Benutzern von BibleTime ausgetauscht werden, archiviert werden usw. Sie können in der gleichen Art und Weise importiert werden. Sie können auch rechts-klicken um Ordnernamen und Beschreibungen von Lesezeichen zu ändern, und um Lesezeichen und Gruppen zu entfernen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-output.html b/bibletime-doc/docs/de/handbook/html/hdbk-op-output.html new file mode 100644 index 0000000..5f53ba9 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-op-output.html @@ -0,0 +1 @@ +Exortieren und Drucken

Exortieren und Drucken

Exortieren und Drucken

Bibel-Fenster, Lexikon-Fenster, Kommentar-Fenster

Durch right mouse button auf dem Eintrag, der Versnummer oder dem Text des Anzeigefensters wird eine Auswahlbox erscheininen (je nach Modultyp), die Zugriff auf Auswahl-, Nachschlage-, Export- und Druckfunktionen bietet.

Alle auswählen

Ein left mouse button hier wählt den gesamten text des Kapitels aus, das gerade dargestellt wird.

Text im Lexikon nachschlagen

Ein left mouse button hier wird ein Submenü mit einer Liste von allen verfügbaren Lexikons öffnen. Ein left mouse button auf einem Lexicon öffnet das Lexikokn mit dem Eintrag, der gerade im aktuellen Text markiert ist.

Kopieren

Ein left mouse button hier wird ein Submenü anzeigen, dass die Möglichkeit bietet, den aktuellen Text in die Zwischenablage zu kopieren.

  • Vers - Die Nummer des aktuellen Verses (z.B. 1 Mose 1:25).

  • Text des Verses - Der Text des aktuellen Verses.

  • Vers mit Text - Sowohl Versnummer und Text des aktuellen Verses

  • Kapitel - Das ganze Kapitel

  • Ausgewählter Text - Nur der ausgewählte Text.

Dieser Text kann in jede Anwendung kopiert werden, die auf die Zwischenablage zugreifen kann.

Zur Druckschlange hinzufügen

Ein left mouse button hier zeigt ein Submenü mit den Druckmöglichkeiten an:

  • Vers mit Text

  • Kapitel

Wenn Sie diese auswählen, wird der Text zur BibleTime Druckschlange hinzugefügt, aber noch nicht ausgedruckt. Sobald sie alle gewünschten Einträge zur Druckschlange hinzugefügt haben, clicken Sie das Druck-Icon, und der Druckdialog wird angezeigt. Nun können Sie den Text entweder anschauen oder drucken.

Das Drucken in BibleTime ist relativ einfach und als Hilfsmittel gedacht. Wenn Sie ein Dokument oder eine Präsentation erstellen, die Text von BibleTime Dokumenten enthält, dann kopieren Sie den Text doch über die Zwischenablage in Ihr bevorzugtes Programm.

Speichern

Ein left mouse button hier zeigt ein Submenü mit Speichermöglichkeiten an:

  • Kapitel als normaler Text - eine Datei mit UNIX®-formatiertem ASCII-Text wird erstellt.

  • Kapitel als HTML - Eine HTML Datei wird erstellt.

Wenn der Text gespeichert ist, kann er mit jedem Text- oder HTML-Editor bearbeitet werden.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-pencil.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-pencil.png new file mode 100644 index 0000000000000000000000000000000000000000..8e2f895e6ff3591e8c55eb7ee455c5510ee8fc5c GIT binary patch literal 361 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H1|*Mc$*~4fEa{HEjtmSN`?>!lvI6;RN#5=* z4F5rJ!QSPQfg+p*9+AZi4BUbs%vhfiKM^R%UgGKN%6@@UhK1SUtZ;nkB0dmbtCY7yAo%ew7Jy?~~zj2#US_N4DQltTea#(Z09{wPEUyw)$2FuOnttygZB-a z!362;jy}gTe~DWM4fCGUi} literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchanal.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchanal.png new file mode 100644 index 0000000000000000000000000000000000000000..cc704238628d3eadb279174f161588d4971f82ab GIT binary patch literal 8764 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchresult.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchresult.png new file mode 100644 index 0000000000000000000000000000000000000000..6d96e8733d1a0b441d818fedf30f8d333b16320e GIT binary patch literal 11808 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 axFMZ+F@(=iA&v9rURgmyzEt+b+y4VEgx~J~ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchscope.png b/bibletime-doc/docs/de/handbook/html/hdbk-op-search-dialog-searchscope.png new file mode 100644 index 0000000000000000000000000000000000000000..6092d1ed73600c4c7f97ef080f9a7075453aaee3 GIT binary patch literal 8429 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op-search.html b/bibletime-doc/docs/de/handbook/html/hdbk-op-search.html new file mode 100644 index 0000000..d6a13bc --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-op-search.html @@ -0,0 +1 @@ +In Dokumenten suchen

In Dokumenten suchen

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-op.html b/bibletime-doc/docs/de/handbook/html/hdbk-op.html new file mode 100644 index 0000000..75cf0cf --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-op.html @@ -0,0 +1 @@ +Chapter 3. Programmbedienung

Programmbedienung

Chapter 3. Programmbedienung

BibleTime wird hauptsächlich von dem Modulbaum aus bedient (dieser wird "Hauptgruppe" genannt). Der zweite wichtige Ort zum Arbeiten in BibleTime ist der MDI Bereich (MDI = Multiple Document Interface).

Hauptgruppe

Dies ist der Bereich auf der linken Seite des BibleTime Fensters. Er enthält den Baum der installierten Dokumente (Sword Module) und alle von Ihnen angelegten Lesezeichen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-start-bticon.png b/bibletime-doc/docs/de/handbook/html/hdbk-start-bticon.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a6346daec7f407bd193d59bd15cd8ba1465c96 GIT binary patch literal 1629 zcmV-j2BP_iP)v1=>kOK~#90#g@s7UB?xNzdAMCd*9rH)Rw!EEhoVloWXRAg-IX~ zqChY*C}{|Yth3S|pg%)dz3=xZnB`XT%X9wmlA1)TtV(bav08}59D8@uxl_U|U6J~XtaP3o)xrZKq zo@5P%l2jixRZ4~!6R9d8CPZrhj4HBGV)7DALUIl%3NV&f zE7tjg0oc!Vv{+AAuaUoA#SF`4O`Pxj4RwwxDJBcZ50*(sJcJg`h5Z2>KYpA`mo5=R zFhJC%cbpacgKf+|?qN1ZkDbx0x0wu-b_=vDANi`f-XDO70OJ|wKXWP~$ZQw$;+J4! z1Y0BY<~`WlhVOkH@_-2$GSfqzo=1udQP7n32hi*FnwyN59RpeCaEpgAPalG$u)0b8 z+xOAUZOltwAq9`M0p|j?$go+48P$~K*8Tt{HW^x(^nn4FWf;@kO1DdJ4V?2i$-71a ztiw8o7_b6j_EzN`0PE}P4S+s=u&NdBJ%UozHL1uj-4+VCGGV#}J_JMrAAF;R3F>;E zC0JcueeC9w9tgoBRzS6xcONiWGh#BT@gZQnLsP%`HSmK>WoJTQOJ1&8Ns;c$}FtIc#!8j9TS&?GIIM+N#s!&H@+!G2$WE|Xp z0qcM#^ngrrn3S5}6D5p^m=x92WJWBe+r|t!&?$&9l2Srb1Wg#zya~N-?_e3&0VLy| zFa~2CE-wh*c#d>*0YBGAERZ5e6UKX-F{mbDj0XcqG^03?;}{dh7{q1xtc~>%_wDDK zUh$R`OEe`UWQcEpc!r}*)`z2MA@&A%RJn0447W$b1jag&Dk&*jb>#t@TY z#gLLxRWE&ch+ zFPP`%+Vlqn-9bkG@PJTcWStfv&k0$MIEOfg4Gswb2_E0-V0{h>RjKLNH-Bn@U4P8e zbl|;&(Iif-%h1?px>`rFju;cMs)(`129GN;#QR1wng;+>F@W_Vdwth;1rU)});2cZ zc>n4r<)3e@>YXj+v$bs=u8!DRuc)>vs*NENu}|CEXjP-JnTAwXXo^V4L1kmgC4nhZ zaPi_rbK=B_(;s|%ZS8}PuYGyx(Cm)}ofgkN`;ey=W;xQfX5Nl?YQ9I&ZR5LLTu~5; zK+$efbR$_3g0`tjyXS{s*SwrNcaG6$WX_&FJ4h+5Y4bL#bCx2{$(_&+mUiZNX7O|A!LrCXfZ$2<>=B8p84u`a7BN(F_K@r`s!J+C>pZ=f3 b{=)We+saosMFSbn00000NkvXXu0mjf=C1R1 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-start-screen-terms.png b/bibletime-doc/docs/de/handbook/html/hdbk-start-screen-terms.png new file mode 100644 index 0000000000000000000000000000000000000000..1b7692c0b28a93f06c396fcb7df63ba6a1fcce34 GIT binary patch literal 123790 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 des BibleTime Fensters

Elemente des BibleTime Fensters

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-start-sequence-tips.png b/bibletime-doc/docs/de/handbook/html/hdbk-start-sequence-tips.png new file mode 100644 index 0000000000000000000000000000000000000000..d4f0a2e0e640a0c12b07e39835c51b201644483e GIT binary patch literal 12274 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 + + + + + + + + + + + + +

+ +
+

+

+

Die hier aufgelisteten Tastenkombinationen können im Optionendialog verändert werden.

+
+

+Table 4.0. Voreingestellte Tasten +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AktionVoreingestelle Taste
Automatisch KachelnStrg+Alt+T
Automatisch staffeln Strg+Alt+A
Staffeln Strg+A
Alle schließen Umschalt+Strg+A
Werkzeugleisten einrichten 
Einstellungen  
Beenden Strg+Q
Entferne ausgewählte ElementeStrg+Alt+D
Hauptgruppe zurücksetzen Strg+Alt+R
In gewählten Modulen suchen Strg+Alt+S
Kacheln Strg+T
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk-term.html b/bibletime-doc/docs/de/handbook/html/hdbk-term.html new file mode 100644 index 0000000..02f3b22 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/html/hdbk-term.html @@ -0,0 +1 @@ +Chapter 2. BibleTime starten

BibleTime starten

Chapter 2. BibleTime starten

BibleTime ist ein KDE Programm und ist in den KDE Arbeitsplatz integriert. Sie können BibleTime in KDE Startmenü in der Hauptgruppe finden.

XX

BibleTime kann von anderen Fenstermanagern aufgerufen werden (wie zum Beispiel gnome), voraussgesetzt KDE ist installiert. SIe müssen ihr eigenes Symbol anlegen, um das Programm zu starten. Schlagen Sie in der Hilfe des Fenstermanagers nach, wie dies funktioniert.

BibleTime kann auch von der Kommandozeile eines Terminals aufgerugfen werden. Um BibleTime zu starten, öffnen Sie ein Terminal (jedes beliebige Xterminal) und geben Sie BibleTime ein.

Startvorgang

Wenn BibleTime startet, könnten Sie einige Meldungen sehen:

  • Keine Module installiert - Dies erscheint, wenn Sie vergessen haben Sword Module zu installieren, oder wenn Sword Module nicht gefunden werden können.

  • Erster Start - Dies wird angezeigt, wenn BibleTime das erste Mal startet.

  • Tägliche Tipps - Dies wird bei jedem Start angezeigt, es sei denn Sie schalten dies ab.

    Tägliche Tipps

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_Configtoolbar.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_Configtoolbar.png new file mode 100644 index 0000000000000000000000000000000000000000..54d184c35bebb6fa74275863a84adc019498e970 GIT binary patch literal 15524 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..263ad5f177c8bcc9fcdfb82ff4540312ad13ad85 GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}EByV>Y zhW{YAVDIwDKoRy5PhVH|3+!Uz^6bIyeMEplS3F%DLn`LHoo2{)Sb@j2ewE+O$^8?z zhHu>AbxrPY`Kw!g3RfB$PhDWV*D^`r-~Wxe4L5IQ*(IfYZk}7r&`|xh?fPd%h8z9H zYoa^8zdbHFZ#Czaf_E$Z4&1U7baXlNdr8BMN}2FId7=}QXFKFSpO?a0^Y?f8=a;G5 zl6VCK85~@8l{RQOxHNs9SGu6=V29NXj)Z55=QcAn6v|EzH8`|W>p*z}tL5`~vu}FZ z8!czBXZ^3Hkj6Q~+aXIWB;HH6;9TrGd1s*u%N|Z(2|5?bxb)}Vh=@;&Pa6su?WQ)E Q0{zF}>FVdQ&MBb@0Omk}YXATM literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade_auto.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a846144b31e832b2c63b6b47c83ab4197767b5 GIT binary patch literal 492 zcmV7V(DW?f?J*en~_@RCt{2 zRy$I|Fc5uasKPPQ4{(~wtrB-!ty z-5mq}9bL^KW6bKrL<9hMtbO6<;{^b)J6^(b3*z^7$4gkxCa{HbMs)&fJ6B4=4cY2wVn{gRIFgnZKtF;z=-)|>?MZ}Jo7(g@mA^}X)a?cEDCM*)L6hw6M|It*0OOcy~f0BUY iJS(6yzwfwXP5c6~aMW-5fK1&00000_&$2_1PAx-sDRvI026>U z0Eozc39+E6AwUp7U~0SmJ%j*q?b7)L7bXDk{ZNH^44z#I*@v z0x&l2ZE+Ct>-n>+EDRtB2&gu;MG6F9Ow$EzKnTFKE0@USau6*P1X1lO5cn+t7J!h8 zznr9R^aIZ9vHRQ-@jBv$Pt#3V}n= z%*_173mZ33d~PF!m4mE(fH8(t z9l-4L4VHBGH*Bk=ATU@vzXAZ(I%E!~h@c|b!A2T6lF1~gj`Y0#YFz+rDG&n8UFQ(d zC|q@Xi3nOl!qaU4RGc@N1#tiy15gsSTv(whoCDGQ&W_X~09q(ujR71cC}T`q0TBym zlt}oALr~HE`KXq!J~q5 zA&{5=W8x_g1fmvJN>!ih7WuC)_C^2^#Fnc8!yjkE;0V}R5Q!I|xatI~K8n6qRE;ap z1i%=Fm{MK9@KcFJ#3HtgYtjW$8DMpzm?*H;aTRRc*l(->aX9N&1439}A`WXT&iDjP zQc$lz?Jc4*j9MrVacRz+Bs2LP08_VS_~yVzI6I5j0B2?qQ^xqS1m$V0En#ikp@<+( z5G;bliDCNB-`KHz8>sjpI=2SY)N5}_c5IaGPdv}d6XS>+pja#-goPORCB#^?@ng;q zhhR}CjBjwI>+Jt*AD92Q!O*((q*E#K1B29;f-we?jVY)?yjvWBL*po=*!1i(m|zxL zDia>Cet606d1lPj=3e?J3-d(k>PC6je$LaQ#QL2MeqO^oAt z9*;jZgaj6=KukF%z|EUeT)%dagI^xtfz@ls+?AofuNNmCN+~?gBbo3>CX+PYFMvK zFLw`vg+2=Xy{uT;)x>QmeW_HMSAiPDtFKFTY?SvmZ$VG&!`gKWt;*n>!&=9lPrs%= z-_7!DhE@0FNhH#o{^=Y5Go>&GGNAAY8`TQ+V1#d7za>DR5R$N|DeCrFA&a0MFBOq&upEs;$@U?AR!` zA6n1WiE*->uq4yNt&-2%4?hjog6Fm2CT@1?OKtz@knGrKc;y^K<8|u2PvF9te-u2j pCS$6Vb!Fq{>g}n;{A+4ze*^m>+(S}x>f8VT002ovPDHLkV1iIAZ|ML4 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_exit.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_exit.png new file mode 100644 index 0000000000000000000000000000000000000000..df7870877da8beb7228d000f76a8db4d67d5948a GIT binary patch literal 1122 zcmV-o1fBbdP)?|tt*vaqo56Ivjpgp`u#y6!}yQBMd#THlmPr8dWLn4&1M^$q}7t3$?^ z3?_-OgwtOfa?7G{I7;#)bja!N0S-`0E{sSK&I2_x3O4kE|EyQaa|WPGc%Z&n2-Rz z;rQU-U_jS(sHzInG{59>xlf~`qklJpU{Xp1gTXqbR1}NFWFnDxv%9+s0H{<>lS%?CkI7=jWXOphzhRV@z~+cRK*M z>$(7dtE($mmWB5AcKE)JrKKh8?ChYUqXUYfz;#{NwhhN|;CUW|5WJ_S$7?7GOxJbi z=;-Lx>FMd>+S=OdnVA_>Dizqa4JjoQMF9X53I$ZF)klt{lyF@anx-L{Od^}j&ZSbR z_SxClj{u-VqfxJ1F6*50_tVqU`ozS9ESJk@m5-)r2nK_Xg$4lM_Yn$(Ff}zLBaz5} zZQJh{V}daz6d?p@==8z1Z2%yY(yyGp1VRX;l&IBeL9G);1MclTvvWaLjFgd&7cn4&0>bIux5s;a6g^7%X*$APA42!%qB zQeu659lr0wvMdlnaD04>YPE`5t%hhc>YkjO?2M0(|3NA30s!)K&_6spNYgZbwk#{@ zc^;CsO$wTwxV^m%(=-u@MBM)V{?y>$V6LHS3bc$(!!T;OT<+85<>j3a zf@ibYxr2j)frj`2;F05EvG|b?at@$AG&J;=uImri*Vk>$vH4ZRLI@IxM7-YKUc0BK z$4jMBN!zyHq0vzdPyiSn9{z1>Ys=i<-;Wdug|P4Y%F{JPp4)lNECPXmV2p|9?mf?= o^?IGW)cVh@re{BCrQ&<|2N$C8iBEq*4*&oF07*qoM6N<$g7dc@c>n+a literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_footnotes.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_footnotes.png new file mode 100644 index 0000000000000000000000000000000000000000..119147e558a213846cbe67f11f39ffa902d7a169 GIT binary patch literal 998 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvNA9*<^}kK zxB|u5*jSmFnYg()85tS5I63sRRGFBVq$S1p`T5w{+49pOWu(Lv<)p+!ghG6swbYeZ zn3?_D?JDz=I62rO0^OrSyjWOR1o(N=LIWEs3pW>+ zi=FxIHPdgO-hS!W)>8+!oISkt{DC!65~51-(ydjw^CvaP%Sy(Edfh&?`Ra*nXAW&W zx^K&Y-J6f?-*V;nwrO3}%uGyoPH(wa$Jv%oa+_U-g!7VpVZi@@^ z*|2!x@dH~9@7;W4-&mY-({lu2M)JQHa z4hJh^YcqXCd1*64?QJWj9^1DiKHOJCSYYGgi8oGe4fS&s7ZpCXeet;?TQ443XQ-yPgTTDs-VneCoVR{HvS5@N!qcQ2pPUM?gg zpr@_6Y00FeGuqTu6*biq1qJx0PoG}l^;Q)a;#DO7_Ttz7|0ng@aS3MZ(@38a<+o0o}r$Bf`Ng)fgunn1X@`rBo}2CmsC3B zRu-3JChMgZ>!p+yCFke1MW1~QG*Sy}WM+C^Vo52`%)}H6GYeA#O9LaL6r&Uq zQ_Cciq+~-&gQT=%gCukFWM__hE@wCBK}L`CrE5K>O}TR`NvRwmpr+ zo~kEaS&tF1F^s!_rbWE6p0ghgpuA35qE*g&CdfE|4Mw1_MfHz68dNrfG9#gPZ$KK-29VU(YB`%JL1dP zGw-5;0%pX*z(5d0D^yqjQRvV|`FTWn9DD05fbo#Ah?rZpY*9)n3Soj&GD&b}o`?!D zqa_%aE7PPv}{ThqKxO(*}eSLlG-=E>|u4z~`t zm!Gxq!i(AB;u-05TKfC@u`G*ZGKq*#C=|$Mv&_!UqLeBI+#iz3Wa!wH;+>DaV|aL& zAI7`b-1K%4*vMou(%s#SZQGcpiPjp+vRJ!zEm~_l&m)`7GBYy+fbaX1mzNWZ#mHu} zoIih_?c29gTU$#-MFsJAobK*!ti{De78Vw;ZJUyk5|mPyrb#}ZM?{FlV(i%v27cr6qaQXjYcs| zlUOXqrcIk32$`6eAP52yi3ArfUc|O-hK7c?cUB0%i4!NNuC6ATOtNOp8kADR<8dO9 z2ui79Rkm&8I1Y7nb-1p}_3PI;e*8F&;}C`+BO@clKhFRd9UYb7;b8zeJ3C3GQmk9I zjzl6s5CoK#mXgcmP)gxA4s&yJXssC^AIEVVa=9G7@3U>&HXeJrrPJwRNJmEpH8nL< zR#sA0R)%F+9Q^elbiu&K16;aviRtNS78e&88yj2M6^}E%Upsg1l#!7U01h2GL`_W% zRaI5kwvF%mOiWBLH8sUu5TiK!7wy=wL#|x8QVc0CFDDv}(%aknzx*DlbUH1pEc`|c=u4uo3q?|%RQ002ovPDHLkV1hiOF)siB literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_reset.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_reset.png new file mode 100644 index 0000000000000000000000000000000000000000..51ecc2793f0a23c76b71211ded9ec729b4d4c8fd GIT binary patch literal 889 zcmV-<1BU#GP)+Uu`oH#*sWCZW#bpYZxK}rdL3?){h!JgRX{lUF_Kk>VvMdo5H z^vv*1u3yV&*IMyn5k5l*idMKTaYzs1-fwS26oLyI5uydK1;c$ zhmNiaZg~TRQiVcS7X#ztbnV(j_wH>}mzEgtV}|9xR8Q zC(i(|^^;-T&JwokV!K85oFB`|HhPu98&x`8K~LjZQ}ZkU%=6|(1s81#yek*;yKNtR zitV~ozdDId5&(W1K8{`J1R=8161;4P;{>@BkV;7$C(K_P%OCFe`18!cb(#9|LsGwv zaGHjyb;L?3j8f<{K}ksxN6cRR_63KjufIU25>aqS>rY<-URL7QkV+xLIx0<2smvo? z(Y|w+0D%fZEN>ZXn)k$l=dBDE1LCMbyy%lWtG`gwsc(jJr*|%Y2ceG%LyS`G!9oZ; z&qFsFU|EP_XWspln#!ktGjZ%t?s(wtkHk(0T4S_sQwn34zkQo0PiCO!(!!cLDfm`xfM1|1c*tezDvHUOgvfsK1Z>f#kr!gE(b_WjRoA&{2f( z0-|UE{fCEst%#gmWG+?II!a7#Dm881+5t2}{e2A9Q{GBbHoo1L)o@vjndvNTt(lX$ zEwmLlhY$F1wo$8x-xx3kqqFoUHFq9Nb5hIA)g2=60%EbtpZ6#~LHkH_Iwe4=(ZMUbp zd(NJ7{IO}-LVc6TWHK}FeDlsX??+`z7qvcx{RaNlw>~H91aIU2u`^> z5km0O)$0f$$j;8D)~Ar2oz1j@3Ly0N&3>v!+*>f$Bj&3%O|yPfflc}!pW4%LlKY$`6o z?DnaTb8q)>Z&=51c@hRABY{{nXdjn;VOZcz5+`My8I!Friu12vAnz_oEXO(REQ+492$018&DASrDW zL#-BKtQHb15}KhC(8F|vdb!`)#;@%?6mH%Mz`g}D0eDvL1)y+3Dgd(%90$O%A!od~ zYtL@tZHa^pFip_HI=W#JGE6i{LLU-?5;mxAYvq2A%C0@T2?PQrz=kDn0??)E0L)B^ zix30ISy{xz$J4B8c!Me(YM5@-pj!*m9SYN_8+ZdDT9jV=sz&+@2LPof&#?2{6%50m z%Gb&6!{2bXLt*JxMis@U zJ%kYm&=$}b(c2Ax+wJDanw0o#k~%Kfn?j z8w zJ)P)ZYz44AW0UrNQDPc~!K%$$84)v-(FyT*Q&Z5eFv%8AZeko4zdOo~ZQCg;E2D79 zB6C*d73uEnn*gMxrQ!8@$#Boei%7= z0MDf}Ov{wnv28n(Cr@G3jA?v*>MTyD)4Xx@8uLplm^x!R04|p+VnU{AGJDQ!w(b0s z?H?86_xn**)iexafVuQ(dh^3g=A6FANr_*UpnUXVr+-|o^(Q5__qR~h0cDo0)$p0g6X=!2jq{)wM^GWpG zK$d0ZmsUJAf9&iz>HhuSsi~>q&YhnrD=Wk4beb-gizDUbk%à&8-!Zb}JNut)L z@YYN_vMiIFoJ@OrJJr?I+-hiK?zjwYH8k>ami$!YKi;U4tbJqy^obg0WM)$O{b^nr z8HW&pH_qLqs9+I!d3m^d0xY}mn{@p3X=e2Pom)18t3w%7is+gajojQ^gb?g~_%A{T zKB;M>)~EE>$%zvuMc(Jw-|Yjk0HD^V^cTg!Q0r6pr9IMw5L~`>2O$LG#%1;Q{{ac* VVEgfprpW*R002ovPDHLkV1h%6l->XU literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_strongs.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_strongs.png new file mode 100644 index 0000000000000000000000000000000000000000..68ac2bb51c2adbc9a1c1a80d17294fa4e3b2d290 GIT binary patch literal 417 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@mUKs7M+SzC{oH>NS%G|>0G|-o zO$Y7(nGq2Y|5ro^c{=(6IgBMie!&b5&u*lFI7!~_F3f^FKA(V`4o?@ykcwNieb#)3 z9C%!MCv4v|Melio94DV(^qXsiNA9t&zrkFi2v{bvF;W4dL?@V|&TX|{Rg5K*ZgFnym zc;{CV^KH*V1N}Fg$9~P2`?t!&#oN+c{>OCv)5{b#=ByJ2`NF-#HKHUqKdq!Zu_%?n zK|@*7GdD3k)i*IcGdWwqRL@Y)K*7L3-@p)v6auX*6q1WFi%TjUax05VGL!XEi}g}U z3-a?y^pf*)+oI3D1{$daHZn6kFR`Q)Xr_gspNS%G|>0G|+7 zAYETyU#fL?&z?Qz4^Gbj@)=8l{DK)Ap4~_Tagw~!UluT}tcae{QYq~;`6G8h^d#7MUA0|gm8UHx3vIVCg!0QuuwP5=M^ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_tile_auto.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_action_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..842d9ee368f4abb5a84f181c10067ce922b95233 GIT binary patch literal 403 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NS%G~10G|+7 zAYETyU#fL?&z?OE4Go*U?^FYY7)yfuf*Bm1-ADs*lDyqrSo$+=1_C+do-U3d6}Q$- zxXat1z|(U60E3nugRnyi1JCdGDUIw=rfM$l7y9n|@;vH+xUP@rnrl0+Zu=3FSQeB~ z$Z(`Z$6?VK$0Lc0k`BB+&7;Azrs+_MjnxMSg9ahp;+vP-CmG%gnya?atbJ|7ThS?7 z_OM#<&->4p=l^ew@SRB-%`+a#*#n*6Ug8>25}cn_Ql40p%HW`(tm&DXn4apJn4X!O ztzfEWsAr&HV4!bc2t*2jRu&4$MVZAVl@7U;#U+`^da1>FDWwJZc_n(u`MGV;XI}%2 z)B+osnVy$eQVKLPDLFCG$kIGH%{V17IVsWD)Y2%;B-u1AEhQ}}%{0wo&eFI`KwX?5 dT`s9PiIoh71_m*bE&M=122WQ%mvv4FO#p4MiX8v| literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_close.png b/bibletime-doc/docs/de/handbook/html/hdbk_bars_toolbar_close.png new file mode 100644 index 0000000000000000000000000000000000000000..d4c4440679d8613f42f96158a4c6fa9d7ae11f36 GIT binary patch literal 267 zcmeAS@N?(olHy`uVBq!ia0vp^5SYpfUF4dcYvfp@4>SKy#;H zO>oF+>_EKsfh8RQ%lE@t#m3n+!I9+SY$@UJif}&5KXNBQVyz5!-ZPv%64+!U&S?C@ z+!|uMGB(T{cfuP&@Gh277godMNA*-!*H>46%~#jUGW2%WcR%&k`&K<&1^r2rn_u4S z_xt-F+>fuj-R|2L-`@Y=etaKaE20Aca}jz|9X&=c{p=JeN4le5PDKEGUBLf1Hykix zL?X9+|K%j3L;|A{9WErLTL4?AUq)O2EAZ>M&J4^rK>fPTjOG6-Qa~;$K?wo%>!On7 z|AxfHAtfnzAw?-9iR=FY1Zq8~JARsZ-PLh5>drjGCT~#%3;LJ-0{{mAz;PS^a9jsm z>KDL4jsp()4Lo(hK@I?HpbhWW1>_?C7a;_Q`~n1@x(EO^(I)w2p8B!KZ!rBpT<)nl zF3uf4#kB~jyDP3cP9ePRZnC(P9y8DuUL84Y!89DL=hCdZI<70xvdQXB z>c!UGRo0yof#th_Hh7~6EC2-FF8~7M|GEe)*hHHptF(zW*|>uUBn7WZR0@7viLq(l zYm?&jKI_qOH{6XGYX%_%)}RS^V-q>}DQ%GYzsLa#5R#a>C_&wsc8gedoLR~8%HZh? zuI?LXW5${h)Ezq(r0z_uHR`UbW5%t=*!SAK&w9PjdcAAC-e*0Go|rub`8Jub{Qh++ zbx+$S6KV_GB?NVcK;8ZFaE839?mCE(j;|SeF~0Xijj#5-_S&^IVlz3&S-ZA|pV~WZ z^6R)xbywBiX;*huN!hBqswDmD?kX;MbypPus_w4VcGt+$+U^=csCHis$F1(J(q*gN zSF7DutL>?gy4UyAk&Ehk>a{&Jy6*M8_1d0VeQ%wvSAB22zORlD!oRp|jeU*!zItO{ z1IOJ!8;u7V_*dp#`oF=aev8R%KGNn0kl?A~|86>)a0}2aB$zjmjY=NggMPoKBuS5< z)GV*Yu_7gYKaEzu$KZJyYbG#TLwbxgn704`cc4N^j~S#{-Bn%ta18;f?XInUxQhEn z?Y`RT2dg+P>9ziR13+zeZS{jyaG|!R)_K2!)i1uT@2La8>ies;J+;;MSCNbAd+VL| zIyiQHZ@qK5gHx{Wt+y|?OHiust9LGU5TM4sM*H11u65&qM*H110Ms9-#Y{4yQe2abuU>ZPXj?vLz5wl8~(rn*fRLN1+WFs zE$Xe|YezZXBhxX-y%?dkNZwh31e z7FbXCzW~TV2oU)V_26`M47ecH76h%av_-rgL+7>n!72dM?yChX1Ir)piNT1keVYuY z<8qpk%#%`2`MC9cbw*1OZ9&=(*S9g-paC&s&Ct-HubZwZ8sBg?N><6Y#yKB~cp{!Z;&PtIpg+-;Jl(_y2MoS) zT5}LjgpTDswZKmSDE;IH>R#VhZ@=620pa>yhFAB2R%krbXuZ{<*L%s#2Ve5mn=N{( z-uJx7wS!;_AP1GUlmf#C_<#Th#O>xH;sJ$wa73GeW!=>h)t#Hug1Wo5s@_bX;x_@#dwF*bCz|hj2!O)*N$xH%FJ;E1?5(kIvyC z1JAZIgNO%?Og%XHJejVJk!gz!wBZd>!X+-roPn<`H0M0H9@DwpA>%^(avS>>jJ9aM z+a{)^XJG&$H(Qrl&Dkc_8353})W*XHwk+4CNWSVDuuDX7Q&@eK$5pJBHy>(}u_Mh@YvO%uDG6)~7nQ8i+=02}3(Mgv-dV3& ztJ{q-KNkOSu}~=Ne{lcBw=WXnrpQ-PuKKFIq!3GnymF0fiIn#7~M zn5b(po6csy6S*b!M0|f_5clALgM8hEEfaqoN@JcZ;Ju34P3XO9`$`G@eoE1WTH~RX zyu$w?{1OKo)_*|~ZQ%w?X}0{X?}=b-p_sAIsyo2hb7v1fei#?+?76ePv7gL~37sbs zXxV|O&Umi@n+&P=F)Ck4%Zo|27UO$iLc&q7@~mBjD7z}+TFml=<3K0x*J6a+8eenBR?CyD#o#u) z6`0NnXp68_-I}TUW<~Q#Os{TUf-H&k2k~KuovWH7#O< zk)ux?4fmBQm5MCBK~>JB7&U?dOhyc13}}p`ffxgt97_6I2rxvfKSHl8w}#U7(kNmH7$O<4zB`(zFO@z|1G(|72&^i5&n^i4$>go)z| zj~AhgVn(G5JLuXcYtT^GM#lE zMkOojoT@vjtxGN3?hK52y&jDTJ{W!zLe&KTI66s3c$2=y7x>jGg2~d+j576N4Iz)} zjw=7|iJq6iNOp&Qf3ll=;uyI2LJ>@nc>8V-pV` z+OUur3VcT=LyQ`oByo~EiJ~Zj45N{v7{tVZh~f_IT#$BW0;m(m(Q#ZRuq<&piZGb4 z0CYrklsrh_TLRLQI*S1Pet#rAZ0(b^=4>;EoqJSr^r@pE-x3%xq7X4+y4|kMcIP9J zeA=56V8@KJ+BZYexFCk%=NT~)f*9%NrABfrc%KSqnnD`pV0%R4Nq%np}-aT8KISALoJNH|^ZHv%a_9?RE`l@}_3O z8C8euLvS9T4FCWQfHw3m_pyy^+xFGpUJV5eJ+38$mjUR=;S!=_D%UIUJY0R@YWYyv zw(Y`u1pp}QD;y{vIDYIn09?CvEz&zSuY3wdr7&OV3Y70I<58)_>b63D+;@euV>83+@dzNr(1QEZxNs;`;2Oc~Tg5?;&7HWj|o6@dGp@^}T0 zL`2GWmu-99w(I4)%gKir8d!>(wAmz#5}LkFES=Ko*CJBgCq+~`rhBLh4d|Zps#JKd z09QPB37`(izT#20RPuJzNdcoUlC>n$nyHs+7Boa|NIc-E&>rwgEZ- zb%0JPg^-N`@g|B=k7XnRVh;WNp>DTJ;Bxhas{_4Khu#X=OwxI)t>v=)3jko%K2F(c&pvg-PJ1+GB<#MOcA z;{O&3-_4sQPdIo@+}Ib3=X(X94ZU6&dMloe@qTlJ5@W$c7?t`buJ#U<*RQYJd*^%$ z#xCclnUaiX(@QkFUV~lZ=Pf5fKH=r>( z#(>610>o&dL1$NA+5VJ67U900qb-v0l?1PWY);ASPdSpEDM_Y$?o+>6<^&*y>{;3y z2=i9rZLrJ4Wdidd>2&Cw)%c9avYIRrS=OPu2@9`fRhv}Aq~bsG`+m{;T*ljAm%l^r zo5x2dDg*}G@(Oe3(~%*M&lpC*%zY@8Bi%_JCF3`Nz(T&xl1&66ttxK)geHW)0I#R^5JeXMVI>xB9 z%P>YIdJkU++XI)`EmzUS>48IMk6`)@g{lpH=ikt*6}3>uQg2K=Rx-Rj!x{Tgv289N znCarekUSz~_JPonrC%x^QV4E7>qxr^%Tk*ZgJu|ZOz2S*>TCWEy=8nPLz3BCUgxIJ z*y5kcCJ{n&pE%>!f(aC6Fv>~R6M&d*w>!3z1nL23BC?)Pz*&JUcsP8(IDh&gdrThjd211 z*5g0?MQIcZ*!bnqRBG8#>3m2!3NzA$p02J)lSxPR8WiPWvKHPXfFq9xj>(07gYcEMxG^o5geTHYE;Bsg>rtp)=DtpY3;`|xfN@f?N)~c~(J_(6qZG@U6J|JO zYU-q{(;)h(B@~PkXojJMy(bDjJ>{#U_^-j)U<5LfPQLiqqv$mqfEc zvNLFi9aF$I@X}8XFgrk3DiwTSt=jAz2|SPTfmNIM^8lGX#;^F>3#Ltlo_Q%5ZgzXU7zgJE0#f z85y#U0T9l|7%`%rk0~M-869Ip$BqF_I|hOi!EgNXjoNo=rUi3r#|YMygwpSKosHh& zv6V-@|A;|PKJA#2rX5qMRIYXw002t%nV-)0zy7%Y_0|5@Zy$N`$Rpo>M6nK)9Sb0&yJ~o=NQ~7EiNq0KYhk=XB-3ouynd{^X4y1=gXZPbMEI)0Kn2u4k#3i z<8HpcP+PpcwEf4O#RZS8ck)yXK+7{{&Iaa>pXZO+!l>N|wItU%uF(C5%z{F&BSVGsPEfSixYpVCj8@b^~myEJn?bKG0Y8NI#L-0d!!k zQ*2pA3h<>>$WaNIVYl#--uCZpmnfJ6?bptde;coDh1U)SpjY}jg?VAUu6$HE$qN9yu(BV^?=uyeT2|y8C8C>3O zADN@!vizEJ{Ma(N(|KpE@YU~o|J@!RM>Kg-v~isl1gFH`cD+9fxybXjsdoS34-4%h zhiJF}z{wx)-&Q$F;Ig%}o^G?!MnmY~(!!pqnUp$x9Zkcepa@T%PWq^X1|+J&k$*S> z086Kq2nVnCQeYYv!vz59f4xHB0sz-Oy!gcYwbYGGBjYBRgZIV%e&N|M0C4=d<8%o7 z*;UUxeyIik->sj%+F4-W0sv3UUwh-1Zz~fS?*Ra=eY64qW>G0eh(QCyD8AJ9mCeAst=v`FdM9lDUuyFTW=NVO%a@Ew^H0v3 z7i>f=j_de{F&sQ2`Z}fv0B3%F#x#hLP|FwpS%(MCvk@a&b_^1I-o}VwZ5r{t>+<%p zP6Wf+%()PpgztmLur|;9bRJ+6U}OI2ix@qMiTq4mE#Z7|!b#+G=b)!)M%&*9FLcjv z@K~E@ap5EYES+8icXOr$OQ#!4r)#&}_Jr}q^B`o;@S=0WQExGiS)1*rtBbe)dg=7y z;=4SEn+RFr5_yL_NV`|xNkrH_w<#Ddii?l?U)>KH|aTFSzGX|&7C_QCU9ALXBA>C zUo#A&aTEQ5k%}l@KcCt-*Ih@7coX24TQuZr!?bVa^^Ep zOLX^@9m>e-Euk_~XgDS#=3hk$O!%BA8?ts?97*={DXRp0_$JXt_^7SsY?DVPJ~5Hj zTO@AiO}+p?ol#C7R<1}v7(FM-CfgZ2T0_u>tU zyU@nYH4;F~=IdwSvBM=fPz-vE1T5dJj~!nB*W;mZ0S!nQnPTzT4(mTVwe8vCF_JK@ zbxw86wkH=*aL;g^5r>>ist_I4CKEpP(-;yXLH#H?9IkXrJ~T>K5nf*|{ct`;Odan! zl(iX2Z>6r)VkD>^g%3$DIK-}tjJ-t@!LstM@u`3C=)rQitlph9iO@?t^jaOMo^bhz zc}f_Z^uHiqx}sTpF|vzY20mXtm(X+w50C_45+tive0D=v*s{v^l-K{bzIE%?;pjA6 zC5CsxvpZ2on6kJe05b|i&5qn;Mgc_`NWS{oSC|fAHPg=J5P1*(Wk`i$#igU z&NhXOuXvOqVv3!=sM^0><--xi9fK7Em(dD6km(p(X^G=H_^-IT^ShIO+mKmg7&kz#OAx1|TERMkU2Fg@bK)zIhY!8Kml)$ar8fGTjn?S2F{eoQ_H-o{zudkl9N- zKZ0=r0L9i@Euo8~sY2BJok+~^7!sOnLN0eIDd?v&TFSRtFiu);wTk$l^o(97*{D*J z86HE_kd3qjCSO8)CkY!oQtuiK&a-iK(t%M^zSV+p0ss~sl6WKW$HV`Ga8~g z#(edeScVII^)`qDc_ocnc;-=UDVkL#>fz4RFv;DEnkKfE)?^ovm3;RX0)Yg$Cwdk$TC98 zcO1kRX1I}Ph%wA?BfJ=9xRJy4>K zt$nl>8x3hO!?V~%J4uu=;bV`FV4SRdv}X0L_W;2DR{E>z4AnW5LXdD~Ge&fElw6&A z9x50o0ARiP>Z<_I_+BH6Y&4nS%r@E#=9ueHj<+W5T$qat_p(GnN#Ii>7$*Q=z4-i# zGXHsK%y4=;Zho&kp6IIJct@h0L)hMN^ix?P<3q*GR0vM26EDR7CQ=79n#^z-QlX;e zc&mBW{KlEG*UUf72{?p;aRLC=kt0X49sjhM;Zc)KC2k~BMp5kP9+Cin;3PvkCK5Az zB*J{46#A4eHqD)zZmr|nF`0gSqG-fOe8d!eT_#8MhbH_}*`~Tv?~M=R>yt>#aG|dh zX%}u`;_4hDfku|dIDD`;Oc@tuIKzdOr2rDzb|n6`kX6pZh<_?fId6t=0W&Y18;)Uy zCmH6Z7%?m}9E=#aL=nRbPhr^2m6kQk@DwJTa#de5Dj7*n#~9Y8k<@gI;ZhmI7|<9= zh8P_{7|v zLgPb`g^{F|Z;GJdS({OJ%MHbxdeh#}EQ~}F!`d_wB8IhTBr{*hur`h8+A(Hs!$>${ zm`ym17*Scig+jr!g%P!j;~@tBLlDE8COnv!@N@umbRD}Vc4|yH>8E^Yg--+RqFq5n z@t9WS8(Fi=k=j#Th7@#+3`&}aQGrnuMp15c_;jDDHLGR?b;_?mjAohDbyT2VzvUyz Z{{!S!qyq$kTYCTi002ovPDHLkV1hVc+Drfd literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_1.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_1.png new file mode 100644 index 0000000000000000000000000000000000000000..2f44816632e7cdc14e94f35fdc470a5ccb383030 GIT binary patch literal 13887 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 T=6tsK_g-FFMXEyLW6=Ks+i%DX literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_2.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_module_select_2.png new file mode 100644 index 0000000000000000000000000000000000000000..fceccfd8b334e7b4aa71ee9fd73c28f0a517b294 GIT binary patch literal 21312 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 z z=XULPki_}c&74F_hRlh4+qRWF-klu%;<6@`M+_F_u#BQ-EaA9$|5{yd^zrEv&98U| z8!+?;zS`)G@>*FGtoOtoh*3gIA^cn!(5pf;cR!%f_VZntLlfnv^!#DcIEZ*FIE%BkFSX6%K7FY028BChZ z7;*-p8>OZOY1E3*Jq-z>B?ZdiRGc4ixSL0-TpC<6AY_>F7{y9B18e*++6)W76FnW- zrKzoAuOKB8o;i_cTF+b0b$OJByP8p=r9_U@REVDu|Vjmiz-z0U2oLS=&_1Vl31G>N`dAW7r~t@ zp{+^6Lg!B>#i@9PiYZDy^3FeW`U9O(yR^9D|o48h)Uv&8Y^t02euh{2r`VL)>c}x_t_NW1 z6lg4C0%>SWX_p!uXOa+YGP)^N-qo!DA@W*B=KKpjOd@Zn@?#Bs1 zk#z<}H&pSF%kL4l{^1MFmR50hJ?K?9HMdE(uuY}nyVul z$KK;u_sjSDxF3)2egAa-0r$%T@AnJu_jO&bYdo(@)FTZ=s>|@p5Cl;vE6Hg?5Ro7F zq$R%qc51q!?ZGz^I~jEu2>Osfacp@J+>=_VD#}4;=O1~^CCOmtlDm@8QwXBAf}kra zMEPtdEq2l8UJ;HX#FoSpF)@$>{pMS)B-eM7Jya4CaK*BCF|9uptqc&Qm?3~n7 zTg+9c%vo>UotW-;=T0I2leSzA}ZGU9J-_`f95goXH*TBR? z6@t=@ntUo>!K@x+ku`Ed{0J5i_fVMCTRt%{G16K=h(Cpiw2>I%-(hO!i)WLPd~}ld z$3G;mX+w&*KY7FdD7v*FaC#h_NU@qlby#dt@0`IOCkTfg_mqBE*})HJX=&Bic1OQ_ z$?-c)Ys0dPu58tvwC9&F&J8sN!ZZ9FZGB zaImuC=r5 zWNYLsh{iu{nz)zNIqmM{>l@fS`TMuwbD3r0;a{mdH=kZ%6~ARJXAxa8Up`=B75(w! zN4f${;wA#^Ke>!8Bo#uKPj=8KGup59H1%(S!;7KEOjp1;4p({NQ$`NI5s zU&iRfqZ1hCTV)%Yw|({qMoPpJ4h{~a-*q*Skyofc90l)Tb}uY|;%#=)NdaC%3CVQi zcCNvk^EiDvhDT0C1qETSq_i|eo#KK5kthKBdqJ{L%S7uaHgdGd*G)!-D7$xn2$$#4U>Xjq9$wxJxWU1( zDD*hs9xW3SzQ(-W3GwXGA33gyC9=nk(qYB#-zRF&(b1)(rXD)$E(ao*JNikzVX2I=I}&8yPmf1 z-@muD8Qy)Jp3a#36A`ep*tFKDs+kP+QcIp4KP{erZls#$eLo%Md3LfNW6@|@1^mYh zxMw;S(LcKV0|ObaK}6kWlOcwtoi}IN^UG9bbxMwhf1kGcA)qg&xq_J&DXvlKN-XR7l;`4oXpybh`c1zSwEI?&*}dPFB^S?D;)X;W%i<=aO`Qn z2p2s!@)NC)QkeX(TQ+9`6}hJ=<4O5I{RLMV*@Xy|bT{R?wFrOo(X*LrjEUVdN3jY5 zHTn7MJUps?8M`dgH`(P1q3l8_x_Oqoa@D1sk;I_emHJKFj%M0fvo+L?ZZa-Sx2uXU z#&sFdX1KH0!7UcK-FPXDpuI;;f$Zz4y>IyQQ5G92O?n^b>u~fA%*m}wt$p`Go)Z$D zLFYmV!4K8MxF0?ob43q`g6MZekFENM=~RX)@LWYo_%xY)uKIMx64}IFSCkaMnQc&r za{AFpF)*r5q1X4}h|_7afPAQGXsWyDjMquGphPsgBkJIUFedS{0Jf)6sw0_SBfsg2 z!!VtUUWm@7!^of#p8a!?9#M@sZJgoKfAdaX`nj>hjL$qRA*!ryw9Sh-B`intkiI_&X5~&&FDnU5()hTT+7tJ#ufPVqWMLLJdY?%e z&2;IGz0wr-!JU?8dgb~K43Ff>>8qO@ad)O)ec7U_MV*CsSo$mHuB)P^I5oL?e*Wyk z2wg~L3LgF;^$;#qUi|LFh!MCIslq#7kG==1QwkJt8?+4Y>+f)awS;b{IHt7Wl5`wbe zyi3Q0`d_26EFf^yvr&OgC4p&_nl z?5uv5?Nd8D?qx2^?o1(XZ*O+K3d8>D`n)O1!xL=-1I6cRhaNmhPjl*=hRgJHO-woq zP{g=WR`!+j<8kfE{LxY4)mF)J9H!AnvyIe8k-T;9krv&CE6%7y&d`Mj&(vLMf+lTL zh4>e7!^1IHd;V5di2ud?=R~2RZ_Y!NF@Y3Hm+b{t=b>7q*_)Do77~c?5-B9IblFS5VN{JI}XXlM@ z!%F>{5odvnfWW|qVq*4dx_WvM@7d*GaD=~k=o{aY&*wluJa`aU#?H8sPNHsW z%f&v|n=eb`t6KHx(?P>R&bFWUwU`LlR+k{Q7L7K!``RwY|1a3rF>SZY?fmuY?ln~d zgS4MEj!sUhN=oix*&ZGq234jbEx`}j+g#BWEkU9HpdLJUeQj}db#-Z}K-Fk_$ zkHm_YJf?cDI3~3VVsgkpU6-kriRE2SW;=dHan^*dkNLB@&8zo;J(|6jUynG4?BWbi zhn*G#+_QrNzmfq_&$%Dz>FMF&;mgC-it_U9-@gOLkCxve&jrtwk^(Bh`f<4S?a$w)7xDP>@~o;lD{@at z3iI)!z`tatW)&~3-x+UsN=D5}=P2U0@dsd+L+=kKg!_1q3$ofZyEw`ZT z?Cj0WO&S^+kR|OAjT5f_VmA?HusK|9F;(l3jGZ;qehh+P^kzGCOJAuXF$>%W6m6fT zlPK;S@-05~j|A|l*_jziQet*a0fCPtB^~pgyL)>+K0X2BIWO2k4i@_gpVi$ma+?2@ z>KN!gRAB^HeRWs*wv?;9xrU46P4R)@YI%a5fk8({$3Rg2*;S;-IX>P{h_!cf(^OMS z5uV~CvpQ(yuvqqRLfJ@xeuEae+@wfy}L+oEWv zg7+ubPB&fvPUym(uj=x05LA=ckUc@3 z4vvEIa-Mtl*0S7MM&4V>Dl13Ltxqjjo*c|3l=BuWOCHW8!&T`g0P^?(jedWyUS3{y zd0^t;fRCiQewCJX0@PqU;9qK~V|N*uubq6DiV5M|lalLgt3FK=t_dBpo(%y30nAs( zPIlz@teN5za(5SR|C1<1mDBQ8$i~i&;Gb;=2JhIg-Jk{3L26~SH9)WP!i*J_vjE#+r1%-uU zV`JQE=^IPs)#tJo6%~ms+bsb9%njPQ)ZtO6m{3(#20UiR_I2m{mLCXhZUF&L0ADio zNa3&n{L1R8w+M4{bF)_~-m4ysZZf?Wp!XZ^<+$=Nn@SnT%k!G9gfduKg3>PO8`p0^ zcz~EJxzR_POVyq^pKX3#HLiH~&f#a$&FI~ipk)A#fnOP^sj=FIc>MSfQS6+OZc8_Iw z_~72Xs-hx!tj~s#beOCA=9@QfnAxA~txv75Ymvz2On&`Y_cX>l`&AbmR#{VXxJvPn zw)V%66T;uWf7elGN4dd!Mlv!o8X6iZD!)K_V5FzVjgG<@7=|Y&HP#V*HIW1Y;psxp z31Jws$K&Cjv%b1ov6y8|7pAcupTxSXsh z*|6Snq>(G>QZoYl5kwFOFu*{238-Uh5Vt_i+3#^p0lQ1H2~wwNnB$v5LV8WM?L$Hu zYW6?rdGr_GDRxhPdof&LB#T)<_N@>0QK*4Z85b89Z81H(minhKK~hCs-CHbsC*(o1 zSaM2=%?HC`P0*X~IGmW_T$N}hSe{i#Q8z>F!1w-j)SE~YfV@i zfeF;v2^;Eo6Zo2Dw%C)J5fCK{J=y0{dCY##7W2My`?dpU``^8L7i~>UP%|2ej)?&^ z(FHvQ;<>Z4)5*!nZSu1N0*-HYt{y(>m8AysQeIg#ah7Hga)?EpZb#8_CnY6)k7W|{ z-9sod zz`(7!pPgxZ+~K+g23cywYiq6qS`ws^oLn1_pOeZVG3dVU_TO%&p$cUc70(9KoiXVI zi9JI-z0^5_S7JvN=H@L=I$zIrB-lN9qMnI}+B=(RkJ%Asx_$e$MbKvZgzr?d|F-RF zUtaJ7POd}Gn)g*UC1g`D%9~$LNi4sHT}0S}17Nsom}gkr&|q|{BDl2DxGwtC_9IBP zTwH&9vLA|L_xJX;#N8fbp^j(S6crVv4*onx9gR)>#pa$3V@~Vp>-Rtv0gl2JyrX4o zJen!w)JFYa-`_Cdx^VpLCtzVtZf@YD8EVCDn3LC&+r`WMc+ijn&ySx~h=b!mtOXXC z)nsmMZMC+xTAVBya3w4M$dr${CUJJW{m^G6k#1< zvO=OF7e%t!!z)bCRmH`{MMY1R2HzP}o2#p+6!@kA9P`UrUt9a@KWX)$D@&LUn1NgB z@Fy8tP-12#VfqD|xA)%0ygtCKX*8Hv_)iiNdY|3q&xiqb?!{`3^qBQ3R zW8f(8x3fBC@5AH3Tq_`i_}$Q&Dqk}vpKYD-`IzDjfItA@uTxX;D{nvNXJ%%4FAu%r zHAB0yG%wfstd3@8!m}&CY~=69Mv}r#jN(YtuVo7D#Q5*9CLc7a1q3vTgbwx=HWU~C z1t;L(;BW@gFz~y>-C>K8w{OqqOSf<10Y!%=o?9Mf^}&!eU@;#sh&WIoH8mAnyYUIR;#_rwcJNSwSZ-aw_ zKs|7MhSx+H*V^|qurxZZW*j*%8?=Cq)#yOvfTt)@5) zJv|`kKKo-3OG0jw;>sDYJrs~kr&vu{SvdntgaCqZ8Wm#LH|3pB9h*AN02Z4jG~85J zL1+M#*;xKg!7U8755+vR4h0-Ip#?fwU*liyDio9WUYBtHwR_)Os*dFrnX?_TN zwwqyl8M_Vefc)bf7fp%X!SgW}fS;WK%@^;_96{d@6CHie{Ie2@=30;}IlMPvnmlkt zS6_ci92~5tSeU8Ei^2y4ld_Oy6d*sVx)34GAVG2&VnW29y*(&kwQl%$N&D08l*P%= z+1Hl*f5va+_SM$c1J2mQz|rV$`WxsMWcrw06m&hzvK6B^b7hbC;t4f6@^SjcdLRM} z_7`apqf*Vp5V=}zp8rmtB3T)mG&z%0$Y;Owi|rryAkrIn#S)Oi?W74r=Sko$TkjGUS`$SPy2&#@0td>8|@%*mg?nAlXR$UU%lSj0`48 zDLIl*85JRWk@(IZKhj0Fdwa4!^M^@6(ok*4ve#m7epi2))U-?UckQz@4sIn@*ILeJBx^2PBtUR=;%YG40jpWAb*Dr|iVqSQ9FLu@Z#0S4^j zz4#Xdq7zQ9Ns2jCaG0xfs@?%_krA?A%-sQn$6-8tj#fuWL)qP&n1Au$lfsSo>k>GR z;8*LC99oVB5kkfcQw~YG7og`6RZfW3RXe0oaB#Dqmi756OoYSB%e!fc=V>KXFMP?% z+i%d26Lf_j!~qQ=Ma0!-ZH~N$5BkD@c^--U1cin$T2lYVwBw33DKVIU2r@$H-_pNA zUzopBl0tuf$1^cYTGB~M5HUtF#xuoYT%bI|IHn3eA6afr%=ER8Io^~$i!arVbuZXn zQ}RY{MiC)j{!ITmnwvkUz{Oo)+G`}OS=Y*FEct?M&xjWy;o7k#J@URWzEJw*8P)X) zGwn0?YY^-zJFDQQGqwv1zZrspsv_2@h{7Me?4Z1sppKJ5l}8g_bs7*nc872mLgA6t zr28gAkBDlE?C9T&LL_``)});V!;GRLej$40r~^xd=8KH==?P2~_j{`?tcjO1hKy2Y zg6b|nF!5L>N~p`S>oFL^{#)Dsg9VV{w(o7?_tLdTVK$Jg0+34ox*_!|BK|iY;DUz8 ztI7e9r>PY@78fB>3NC9>r({&@mZ*Z;8TB|B#7;MJ|9L|TT_;H*9XUg&4DY$D)qRUA zWGyAc{NWLPU4KF?W6eX^W2e)Kulp)-Q}whJ{f9a?R*3#RwECa(?FF(%3MikODig3G5uOZ&)UP%NEmj*J*?U2VeURJUwkzEOv@Fk- zF2lkpD7Ava{vK@3662^L#@5*IL}IcllwQK%zrIk|21-PWG-3iJfjYlcme-K0LOu@r EFVwoaumAu6 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_module_tree_bookmark_bookmarkandfolder.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_module_tree_bookmark_bookmarkandfolder.png new file mode 100644 index 0000000000000000000000000000000000000000..caa339a1385a8f8d8959c433d95857eefbfa7f8a GIT binary patch literal 18145 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 z%0A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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchanal.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchanal.png new file mode 100644 index 0000000000000000000000000000000000000000..cc704238628d3eadb279174f161588d4971f82ab GIT binary patch literal 8764 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchresult.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchresult.png new file mode 100644 index 0000000000000000000000000000000000000000..6d96e8733d1a0b441d818fedf30f8d333b16320e GIT binary patch literal 11808 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 axFMZ+F@(=iA&v9rURgmyzEt+b+y4VEgx~J~ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchscope.png b/bibletime-doc/docs/de/handbook/html/hdbk_op_search_dialog_searchscope.png new file mode 100644 index 0000000000000000000000000000000000000000..6092d1ed73600c4c7f97ef080f9a7075453aaee3 GIT binary patch literal 8429 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_start_bticon.png b/bibletime-doc/docs/de/handbook/html/hdbk_start_bticon.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a6346daec7f407bd193d59bd15cd8ba1465c96 GIT binary patch literal 1629 zcmV-j2BP_iP)v1=>kOK~#90#g@s7UB?xNzdAMCd*9rH)Rw!EEhoVloWXRAg-IX~ zqChY*C}{|Yth3S|pg%)dz3=xZnB`XT%X9wmlA1)TtV(bav08}59D8@uxl_U|U6J~XtaP3o)xrZKq zo@5P%l2jixRZ4~!6R9d8CPZrhj4HBGV)7DALUIl%3NV&f zE7tjg0oc!Vv{+AAuaUoA#SF`4O`Pxj4RwwxDJBcZ50*(sJcJg`h5Z2>KYpA`mo5=R zFhJC%cbpacgKf+|?qN1ZkDbx0x0wu-b_=vDANi`f-XDO70OJ|wKXWP~$ZQw$;+J4! z1Y0BY<~`WlhVOkH@_-2$GSfqzo=1udQP7n32hi*FnwyN59RpeCaEpgAPalG$u)0b8 z+xOAUZOltwAq9`M0p|j?$go+48P$~K*8Tt{HW^x(^nn4FWf;@kO1DdJ4V?2i$-71a ztiw8o7_b6j_EzN`0PE}P4S+s=u&NdBJ%UozHL1uj-4+VCGGV#}J_JMrAAF;R3F>;E zC0JcueeC9w9tgoBRzS6xcONiWGh#BT@gZQnLsP%`HSmK>WoJTQOJ1&8Ns;c$}FtIc#!8j9TS&?GIIM+N#s!&H@+!G2$WE|Xp z0qcM#^ngrrn3S5}6D5p^m=x92WJWBe+r|t!&?$&9l2Srb1Wg#zya~N-?_e3&0VLy| zFa~2CE-wh*c#d>*0YBGAERZ5e6UKX-F{mbDj0XcqG^03?;}{dh7{q1xtc~>%_wDDK zUh$R`OEe`UWQcEpc!r}*)`z2MA@&A%RJn0447W$b1jag&Dk&*jb>#t@TY z#gLLxRWE&ch+ zFPP`%+Vlqn-9bkG@PJTcWStfv&k0$MIEOfg4Gswb2_E0-V0{h>RjKLNH-Bn@U4P8e zbl|;&(Iif-%h1?px>`rFju;cMs)(`129GN;#QR1wng;+>F@W_Vdwth;1rU)});2cZ zc>n4r<)3e@>YXj+v$bs=u8!DRuc)>vs*NENu}|CEXjP-JnTAwXXo^V4L1kmgC4nhZ zaPi_rbK=B_(;s|%ZS8}PuYGyx(Cm)}ofgkN`;ey=W;xQfX5Nl?YQ9I&ZR5LLTu~5; zK+$efbR$_3g0`tjyXS{s*SwrNcaG6$WX_&FJ4h+5Y4bL#bCx2{$(_&+mUiZNX7O|A!LrCXfZ$2<>=B8p84u`a7BN(F_K@r`s!J+C>pZ=f3 b{=)We+saosMFSbn00000NkvXXu0mjf=C1R1 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/handbook/html/hdbk_start_screen_terms.png b/bibletime-doc/docs/de/handbook/html/hdbk_start_screen_terms.png new file mode 100644 index 0000000000000000000000000000000000000000..1b7692c0b28a93f06c396fcb7df63ba6a1fcce34 GIT binary patch literal 123790 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 BibleTime-Handbuch

Das BibleTime-Handbuch

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/handbook/unicode/Makefile.am b/bibletime-doc/docs/de/handbook/unicode/Makefile.am new file mode 100644 index 0000000..6f2b018 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; diff --git a/bibletime-doc/docs/de/handbook/unicode/Makefile.in b/bibletime-doc/docs/de/handbook/unicode/Makefile.in new file mode 100644 index 0000000..9f2279b --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/handbook/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/handbook/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/handbook/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/handbook/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/handbook/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/handbook/unicode/hdbk-config.docbook b/bibletime-doc/docs/de/handbook/unicode/hdbk-config.docbook new file mode 100644 index 0000000..0a5fe17 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/hdbk-config.docbook @@ -0,0 +1,465 @@ +BibleTime konfigurieren +Die &bibletime;-Benutzerschnittstelle kann vielseitig konfiguriert werden. Um den Konfigurationsdialog aufzurufen, wählen Sie in der Hauptwerkzeugleiste Einstellungen. Von hier aus wählen Sie Werkzeugleisten konfigurieren, um den Konfigurationsdialog der Werkzeugleisten aufzurufen, oder Sie wählen &bibletime; konfigurieren, um den BibleTime Konfigurationsdialog aufzurufen. + +
Werkzeugleisten-Konfigurationsdialog + Der Werkzeugleisten-Konfigurationsdialog ermöglicht das Hinzufügen und Entfernen von Aktionen von der Haupterkzeugleiste von &bibletime;. Die Reihenfolge der Aktionen kann auch verändert werden. + Werkzeugleisten-Konfigurationsdialog Der Werkzeugleisten-Konfigurationsdialog. +
+ +
Optionendialog + Der Optionendialgo erlaubt Ihnen, viele &bibletime; und Sword Features anzupassen. + +
Start + Das Startverhalten kann angepasst werden. Wählen Sie aus den folgenden Optionen aus: + Tip des Tages anzeigen Startlogo anzeigen Fenster im Arbeitsbereich wiederherstellen + Optionendialog Der Optionendialog - Start. +
+
Schriften + Die Anzeigeschrift kann verändert werden. Wenn Sie ein Modul haben, das eine spezielle Schrift benötigt, überprüfen Sie hier, ob die Schrift für &bibletime; verfügbar ist. + Optionendialog - Schriften Der Optionendialog - Schriften. + +
Unicode Schriften (ISO10646) + Sword Module benutzen entweder das ISO-8859-1 (Latin-1) oder das ISO-10646 (Unicode) Encoding. Sie können herausfinden, welches Encoding verwendet wurde, durch &RMB; auf dem Hauptindex, und Auswahl von Über dieses Modul. + Über dieses Modul Das "Über dieses Modul"-Fenster zeigt an, welches Encoding benutzt wird. + Solange Ihre benötigten Module korrekt angezeigt werden, muss hier nichts unternommen werden. Wenn ein Modul als eine Folge von Fragezeichen (???????????????????) angezeigt wird, dann enthält die eingestellte Schriftart nicht die Zeichen, die in Ihrem Dokument verwendet wurden. + + Wählen Sie im Optionendialog Schriften auswählen in dem Unicode Bereich der Anwendung. Sie müssen eine Schrift auswählen, die den ISO-10646-1 Zeichensatz enthält. Versuchen Sie clearlyu als einen ersten Schritt. (es ist in den meisten Distibutionen enthalten). Wenn Ihr Modul immer noch nicht korrekt dargestellt wird, dann versuchen Sie es mit einer geeigneteren Schriftart. + + Wenn Sie eine kleine Unicode-Schriftart wie clearlyu (about 22kb) benutzen, wird &bibletime; schneller laufen, als wenn Sie eine umfangreiche Schriftart wie Bitstream Cyberbit (ungefähr 12Mb) verwenden. + +
Schrift Installation + Die Installation von Schriftarten besteht aus drei Schritten + + Unicode Schriftarten bekommen Schriftarten für den &X-Server; installieren Schriftarten für das Drucken installieren (funktioniert noch nicht). +
+ + +
Schriftarten bekommen + Es gibt eine Anzahl von Schriften, die Unicode unterstützen, und einige von ihnen sind kostenlos verfügbar. Wenige der verfügbaren Schriften enthalten alle Symbole, die im Unicode Standard definiert sind. + Hier ist eine Liste von einigen verfügbaren Schriften: + + Unicode Schriften + + Clearlyu Ist in einigen Distributionen enthalten. Enthält Europäisch, Griechisch, Hebräisch, Thai. Enthält keine chinesischen Schriftzeichen oder Arabischftp://ftp.crosswire.org/pub/sword/iso/latest/FONTS. Verschiedene Schriften sind auf der Crosswire FTP Seite verfügbar.Bitstream CyberBit Deckt fast den ganzen Unicode-Bereich ab.Caslon, Monospace, Cupola, Caliban Teilweise Abdeckung, siehe die Information auf der angegebenen Seite. + +
+ Für eine Liste von anderen Unicode Schriften und den abgedeckten Bereichen: Unicode Schriftenliste +
+ +
Schriften für XFree86 installieren (Ihren &X-Server;) + Wenn Ihre Distribution einen Schriftarten Installer enthält (&Linux-Mandrake; bietet Drake Font), verwenden Sie den Installer. Wenn das nicht funktioniert, oder Sie keinen haben, müssen Sie die Schrift manuell installieren. Anweisungen dafür finden Sie Das Unicode HOWTO. Das wurde getestet und funktioniert unter &Linux-Mandrake; 7.1. + +
+ +
Installieren der Schrift für das Drucken + Ein bekanntes Problem in Qt verhindert das Drucken von Zeichen außerhalb des Bereiches des Latin-1 Zeichensatzes. Das wird mit der Freigabe von Qt3 und KDE 3 gelöst sein. Wenn Sie es trotzdem versuchen möchten, das Font HowTo beschreibt den Prozess der Installation von Schriften für das Drucksystem. +
+ +
+
+ +
Farben + Die Farben der Objekte in den Anzeigefenstern können angepasst werden. Folgende Objekte können verändert werden: + Text Hervorgehobener Vers Fußnoten Morphologische Tags Hintergrund Hyperlinks Strongnummern Worte Jesu + + Einige Optionen, wie die "Worte Jesu" treffen nur für bestimmte Texte zu, die diese speziellen Features unterstützen. + Optionendialog - Farbe Der Optionendialog - Farbe + +
+ +
Profile + Profile definieren die Erscheinung des Arbeitsbereiches, z.B. welche Fenster geöffnet sind, und welche Texte in diesen Fenstern angezeigt werden sollen. Wenn ein Profil einmal erstellt ist, erwenden Sie den Eintrag Fenster -> Profil sichern, um die aktuelle Sitzung in ein Profil zu sichern. Verwenden Sie Fenster -> Profil laden, um ein bereits gespeichertes Profil in &bibletime; zu laden. +
+ +
Sword + Viele Funktionen, die von Sword bereitgestellt werden, können in &bibletime; angepasst werden. + Optionendialog - Sword Der Optionendialog - Sword. + +
Sword Allgemein + Schlüsselcache für Lexikons + Bibletime kann einen Keycache für Lexikons anlegen. Dies beschleunigt das Öffnen großer Lexika. Es verbraucht allerdings etwas Festplattenkapazität, also sollten Sie dieses Feature abschalten, wenn Sie nur über sehr wenig freien Speicher haben. + + Scrollverhalten + Per Voreinstellung bewegt der Pfeil nach unten das Anzeigefenster zum nächsten Vers. Mit dieser Option kann man das Verhalten so ändern, dass es zum vorigen Vers springt. + + Wählen Sie eine Sprache für die Bücher der Bibel + Dieses Feature ermöglicht die Auswahl der Sprache, die für die Buchnamen der Bibel verwendet wird.Z.B. kann die King James Version mit deutschen Buchnamen dargestellt werden.Wenn Ihre Sprache nicht unterstützt wird, und Sie gerne eine Übersetzung anfertigen wollen, dann besuchen Sie bitte die Crosswire Entwicklerseiten. +
+ + +
Sword Standardmodule + Hier werden Standardmodule festgelegt. +
+
Sword Filtereinstellungen + Filter kontrollieren die Erscheinung des Textes in den Anzeigefenstern. Hier können Sie die Voreinstellungen für verschiedene Filter festlegen. + Folgendes kann durch Filter kontrolliert werden: + + Zeilenumbruch nach jedem Vers anzeigen Versnummern anzeigen Fußnoten anzeigen Strongnummern anzeigen Überschriften anzeigen Morphologische Tags anzeigen Wurzeln anzeigen Hebräische Vokalzeichen anzeigen Hebräische Kantillationszeichen anzeigen Griechische Akzente anzeigen + +
+ +
+ +
Tastenkürzel + Es handelt sich um spezielle Tastenbefehle, die anstatt der Menüeinträge und Icons verwendet werden können. Eine Anzahl der Kommandos in &bibletime; haben vordefinierte Tastenkürzel. Allen Kommandos in &bibletime; können hier Tastenküzel zugewiesen werden. + + + Standard-Tastenkürzel + + Aktion Tastenkombination + + Automatisch KachelnCtrl+Alt+TAutomatisch staffeln Ctrl+Alt+A Staffeln Ctrl+A Alle schließen Shift+Ctrl+AWerkzeugleisten konfigurierenVoreinstellungen Verlassen Ctrl+QAusgewählte Einträge entfernenCtrl+Alt+DHauptgruppe zurücksetzen Ctrl+Alt+RIn den ausgewählten Modulen suchen Ctrl+Alt+SKacheln Ctrl+T + +
+
+
+
+ diff --git a/bibletime-doc/docs/de/handbook/unicode/hdbk-intro.docbook b/bibletime-doc/docs/de/handbook/unicode/hdbk-intro.docbook new file mode 100644 index 0000000..b8a8847 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/hdbk-intro.docbook @@ -0,0 +1,103 @@ +Einführung + &bibletime; ist ein mächtiges Bibelstudien-Werkzeug, geschrieben für die &kde;Umgebung auf dem Linux Betriebssystem. Es basiert auf der Sword Bibliothek, welche die Back-End Funktionalität für &bibletime; zur Verfügung stellt, zum Beispiel Bibeltexte anschauen, Suchen, Lesezeichen anlegen usw. Sword ist das Hauptprodukt der Crosswire Bibelgesellschaft. + +&bibletime; wurde konzipiert, um mit Dokumenten benutzt zu werden, die in Theological Markup Language (ThML) und im General Bible Format (GBF) vorliegen. Diese Formatierungssprachen zielen auf die Erfordernisse religiöser Texte. Vollständige Informationen über die unterstützten Dokumentenformate können im Entwicklungsbereich der Crosswire Bible Society gefunden werden. + + Über 200 Dokumente in 50 Sprachen sind auf dem Webserver der Crosswire Bible Society verfügbar. Dazu gehören: + + Bibeln Der gesamte Text, optional mit Strong-Nummern und Fußnoten im Text Kommentare Mit einem Persönlichen Kommentar können Sie ihre eigenen persönlichen Notizen zu verschiedenen Bereichen der Bibel anlegen. Lexika Für Wortdefinitionen und Bibelthemen. Sie können einen Schlüssel aus einer Liste auswählen, der dann angezeigt wird. +Weitere Dokumente werden zur &sword; Bibliothek hinzugefügt werden, daher schauen Sie dort öfters nach. + +Änderungen + Bitte lesen sie die Datei Changelog des Quellcode Paketes, falls Sie an detailierteren Änderungen interessiert sind. + +Eine Auflistung der im aktuellen Paket enthaltenen Funktionen kann im Quellcode im CVS Log für bibletime/bibletime/ChangeLog gefunden werden. + + +ToDo + Jede Menge! + Wir haben viel zu tun. Da wir ein sehr kleines Team von aktiven Entwicklern sind, ist es sehr schwierig vernünftige Ergebnisse in einer kurzen Zeit zu bekommen. Falls Sie daran interessiert sind dem &bibletime; Team zu helfen, kontaktieren Sie uns bitte auf SourceForge &bibletime; Hompage. Informationen können ebenso auf der BibleTime Homepage gefunden werden. + +Das &bibletime; Projekt benötigt Programmierer / Entwickler, Kritiker, Tester und eifrige Beter. Falls Sie bei einer dieser Aufgaben helfen können oder falls Sie an eine andere denken, wenden Sie sich bitte an uns. Ohne Ihre Hilfe wird &bibletime; sehr sehr langsam weiterentwickelt und es wird sehr lange dauern, bis Sie ein voll funktionsfähiges Bibelstudien Werkzeug bekommen werden. + + +Motivation + Unser Verlangen ist es, Gott zu dienen und unseren Teil dazu beizutragen, dass andere in ihrer Beziehung mit IHM wachsen. Wir haben eine klaffende Lücke gefunden: Es gab keine benutzerfreundliche Bibelstudiensoftware unter Linux. Wir haben &bibletime; entwickelt um diese Lücke zu füllen. Wir haben uns bemüht dies zu einem mächtigen und qualitativen Programm zu machen, das jedoch gleichzeitig einfach und intuitiv zu bedienen ist. Es ist unser Verlangen, dass Gott gepriesen wird, da Er die Quelle aller guten Dinge ist. + +
James 1:17, NASB +Alle gute Gabe und alle vollkommene Gabe kommt von obenherab, von dem Vater des Lichts, bei welchem ist keine Veränderung noch Wechsel des Lichtes und der Finsternis. +
+ + Gott segne Sie, wenn Sie dieses Programm benutzen, und möge Er durch die Arbeit unserer Hände verherrlicht werden. +
+
+ diff --git a/bibletime-doc/docs/de/handbook/unicode/hdbk-operation.docbook b/bibletime-doc/docs/de/handbook/unicode/hdbk-operation.docbook new file mode 100644 index 0000000..5e36f03 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/hdbk-operation.docbook @@ -0,0 +1,959 @@ +Programmbedienung + &bibletime; wird hauptsächlich von dem Modulbaum aus bedient (dieser wird "Hauptgruppe" genannt). Der zweite wichtige Ort zum Arbeiten in &bibletime; ist der MDI Bereich (MDI = Multiple Document Interface). + +
Hauptgruppe + Dies ist der Bereich auf der linken Seite des &bibletime; Fensters. Er enthält den Baum der installierten Dokumente (Sword Module) und alle von Ihnen angelegten Lesezeichen. + Modulbaum +
+ +
Ein Modul zum Anschauen auswählen +Wenn Sie Dokument auswählen wolllen, klicken Sie einfach auf die gewünschte Dokumentengruppe (Bibeln, Kommentare oder Lexika) um den Inhalt der Dokumentengruppe anzuzeigen. Um ein Dokument zu öffnen klicken Sie auf dessen Symbol. + Auswahl eines Dokumentes +Hier funktioniert Drag&Drop + Ein Dokument kann aus einem bereits geöffneten Dokument heraus geöffnet werden. Klicken Sie einfach auf eine Versnummer (Mauspfeil ändert sich zu einer Hand) und ziehen Sie diese zur Modulliste. Lassen Sie sie hier auf dem Namen des von Ihnen gewünschten Modules fallen; dieses Modul wird nun an der Stelle des herübergezogenen Verses geöffnet. Wenn Sie eine Versnummer auf ein bereits geöffnetes Modul ziehen, wird dieses automatisch zur gewünschten Stelle springen. Dies funktioniert nur für Bibeln und Kommentare. + Zwei weitere Funktionen sind durch &RMB; auf dem Modul verfügbar. "Über dieses ModulA" öffnet ein Fenster mit Informationen über Copyright und andere wichtige Eigenschaften dieses Dokumentes. "Dieses Modul entschlüsseln" öffnet einen kleinen Dialog für verschlüsselte Dokumente. Dies erlaubt es den Besitzern des Schlüssels, diesen einzugeben, um das Modul zu entschlüssenl und damit lesbar zu machen. Die Crosswire Bible Society muss Module verschlüsseln, bis entweder der Copyrightinhaber die Erlaubnis für die Weitergabe des Moduls erteilt, oder der Text in Public Domain übergegangen ist (Copyright verfallen). See information on locked modules on the Crosswire Bible Society web site. + + + + +
Auf Lesezeichen zugreifen Hier funktioniert Drag&Drop Klicken Sie mit der rechten Maustaste auf einen leeren Bereich der Hauptgruppe und wählen Sie "Erzeuge einen neuen Ordner" um einen neuen Ordner anzulegen. Sie können normale Drag&Drop Funktionen benutzen, um Verse aus den Suchdialogsergebnissen in den Lesezeichen Ordner zu ziehen und um Lesezeichen in Ordnern neu anzuordnen. Es gibt auch eine Import/Export Funktion für Lesezeichen. Wählen Sie "Exportiere Lesezeichen" im Menü der rechten Maustaste. Dies wird eine Dialogbox öffnen, in der Sie die Lesezeichen speichern können. Sie können mit anderen Benutzern von BibleTime ausgetauscht werden, archiviert werden usw. Sie können in der gleichen Art und Weise importiert werden. Sie können auch rechts-klicken um Ordnernamen und Beschreibungen von Lesezeichen zu ändern, und um Lesezeichen und Gruppen zu entfernen. + Auswahl von Lesezeichen +
+
+ +
Multiple Document Interface (MDI) Fenster + Hier werden Dokumente "Anzegefenstern" angezeigt, die speziell auf die verschiedenen Modultypen abgestimmt sind. Die Crosswire Bible Society wird möglicherweise andere Dokumenttypen für Sword schaffen. Wenn sie freigegeben werden, wird &bibletime; sie auch unterstützen. + +
+Geöffnete Fenster verwalten Dokumentenfenster können mit Hilfe von üblichen &kde; Fenster/Titelzeilen Funktionen kontrolliert und verändert werden. Als Erweiterung zu diesen können Sie geöffnete Dokumentenfenster kacheln und stapeln. Benutzen Sie die entsprechenden Knöpfe in der Werkzeugleiste oder die Menüfunktionen im "Fenster" Untermenü der Menüleiste. +
+ +
+In geöffneten Dokumenten navigieren Die Navigation innerhalb eines Dokumentes ist durch das Schlüssel-Kontrollmenü und durch eine Scrollleiste verwirklicht. +Um zu einer bestimmter Stelle zu springen benutzen Sie die Schlüsselkontrolle. +Um sich in dem Bereich des Dokumentes zu bewegen benutzen Sie die Scrollleiste. +Für Bibeltexte ist die Indexreihenfolge Buch - Kapitel - Vers +Für Kommentare ist die Indexreihenfolge Buch - Kapitel - Vers +Für Lexika ist der Index Schlüsselwort +Drag&Drop funktioniert hier; Wenn Sie einen Vers eines geöffneten Fensters oder ein Lesezeichen ziehen und auf einem anderen Dokumentenfenster fallen lassen, wird dieses von der aktuell angezeigten Stelle zur Stelle des Verses oder des Lesezeichens springen. +
+ +
Bearbeiten Sie ihren eigenen Kommentar Die Werkzeugleiste des Kommentarfensters hat einen weiteren Button, mit dem Bild eines Stiftes. Geben Sie ihre Notizen ein Für das "Personal-commentary" Modul, &LMB; den Button mit dem Bild eines Stiftes um Ihre Notizen einzugeben, oder um eingegebene zu bearbeiten. Wenn Sie fertig sind, &LMB; den "Speichern" (Ddisketten) Button, um Ihre Notizen zu sichern. Um die Notizen für einen Vers zu löschen, &LMB; den Vers löschen Button Vers Löschen Symbol . + + +Das Personal Commentary ist ein Sword Modul. Wenn Sie es nicht im Hauptindex finden, dann laden Sie es von derCrosswire Bible Society herunter. +Falls Sie nicht in das Modul Persönlicher Kommentar schreiben können, sind die Zugriffsrechte für den persönlichen Kommentar falsch. Setzen Sie die Zugrigffsrechte zurück, um ihrem Benutzer zu erlauben hinein zu schreiben. +Hier funktioniert Drag&Drop, wie bei anderen Kommentaren und Bibeltexten. +
+
+ + + +
Exortieren und Drucken +Bibel-Fenster, Lexikon-Fenster, Kommentar-Fenster +Durch &RMB; auf dem Eintrag, der Versnummer oder dem Text des Anzeigefensters wird eine Auswahlbox erscheininen (je nach Modultyp), die Zugriff auf Auswahl-, Nachschlage-, Export- und Druckfunktionen bietet. +
Alle auswählen +Ein &LMB; hier wählt den gesamten text des Kapitels aus, das gerade dargestellt wird. +
+
Text im Lexikon nachschlagen +Ein &LMB; hier wird ein Submenü mit einer Liste von allen verfügbaren Lexikons öffnen. Ein &LMB; auf einem Lexicon öffnet das Lexikokn mit dem Eintrag, der gerade im aktuellen Text markiert ist. +
+ +
Kopieren +Ein &LMB; hier wird ein Submenü anzeigen, dass die Möglichkeit bietet, den aktuellen Text in die Zwischenablage zu kopieren. + Vers - Die Nummer des aktuellen Verses (z.B. 1 Mose 1:25). Text des Verses - Der Text des aktuellen Verses. Vers mit Text - Sowohl Versnummer und Text des aktuellen Verses Kapitel - Das ganze Kapitel Ausgewählter Text - Nur der ausgewählte Text. + Dieser Text kann in jede Anwendung kopiert werden, die auf die Zwischenablage zugreifen kann. + +
+
Zur Druckschlange hinzufügen +Ein &LMB; hier zeigt ein Submenü mit den Druckmöglichkeiten an: + Vers mit Text Kapitel + Wenn Sie diese auswählen, wird der Text zur BibleTime Druckschlange hinzugefügt, aber noch nicht ausgedruckt. Sobald sie alle gewünschten Einträge zur Druckschlange hinzugefügt haben, clicken Sie das Druck-Icon, und der Druckdialog wird angezeigt. Nun können Sie den Text entweder anschauen oder drucken. +Das Drucken in &bibletime; ist relativ einfach und als Hilfsmittel gedacht. Wenn Sie ein Dokument oder eine Präsentation erstellen, die Text von &bibletime; Dokumenten enthält, dann kopieren Sie den Text doch über die Zwischenablage in Ihr bevorzugtes Programm. +
+
Speichern +Ein &LMB; hier zeigt ein Submenü mit Speichermöglichkeiten an: + Kapitel als normaler Text - eine Datei mit &UNIX;-formatiertem ASCII-Text wird erstellt. Kapitel als HTML - Eine HTML Datei wird erstellt. + Wenn der Text gespeichert ist, kann er mit jedem Text- oder HTML-Editor bearbeitet werden. +
+ + +
+
+ + + + + diff --git a/bibletime-doc/docs/de/handbook/unicode/hdbk-start.docbook b/bibletime-doc/docs/de/handbook/unicode/hdbk-start.docbook new file mode 100644 index 0000000..0350068 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/hdbk-start.docbook @@ -0,0 +1,74 @@ +&bibletime; starten + &bibletime; ist ein &kde; Programm und ist in den &kde; Arbeitsplatz integriert. Sie können &bibletime; in &kde; Startmenü in der Hauptgruppe finden. XX + &bibletime; kann von anderen Fenstermanagern aufgerufen werden (wie zum Beispiel gnome), voraussgesetzt &kde; ist installiert. SIe müssen ihr eigenes Symbol anlegen, um das Programm zu starten. Schlagen Sie in der Hilfe des Fenstermanagers nach, wie dies funktioniert. + &bibletime; kann auch von der Kommandozeile eines Terminals aufgerugfen werden. Um &bibletime; zu starten, öffnen Sie ein Terminal (jedes beliebige Xterminal) und geben Sie &bibletime; ein. +
Startvorgang + Wenn &bibletime; startet, könnten Sie einige Meldungen sehen: + Keine Module installiert - Dies erscheint, wenn Sie vergessen haben Sword Module zu installieren, oder wenn Sword Module nicht gefunden werden können. Erster Start - Dies wird angezeigt, wenn &bibletime; das erste Mal startet. Tägliche Tipps - Dies wird bei jedem Start angezeigt, es sei denn Sie schalten dies ab. Tägliche Tipps + +
+
Elemente des &bibletime; Fensters + Jetzt öffnet sich das &bibletime; Fenster. Die Bedienung wird im nächsten Kapitel erklärt. Das &bibletime; Anwendungsfenster +
+
+ + + diff --git a/bibletime-doc/docs/de/handbook/unicode/hdbk-toolbars.docbook b/bibletime-doc/docs/de/handbook/unicode/hdbk-toolbars.docbook new file mode 100644 index 0000000..899cbc0 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/hdbk-toolbars.docbook @@ -0,0 +1,438 @@ +Werkzeugleiste und Menüleiste + + +
Werkzeugleiste + + Die Aktion jedes Knopfes wird in der Dialogbox beschrieben. Bewegen des Mauspfeils über einen Knopf zeigt den Tooltip des Knopfes der die Aktion des Knopfes beschreibt. +
+
Knopf-Aktion + + Symbol Schließt &bibletime; + + Symbol Druckt Einträge der Druckschlange. + + Symbol Suche in ausgewählten Modulen. + + Symbol Dokumentenfenster staffeln. + + Symbol Dokumentenfenster automatisch staffeln. + + Symbol Dokumentenfenster kacheln. + + Symbol Dokumentenfenster automatisch kacheln. + + + Symbol Alle Dokumentenfenster schließen. +
+ +
Menüzeile + +
+ +
Datei + Druckschlange leeren Entfernt alle Einträge aus der &bibletime; Druckschlange. Die &bibletime; Druckschlange wird nicht automatisch gelöscht. Drucken Dieser Menüeintrag öffnet den Druckdialog. Hier können Sie wie in jeder anderen &kde; Anwendung drucken oder betrachten. +
+ +
Ansicht + Werkzeugleiste anzeigen +>Wenn Werkzeigleiste anzeigen ausgewählt ist, dass wird die Werkzeugleiste angezeigt. Wenn Werkzeigleiste anzeigen nicht ausgewählt ist, dass wird die Werkzeugleiste versteckt. Zeige Hauptgruppe Wenn Zeige Hauptgruppe ausgewählt ist, dann wird der linke Bereich, der die vorhandenen &sword;-Dokumente zeigt, angezeigt. Wenn Zeige Hauptgruppe nicht ausgewählt ist, dann wird der linke Bereich versteckt. +
+ +
Hauptgruppe + In Modulen suchen Wenn Durchsuche gewählte Module ausgewählt ist, dann wird derSuchdialog angezeigt. Jedes im linken Bereich ausgewählte Dokument sind in der Module auswählen Karteikarte vorausgewählt. Hauptgruppe zurücksetzen Wenn Hauptgruppe zurücksetzen ausgewählt wird, wird der linke Bereich neu aufgebaut.Jede Einstellung sowie die Lesezeichen werden gelöscht. Entferne ausgewählte Elemente Wenn Entferne ausgewählte Einträge ausgewählt wird, wird jeder in der Hauptgruppe gewählte Eintrag gelöscht. Diese Aktion kann nur teilweise durch Hauptgruppe zurücksetzen rückgängig gemacht werden. Benutzen Sie diese Funktion mit Vorsicht. +
+ +
Fenster + Profil speichern Speichert die aktuelle Konfiguration zum gewählten Profil Profile laden Lädt den Inhalt des gewählten Profiles in die aktuelle Sitzung von &bibletime;. Profile einrichten Dies öffnet den Profile Teil des Optionendialoges. Hier erzeugen und verwalten Sie die Profile. Vollbild Modus Wenn Vollbild Modus ausgewählt wurde, wird &bibletime; die gesamte Fläche des Monitors bedecken. Um dies wieder rückgängig zu machen, wählen Sie Vollbild Modus erneut aus. Staffeln Geöffnete Dokumentenfenster staffeln Kacheln Geöffnete Dokumentenfenster kacheln Automatisch staffeln Staffelt automatisch die neu geöffneten Anzeigefenster Automatisch Kacheln ditto für das kacheln neu geöffneter Anzeigefenster Alle Schließen Schließt alle geöffneten Anzeigefenster Liste des geöffneten Module zeigt eine Liste aller zur Zeit gewählter Module. +
+ +
Einstellungen + Werkzeugleiste einrichten Zeigt den Werkzeugleiste einrichten Dialog. &bibletime; einrichten Öffnet den Optionendialog. Von diesem Dialog aus können Sie alle Einstellungen wie Schriften, Profile, Sword-Einstellungen und Tastenkürzel vornehmen. +
+ +
Hilfe + Handbuch Wählen Sie Handbuch aus, um dieses Dokument im &kde; Hilfezentrum zu lesen. Installation Wählen Sie Installation aus, um die Installationsanleitung für &bibletime; im &kde; Hilfezentrum zu öffnen. Anleitung zum Bibelstudium Wählen Sie Anleitung zum Bibelstudium um einen guten Grundlagentext mit Empfelungen zum Bibelstudium zu öffnen. Was ist das? Dies erlaubt ihnen auf bestimmte Elemente zu klicken, um eine Kontextinformation zu erhalten. Fehlerbericht Schicken Sie einen Fehlerbericht zu den Entwicklern des Programmes, um die Entwicklung zu unterstützen. Bevor Sie einen Fehlerbericht schicken, konfigurieren Sie die Anwendung zum Fehlerberichten so, dass es ihr Mailprogramm benutzt. Dies kann durch konfigurieren im Einen Fehlerbericht schicken... Dialog gemacht werden. Täglicher Tipp Öffnet den Tipp des Tages Dialog. Über &bibletime; Öffnet ein Fenster mit allgemeinen Informationen zu &bibletime; Über &kde; Öffnet ein Fenster mit allgemeinen Informationen zu &kde; +
+ + + +
+ + diff --git a/bibletime-doc/docs/de/handbook/unicode/index.docbook b/bibletime-doc/docs/de/handbook/unicode/index.docbook new file mode 100644 index 0000000..5823b68 --- /dev/null +++ b/bibletime-doc/docs/de/handbook/unicode/index.docbook @@ -0,0 +1,121 @@ + +BibleTime'> + Sword'> + + + + + + + + + + +]> + + + + +Das BibleTime-Handbuch + + + Fred Saalbach
info@bibletime.de
+ Jeffrey Hoyt +
+ +ROLES_OF_TRANSLATORS + + +1999 +2000 +2001 +BibleTimeinfo@bibletime.de + + + + +Der BibleTime Hilfedialog ist ein Teil von BibleTime. + + BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. + +09/February/2002 +2.00 + + + &bibletime; ist eine in der Studie der Bibel zu helfende Anwendung. + + + +KDE +bibletime +Bibletime +sword +crosswire +Hilfedialog + + +
+ +&hdbkchap1; +&hdbkchap2; +&hdbkchap3; +&hdbkchap4; +&hdbkchap5; + +
+ diff --git a/bibletime-doc/docs/de/helpdialog/Makefile.am b/bibletime-doc/docs/de/helpdialog/Makefile.am new file mode 100644 index 0000000..c63c09d --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/Makefile.am @@ -0,0 +1,39 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +po-files: + for f in `ls ../../en/helpdialog/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/helpdialog\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + + +unicode-files: + for f in `ls ../../en/helpdialog/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/helpdialog\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/helpdialog\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/de/helpdialog/Makefile.in b/bibletime-doc/docs/de/helpdialog/Makefile.in new file mode 100644 index 0000000..e93f598 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/Makefile.in @@ -0,0 +1,495 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/helpdialog + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/helpdialog/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +po-files: + for f in `ls ../../en/helpdialog/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/helpdialog\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + +unicode-files: + for f in `ls ../../en/helpdialog/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/helpdialog\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/helpdialog\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/helpdialog/html/Makefile.am b/bibletime-doc/docs/de/helpdialog/html/Makefile.am new file mode 100644 index 0000000..c22e0e9 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; diff --git a/bibletime-doc/docs/de/helpdialog/html/Makefile.in b/bibletime-doc/docs/de/helpdialog/html/Makefile.in new file mode 100644 index 0000000..b5e2ef1 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/helpdialog/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/helpdialog/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/helpdialog/html/help-first-startup.html b/bibletime-doc/docs/de/helpdialog/html/help-first-startup.html new file mode 100644 index 0000000..206cde1 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-first-startup.html @@ -0,0 +1 @@ +Chapter 1. Der erste Start

Der erste Start

Chapter 1. Der erste Start

Table 1.1. Der erste Start von BibleTime! Diese Tabelle beschreibt die Funktionen von BibleTime!

Funktion Beschreibung
MDI MDI ist die Abkürzung für Multiple Document Interface. Mit der Hilfe von MDI ist es möglich mehr als ein Anzeigefenster zur selben Zeit geöffnet zu haben! Sie können so zum Beispiel zwei verschiedene Bibeln Seite an Seite anschauen und ihren Text vergleichen. Aber es ist ebenfalls möglich nur ein Fenster so wie in früheren Versionen von BibleTime geöffnet zu haben. Das Menü Fenster dient zum Arbeiten mit der MDI Schnittstelle. Der MDI Bereich wird nur Anzeigefenster enthalten, nichts anderes. Diese saubere Darstellung vermeidet die Verwirrung der Benutzern durch zu viele Möglichkeiten.
Anzeigefenster Ein Anzeigefenster ist ein Fenster innerhalb des MDI Bereiches von BibleTime Ein Anzeigefenster präsentiert den Inhalt eines Dokumentes (SwordModul) in einem vernünftigen Format (Bibeln werden zum Beispiel als HTML-Text mit Verknüpfungen auf Versreferenzen dargestellt). Wir benutzen Anzeigefenster um einen allgemeinen Ansatz für die Zukunft zu haben. Crosswire wird Sword erweitern sowie mehr Material veröffentlichen. Wenn neue Modultypen für Sword entstehen, werden wir einfach zusätzliche Typen von Anzeigefenstern hinzufügen. Dieser Ansatz macht BibleTime für die Zukunft erweiterbar und macht es möglich jede Art von Modulen anzuzeigen, die in Zukunft erzeugt werden können (zum Beispiel Karten oder Sound-Module).
Hauptgruppe Die Hauptgruppe ist der Baum auf der linken Seite von BibleTime Anwendungsfenster. Die Hauptgruppe kombiniert Lesezeichenverwaltung und Moduleverwaltung. Um mit der Hauptgruppe zu arbeiten benutzen Sie das Menü der rechte Maustaste. Die Hauptgruppe ist Drag&Drop fähig: Sie können Versreferenzen aus einem geöffneten Anzeigefenster oder aus dem Suchdialog ziehen um ein Lesezeichen anzulegen, und Sie können Einträge im Baum bewegen (z.B. Gruppen oder Lesezeichen in andere Gruppen bewegen).
Suchschnittstelle Die Suchfunktion befindet sich nun in einem eigenen Fenster. Klicken Sie mit der rechten Maustaste auf ein Modul und wählen Sie Suche in gewählten Modulen um den Suchdialog zu öffnen. Der Dialog enthält Bereiche, in denen Suchbegriffe eingegeben, Suchbereiche gesetzt und in den gefundenen Einträgen navigiert werden kann. Die letzte Karteikarte zeigt die grafische Suchanalyse.
Drag and Drop Drag&Drop ist ein wichtiger Teil von BibleTime! Sie können Dokumente, Versreferenzen, Lesezeichen, Ordner, Suchergebnisse usw. herumziehen. Orte, an denen Sie diese fallen lassen können, sind die Hauptgruppe, die Anzeigefenster und der Kommentareditor. Spielen Sie einfach etwas herum um herauszufinden wie unser Drag&Drop-System arbeitet! Wir hoffen, dass es ihnen gefällt!

Table 1.2. Hier ist eine kurze Liste von URLs mit mehr Informationen über BibleTime!

URLBeschreibung
www.bibletime.de Dies ist die Homepage von BibleTime! Gehen Sie zu dieser Seite um Dokumentationsseiten zu lesen. Vergessen sie nicht das FAQ auf www.bibletime.de zu lesen, es enthält Antworten auf Fragen, die Sie wahrscheinlich haben.
www.crosswire.org Dies ist das Seite von Crosswire Bible Society! Crosswire Bible Society ist die Bibelgesellschaft, welche die Textbibliothek und den Installationsmanager für Sword herstellt. Sie können die Bibeltexte von dieser Seite herunterladen. Die meisten der auf Crosswire erhältlichen Texte sind entweder Public Domain oder sind von dem Copyrighthalter für Crosswire Bible Society zur Verteilung bereitgestellt worden. Module, die nicht zur freien Verteilung herausgegeben wurden, sind verschlüsselt. Bitte lesen Sie die Seite Hilfedialog für verschlüsselte Module vor dem Herunterladen von Modulen.
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-first-time-search.html b/bibletime-doc/docs/de/helpdialog/html/help-first-time-search.html new file mode 100644 index 0000000..4116f34 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-first-time-search.html @@ -0,0 +1 @@ +Chapter 2. Der erste Aufruf des Suchdialoges

Der erste Aufruf des Suchdialoges

Chapter 2. Der erste Aufruf des Suchdialoges

Sie haben den Suchdialog zum ersten Mal geöffnet!

Diese Seite beschreibt, was der Suchdialog ist, wie man ihn benutzt und wie man effiziente Suchen durchführt.

2.1 Was ist der Suchdialog?
2.2 Wie suche ich nach Text?

2.1 Was ist der Suchdialog?

Der Suchdialog ist der Dialog, in dem sie die installierten Sword Dokumente (Module) mit BibleTime durchsuchen können. Sie können Text eingeben und diese Text in den Dokumenten suchen. Die gefundenen Einträge erscheinen in einer Liste, so dass Sie mit ihnen arbeiten können.

2.2 Wie suche ich nach Text?

Um einen Text zu suchen, klicken sie auf den ersten Eintrag der Karteikarten im oberen Bereich des Dialoges. Geben Sie nun Ihren Text in der Eingabezeile zu Beginn der Seite ein. Falls Sie keine besonderen Sucheigenschaften nutzen wollen, lassen Sie die Einstellungen unberührt und klicken Sie auf den Knopf Suchen am unteren Ende des Dialoges. Der Fortschritt der Suche wird in den beiden Anzeigen unten angezeigt. Die erste Anzeige zeigt den Fortschritt für das aktuelle Modul, die zweite zeigt die Prozent der gesamten Suche. Es ist möglich in mehr als einem Modul zu suchen, daher werden zwei Anzeigen benötigt. Falls Sie jedoch die Suche erweitern möchten, bieten wir Ihnen folgende Möglichkeiten an:

Mehrere Wörter

Die eingegebenen Wörter können in einer anderen Reihenfolge auftreten, als sie eingegeben wurden. Sie können sogar Teil eines Wortes sein.

Genaue Suche

Der Text wird exakt so gesucht, wie Sie ihn eingegeben haben; der Text wird ohne Unterscheidung von Groß- und Kleinbuchstaben gesucht, außer Sie haben GROß/klein aktiviert.

Reguläre Ausdrücke

Wenn Sie diese Art der Suche benutzen, werden GNU reguläre Ausdrücke benutzt.

Im Normalfall werden alle Suchen ohne die Unterscheidung von GROSS/klein durchgeführt. Um die Unterscheidung anzuschalten aktivieren Sie die Box GROSS/klein. Falls Sie Probleme mit den Suchtypen, der Unterscheidung von GROSS/klein oder anderen für die Suche relevanten Dinge bekommen, finden Sie in unserem Handbuch mehr Informationen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-initbackend-failed.html b/bibletime-doc/docs/de/helpdialog/html/help-initbackend-failed.html new file mode 100644 index 0000000..a269f41 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-initbackend-failed.html @@ -0,0 +1 @@ +Chapter 3. Initialisierung des Backends ist fehlgeschlagen!

Initialisierung des Backends ist fehlgeschlagen!

Chapter 3. Initialisierung des Backends ist fehlgeschlagen!

Die Initialisierung von BibleTimes backend ist fehlgeschlagen!

Wenn Sie diese Meldung erhalten, haben Sie einen Programmfehler freilegt, den wir kennen müssen über.

Senden Sie bitte einen Programmfehler-Report mit etwas Informationen und zeigen Sie uns, wie man das Problem reproduziert.

Email wir bei info@bibletime.de!

Vielen Dank für Ihre Hilfe!

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-module-encrypted.html b/bibletime-doc/docs/de/helpdialog/html/help-module-encrypted.html new file mode 100644 index 0000000..b42ebf5 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-module-encrypted.html @@ -0,0 +1 @@ +Chapter 4. Das Modul ist verschlüsselt

Das Modul ist verschlüsselt

Chapter 4. Das Modul ist verschlüsselt

Das von ihnen ausgewählte Modul ist verschlüsselt.

Diese Beschreibt, was Verschlüsselung für Sie bedeutet.

4.1 Was ist ein verschlüsseltes Modul?
4.2 Wie entschlüssele ich ein Modul?
4.3 Warum sind Module verschlüsselt?

4.1 Was ist ein verschlüsseltes Modul?

Ein verschlüsseltes Modul (Dokument) ist ein Modul, dass mit einem Passwort gesichert ist. Nur ein Benutzer mit dem richtigen Passwort kann das Modul entschlüsseln um es zu lesen.

4.2 Wie entschlüssele ich ein Modul?

Für normale Benutzer ist es traurigerweise zur Zeit leider nicht möglich, verschlüsselte Module zu benutzen. Das Problem ist, dass die Copyrightinhaber ihre Module nicht für Sword veröffentlichen möchten. Aber falls Sie einen Schlüssel haben, klicken Sie mit der rechten Maustaste auf ein Modul und wählen Sie "Entschlüssele Modul...". Ein Dialog erscheint, geben Sie hier bitte den Schlüssel ein, um das Modul aufzuschließen.

4.3 Warum sind Module verschlüsselt?

Module sind verschlossen, weil die Copyrightinhaber der Module ihre Texte nicht für das Sword Projekt veröffentlichen möchten. Bitte kontaktieren Sie die Copyrightinhaber und bitten Sie, die Module verfügbar zu machen. Falls Sie dafür bezahlen möchten, sagen Sie dies; dies ist etwas, was siemögen. Wir wissen, dass freie Module wirklich schön wären; versuchen Sie deshalb diese zu bekommen. Sie können auch Crosswire Bible Society besuchen und die Informationen über die Anstrengungen lesen, die unternommen wurden die Texte durch Crosswire zu verbreiten. Vielen Dank für Ihre Anstrengungen!

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-no-mods-d.html b/bibletime-doc/docs/de/helpdialog/html/help-no-mods-d.html new file mode 100644 index 0000000..e734a7c --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-no-mods-d.html @@ -0,0 +1 @@ +Chapter 6. Initialisierung des Modulverzeichnisses ist fehlgeschlagen!

Initialisierung des Modulverzeichnisses ist fehlgeschlagen!

Chapter 6. Initialisierung des Modulverzeichnisses ist fehlgeschlagen!

Es gibt kein mods.d Verzeichnis!

Diese Seite beschreibt, wass das mods.d Verzeichnis ist und wie man dieses Problem löst!

6.1 Was ist das mods.d Verzeichnis?
6.2 Wie löse ich dieses Problem?
6.3 Kann ich BibleTime ohne das mods.d Verzeichnis starten?

6.1 Was ist das mods.d Verzeichnis?

Das Verzeichnis mods.d ist das Verzeichnis, welches die Konfigurationsdaten der Module entält! Sie benötigen dieses Verzeichnis, sonst können Sie Bibletime und Sword nicht nutzen! Bitte lesen Sie die Installationsanweisungen.

6.2 Wie löse ich dieses Problem?

Die Lösung besteht darin, ein mods.d Verzeichnis anzulegen: Bitte wechseln Sie in ihr Sword Verzeichnis und geben Sie "mkdir mods.d" ein um das Verzeichnis anzulegen. Nun kopieren Sie die Konfigurationsdateien in dieses Verzeichnis und löschen Sie (falls sie existiert) die Datei mods.conf, da sie nicht mehr benötigt wird. Das mods.d Verzeichnis hat diese Datei ersetzt.

6.3 Kann ich BibleTime ohne das mods.d Verzeichnis starten?

Ja, das ist möglich. Aber es ist nicht sehr hilfreich. Im Hauptindex wird es keine Module geben. Es ist möglich, BibleTime so zu testen, aber es ist unmöglich, ohne Module zu arbeiten.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-no-modules.html b/bibletime-doc/docs/de/helpdialog/html/help-no-modules.html new file mode 100644 index 0000000..48ddeb6 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-no-modules.html @@ -0,0 +1 @@ +Chapter 7. Keine Module installiert!

Keine Module installiert!

Chapter 7. Keine Module installiert!

Es sind keine Sword Module installiert!

Diese Seite beschreibt, was Module sind und wie man dieses Problem löst

7.1 Was ist ein Modul?
7.2 Wie löse ich dieses Problem?
7.3 Was soll ich machen, wenn es nicht funktioniert?

7.1 Was ist ein Modul?

Ein Sword Module ist die Basis von BibleTime. Ein Modul kann eine Bibel, ein Kommentar oder ein Lexicon sein. Später werden wir Karten und andere interessante Dinge haben. Es ist nicht möglich mit BibleTime zu arbeiten, wenn keine Module installiert sind, obwohl es möglich ist BibleTime ohne installiert Module zu testen. Wenn Module in BibleTime angezeigt werden, nennen wir sie Dokumente.

7.2 Wie löse ich dieses Problem?

Bitte laden Sie einige Module herunter und installieren Sie diese! Sie bekommen die Module unter www.crosswire.org. Bitte lesen Sie die Installationsanweisungen.

7.3 Was soll ich machen, wenn es nicht funktioniert?

Bitte lesen Sie die Dokumentation auf www.bibletime.de. Falls Sie es nicht zum Funktionieren bekommen, schicken Sie bitte eine eMail an info@bibletime.de .

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/help-sword-module-trouble.html b/bibletime-doc/docs/de/helpdialog/html/help-sword-module-trouble.html new file mode 100644 index 0000000..cdf0470 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/help-sword-module-trouble.html @@ -0,0 +1 @@ +Chapter 5. Sword.

Sword.

Chapter 5. Sword.

Das Sword Modul konnte nicht geöffnet werden. Dieser Fehler wird normalerweise durch ein veraltetes oder beschädigtes Modul verursacht. Bitte besuchen Sie die Crosswire Bible Society, um ein Update des Moduls zu erhalten.

Note

Momentan kann Sword dieses Problem nicht abfangen. BibleTime und Sword stürzen ohne Fehlermeldung ab.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/html/index.html b/bibletime-doc/docs/de/helpdialog/html/index.html new file mode 100644 index 0000000..244c177 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/html/index.html @@ -0,0 +1 @@ +BibleTime Hilfe

BibleTime Hilfe

BibleTime Hilfe

Fred Saalbach

Jeffrey Hoyt

Revision 1.01.00

Der BibleTime Hilfedialog ist Teil von BibleTime.

BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA.

BibleTime ist eine in der Studie der Bibel zu helfende Anwendung.


KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/helpdialog/unicode/Makefile.am b/bibletime-doc/docs/de/helpdialog/unicode/Makefile.am new file mode 100644 index 0000000..8a07e8d --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; diff --git a/bibletime-doc/docs/de/helpdialog/unicode/Makefile.in b/bibletime-doc/docs/de/helpdialog/unicode/Makefile.in new file mode 100644 index 0000000..7482e65 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/helpdialog/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/helpdialog/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/helpdialog/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/helpdialog/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/helpdialog/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-first-startup.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-first-startup.docbook new file mode 100644 index 0000000..4a63003 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-first-startup.docbook @@ -0,0 +1,118 @@ + +Der erste Start + + +Der erste Start von &bibletime;! Diese Tabelle beschreibt die Funktionen von &bibletime;! + + Funktion Beschreibung + MDI MDI ist die Abkürzung für Multiple Document Interface. Mit der Hilfe von MDI ist es möglich mehr als ein Anzeigefenster zur selben Zeit geöffnet zu haben! Sie können so zum Beispiel zwei verschiedene Bibeln Seite an Seite anschauen und ihren Text vergleichen. Aber es ist ebenfalls möglich nur ein Fenster so wie in früheren Versionen von &bibletime; geöffnet zu haben. Das Menü Fenster dient zum Arbeiten mit der MDI Schnittstelle. Der MDI Bereich wird nur Anzeigefenster enthalten, nichts anderes. Diese saubere Darstellung vermeidet die Verwirrung der Benutzern durch zu viele Möglichkeiten. Anzeigefenster Ein Anzeigefenster ist ein Fenster innerhalb des MDI Bereiches von &bibletime; Ein Anzeigefenster präsentiert den Inhalt eines Dokumentes (&sword;Modul) in einem vernünftigen Format (Bibeln werden zum Beispiel als HTML-Text mit Verknüpfungen auf Versreferenzen dargestellt). Wir benutzen Anzeigefenster um einen allgemeinen Ansatz für die Zukunft zu haben. Crosswire wird &sword; erweitern sowie mehr Material veröffentlichen. Wenn neue Modultypen für &sword; entstehen, werden wir einfach zusätzliche Typen von Anzeigefenstern hinzufügen. Dieser Ansatz macht &bibletime; für die Zukunft erweiterbar und macht es möglich jede Art von Modulen anzuzeigen, die in Zukunft erzeugt werden können (zum Beispiel Karten oder Sound-Module). Hauptgruppe Die Hauptgruppe ist der Baum auf der linken Seite von &bibletime; Anwendungsfenster. Die Hauptgruppe kombiniert Lesezeichenverwaltung und Moduleverwaltung. Um mit der Hauptgruppe zu arbeiten benutzen Sie das Menü der rechte Maustaste. Die Hauptgruppe ist Drag&Drop fähig: Sie können Versreferenzen aus einem geöffneten Anzeigefenster oder aus dem Suchdialog ziehen um ein Lesezeichen anzulegen, und Sie können Einträge im Baum bewegen (z.B. Gruppen oder Lesezeichen in andere Gruppen bewegen). Suchschnittstelle Die Suchfunktion befindet sich nun in einem eigenen Fenster. Klicken Sie mit der rechten Maustaste auf ein Modul und wählen Sie Suche in gewählten Modulen um den Suchdialog zu öffnen. Der Dialog enthält Bereiche, in denen Suchbegriffe eingegeben, Suchbereiche gesetzt und in den gefundenen Einträgen navigiert werden kann. Die letzte Karteikarte zeigt die grafische Suchanalyse. Drag and Drop Drag&Drop ist ein wichtiger Teil von &bibletime;! Sie können Dokumente, Versreferenzen, Lesezeichen, Ordner, Suchergebnisse usw. herumziehen. Orte, an denen Sie diese fallen lassen können, sind die Hauptgruppe, die Anzeigefenster und der Kommentareditor. Spielen Sie einfach etwas herum um herauszufinden wie unser Drag&Drop-System arbeitet! Wir hoffen, dass es ihnen gefällt! + +
+ + +Hier ist eine kurze Liste von URLs mit mehr Informationen über &bibletime;! + + URL Beschreibung + www.bibletime.de Dies ist die Homepage von &bibletime;! Gehen Sie zu dieser Seite um Dokumentationsseiten zu lesen. Vergessen sie nicht das &FAQ; auf www.bibletime.de zu lesen, es enthält Antworten auf Fragen, die Sie wahrscheinlich haben. www.crosswire.org Dies ist das Seite von &crosswire;! &crosswire; ist die Bibelgesellschaft, welche die Textbibliothek und den Installationsmanager für &sword; herstellt. Sie können die Bibeltexte von dieser Seite herunterladen. Die meisten der auf Crosswire erhältlichen Texte sind entweder Public Domain oder sind von dem Copyrighthalter für &crosswire; zur Verteilung bereitgestellt worden. Module, die nicht zur freien Verteilung herausgegeben wurden, sind verschlüsselt. Bitte lesen Sie die Seite Hilfedialog für verschlüsselte Module vor dem Herunterladen von Modulen. + +
+
+ + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-first-time-search.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-first-time-search.docbook new file mode 100644 index 0000000..d45f1cb --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-first-time-search.docbook @@ -0,0 +1,65 @@ + +Der erste Aufruf des Suchdialoges + +Sie haben den Suchdialog zum ersten Mal geöffnet! +Diese Seite beschreibt, was der Suchdialog ist, wie man ihn benutzt und wie man effiziente Suchen durchführt. + + + + + Was ist der Suchdialog? + + + Der Suchdialog ist der Dialog, in dem sie die installierten &sword; Dokumente (Module) mit &bibletime; durchsuchen können. Sie können Text eingeben und diese Text in den Dokumenten suchen. Die gefundenen Einträge erscheinen in einer Liste, so dass Sie mit ihnen arbeiten können. + + + + + Wie suche ich nach Text? + + + Um einen Text zu suchen, klicken sie auf den ersten Eintrag der Karteikarten im oberen Bereich des Dialoges. Geben Sie nun Ihren Text in der Eingabezeile zu Beginn der Seite ein. Falls Sie keine besonderen Sucheigenschaften nutzen wollen, lassen Sie die Einstellungen unberührt und klicken Sie auf den Knopf Suchen am unteren Ende des Dialoges. Der Fortschritt der Suche wird in den beiden Anzeigen unten angezeigt. Die erste Anzeige zeigt den Fortschritt für das aktuelle Modul, die zweite zeigt die Prozent der gesamten Suche. Es ist möglich in mehr als einem Modul zu suchen, daher werden zwei Anzeigen benötigt. Falls Sie jedoch die Suche erweitern möchten, bieten wir Ihnen folgende Möglichkeiten an: + Mehrere Wörter + Die eingegebenen Wörter können in einer anderen Reihenfolge auftreten, als sie eingegeben wurden. Sie können sogar Teil eines Wortes sein. + Genaue Suche + Der Text wird exakt so gesucht, wie Sie ihn eingegeben haben; der Text wird ohne Unterscheidung von Groß- und Kleinbuchstaben gesucht, außer Sie haben GROß/klein aktiviert. + Reguläre Ausdrücke + Wenn Sie diese Art der Suche benutzen, werden GNU reguläre Ausdrücke benutzt. + Im Normalfall werden alle Suchen ohne die Unterscheidung von GROSS/klein durchgeführt. Um die Unterscheidung anzuschalten aktivieren Sie die Box GROSS/klein. Falls Sie Probleme mit den Suchtypen, der Unterscheidung von GROSS/klein oder anderen für die Suche relevanten Dinge bekommen, finden Sie in unserem Handbuch mehr Informationen. + + + + + + + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-initbackend-failed.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-initbackend-failed.docbook new file mode 100644 index 0000000..71db10b --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-initbackend-failed.docbook @@ -0,0 +1,21 @@ + +Initialisierung des Backends ist fehlgeschlagen! +Die Initialisierung von &bibletime;s backend ist fehlgeschlagen! + +Wenn Sie diese Meldung erhalten, haben Sie einen Programmfehler freilegt, den wir kennen müssen über. + + +Senden Sie bitte einen Programmfehler-Report mit etwas Informationen und zeigen Sie uns, wie man das Problem reproduziert. + Email wir bei info@bibletime.de! +Vielen Dank für Ihre Hilfe! + + + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-module-encrypted.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-module-encrypted.docbook new file mode 100644 index 0000000..f8d1523 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-module-encrypted.docbook @@ -0,0 +1,45 @@ + +Das Modul ist verschlüsselt +Das von ihnen ausgewählte Modul ist verschlüsselt. + Diese Beschreibt, was Verschlüsselung für Sie bedeutet. + + + + Was ist ein verschlüsseltes Modul? + + + Ein verschlüsseltes Modul (Dokument) ist ein Modul, dass mit einem Passwort gesichert ist. Nur ein Benutzer mit dem richtigen Passwort kann das Modul entschlüsseln um es zu lesen. + + + + + Wie entschlüssele ich ein Modul? + + + Für normale Benutzer ist es traurigerweise zur Zeit leider nicht möglich, verschlüsselte Module zu benutzen. Das Problem ist, dass die Copyrightinhaber ihre Module nicht für Sword veröffentlichen möchten. Aber falls Sie einen Schlüssel haben, klicken Sie mit der rechten Maustaste auf ein Modul und wählen Sie "Entschlüssele Modul...". Ein Dialog erscheint, geben Sie hier bitte den Schlüssel ein, um das Modul aufzuschließen. + + + + + Warum sind Module verschlüsselt? + + + Module sind verschlossen, weil die Copyrightinhaber der Module ihre Texte nicht für das &sword; Projekt veröffentlichen möchten. Bitte kontaktieren Sie die Copyrightinhaber und bitten Sie, die Module verfügbar zu machen. Falls Sie dafür bezahlen möchten, sagen Sie dies; dies ist etwas, was siemögen. Wir wissen, dass freie Module wirklich schön wären; versuchen Sie deshalb diese zu bekommen. Sie können auch &crosswire; besuchen und die Informationen über die Anstrengungen lesen, die unternommen wurden die Texte durch Crosswire zu verbreiten. Vielen Dank für Ihre Anstrengungen! + + + + + + + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-no-mods-d.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-no-mods-d.docbook new file mode 100644 index 0000000..3feb8ef --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-no-mods-d.docbook @@ -0,0 +1,54 @@ + +Initialisierung des Modulverzeichnisses ist fehlgeschlagen! + +Es gibt kein mods.d Verzeichnis! + +Diese Seite beschreibt, wass das mods.d Verzeichnis ist und wie man dieses Problem löst! + + + + Was ist das mods.d Verzeichnis? + + + Das Verzeichnis mods.d ist das Verzeichnis, welches die Konfigurationsdaten der Module entält! Sie benötigen dieses Verzeichnis, sonst können Sie Bibletime und &sword; nicht nutzen! Bitte lesen Sie die Installationsanweisungen. + + + + + Wie löse ich dieses Problem? + + + Die Lösung besteht darin, ein mods.d Verzeichnis anzulegen: Bitte wechseln Sie in ihr &sword; Verzeichnis und geben Sie "mkdir mods.d" ein um das Verzeichnis anzulegen. Nun kopieren Sie die Konfigurationsdateien in dieses Verzeichnis und löschen Sie (falls sie existiert) die Datei mods.conf, da sie nicht mehr benötigt wird. Das mods.d Verzeichnis hat diese Datei ersetzt. + + + + + Kann ich &bibletime; ohne das mods.d Verzeichnis starten? + + + Ja, das ist möglich. Aber es ist nicht sehr hilfreich. Im Hauptindex wird es keine Module geben. Es ist möglich, &bibletime; so zu testen, aber es ist unmöglich, ohne Module zu arbeiten. + + + + + + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-no-modules.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-no-modules.docbook new file mode 100644 index 0000000..a9e1e68 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-no-modules.docbook @@ -0,0 +1,50 @@ + +Keine Module installiert! + +Es sind keine &sword; Module installiert! +Diese Seite beschreibt, was Module sind und wie man dieses Problem löst + + + + + Was ist ein Modul? + + + Ein &sword; Module ist die Basis von &bibletime;. Ein Modul kann eine Bibel, ein Kommentar oder ein Lexicon sein. Später werden wir Karten und andere interessante Dinge haben. Es ist nicht möglich mit &bibletime; zu arbeiten, wenn keine Module installiert sind, obwohl es möglich ist &bibletime; ohne installiert Module zu testen. Wenn Module in &bibletime; angezeigt werden, nennen wir sie Dokumente. + + + + + Wie löse ich dieses Problem? + + +Bitte laden Sie einige Module herunter und installieren Sie diese! Sie bekommen die Module unter www.crosswire.org. Bitte lesen Sie die Installationsanweisungen. + + + + + Was soll ich machen, wenn es nicht funktioniert? + + + Bitte lesen Sie die Dokumentation auf www.bibletime.de. Falls Sie es nicht zum Funktionieren bekommen, schicken Sie bitte eine eMail an info@bibletime.de . + + + + + + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/help-sword-module-trouble.docbook b/bibletime-doc/docs/de/helpdialog/unicode/help-sword-module-trouble.docbook new file mode 100644 index 0000000..6c50aca --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/help-sword-module-trouble.docbook @@ -0,0 +1,12 @@ + +Sword. +Das Sword Modul konnte nicht geöffnet werden. Dieser Fehler wird normalerweise durch ein veraltetes oder beschädigtes Modul verursacht. Bitte besuchen Sie die Crosswire Bible Society, um ein Update des Moduls zu erhalten. + Momentan kann Sword dieses Problem nicht abfangen. &bibletime; und Sword stürzen ohne Fehlermeldung ab. + diff --git a/bibletime-doc/docs/de/helpdialog/unicode/index.docbook b/bibletime-doc/docs/de/helpdialog/unicode/index.docbook new file mode 100644 index 0000000..1cf7733 --- /dev/null +++ b/bibletime-doc/docs/de/helpdialog/unicode/index.docbook @@ -0,0 +1,134 @@ + + + + + + + BibleTime'> + Sword'> + Sword Installmgr'> + Crosswire Bible Society'> + + + + + + + + + + +]> + + + + +&bibletime; Hilfe + + + Fred Saalbach
info@bibletime.de
+ Jeffrey Hoyt +
+ +ROLES_OF_TRANSLATORS + + +1999 +2000 +2001 +Das &bibletime;-Team, info@bibletime.de + + + + +Der &bibletime; Hilfedialog ist Teil von &bibletime;. + + &bibletime; 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., 675 Mass Ave, Cambridge, MA 02139, USA. + +12/18/2001 +1.01.00 + + + &bibletime; ist eine in der Studie der Bibel zu helfende Anwendung. + + + +KDE +Bibletime +Sword +Crosswire Bible Society +Hilfedialog + + +
+ +&hdchap1; +&hdchap2; +&hdchap3; +&hdchap4; +&hdchap5; +&hdchap6; +&hdchap7; + +
+ + diff --git a/bibletime-doc/docs/de/howto/Makefile.am b/bibletime-doc/docs/de/howto/Makefile.am new file mode 100644 index 0000000..6e5e2e3 --- /dev/null +++ b/bibletime-doc/docs/de/howto/Makefile.am @@ -0,0 +1,39 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +po-files: + for f in `ls ../../en/howto/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/howto\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + + +unicode-files: + for f in `ls ../../en/howto/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/howto\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/howto\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/de/howto/Makefile.in b/bibletime-doc/docs/de/howto/Makefile.in new file mode 100644 index 0000000..3bc2e17 --- /dev/null +++ b/bibletime-doc/docs/de/howto/Makefile.in @@ -0,0 +1,495 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/howto + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/howto/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +po-files: + for f in `ls ../../en/howto/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/howto\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + +unicode-files: + for f in `ls ../../en/howto/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/howto\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/howto\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/howto/html/Makefile.am b/bibletime-doc/docs/de/howto/html/Makefile.am new file mode 100644 index 0000000..c5601ff --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/Makefile.am @@ -0,0 +1,5 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = diff --git a/bibletime-doc/docs/de/howto/html/Makefile.in b/bibletime-doc/docs/de/howto/html/Makefile.in new file mode 100644 index 0000000..55242ab --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/Makefile.in @@ -0,0 +1,364 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=h2-rules-context.html h2-importance.html h2-importance-exhortations.html h2-basics-interpretation.html h2-basics.html h2-importance-wars.html h2-basics-worksheet.html h2-rules.html h2-importance-liberates.html index.html h2-basics-expository.html h2-rules-normal.html h2-basics-approaches.html h2-importance-breathed.html h2-importance-once.html h2-basics-types.html h2-rules-parables.html h2-rules-hcontest.html h2-importance-supplement.html h2-importance-works.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/howto/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/howto/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/howto/html/h2-basics-approaches.html b/bibletime-doc/docs/de/howto/html/h2-basics-approaches.html new file mode 100644 index 0000000..a5f336c --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics-approaches.html @@ -0,0 +1 @@ +Annäherung an Gottes Wort

Annäherung an Gottes Wort

Annäherung an Gottes Wort

Hören und Lesen geben eine Übersicht über die Schrift, während das Studieren und Auswendiglernen eine Detailsicht der Schrift gibt. Das Nachdenken über die Schriften vereinigt das Hören, Lesen, Studieren und Ausweniglernen und verfestigt die Worte in unseren Köpfen.

Hören

Lukas 11,28 “Er aber sprach: Ja selig sind die, die das Wort Gottes hören und bewahren.”

Lesen

Offenbarung 1,3 “Selig ist, der da liest und die da hören die Worte der Weissagung und behalten, was darin geschrieben ist; denn die Zeit ist nahe.”

1. Timotheus 4,13“Fahre fort mit Vorlesen, mit Ermahnen, mit Lehren, bis ich komme. ”

Studieren

Apostelgeschichte 17,11 “Diese aber waren freundlicher als die in Thessalonich; sie nahmen das Wort bereitwillig auf und forschten täglich in der Schrift, ob sich's so verhielte.”

2. Timotheus 2,15 “Bemühe [in der engl. KJV `Study'] dich darum, dich vor Gott zu erweisen als einen rechtschaffenen und untadeligen Arbeiter Arbeiter, der das Wort der Wahrheit recht austeilt. ”

Auswendiglernen

Psalm 119,11 “Ich behalte dein Wort in meinem Herzen;/ lass mich nicht abirren von deinen Geboten”

Nachdenken

Psalmen 1,2-3 “Sondern hat Lust am Gesetz des Herrn / und sinnt über seinem Gesetz Tag und Nacht! Der ist wie ein Baum, gepflanzt an Wasserbächen, der seine Frucht bringt zu seiner Zeit, und seine Blätter verwelken nicht. / Und was er macht, das gerät wohl.”

Die Seeleute verdeutlichen dies, indem sie sagen, dass der Daumen alle Finger berühren kann, wir können über Gottes Wort nachdenken während wir eins der ersten vier Dinge tun. Darüber nachzudenken ist ein Schlüssel zur Offenbarung. Ein junger Christ muss die Bibel mehr hören und lesen als sie zu studieren und Dinge zu lernen. Durch diese Vorgehensweis werden sie mit der allumfassenden Botschaft der Bibel vetraut.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-basics-expository.html b/bibletime-doc/docs/de/howto/html/h2-basics-expository.html new file mode 100644 index 0000000..3539fdd --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics-expository.html @@ -0,0 +1,11 @@ +Eine Textauszugsstudie von Matthäus 6,1-18

Eine Textauszugsstudie von Matthäus 6,1-18

Eine Textauszugsstudie von Matthäus 6,1-18

Lass uns Matthäus 6,1-18 zusammen studieren. Lesen Sie den Text durch. Sehen Sie dabei zuerst nach den Schlüsselversen, d.h. nach den Versen, die den gesamten Abschnitt zusammenfassen. Denken Sie, dass sie fertig sind? Testen sie es, indem sie verschiedene Stellen heraussuchen und dann überlegen ob diese zum Gedanken des Schlüsselverses passen. Wenn Sie ihn gefunden haben, schreiben Sie ihn als Römische Zahl 1 ihrer Übersicht:

+I. HÜTE DICH DAVOR, DEINE RECHTSCHAFFENHEIT VOR ANDEREN AUSZUÜBEN UM BEMERKT ZU WERDEN
+

Was bedeutet "Rechtschaffenheit ausüben"? Gibt der Text irgendwelche Beispiele? Welcher Lebensbereich wird behandelt? Unsere Motive! Welche Untertitel entwickeln diesen Gedanken?

+  A. Wenn du spendest
+  B. Wenn du fastest
+  C. Wenn du betest
+

Füllen Sie jetzt die Übersicht mit spezifischen Anweisungen, wie man falsche Wege seine Rechtsschaffenheit auszuüben vermeiden kann:

+  A. Wenn du gibst
+     1. BLASE KEINE TROMPETE. (WIE KÖNNTE JEMAND HEUTE "EINE TROMPETE BLASEN"?)
+     2. GIB IM VERBORGENEN. USW.
+
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-basics-interpretation.html b/bibletime-doc/docs/de/howto/html/h2-basics-interpretation.html new file mode 100644 index 0000000..94f3b7c --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics-interpretation.html @@ -0,0 +1 @@ +Grundlagen einer richtiger Auslegung

Grundlagen einer richtiger Auslegung

Grundlagen einer richtiger Auslegung

Inhalt

Was sagt es aus? Was sagt es in der ursprünglichen Sprache aus? Seien Sie vorsichtig mit Definitionen. Lesen Sie nicht hinein, was nicht ausgesagt wird.

Kontext

Kontext.

Querverweise

Was sagen andere Verse über dieses Thema in anderen Teilen der Bibel aus? Gott widerspricht sich nicht selbst, deshalb muss unsere Auslegung den Test durch andere Stellen bestehen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-basics-types.html b/bibletime-doc/docs/de/howto/html/h2-basics-types.html new file mode 100644 index 0000000..6131b50 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics-types.html @@ -0,0 +1 @@ +Arten des Bibelstudiums

Arten des Bibelstudiums

Arten des Bibelstudiums

Thematische Studie

Suchen Sie sich ein bestimmtes Thema heraus und folgen Sie ihm unter Benutzung von Querverweisen oder einer Konkordanz.

Charakterstudie

Das Studieren des Lebens einer Person der Bibel, z.B. Josephs Leben in 1. Mose 37-50

Textauszugsstudie

Studieren eines Absatzes, Kapitels oder Buches.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-basics-worksheet.html b/bibletime-doc/docs/de/howto/html/h2-basics-worksheet.html new file mode 100644 index 0000000..d3e75ae --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics-worksheet.html @@ -0,0 +1,6 @@ +Arbeitsblatt: Wie man eine Konkordanz benutzt

Arbeitsblatt: Wie man eine Konkordanz benutzt

Arbeitsblatt: Wie man eine Konkordanz benutzt

Um einen speziellen Vers zu finden

  1. Suchen Sie sich das Schlüsselwort oder das ungewöhnlichste Wort des Verses heraus.

  2. Schlagen Sie dieses Wort alphabetisch nach.

  3. Gehen Sie die Spalte der Auflistung durch, bis Sie ihren Vers finden.

+	Finde diese Verse:
+		"Die Schläge des Freundes meinen es gut."
+		"Wir sind die Botschafter Christi."
+		Die Geschichte über den Reichen Mann und Lazarus.
+

Eine thematische Studie durchführen

Lassen Sie uns von der Annahme ausgehen, dass sie eine Studie des Wortes "Erlösung" machen möchten. Als erstes würden Sie das Wort in der Konkordanz nachschlagen und die aufgelisteten Stellen nachschlagen. Dann könnten Sie verwandte Worte und die für sie angegebenen Stellen nachschlagen , z.B. "erlösen, erlöst, Lösegeld", sogar "kaufen" oder "erkauft".

Wortbedeutungen im Griechischen oder Hebräischen klarstellen

Was wäre, wenn Sie einen Widerspruch zwischen Matthäus 7,1 "Richtet nicht, damit ihr nicht gerichtet werdet" und 1. Korinther 2,15 (Lutherbibel von 1545) "Der Geistliche aber richtet alles und wird von niemand gerichtet." entdecken würden? Vielleicht wurden hier zwei verschiedene griechische Wörter benutzt, die beide mit "richten" im Deutschen übersetzt wurden? (Wir benutzen ab jetzt Strongs Nummern).

  1. Schlagen Sie nun "richten" nach.

  2. Gehen Sie die Spalte der Einträge bis Matthäus 7,1 durch. Rechts steht eine Nummer: 2919. Diese bezieht sich auf das verwendete griechische Wort. Schreiben Sie es auf.

  3. Schlagen Sie nun "richten" nach.

  4. Gehen Sie die Spalte bis 1. Korinther 2,15 durch . . . . . 350.

  5. Benutzen Sie nun ein Griechisch Lexikon (Erinnern Sie sich: Sie sind im NT, also ist die Sprache Griechisch, während das AT in Hebräisch ist). Vergleichen Sie die Bedeutung von 2219 mit der Bedeutung von 350 und Sie haben ihre Antwort!

Die Bedeutung von Namen finden

Mit den selben Schritten können wir die Bedeutung von griechischen oder Hebräischen Namen finden.

Schlagen Sie die folgenden Namen nach und schreiben Sie deren Bedeutung auf:

  • Nabal

  • Abigail

  • Joshua

  • Barnabas

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-basics.html b/bibletime-doc/docs/de/howto/html/h2-basics.html new file mode 100644 index 0000000..f9046cd --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-basics.html @@ -0,0 +1,2 @@ +Chapter 2. Grundlagen des Bibelstudiums

Grundlagen des Bibelstudiums

Chapter 2. Grundlagen des Bibelstudiums

Unsere Absicht, wenn wir uns der Bibel annähern

Johannes 5,39-40"Ihr sucht in der Schrift, denn ihr meint, ihr habt das ewige Leben darin; und sie ist's die von mir zeugt; aber ihr wollt nicht zu mir kommen, dass ihr das Leben hättet."

Die Hauptabsicht des Buches ist es uns zu der Person zu bringen. Martin Luther sagte “Wir gehen nur zur Wiege um des Kindes willen”; genauso ist es mit dem Bibelstudium, wir tun es nicht um unser selbst willen, sondern wegen der Kameradschaft mit Gott.

 

Die Juden, zu denen Jesus sprach [...] glaubten, dass das Besitzen der Schrift gleichbedeutend dem Besitzen des Lebens war. Hillel pflegte zu sagen, ‘He who has gotten to himself words of Torah has gotten to himself the life of the world to come.’ Ihr Studium war in sich zu Ende. Hier wurden sie schmerzhaft getäuscht.

Es gibt weder Verdienst noch Profit beim Lesen der Schrift als Selbstzweck, nur wenn sie uns wirkungsvoll auf Jesus Christus hinführt. Jedesmal wenn wenn wir die Bibel lesen brauchen wir die eifrige Erwartung, durch sie Christus zu finden.

 
--John R.W. Stott, Christ the +Controversialist, InterVarsity Press 1978, pp.97, 104. 
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-breathed.html b/bibletime-doc/docs/de/howto/html/h2-importance-breathed.html new file mode 100644 index 0000000..2597df3 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-breathed.html @@ -0,0 +1,2 @@ +Ein Buch, das Gott eingegeben hat

Ein Buch, das Gott eingegeben hat

Ein Buch, das Gott eingegeben hat

Heb.4,12 ‘ Denn das Wort Gottes ist lebendig und kräftig...’, Jesus sagte (Mt. 4,4), ‘Er aber antwortete und sprach: Es steht geschrieben: "Der Mensch lebt nicht vom Brot allein, sondern von einem jeden Wort, das aus den Mund Gottes geht." ’ Wenn wir die Bibel lesen ist Gottes Geist da, um es in unsere Herzen hinein zu legen in einer immerwieder frischen Art.

2. Timotheus 3:16 erklärt ‘Denn alle Schrift, von Gott eingegeben [wörtlich Gott-gehaucht].’ Glauben Sie das? Bevor Sie antworten, ziehen Sie Jesu' Einstellung bezüglich der Schrift in Betracht.

 

Er bezog sich auf die menschlichen Autoren, aber aktzeptierte es als Tatsache, dass hinter ihnen allen ein göttlicher Autor stand. Er konnte sowohl 'Mose sagt' als auch 'Gott sagte' sagen (Markus 7,10). Er konnte einen Kommentar des Erzählers in 1. Mose 2,24 als einen Ausspruch des Schöpfers selbst zitieren (Matthäus 19,4-5). Ähnlich sagt Er 'Wie fein hat von euch Heuchlern Jesaja geweissagt, wie geschrieben steht', und das, was er weiter zitierte, war die direkte Rede Gottes, des Herrn (Markus 7,6 & Jesaja 29,13). Durch Jesus selbst Jesus haben die Autoren des neuen Testamentes ihre Überzeugung der doppelten Urheberschaft der Schrift. Für sie wahr es genauso richtig zu sagen 'Nachdem Gott vorzeiten vielfach und auf vielerlei Weise geredet hat zu den Vätern durch die Propheten' (Hebräer 1,1) wie 'getrieben von dem heiligen Geist haben Menschen im Namen Gottes geredet' (2. Petrus 1,21) zu sagen. Gott hat weder in dieser Art und Weise gesprochen um die Persönlichkeit des menschlichen Autoren zu tilgen, noch haben Männer in dieser Art und Weise gesprochen um das Wort des göttlichen Autoren zu zerstören. God sprach. Männer sprachen. Keiner der beiden Wahrheiten ist es erlaubt von der anderen abzulenken. ...

Dies war Christi Auffassung der Schriften. Ihr Zeuge war Gottes Zeuge. Das Zeugnis der Bibel ist das Zeugnis Gottes. Und der Hauptgrund, warum Christen an den göttlichen Ursprung der Bibel glauben ist, dass Jesus Christus selbst sie gelehrt hat.

 
--John R.W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.93-95  

2. Timotheus 3,16 geht noch weiter: ‘ist nütze zur Lehre, zur Zurechtweisung, zur Besserung, zur Erziehung in der Gerechtigkeit, dass der Mensch Gottes vollkommen sei, zu allem guten Werk geschickt. ’ Wenn wir aktzeptieren, dass die Bibel wirklich Gottes Reden zu uns ist, wird die Folge daraus sein, dass sie unsere Autorität in allen Dingen des Glaubens und Wandels ist.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-exhortations.html b/bibletime-doc/docs/de/howto/html/h2-importance-exhortations.html new file mode 100644 index 0000000..0714627 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-exhortations.html @@ -0,0 +1 @@ +Ermahnungen

Ermahnungen

Ermahnungen

2. Thimotheus 2,15‘Bemühe dich darum, dich vor Gott zu erweisen als einen rechtschaffenen und untadeligen Arbeiter, der das Wort der Wahrheit recht austeilt.’

Kollosser 3,16‘ Laßt das Wort Christi reichlich unter euch wohnen: lehrt und ermahnt einander in aller Weisheit; mit Psalmen, Lobgesängen und geistlichen Liedern singt Gott dankbar in euren Herzen. ’

Wen Sie in etwas reich sind, wie viel haben Sie dann davon?

Nicht wenig!

Prediger 12,11+12 ‘Die Worte der Weisen sind wie Stacheln, und wie eingeschlagene Nägel sind die einzelnen Sprüche; sie sind von einem Hirten gegeben. Und über dem allen, mein Sohn, laß dich warnen; denn des vielen Büchermachens ist kein Ende, und viel Studieren macht den Leib müde. ’

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-liberates.html b/bibletime-doc/docs/de/howto/html/h2-importance-liberates.html new file mode 100644 index 0000000..58fbc96 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-liberates.html @@ -0,0 +1 @@ +Ein Buch, das befreit

Ein Buch, das befreit

Ein Buch, das befreit

Johanner 8,32 ‘und werdet die Wahrheit erkennen, und die Wahrheit wird euch frei machen. ’ Dies wird normalerweise durch sich selbst zitiert. Ist die ein bedingtes oder ein unbedingtes Versprechen? Findet es Anwendung auf alle Arten von Weisheit? Finden Sie die Antwort heraus, indem Sie die erste Hälfte des Satzes in Vers 31 untersuchen ‘Wenn ihr bleiben werdet in meinem Wort, so seid ihr Warhaftig meine Jünger...’

Wir sehen, dass es ein bedingtes Versprechen ist, dass speziell von der Wahrheit Gottes Wortes spricht.

Das griechische Wort für "Wind", welches in Eph. 4:14 benutzt wird, meint einen gewaltsamen Wind. Als Folge sind wir nicht länger Kinder, hin- und hergeworfen von den Wellen und bewegt von jedem Wind der Lehre [...]. Eine Sache, die das Studieren der Bibel in uns bewirkt ist ,dass sie uns in der Wahrheit verwurzelt, mit der Folge, dass wir nicht leicht “weggeblasen werden”.

Jesus aber antwortete und sprach zu ihnen, ‘Ihr irrt, weil ihr weder die Schrift kennt noch die Kraft Gottes.’ Matthäus 22,29

Welche beiden Dinge müssen wir kennen, um von Fehlern abgehalten zu werden?

  • Gottes Wort

  • Gottes Kraft

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-once.html b/bibletime-doc/docs/de/howto/html/h2-importance-once.html new file mode 100644 index 0000000..c185efc --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-once.html @@ -0,0 +1,2 @@ +Anhang: “Einer für Alle”

Anhang: “Einer für Alle”

Anhang: “Einer für Alle”

 

Die Wahrheit betreffend der Endgültigkeit Gottes Initiative in Christus wird durch ein Wort des Griechischen Testamentes ausgedrückt, nämlich durch das Adverb hapax und ephapax. Es wird normalerweise in der "Authorized Version" mit "einmal" übersetzt, in der Bedeutung von "einmal für immer" [Anm. d. Übers.: eng. "once for all" kann auch als "entgültig" übersetzt werden]. Es wird für das benutzt, was ewige Gültigkeit hat und niemals Wiederholung benötigt und es wird im Neuen Testament auf Offenbarung und Erlösung angewandt. Folglich bezieht sich Judas auf den Glauben, der einmal für immer den Heiligen übergeben wurde (Judas 3), und Römer sagt “Denn was er gestorben ist, das ist er der Sünde ein für allemal [...]” (Römer 6,10, siehe auch 1. Petrus 3,18; Hebräer 9,26-28).

Folglich können wir sagen, dass Gott einmal für immer gesprochen hat und das Christus einmal für immer gelitten hat. Dies bedeutet, dass die christliche Offenbarung und die christliche Erlösung gleicherweise in Christus erfüllt sind. Nichts kann zu beiden hinzugefügt werden ohne schadend für Christus zu sein... Die beiden Fundamente [Anm. d. Übers. eigentlich rock = Felsen] auf die die protestantische Reformation aufgebaut wurde sind -- Gottes offenbartes Wort ohne den Ergänzungen menschlicher Traditionen und Christi vollendetes Werk ohne den Ergänzungen menschlicher Verdienste. Die großen Losungen der Reformer waren sola scriptura für die Autorität und sola gratia für unsere Erlösung.

 
--John R. W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.106-107 
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-supplement.html b/bibletime-doc/docs/de/howto/html/h2-importance-supplement.html new file mode 100644 index 0000000..30151e9 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-supplement.html @@ -0,0 +1 @@ +Anhang: Bibellesepläne

Anhang: Bibellesepläne

Anhang: Bibellesepläne

Hier sind einige einfache Programme für Sie, um systematisch ihre Bibel zu lesen. Sie können mehrere gleichzeitig durchführen, so zum Beispiel #1 mit #4 oder #2 mit #5. Verändern Sie das Programm von Jahr zu Jahr um es frisch zu halten.

  1. Das neue Testament in einem Jahr: Lesen Sie jeden Tag ein Kapitel, fünf Tage die Woche.

  2. Die Sprüche in einem Monat: Lesen Sie jeden Tag ein Kapitel der Sprüche, dem aktuellen Tag des Monats entsprechend.

  3. Die Psalmen in einem Monat: Lesen Sie täglich 5 Psalmen in einem Intervall von 30, am 20. müssten Sie zum Beispiel die Psalmen 20,50,80,110 & 140 lesen.

  4. Psalme & Sprüche in 6 Monaten: Lesen Sie sich durch die Psalmen und Sprüche mit einem Kapitel täglich.

  5. Das alte Testament ohne Psalmen und Sprüchen in 2 Jahren: Wenn Sie täglich ein Kapitel lesen und wenn sie die Psalmen und Sprüche auslassen, werden Sie das alte Testament in 2 Jahren und 2 Wochen durchlesen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-wars.html b/bibletime-doc/docs/de/howto/html/h2-importance-wars.html new file mode 100644 index 0000000..81646c1 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-wars.html @@ -0,0 +1 @@ +Ein Buch, das Krieg führt

Ein Buch, das Krieg führt

Ein Buch, das Krieg führt

Epheser 6,10-18 ist ein Bild für unsere geistliche Bewaffnung.

Table 1.3. Geistliche Rüstung

FrageAntwort
Wie viele der aufgelisteten Waffen sind Verteidigungswaffen?5
Wie viele sind Angriffswaffen?Eine
Welche? das Wort - rhema
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance-works.html b/bibletime-doc/docs/de/howto/html/h2-importance-works.html new file mode 100644 index 0000000..840b406 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance-works.html @@ -0,0 +1 @@ +Ein Buch, das arbeitet

Ein Buch, das arbeitet

Ein Buch, das arbeitet

Was wird das Studium der Bibel für sie tun? 1. Thessalonicher 2,14 sagt, dass die Bibel ‘ auch wirkt in euch, die ihr glaubet.’ Schreiben Sie neben jede Schrift die Arbeit nieder, die das Wort durchführt.

Table 1.2. Was bringt das Bibelstudium für Christen?

ReferenzAktion
Epheser 5,26 es reinigt -- “[...] Er hat sie gereinigt durch das Wasserbad im Wort...”
Apostelgeschichte 20,32 es erbaut -- “ Und nun befehle ich euch Gott und dem Wort seiner Gnade, der da mächtig ist, euch zu erbauen und euch das Erbe zu geben mit allen, die geheiligt sind. ”
Römer 15,4 es ermutigt -- “Denn was zuvor geschrieben ist, dass ist uns zur Lehre geschrieben, damit wir durch Geduld und den Trost der Schrift Hoffnung haben. ”
Römer 10,17 es gibt Glauben -- “So kommt der Glaube aus der Predigt, das Predigen aber durch das Wort Christi.”
1. Korinther 10,11 es warnt -- “ Die wiederfuhr ihnen als ein Vorbild. Es ist aber geschrieben uns zur Warnung [...]”
Matthäus 4,4 Nahrung -- “Er aber antwortete und sprach: Es steht geschrieben: "Der Mensch lebt nicht vom Brot allein, sondern von einem jeden Wort, das aus dem Wort Gottes geht."”
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-importance.html b/bibletime-doc/docs/de/howto/html/h2-importance.html new file mode 100644 index 0000000..3853cce --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-importance.html @@ -0,0 +1,3 @@ +Chapter 1. Wert des Wortes des Gottes

Wert des Wortes des Gottes

Chapter 1. Wert des Wortes des Gottes

Gottes Wort zu verstehen ist von großer Wichtigkeit für alle, die Gottes Namen anrufen. Das Studium der Bibel ist einer der ersten Wege um zu lernen mit Gott zu kommunizieren.

Ein Buch, das einzigartig ist

Die Bibel ist in vielen Dingen überragend. Sie ist einzigartig in:

  • Verbreitung. Verkaufserlöse aus Bibel in Nordamerika: Mehr als 500 Millionen Dollar pro Jahr. Die Bibel ist sowohl insgesamt als auch jährlich der Bestseller.

  • Urheberschaft. Sie wurde in einem Zeitraum von 1600 Jahren von 40 verschiedenen Autoren verschiedener Milieus geschrieben. Sie liest sich jedoch, als ob sie von einem einzigen geschrieben wurde.

  • Erhaltung. F. F. Bruce vergleicht im Buch Are New Testament Documents Reliable? die Manuskripte des neuen Testamentes mit anderen alten Texten:

Table 1.1. Vergleich der Schriften des Neuen Testamentes mit anderen alten Texten

WerkErstellungszeitErstausgabeZeitspanneAnzahl von Kopien
Herodot448-428 v.Chr..900 n.Chr.1300 Jahre8
Tacitus100 n.Chr.1100 n.Chr.1000 Jahre20
Cäsars Gallischer Krieg50-58 v.Chr.900 n.Chr.950 Jahre10
Livius' Römische Geschichte59 v.Chr. - 17 n.Chr.900 n.Chr.900 Jahre20
Neues Testament40 n.Chr. - 100 n.Chr.130 n.Chr. Teile der Manuskripte. 350 n.Chr. alle Manuskripte30 - 310 Jahre5000 Grieschische & 10,000 Lateinische

Es existieren zehn Kopien von Cäsars Gallischem Krieg, die erste wurde 900 Jahre nachdem Cäsars das Original schrieb, kopiert usw. Für das neue Testament haben wir vollständige Manuskripte, die auf 350 n.Chr. datiert werden; Schriftstücke aus den 200er Jahren, die den größten Teil des Neuen Testamentes enthalten und und Fragment des Johannesevangeliums von 130 n.Chr. Wie viele Ausgaben haben wir, um sie miteinander zu vergleichen? 500 in Griechisch und 10000 in Lateinisch!

 

"In der Wahrheit und Fülle der Beweise, auf der er aufbaut steht der Text des Neuen Testamentes absolut und unerreichbar alleine über den anderen alten Prosaschriften."

 
--Textual critic F. J. A. Hort, "The New Testament in the +Original Greek", vol. 1 p561, Macmillan Co., quoted in Questions of Life p. +25-26 
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-rules-context.html b/bibletime-doc/docs/de/howto/html/h2-rules-context.html new file mode 100644 index 0000000..3eb4c11 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-rules-context.html @@ -0,0 +1 @@ +Regel 2 - Auslegung im biblischen Zusammenhang

Regel 2 - Auslegung im biblischen Zusammenhang

Regel 2 - Auslegung im biblischen Zusammenhang

Schriftauslegung in Harmonie mit anderen Schriften. Was sagen die Verse jeder Seite aus? Was ist das Thema des Kapitels? Des Buches? Stimmt ihre Auslegung mit diesen überein? Wenn nicht, so ist sie fehlerhaft. Normalerweise vesorgt uns der Zusammenhang mit dem, was wir zu richtigen Auslegung des Abschnitts benötigen. Kontext ist König. Wenn immer noch Verwirrung über die Bedeutung nach der Auslegung des Textes ín seinem Zusammenhang besteht, müssen wir weiter nachforschen.

Beispiel 2A

In einer vorherigen Unterrichtsstunde haben wir Johannes 3,5 “geboren ... aus Wasser und Geist” In Bezug auf den Kontext, was ist das Wasser in dieser Diskussion?

Wassertaufe steht hier nicht in der Diskussion, was eine große Verschiebung des von Jesus und Nikodemus diskutierten Themas wäre. Halten Sie Ausschau nach einem plötzlichen Wechsel des Themas, es könnte ein Hinweis sein, dass ihre Auslegung entgleist ist! Das Wasser ist die lebensspendende Flüssigkeit, ‘geboren aus Wasser’ = natürliche Geburt.

Beispiel 2B

1 Korinther 14,34 “[...] die Frauen [sollen] schweigen in der Gemeindeversammlung” muss mit in den bibilischen Zusammenheng von 1. Korinther 11,5 ‘Ein Frau aber, die betet oder prophetisch redet...’ genommen werden.

Beispiel 2C

Apostelgeschichte 2,38 Petrus sprach zu ihnen: “Tut Buße, und jeder lasse sich taufen auf den Namen Jesu Christi zur Vergebung eurer Sünden...” Ist dies Wiedergeburt durch Taufe? Wenn es der einzige Vers der Schrift wäre, den wir hätten, müssten wir das folgern. Aber in dem Licht der klaren Lehre an anderen Stelle, dass Wiedergeburt durch den Glauben an Christus geschieht, müssen wir es anderes auslegen. Petrus drängt die Taufe als einen Weg für seine Hörer auf das Evangelium zu antworten. Wenn die Taufe der Weg wäre, wiedergeboren zu werden, wie könnte Paulus dann in 1. Kor. 1,17 schreiben “Denn Christus hat mich nicht gesandt zu taufen, sondern das Evangelium zu verkünden”?

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-rules-hcontest.html b/bibletime-doc/docs/de/howto/html/h2-rules-hcontest.html new file mode 100644 index 0000000..5dfa967 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-rules-hcontest.html @@ -0,0 +1 @@ +Regel 3 - Auslegung im geschichtlichen und kulturellen Zusammenhang

Regel 3 - Auslegung im geschichtlichen und kulturellen Zusammenhang

Regel 3 - Auslegung im geschichtlichen und kulturellen Zusammenhang

Zuallererst fragen wir nicht "Was bedeutet dies für mich?" sondern "Was hat es für den ursprünglichen Autoren bedeutet?"; später können wir fragen "Was bedeutet es für mich?" Wir müssen den geschichtlichen und kulturellen Hintergrund des Autoren und der Empfänger in Betracht ziehen.

Beispiel 3A

"3 Tage & 3 Nächte" (Mt.12,40) haben zur "MittwochsKreuzigungstheorie" geführt, besonders der Kult der Armstrongism. Anm. des Übers.: Leider weiss ich nicht, was Armstronism für ein Kult ist. Wie konnte Jesus am Freitag sterben und am Sonntag Morgen auferstehen ("...am dritten Tage auferstehen" (Mt. 16,21))? Genaue Bedeutungen von "drei" oder "Tagen" helfen nicht, den scheinbaren Widerspruch zu erklären.

Wir benötigen einen geschichtlichen Leckerbissen: Die Juden zählten jeden Teil eines Tages als vollen Tag, so wie wir Eimer Wasser zählen würden (wenn wir sechs und einen halben Eimer Wasser hätten, würden wir sagen dass es sieben Eimer Wasser sind sogar wenn der letzte nur teilweise voll ist). Dies istdie jüdische Art. Jeder Teil eines Tages wurde als voller Tag gezählt, Tage begannen um 18h und endeten um 6h. Freitag von 15h bis 18h = 1. Tag. Freitag von 18h bis Samstag 18h = 2. Tag. Samstag 18.00h bis Sonntag vielleicht 5h = 3. Tag. Die Auslegung im kulturellen Kontext bringt uns aus den Schwierigkeiten heraus.

Beispiel 3B

1. Mose 15,7-21. Der historische Zusammenhang ist, dass das teilen von Tieren in zwei Teile und dass nachfolgende Gehen zwischen ihnen der normale Weg zu Abrahams Zeit war, einen Vetrag zu schließen. Beide Vetragspartner gingen dazwischen hindurch, den Pfand nehmend, dass Zerstückelung auf sie kommen solle, wenn sie nicht ihren Teil des Vertrages halten. Aber in diesem Falle geht nur Gott hindurch, was dies zu einem einseitigen Vetrag macht.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-rules-normal.html b/bibletime-doc/docs/de/howto/html/h2-rules-normal.html new file mode 100644 index 0000000..bfdbfd5 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-rules-normal.html @@ -0,0 +1 @@ +Regel 4 - Auslegung in Bezug auf der normalen Benutzung der Worte in der Sprache

Regel 4 - Auslegung in Bezug auf der normalen Benutzung der Worte in der Sprache

Regel 4 - Auslegung in Bezug auf der normalen Benutzung der Worte in der Sprache

Lassen Sie wörtliche Sprache wörtlich sein und bildliche Sprache bildlich sein. Und achten Sie auf Idiome, die eine besondere Bedeutung haben.

Beispiel 4A

‘böses Auge’ in Mt.6,23.

Regel 1 - Definition von ‘böse’ und ‘Auge’ - hilft hier nicht. Regel 2, Zusammenhang: Dies scheint uns nur noch mehr zu verwirren. Es scheint nicht mit dem zu passen, was davor und danach steht! Dies sollte uns zeigen, dass wir es nicht richtig verstehen.

Was wir hier haben ist ein hebräisches Idiom, ‘böses Auge’. Lasst uns andere Benutzungen dieses Idioms nachschlagen: Mt. 20,15 ‘Oder habe ich nicht die Macht zu tun, was ich will, mit dem was mein ist? Siehst du scheel [wörtl. ‘böse’] drein, weil ich so gütig [wörtl. ‘gut’] bin?’. Wir sehen, dass ein ‘Böses Auge’ zu haben ein Idiom für geizig oder neidisch sein ist.Jetzt gehen Sie zurück zu Mt. 6 und sehen Sie, wie dieses Verständnis so perfekt in den Zusammenhang passt.

Beispiel 4B

Jesaja 59,1 “[...] des Herrn Arm ist nicht zu kurz” Deut.33:27 “ unter den ewigen Armen.” Verweise auf Körperteile von Gott werden von den “Mormonen” [Anm. des Übers.: im eng. "Latter-Day Saints"] um nachzuweisen, dass Gott einst ein Mann wie wir war. Nachdem sie die Menschen davon überzeugt haben, beginnen sie weiter zu lehren, dass wir Gott werden können wie er es tat. Auf einem Vortrag den Walter Martin (Autor von Kingdom of the Cults) gab, forderte eine Gruppe von Mormonenältesten ihn mit einer Versaufzählung wie diesen heraus. Dr. Martin forderte die Mormonen dann heraus, eine weitere Stelle zu lesen: Psalm 91,4 “Er wird dich mit seinen Fittichen decken, und Zuflucht wirst du haben unter seinen Flügeln...”. W.M. folgerte "Mit den selben Regeln der Auslegung, mit denen sie gerade festgestellt haben, dass Gott ein Mann ist, haben sie gerade festgestellt, dass Gott ein Vogel ist." Die Mormonen mussten lachen, als sie die Lächerlichkeit ihrer Position realisierten.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-rules-parables.html b/bibletime-doc/docs/de/howto/html/h2-rules-parables.html new file mode 100644 index 0000000..1518285 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-rules-parables.html @@ -0,0 +1 @@ +Regel 5 - Verstehen des Zwecks einer Parabeln und des Unterschiedes zwischen einer Parabel und einer Allegorie

Regel 5 - Verstehen des Zwecks einer Parabeln und des Unterschiedes zwischen einer Parabel und einer Allegorie

Regel 5 - Verstehen des Zwecks einer Parabeln und des Unterschiedes zwischen einer Parabel und einer Allegorie

Eine Allegorie ist: EINE GESCHICHTE; IN DER JEDES ELEMENT EINE BEDEUTUNG HAT

Jede Parabel ist eine Allegorie, whar oder falsch?

Einige Gleichnisse sind Allegorien, zum Beispiel ist das Gleichnis des Sähmanns eine Allegorie. Der Samen ist das Wort Gottes, die Dornen sind Sorgen und Gier, usw. Die meisten Gleichnisse sind keine Allegorien, sondern einfache Geschichten, um einen bestimmten Punkt zu verdeutlichen. Es ist gefährlich unsere Lehren von Gleichnissen zu gewinnen; sie können so gedreht werden, alle Dinge auszusagen. Wir müssen unsere Lehre von klaren Schriftstellen bekommen, die es auslegen; wenn ein Gleichnis dies zusätzlich verdeutlicht ist es hilfreich.

Beispiel 5A

Das Gleichnis der Witwe mit dem ungerechten Richter in Lukas 18,1-8. Diese Geschichte verdeutlicht eine Lektion: Mut im Gebet. [Anm. d. Üb.: im Engl. "boldnessin prayer"]. Wenn wir das Ganze in eine Allegorie verwandeln, was haben wir dann?

Alle Arten von Gewalt geschehen in der Bedeutung: Gott ist widerwillig die Rechte der Witwen zu schützen, Gebete "ärgern" Ihn, usw.

Beispiel 5B

Das Gleichniss der unehrlichen Verwalters in Lukas 16,1-9. Was ist der Knackpunkt des Gleichnisses? Ist es eine Allegorie?

Der Verwalter wird nur für eine Sache gelobt, seine Schlauheit in der Benutzung von Dingen, die er vorbereiten muss für eine Zeit, in der er sie nicht haben würde. Aber er wird nicht für sein unethisches Verhalten gelobt, nämlich seinen Herren zu hintergehen.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/h2-rules.html b/bibletime-doc/docs/de/howto/html/h2-rules.html new file mode 100644 index 0000000..9f29cb6 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/h2-rules.html @@ -0,0 +1,14 @@ +Chapter 3. Regeln der Bibelauslegung (Hermeneutik)

Regeln der Bibelauslegung (Hermeneutik)

Chapter 3. Regeln der Bibelauslegung (Hermeneutik)

Wir haben bereits von den ‘3 C’ gelernt: Inhalt (="content"), Kontext (="context") Querverweise (="cross-reference"). Wir möchten dies nun durch kurzes Erforschen der biblischen Hermeneutik erweitern. Das Ziel der biblischen Hermeneutik ist es, die Bedeutung zu entdecken, wie sie von dem ursprünglichen Autoren gemeint war. Während viele Anwendungen eines Abschnittes möglich sind, ist jedoch nur eine Auslegung möglich. Die Schriften selbst sagen, dass kein Manuskript eine eigene Auslegung hat (2. Petrus 1,20 “Und das sollt ihr vor allem wissen, dass keine Weissagung in der Schrift eine Sache eigener Auslegung ist”))- Verschiedene Regeln sind Hilfen zum Entdecken der richtigen Bedeutung; durch das Ignorieren dieser Regeln haben Menschen viele Schwierigkeiten für sich selbst und ihre Nachfolger gebracht. 2. Petrus 3,16 “...in denen einige Dinge schwer zu verstehen sind, welche die Unwissenden und Leichfertigen verdrehen, wie auch die anderen Schriften zu ihrer eigenen Verdammnis.”

Wie gehen wir nun vor, um die [ursprünglich] gewollte Bedeutung eines Abschnittes zu entdecken? Lassen Sie uns annehmen, dass ihre Aufmerksamkeit auf einen bestimmten Vers gezogen wurde, dessen Bedeutung ihnen nicht klar ist. Wie studieren Sie ihn? Behalten Sie sich diese Regeln:

Regel 1: Legen Sie der genauen Bedeutung der Wörter aus.

Je präziser wir mit der exakten, ursprünglichen Bedeutung der Wörter sein können, desto besser ist unsere Auslegung. Versuchen Sie die exakte Bedeutung zu finden, indem sie die folgenden Schritte befolgen:

Schritt 1) Bestimmung

Schlagen Sie die Bestimmung in einem Griechisch oder Hebräisch Lexikon nach. Für Verben ist die Verbform ebenfalls entscheidend.

Schritt 2) Querverweise

Vergleichen Sie Schrift mit Schrift. Zu sehen, wie das selbe griechische oder hebräische Wort (nicht das deutsche Wort) in der Schrift benutzt wird, kann die Bestimmung klären oder neu beleuchten. Wie benutzt der selbe Autor das Wort anderswo? Und andere Autoren? Ihre Referenzwerkzeuge könnten ihnen auch die Benutzung des Wortes in nicht-biblisches Dokumenten geben. How does the same author Warum müssen wir in die ursprüngliche Sprache gehen; warum ist das Deutsche Wort nicht gut genug? WEIL MEHR ALS EIN GRIECHISCHES WORT IN DAS SELBE DEUTSCHE ÜBERSETZT WERDEN KANN, UND WEIL DIE GRIECHISCHEN WÖRTER VERSCHIEDENE ABSTUFUNGEN HABEN KANN.

Beispiel 1A

Johannes 20,17 ‘Rühre mich nicht an’ klingt hart, nicht? Es klingt, dass Jesus nicht berührt werden wollte, jetzt wo er auferstanden ist, dass er zu heilig or etwas ähnliches ist. Aber das scheint nicht richtig zu sein, darum lasst es uns in Spiros Zodhiates' The Complete Word Study New Testament (AMG Publishers, 1991). nachschlagen.

Bestimmung: Nach dem Aufschlagen von Johannes 20,17 sehen wir über dem Wort “Rühre” “pim680”. Die Buchstaben geben uns einen Code für den Teil der Sprache, und die Nummer bezieht sich auf das Stronglexikon. Lasst uns die Bedeutung nachschlagen (S. 879). “680. Haptomai; von hapto (681), berühren. Bezieht sich auf solche Behandlung auf ein Objekt, die darauf einen verändernden Einfluß ausübt. Unterscheidet sich von pselaphao (5584), was nur bedeutet, die Oberfläche von etwas zu berühren.” Schlagen wir nun “pim” nach. Die Grammatikcodes in Zodhiates kommen direkt nach der Offenbarung; auf Seite 849 sehen wir, dass pim für “Präsens Imperativ Aktiv (80)” steht. Auf Seite 857 steht “Präsens Imperativ. In der gesprochenen Rede kann es ein Gebot bezeichnen, etwas in der Zukunft zu tun, was eine andauernde oder wiederholte Handlung einschließt oder, wenn es verneint ist, ein Gebot aufzuhören etwas zu tun.” Dies hier ist ein verneinter Befehl, so dass es dafür da ist etwas zu stoppen was schon geschieht. Was haben wir nun?

MARIA KLAMMERT SICH BEREITS AN JESUS, UND ER SAGT DAMIT AUFZUHÖHREN IHN ZU HALTEN!

Beispiel 1B

In Jakobus 5,14 lesen wir, dass Die Ältesten sollen für jemanden, der krank ist, beten und ihn mit Öl salben. Was ist dieses salben?

Bedeutung von aleipho (218) - “ölen” (Stroong); wir haben jedoch auch ein anderes griechisches Wort, das mit “einölen” übersetzt wird, chrio (5548) - “einschmieren oder einreiben mit Öl, d.h. segnen für einen amtlichen oder religiösen Dienst” (Strong). Da es ein Verb ist, ziehen Sie die Form auch in Betracht, “apta” Aorist Partizip Aktiv. “Das Aorist Partizip drückt einfache Handlung aus, im Gegensatz zur andauernden Handlung... Wenn die Beziehung zum Hauptverb temporal ist, kennzeichnet es normalerweise eine Handlung, die früher als die des Hauptverbes stattfindet. ” (Zodhiates S. 851)

+Querverweise für aleipho:
+  Matthäus.6,17 Wenn du aber fastest, so salbe dein Haupt...
+  Markus 16,1 Und als der Sabbat vergangen war, kauften Maria von Magdalena  und Maria, die Mutter des Jakobus, und Salome wohlriechende Öle, um  hinzugehen und ihn zu salben.
+  Markus 6,13 [...] und salbten viele Kranke mit Öl und machten sie gesund.
+  Lukas 7,38 ...und küßte seine Füße und salbt sie mit Salböl
+  Johannes 12,3 Maria ... salbte die Füße Jesu und trocknete mit ihrem Haar  seine Füße ...
+
+Querverweise für chrio:
+  Lukas 4,18 "Der Geist des Herrn ist auf mir, weil er mich gesalbt hat zu  verkündigen..."
+  Apostelgeschichte 4,27 ...Jesus, den du gesalbt hast... 
+  Apostelgeschichte 10,378 wie Gott Jesus von Nazareth gesalbt hat mit  heiligem Geist und Kraft
+  2. Korinther 1,21 Gott ist's aber, der ... uns gesalbt
+

Was ist nun der Unterschied zwischen aleipho und chrio? Schauen Sie erneut die Querverweise und die Definitionen an und sammeln Sie die Unterschiede: ALEIPHO IST PRAKTISCHE BENUTZUNG VON ÖL UND CHRIO IST DIE GEISTLICHE.

Zur Illustration (obwohl hier das Wort nicht benutzt wird) der praktischen Benutzung von Öl zu dieser Zeit ist der barmherzige Samariter, der für den von Räubern geschlagenen Mann sorgte und mit Öl und Wein die Wunden säuberte. Öl hatte also eine medizinische Bedeutung zur Zeit Jesu.

Jetzt lasst uns das durch diese Wortstudie Gelernte auf Jakobus 5,14 anwenden ‘Ist jemand unter euch krank, der rufe zu sich die Ältesten der Gemeinde, dass sie über ihm beten und ihn salben mit Öl im Namen des Herrn.’ Ist hier “salben” geistlich oder praktisch? Praktisch!

Und die Form im griechischen, das Partizip Aorist, könnte besser mit “gesalbt haben” übersetzt werden, so dass in der Reihenfolge erst dass Salben und dann das Gebet kommt (“Im Namen des Herrn” bezieht sich aus Gebet, nicht auf das Salben). Jakobus 5 sagt, dass die Ältesten der kranken Person Medizin geben und für ihn im Namen des Herrn beten sollen. Drückt dass nicht das wunderbare Gleichgewicht zwischen Praktischem und Geistlichem in unseren Gott aus?

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/html/index.html b/bibletime-doc/docs/de/howto/html/index.html new file mode 100644 index 0000000..e0663b8 --- /dev/null +++ b/bibletime-doc/docs/de/howto/html/index.html @@ -0,0 +1 @@ +Das Biblestudy HowTo

Das Biblestudy HowTo

Das Biblestudy HowTo

Bob Harman

Revision 1.01.00

This the copyright of this text is held by the author Bob Harman. The text was adapted for publication with Bibletime by Fred Saalbach.

Non exclusive serial rights for this distribution of this document with the Bibletime Software have been made. Redistribution as part of the Bibletime software without modification and limited reproduction as provided by the "fair use" provisions of the US copyright code are also permitted.

For questions regarding the use of this material contact Bob Harman c/o New Covenant Church 1079 Big Bethel Rd. Hampton VA 23666 USA <N_Cov_Church@compuserve.com>

Anm. des Übersetzers: Der deutsche Text der Bibelstellen ist der deutschen revidierten Lutherbibel von 1984 entnommen. Ich übernehme keinerlei Garantie für die Übersetzung, weder für falsche Wiedergabe noch für unwörtliche und sinnverfälschende Übersetzung. Ich habe mit bestem Wissen und Können übersetzt. Da ich jedoch kein Übersetzer bin, können sich Fehler eingeschlichen sein. Die Originalfassung wird in Englisch mit BibleTime mitgeliefert.

Zusammenfassung

Die Anleitung zum Bibelstudium ist ein Handbuch zum Studieren der Bibel.

Bibletime Anleitung.


KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/howto/unicode/Makefile.am b/bibletime-doc/docs/de/howto/unicode/Makefile.am new file mode 100644 index 0000000..d42d5df --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/howto; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + else \ + ln -sf ../../../en/bibletime/howto/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common; diff --git a/bibletime-doc/docs/de/howto/unicode/Makefile.in b/bibletime-doc/docs/de/howto/unicode/Makefile.in new file mode 100644 index 0000000..c41dc3c --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/howto/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/howto/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/howto; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + else \ + ln -sf ../../../en/bibletime/howto/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/howto/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/howto/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/howto/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/howto/unicode/how2-basics.docbook b/bibletime-doc/docs/de/howto/unicode/how2-basics.docbook new file mode 100644 index 0000000..64298d3 --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/how2-basics.docbook @@ -0,0 +1,278 @@ +Grundlagen des Bibelstudiums + +
+Unsere Absicht, wenn wir uns der Bibel annähern + Johannes 5,39-40"Ihr sucht in der Schrift, denn ihr meint, ihr habt das ewige Leben darin; und sie ist's die von mir zeugt; aber ihr wollt nicht zu mir kommen, dass ihr das Leben hättet." + +Die Hauptabsicht des Buches ist es uns zu der Person zu bringen. Martin Luther sagte Wir gehen nur zur Wiege um des Kindes willen; genauso ist es mit dem Bibelstudium, wir tun es nicht um unser selbst willen, sondern wegen der Kameradschaft mit Gott. +
John R.W. Stott, Christ the +Controversialist, InterVarsity Press 1978, pp.97, 104. +Die Juden, zu denen Jesus sprach [...] glaubten, dass das Besitzen der Schrift gleichbedeutend dem Besitzen des Lebens war. Hillel pflegte zu sagen, He who has gotten to himself words of Torah has gotten to himself the life of the world to come. Ihr Studium war in sich zu Ende. Hier wurden sie schmerzhaft getäuscht. +Es gibt weder Verdienst noch Profit beim Lesen der Schrift als Selbstzweck, nur wenn sie uns wirkungsvoll auf Jesus Christus hinführt. Jedesmal wenn wenn wir die Bibel lesen brauchen wir die eifrige Erwartung, durch sie Christus zu finden.
+
+ +
+Annäherung an Gottes Wort +Hören und Lesen geben eine Übersicht über die Schrift, während das Studieren und Auswendiglernen eine Detailsicht der Schrift gibt. Das Nachdenken über die Schriften vereinigt das Hören, Lesen, Studieren und Ausweniglernen und verfestigt die Worte in unseren Köpfen. + +
+Hören +Lukas 11,28 Er aber sprach: Ja selig sind die, die das Wort Gottes hören und bewahren. +
+ +
+Lesen Offenbarung 1,3 Selig ist, der da liest und die da hören die Worte der Weissagung und behalten, was darin geschrieben ist; denn die Zeit ist nahe. +1. Timotheus 4,13Fahre fort mit Vorlesen, mit Ermahnen, mit Lehren, bis ich komme. +
+ +
Studieren +Apostelgeschichte 17,11 Diese aber waren freundlicher als die in Thessalonich; sie nahmen das Wort bereitwillig auf und forschten täglich in der Schrift, ob sich's so verhielte. +2. Timotheus 2,15 Bemühe [in der engl. KJV `Study'] dich darum, dich vor Gott zu erweisen als einen rechtschaffenen und untadeligen Arbeiter Arbeiter, der das Wort der Wahrheit recht austeilt. +
+ +
+Auswendiglernen +Psalm 119,11 Ich behalte dein Wort in meinem Herzen;/ lass mich nicht abirren von deinen Geboten
+ +
Nachdenken +Psalmen 1,2-3 Sondern hat Lust am Gesetz des Herrn / und sinnt über seinem Gesetz Tag und Nacht! Der ist wie ein Baum, gepflanzt an Wasserbächen, der seine Frucht bringt zu seiner Zeit, und seine Blätter verwelken nicht. / Und was er macht, das gerät wohl. +Die Seeleute verdeutlichen dies, indem sie sagen, dass der Daumen alle Finger berühren kann, wir können über Gottes Wort nachdenken während wir eins der ersten vier Dinge tun. Darüber nachzudenken ist ein Schlüssel zur Offenbarung. Ein junger Christ muss die Bibel mehr hören und lesen als sie zu studieren und Dinge zu lernen. Durch diese Vorgehensweis werden sie mit der allumfassenden Botschaft der Bibel vetraut.
+
+ +
Arten des Bibelstudiums
Thematische Studie Suchen Sie sich ein bestimmtes Thema heraus und folgen Sie ihm unter Benutzung von Querverweisen oder einer Konkordanz. +
+ +
Charakterstudie +Das Studieren des Lebens einer Person der Bibel, z.B. Josephs Leben in 1. Mose 37-50
Textauszugsstudie Studieren eines Absatzes, Kapitels oder Buches.
+
+ +
+Grundlagen einer richtiger Auslegung + +
+Inhalt +Was sagt es aus? Was sagt es in der ursprünglichen Sprache aus? Seien Sie vorsichtig mit Definitionen. Lesen Sie nicht hinein, was nicht ausgesagt wird.
+ +
Kontext +Kontext. +
+ +
Querverweise + Was sagen andere Verse über dieses Thema in anderen Teilen der Bibel aus? Gott widerspricht sich nicht selbst, deshalb muss unsere Auslegung den Test durch andere Stellen bestehen. +
+
+ +
Eine Textauszugsstudie von Matthäus 6,1-18 +Lass uns Matthäus 6,1-18 zusammen studieren. Lesen Sie den Text durch. Sehen Sie dabei zuerst nach den Schlüsselversen, d.h. nach den Versen, die den gesamten Abschnitt zusammenfassen. Denken Sie, dass sie fertig sind? Testen sie es, indem sie verschiedene Stellen heraussuchen und dann überlegen ob diese zum Gedanken des Schlüsselverses passen. Wenn Sie ihn gefunden haben, schreiben Sie ihn als Römische Zahl 1 ihrer Übersicht: + +I. HÜTE DICH DAVOR, DEINE RECHTSCHAFFENHEIT VOR ANDEREN AUSZUÜBEN UM BEMERKT ZU WERDEN + +Was bedeutet "Rechtschaffenheit ausüben"? Gibt der Text irgendwelche Beispiele? Welcher Lebensbereich wird behandelt? Unsere Motive! Welche Untertitel entwickeln diesen Gedanken? + + A. Wenn du spendest + B. Wenn du fastest + C. Wenn du betest + +Füllen Sie jetzt die Übersicht mit spezifischen Anweisungen, wie man falsche Wege seine Rechtsschaffenheit auszuüben vermeiden kann: + + A. Wenn du gibst + 1. BLASE KEINE TROMPETE. (WIE KÖNNTE JEMAND HEUTE "EINE TROMPETE BLASEN"?) + 2. GIB IM VERBORGENEN. USW. + +
+
Arbeitsblatt: Wie man eine Konkordanz benutzt + +
Um einen speziellen Vers zu finden + Suchen Sie sich das Schlüsselwort oder das ungewöhnlichste Wort des Verses heraus. Schlagen Sie dieses Wort alphabetisch nach. Gehen Sie die Spalte der Auflistung durch, bis Sie ihren Vers finden. + + Finde diese Verse: + "Die Schläge des Freundes meinen es gut." + "Wir sind die Botschafter Christi." + Die Geschichte über den Reichen Mann und Lazarus. + +
+ +
Eine thematische Studie durchführen +Lassen Sie uns von der Annahme ausgehen, dass sie eine Studie des Wortes "Erlösung" machen möchten. Als erstes würden Sie das Wort in der Konkordanz nachschlagen und die aufgelisteten Stellen nachschlagen. Dann könnten Sie verwandte Worte und die für sie angegebenen Stellen nachschlagen , z.B. "erlösen, erlöst, Lösegeld", sogar "kaufen" oder "erkauft". +
+ + +
Wortbedeutungen im Griechischen oder Hebräischen klarstellen +Was wäre, wenn Sie einen Widerspruch zwischen Matthäus 7,1 "Richtet nicht, damit ihr nicht gerichtet werdet" und 1. Korinther 2,15 (Lutherbibel von 1545) "Der Geistliche aber richtet alles und wird von niemand gerichtet." entdecken würden? Vielleicht wurden hier zwei verschiedene griechische Wörter benutzt, die beide mit "richten" im Deutschen übersetzt wurden? (Wir benutzen ab jetzt Strongs Nummern). + Schlagen Sie nun "richten" nach. Gehen Sie die Spalte der Einträge bis Matthäus 7,1 durch. Rechts steht eine Nummer: 2919. Diese bezieht sich auf das verwendete griechische Wort. Schreiben Sie es auf. Schlagen Sie nun "richten" nach. Gehen Sie die Spalte bis 1. Korinther 2,15 durch . . . . . 350. Benutzen Sie nun ein Griechisch Lexikon (Erinnern Sie sich: Sie sind im NT, also ist die Sprache Griechisch, während das AT in Hebräisch ist). Vergleichen Sie die Bedeutung von 2219 mit der Bedeutung von 350 und Sie haben ihre Antwort! +
+ +
Die Bedeutung von Namen finden +Mit den selben Schritten können wir die Bedeutung von griechischen oder Hebräischen Namen finden. +Schlagen Sie die folgenden Namen nach und schreiben Sie deren Bedeutung auf: + Nabal Abigail Joshua Barnabas + +
+
+ diff --git a/bibletime-doc/docs/de/howto/unicode/how2-importance.docbook b/bibletime-doc/docs/de/howto/unicode/how2-importance.docbook new file mode 100644 index 0000000..5edaea3 --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/how2-importance.docbook @@ -0,0 +1,421 @@ +Wert des Wortes des Gottes +Gottes Wort zu verstehen ist von großer Wichtigkeit für alle, die Gottes Namen anrufen. Das Studium der Bibel ist einer der ersten Wege um zu lernen mit Gott zu kommunizieren. + +
Ein Buch, das einzigartig ist + Die Bibel ist in vielen Dingen überragend. Sie ist einzigartig in: + Verbreitung. Verkaufserlöse aus Bibel in Nordamerika: Mehr als 500 Millionen Dollar pro Jahr. Die Bibel ist sowohl insgesamt als auch jährlich der Bestseller. Urheberschaft. Sie wurde in einem Zeitraum von 1600 Jahren von 40 verschiedenen Autoren verschiedener Milieus geschrieben. Sie liest sich jedoch, als ob sie von einem einzigen geschrieben wurde. Erhaltung. F. F. Bruce vergleicht im Buch Are New Testament Documents Reliable? die Manuskripte des neuen Testamentes mit anderen alten Texten: + +Vergleich der Schriften des Neuen Testamentes mit anderen alten Texten + + Werk Erstellungszeit Erstausgabe ZeitspanneAnzahl von Kopien + Herodot 448-428 v.Chr..900 n.Chr. 1300 Jahre8 Tacitus 100 n.Chr.1100 n.Chr. 1000 Jahre20 Cäsars Gallischer Krieg 50-58 v.Chr.900 n.Chr. 950 Jahre10 Livius' Römische Geschichte 59 v.Chr. - 17 n.Chr.900 n.Chr. 900 Jahre20 Neues Testament 40 n.Chr. - 100 n.Chr.130 n.Chr. Teile der Manuskripte. 350 n.Chr. alle Manuskripte 30 - 310 Jahre5000 Grieschische & 10,000 Lateinische
+Es existieren zehn Kopien von Cäsars Gallischem Krieg, die erste wurde 900 Jahre nachdem Cäsars das Original schrieb, kopiert usw. Für das neue Testament haben wir vollständige Manuskripte, die auf 350 n.Chr. datiert werden; Schriftstücke aus den 200er Jahren, die den größten Teil des Neuen Testamentes enthalten und und Fragment des Johannesevangeliums von 130 n.Chr. Wie viele Ausgaben haben wir, um sie miteinander zu vergleichen? 500 in Griechisch und 10000 in Lateinisch! +
Textual critic F. J. A. Hort, "The New Testament in the +Original Greek", vol. 1 p561, Macmillan Co., quoted in Questions of Life p. +25-26"In der Wahrheit und Fülle der Beweise, auf der er aufbaut steht der Text des Neuen Testamentes absolut und unerreichbar alleine über den anderen alten Prosaschriften."
+ +
+
Ein Buch, das Gott eingegeben hat +Heb.4,12 Denn das Wort Gottes ist lebendig und kräftig..., Jesus sagte (Mt. 4,4), Er aber antwortete und sprach: Es steht geschrieben: "Der Mensch lebt nicht vom Brot allein, sondern von einem jeden Wort, das aus den Mund Gottes geht." Wenn wir die Bibel lesen ist Gottes Geist da, um es in unsere Herzen hinein zu legen in einer immerwieder frischen Art. +2. Timotheus 3:16 erklärt Denn alle Schrift, von Gott eingegeben [wörtlich Gott-gehaucht]. Glauben Sie das? Bevor Sie antworten, ziehen Sie Jesu' Einstellung bezüglich der Schrift in Betracht. +
John R.W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.93-95 Er bezog sich auf die menschlichen Autoren, aber aktzeptierte es als Tatsache, dass hinter ihnen allen ein göttlicher Autor stand. Er konnte sowohl 'Mose sagt' als auch 'Gott sagte' sagen (Markus 7,10). Er konnte einen Kommentar des Erzählers in 1. Mose 2,24 als einen Ausspruch des Schöpfers selbst zitieren (Matthäus 19,4-5). Ähnlich sagt Er 'Wie fein hat von euch Heuchlern Jesaja geweissagt, wie geschrieben steht', und das, was er weiter zitierte, war die direkte Rede Gottes, des Herrn (Markus 7,6 & Jesaja 29,13). Durch Jesus selbst Jesus haben die Autoren des neuen Testamentes ihre Überzeugung der doppelten Urheberschaft der Schrift. Für sie wahr es genauso richtig zu sagen 'Nachdem Gott vorzeiten vielfach und auf vielerlei Weise geredet hat zu den Vätern durch die Propheten' (Hebräer 1,1) wie 'getrieben von dem heiligen Geist haben Menschen im Namen Gottes geredet' (2. Petrus 1,21) zu sagen. Gott hat weder in dieser Art und Weise gesprochen um die Persönlichkeit des menschlichen Autoren zu tilgen, noch haben Männer in dieser Art und Weise gesprochen um das Wort des göttlichen Autoren zu zerstören. God sprach. Männer sprachen. Keiner der beiden Wahrheiten ist es erlaubt von der anderen abzulenken. ... + Dies war Christi Auffassung der Schriften. Ihr Zeuge war Gottes Zeuge. Das Zeugnis der Bibel ist das Zeugnis Gottes. Und der Hauptgrund, warum Christen an den göttlichen Ursprung der Bibel glauben ist, dass Jesus Christus selbst sie gelehrt hat.
+ +2. Timotheus 3,16 geht noch weiter: ist nütze zur Lehre, zur Zurechtweisung, zur Besserung, zur Erziehung in der Gerechtigkeit, dass der Mensch Gottes vollkommen sei, zu allem guten Werk geschickt. Wenn wir aktzeptieren, dass die Bibel wirklich Gottes Reden zu uns ist, wird die Folge daraus sein, dass sie unsere Autorität in allen Dingen des Glaubens und Wandels ist. +
+
Ein Buch, das arbeitet + Was wird das Studium der Bibel für sie tun? 1. Thessalonicher 2,14 sagt, dass die Bibel auch wirkt in euch, die ihr glaubet. Schreiben Sie neben jede Schrift die Arbeit nieder, die das Wort durchführt. + +Was bringt das Bibelstudium für Christen? + + Referenz Aktion + Epheser 5,26 es reinigt -- [...] Er hat sie gereinigt durch das Wasserbad im Wort... Apostelgeschichte 20,32 es erbaut -- Und nun befehle ich euch Gott und dem Wort seiner Gnade, der da mächtig ist, euch zu erbauen und euch das Erbe zu geben mit allen, die geheiligt sind. Römer 15,4 es ermutigt -- Denn was zuvor geschrieben ist, dass ist uns zur Lehre geschrieben, damit wir durch Geduld und den Trost der Schrift Hoffnung haben. Römer 10,17 es gibt Glauben -- So kommt der Glaube aus der Predigt, das Predigen aber durch das Wort Christi. 1. Korinther 10,11 es warnt -- Die wiederfuhr ihnen als ein Vorbild. Es ist aber geschrieben uns zur Warnung [...] Matthäus 4,4 Nahrung -- Er aber antwortete und sprach: Es steht geschrieben: "Der Mensch lebt nicht vom Brot allein, sondern von einem jeden Wort, das aus dem Wort Gottes geht." + +
+ +
+
Ein Buch, das befreit + Johanner 8,32 und werdet die Wahrheit erkennen, und die Wahrheit wird euch frei machen. Dies wird normalerweise durch sich selbst zitiert. Ist die ein bedingtes oder ein unbedingtes Versprechen? Findet es Anwendung auf alle Arten von Weisheit? Finden Sie die Antwort heraus, indem Sie die erste Hälfte des Satzes in Vers 31 untersuchen Wenn ihr bleiben werdet in meinem Wort, so seid ihr Warhaftig meine Jünger... +Wir sehen, dass es ein bedingtes Versprechen ist, dass speziell von der Wahrheit Gottes Wortes spricht. + +Das griechische Wort für "Wind", welches in Eph. 4:14 benutzt wird, meint einen gewaltsamen Wind. Als Folge sind wir nicht länger Kinder, hin- und hergeworfen von den Wellen und bewegt von jedem Wind der Lehre [...]. Eine Sache, die das Studieren der Bibel in uns bewirkt ist ,dass sie uns in der Wahrheit verwurzelt, mit der Folge, dass wir nicht leicht weggeblasen werden. + +Jesus aber antwortete und sprach zu ihnen, Ihr irrt, weil ihr weder die Schrift kennt noch die Kraft Gottes. Matthäus 22,29 +Welche beiden Dinge müssen wir kennen, um von Fehlern abgehalten zu werden? + Gottes Wort Gottes Kraft +
+
Ein Buch, das Krieg führt + Epheser 6,10-18 ist ein Bild für unsere geistliche Bewaffnung. + +Geistliche Rüstung + + Frage Antwort +Wie viele der aufgelisteten Waffen sind Verteidigungswaffen?5Wie viele sind Angriffswaffen?EineWelche? das Wort - rhema
+
+
Ermahnungen + 2. Thimotheus 2,15Bemühe dich darum, dich vor Gott zu erweisen als einen rechtschaffenen und untadeligen Arbeiter, der das Wort der Wahrheit recht austeilt. + Kollosser 3,16 Laßt das Wort Christi reichlich unter euch wohnen: lehrt und ermahnt einander in aller Weisheit; mit Psalmen, Lobgesängen und geistlichen Liedern singt Gott dankbar in euren Herzen. + +Wen Sie in etwas reich sind, wie viel haben Sie dann davon? + Nicht wenig! + + Prediger 12,11+12 Die Worte der Weisen sind wie Stacheln, und wie eingeschlagene Nägel sind die einzelnen Sprüche; sie sind von einem Hirten gegeben. Und über dem allen, mein Sohn, laß dich warnen; denn des vielen Büchermachens ist kein Ende, und viel Studieren macht den Leib müde.
+ +
Anhang: <quote +>Einer für Alle</quote +> +
+John R. W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.106-107 Die Wahrheit betreffend der Endgültigkeit Gottes Initiative in Christus wird durch ein Wort des Griechischen Testamentes ausgedrückt, nämlich durch das Adverb hapax und ephapax. Es wird normalerweise in der "Authorized Version" mit "einmal" übersetzt, in der Bedeutung von "einmal für immer" [Anm. d. Übers.: eng. "once for all" kann auch als "entgültig" übersetzt werden]. Es wird für das benutzt, was ewige Gültigkeit hat und niemals Wiederholung benötigt und es wird im Neuen Testament auf Offenbarung und Erlösung angewandt. Folglich bezieht sich Judas auf den Glauben, der einmal für immer den Heiligen übergeben wurde (Judas 3), und Römer sagt Denn was er gestorben ist, das ist er der Sünde ein für allemal [...] (Römer 6,10, siehe auch 1. Petrus 3,18; Hebräer 9,26-28). Folglich können wir sagen, dass Gott einmal für immer gesprochen hat und das Christus einmal für immer gelitten hat. Dies bedeutet, dass die christliche Offenbarung und die christliche Erlösung gleicherweise in Christus erfüllt sind. Nichts kann zu beiden hinzugefügt werden ohne schadend für Christus zu sein... Die beiden Fundamente [Anm. d. Übers. eigentlich rock = Felsen] auf die die protestantische Reformation aufgebaut wurde sind -- Gottes offenbartes Wort ohne den Ergänzungen menschlicher Traditionen und Christi vollendetes Werk ohne den Ergänzungen menschlicher Verdienste. Die großen Losungen der Reformer waren sola scriptura für die Autorität und sola gratia für unsere Erlösung. +
+ +
+
Anhang: Bibellesepläne Hier sind einige einfache Programme für Sie, um systematisch ihre Bibel zu lesen. Sie können mehrere gleichzeitig durchführen, so zum Beispiel #1 mit #4 oder #2 mit #5. Verändern Sie das Programm von Jahr zu Jahr um es frisch zu halten. + Das neue Testament in einem Jahr: Lesen Sie jeden Tag ein Kapitel, fünf Tage die Woche. Die Sprüche in einem Monat: Lesen Sie jeden Tag ein Kapitel der Sprüche, dem aktuellen Tag des Monats entsprechend. Die Psalmen in einem Monat: Lesen Sie täglich 5 Psalmen in einem Intervall von 30, am 20. müssten Sie zum Beispiel die Psalmen 20,50,80,110 & 140 lesen. Psalme & Sprüche in 6 Monaten: Lesen Sie sich durch die Psalmen und Sprüche mit einem Kapitel täglich. Das alte Testament ohne Psalmen und Sprüchen in 2 Jahren: Wenn Sie täglich ein Kapitel lesen und wenn sie die Psalmen und Sprüche auslassen, werden Sie das alte Testament in 2 Jahren und 2 Wochen durchlesen. +
+
+ + diff --git a/bibletime-doc/docs/de/howto/unicode/how2-interpretation.docbook b/bibletime-doc/docs/de/howto/unicode/how2-interpretation.docbook new file mode 100644 index 0000000..3ed8abf --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/how2-interpretation.docbook @@ -0,0 +1,289 @@ +Regeln der Bibelauslegung (Hermeneutik) +Wir haben bereits von den 3 C gelernt: Inhalt (="content"), Kontext (="context") Querverweise (="cross-reference"). Wir möchten dies nun durch kurzes Erforschen der biblischen Hermeneutik erweitern. Das Ziel der biblischen Hermeneutik ist es, die Bedeutung zu entdecken, wie sie von dem ursprünglichen Autoren gemeint war. Während viele Anwendungen eines Abschnittes möglich sind, ist jedoch nur eine Auslegung möglich. Die Schriften selbst sagen, dass kein Manuskript eine eigene Auslegung hat (2. Petrus 1,20 Und das sollt ihr vor allem wissen, dass keine Weissagung in der Schrift eine Sache eigener Auslegung ist))- Verschiedene Regeln sind Hilfen zum Entdecken der richtigen Bedeutung; durch das Ignorieren dieser Regeln haben Menschen viele Schwierigkeiten für sich selbst und ihre Nachfolger gebracht. 2. Petrus 3,16 ...in denen einige Dinge schwer zu verstehen sind, welche die Unwissenden und Leichfertigen verdrehen, wie auch die anderen Schriften zu ihrer eigenen Verdammnis. +Wie gehen wir nun vor, um die [ursprünglich] gewollte Bedeutung eines Abschnittes zu entdecken? Lassen Sie uns annehmen, dass ihre Aufmerksamkeit auf einen bestimmten Vers gezogen wurde, dessen Bedeutung ihnen nicht klar ist. Wie studieren Sie ihn? Behalten Sie sich diese Regeln: + +
Regel 1: Legen Sie der genauen Bedeutung der Wörter aus. +Je präziser wir mit der exakten, ursprünglichen Bedeutung der Wörter sein können, desto besser ist unsere Auslegung. Versuchen Sie die exakte Bedeutung zu finden, indem sie die folgenden Schritte befolgen: + +
Schritt 1) Bestimmung +Schlagen Sie die Bestimmung in einem Griechisch oder Hebräisch Lexikon nach. Für Verben ist die Verbform ebenfalls entscheidend.
+ +
Schritt 2) Querverweise +Vergleichen Sie Schrift mit Schrift. Zu sehen, wie das selbe griechische oder hebräische Wort (nicht das deutsche Wort) in der Schrift benutzt wird, kann die Bestimmung klären oder neu beleuchten. Wie benutzt der selbe Autor das Wort anderswo? Und andere Autoren? Ihre Referenzwerkzeuge könnten ihnen auch die Benutzung des Wortes in nicht-biblisches Dokumenten geben. How does the same author Warum müssen wir in die ursprüngliche Sprache gehen; warum ist das Deutsche Wort nicht gut genug? WEIL MEHR ALS EIN GRIECHISCHES WORT IN DAS SELBE DEUTSCHE ÜBERSETZT WERDEN KANN, UND WEIL DIE GRIECHISCHEN WÖRTER VERSCHIEDENE ABSTUFUNGEN HABEN KANN. + +
Beispiel 1A +Johannes 20,17 Rühre mich nicht an klingt hart, nicht? Es klingt, dass Jesus nicht berührt werden wollte, jetzt wo er auferstanden ist, dass er zu heilig or etwas ähnliches ist. Aber das scheint nicht richtig zu sein, darum lasst es uns in Spiros Zodhiates' The Complete Word Study New Testament (AMG Publishers, 1991). nachschlagen. +Bestimmung: Nach dem Aufschlagen von Johannes 20,17 sehen wir über dem Wort Rühre pim680. Die Buchstaben geben uns einen Code für den Teil der Sprache, und die Nummer bezieht sich auf das Stronglexikon. Lasst uns die Bedeutung nachschlagen (S. 879). 680. Haptomai; von hapto (681), berühren. Bezieht sich auf solche Behandlung auf ein Objekt, die darauf einen verändernden Einfluß ausübt. Unterscheidet sich von pselaphao (5584), was nur bedeutet, die Oberfläche von etwas zu berühren. Schlagen wir nun pim nach. Die Grammatikcodes in Zodhiates kommen direkt nach der Offenbarung; auf Seite 849 sehen wir, dass pim für Präsens Imperativ Aktiv (80) steht. Auf Seite 857 steht Präsens Imperativ. In der gesprochenen Rede kann es ein Gebot bezeichnen, etwas in der Zukunft zu tun, was eine andauernde oder wiederholte Handlung einschließt oder, wenn es verneint ist, ein Gebot aufzuhören etwas zu tun. Dies hier ist ein verneinter Befehl, so dass es dafür da ist etwas zu stoppen was schon geschieht. Was haben wir nun? +MARIA KLAMMERT SICH BEREITS AN JESUS, UND ER SAGT DAMIT AUFZUHÖHREN IHN ZU HALTEN! +
+ +
Beispiel 1B +In Jakobus 5,14 lesen wir, dass Die Ältesten sollen für jemanden, der krank ist, beten und ihn mit Öl salben. Was ist dieses salben? +Bedeutung von aleipho (218) - ölen (Stroong); wir haben jedoch auch ein anderes griechisches Wort, das mit einölen übersetzt wird, chrio (5548) - einschmieren oder einreiben mit Öl, d.h. segnen für einen amtlichen oder religiösen Dienst (Strong). Da es ein Verb ist, ziehen Sie die Form auch in Betracht, apta Aorist Partizip Aktiv. Das Aorist Partizip drückt einfache Handlung aus, im Gegensatz zur andauernden Handlung... Wenn die Beziehung zum Hauptverb temporal ist, kennzeichnet es normalerweise eine Handlung, die früher als die des Hauptverbes stattfindet. (Zodhiates S. 851) + + +Querverweise für aleipho: + Matthäus.6,17 Wenn du aber fastest, so salbe dein Haupt... + Markus 16,1 Und als der Sabbat vergangen war, kauften Maria von Magdalena und Maria, die Mutter des Jakobus, und Salome wohlriechende Öle, um hinzugehen und ihn zu salben. + Markus 6,13 [...] und salbten viele Kranke mit Öl und machten sie gesund. + Lukas 7,38 ...und küßte seine Füße und salbt sie mit Salböl + Johannes 12,3 Maria ... salbte die Füße Jesu und trocknete mit ihrem Haar seine Füße ... + +Querverweise für chrio: + Lukas 4,18 "Der Geist des Herrn ist auf mir, weil er mich gesalbt hat zu verkündigen..." + Apostelgeschichte 4,27 ...Jesus, den du gesalbt hast... + Apostelgeschichte 10,378 wie Gott Jesus von Nazareth gesalbt hat mit heiligem Geist und Kraft + 2. Korinther 1,21 Gott ist's aber, der ... uns gesalbt + + +Was ist nun der Unterschied zwischen aleipho und chrio? Schauen Sie erneut die Querverweise und die Definitionen an und sammeln Sie die Unterschiede: ALEIPHO IST PRAKTISCHE BENUTZUNG VON ÖL UND CHRIO IST DIE GEISTLICHE. + +Zur Illustration (obwohl hier das Wort nicht benutzt wird) der praktischen Benutzung von Öl zu dieser Zeit ist der barmherzige Samariter, der für den von Räubern geschlagenen Mann sorgte und mit Öl und Wein die Wunden säuberte. Öl hatte also eine medizinische Bedeutung zur Zeit Jesu. +Jetzt lasst uns das durch diese Wortstudie Gelernte auf Jakobus 5,14 anwenden Ist jemand unter euch krank, der rufe zu sich die Ältesten der Gemeinde, dass sie über ihm beten und ihn salben mit Öl im Namen des Herrn. Ist hier salben geistlich oder praktisch? Praktisch! + Und die Form im griechischen, das Partizip Aorist, könnte besser mit gesalbt haben übersetzt werden, so dass in der Reihenfolge erst dass Salben und dann das Gebet kommt (Im Namen des Herrn bezieht sich aus Gebet, nicht auf das Salben). Jakobus 5 sagt, dass die Ältesten der kranken Person Medizin geben und für ihn im Namen des Herrn beten sollen. Drückt dass nicht das wunderbare Gleichgewicht zwischen Praktischem und Geistlichem in unseren Gott aus? +
+
+
+ +
Regel 2 - Auslegung im biblischen Zusammenhang +Schriftauslegung in Harmonie mit anderen Schriften. Was sagen die Verse jeder Seite aus? Was ist das Thema des Kapitels? Des Buches? Stimmt ihre Auslegung mit diesen überein? Wenn nicht, so ist sie fehlerhaft. Normalerweise vesorgt uns der Zusammenhang mit dem, was wir zu richtigen Auslegung des Abschnitts benötigen. Kontext ist König. Wenn immer noch Verwirrung über die Bedeutung nach der Auslegung des Textes ín seinem Zusammenhang besteht, müssen wir weiter nachforschen. + +
Beispiel 2A +In einer vorherigen Unterrichtsstunde haben wir Johannes 3,5 geboren ... aus Wasser und Geist In Bezug auf den Kontext, was ist das Wasser in dieser Diskussion? +Wassertaufe steht hier nicht in der Diskussion, was eine große Verschiebung des von Jesus und Nikodemus diskutierten Themas wäre. Halten Sie Ausschau nach einem plötzlichen Wechsel des Themas, es könnte ein Hinweis sein, dass ihre Auslegung entgleist ist! Das Wasser ist die lebensspendende Flüssigkeit, geboren aus Wasser = natürliche Geburt. +
+
Beispiel 2B +1 Korinther 14,34 [...] die Frauen [sollen] schweigen in der Gemeindeversammlung muss mit in den bibilischen Zusammenheng von 1. Korinther 11,5 Ein Frau aber, die betet oder prophetisch redet... genommen werden. +
+
Beispiel 2C +Apostelgeschichte 2,38 Petrus sprach zu ihnen: Tut Buße, und jeder lasse sich taufen auf den Namen Jesu Christi zur Vergebung eurer Sünden... Ist dies Wiedergeburt durch Taufe? Wenn es der einzige Vers der Schrift wäre, den wir hätten, müssten wir das folgern. Aber in dem Licht der klaren Lehre an anderen Stelle, dass Wiedergeburt durch den Glauben an Christus geschieht, müssen wir es anderes auslegen. Petrus drängt die Taufe als einen Weg für seine Hörer auf das Evangelium zu antworten. Wenn die Taufe der Weg wäre, wiedergeboren zu werden, wie könnte Paulus dann in 1. Kor. 1,17 schreiben Denn Christus hat mich nicht gesandt zu taufen, sondern das Evangelium zu verkünden? +
+
+ +
+Regel 3 - Auslegung im geschichtlichen und kulturellen Zusammenhang + Zuallererst fragen wir nicht "Was bedeutet dies für mich?" sondern "Was hat es für den ursprünglichen Autoren bedeutet?"; später können wir fragen "Was bedeutet es für mich?" Wir müssen den geschichtlichen und kulturellen Hintergrund des Autoren und der Empfänger in Betracht ziehen. + +
Beispiel 3A "3 Tage & 3 Nächte" (Mt.12,40) haben zur "MittwochsKreuzigungstheorie" geführt, besonders der Kult der Armstrongism. Anm. des Übers.: Leider weiss ich nicht, was Armstronism für ein Kult ist. Wie konnte Jesus am Freitag sterben und am Sonntag Morgen auferstehen ("...am dritten Tage auferstehen" (Mt. 16,21))? Genaue Bedeutungen von "drei" oder "Tagen" helfen nicht, den scheinbaren Widerspruch zu erklären. +Wir benötigen einen geschichtlichen Leckerbissen: Die Juden zählten jeden Teil eines Tages als vollen Tag, so wie wir Eimer Wasser zählen würden (wenn wir sechs und einen halben Eimer Wasser hätten, würden wir sagen dass es sieben Eimer Wasser sind sogar wenn der letzte nur teilweise voll ist). Dies istdie jüdische Art. Jeder Teil eines Tages wurde als voller Tag gezählt, Tage begannen um 18h und endeten um 6h. Freitag von 15h bis 18h = 1. Tag. Freitag von 18h bis Samstag 18h = 2. Tag. Samstag 18.00h bis Sonntag vielleicht 5h = 3. Tag. Die Auslegung im kulturellen Kontext bringt uns aus den Schwierigkeiten heraus. +
+ +
Beispiel 3B1. Mose 15,7-21. Der historische Zusammenhang ist, dass das teilen von Tieren in zwei Teile und dass nachfolgende Gehen zwischen ihnen der normale Weg zu Abrahams Zeit war, einen Vetrag zu schließen. Beide Vetragspartner gingen dazwischen hindurch, den Pfand nehmend, dass Zerstückelung auf sie kommen solle, wenn sie nicht ihren Teil des Vertrages halten. Aber in diesem Falle geht nur Gott hindurch, was dies zu einem einseitigen Vetrag macht. +
+
+ +
Regel 4 - Auslegung in Bezug auf der normalen Benutzung der Worte in der Sprache +Lassen Sie wörtliche Sprache wörtlich sein und bildliche Sprache bildlich sein. Und achten Sie auf Idiome, die eine besondere Bedeutung haben. + +
Beispiel 4Aböses Auge in Mt.6,23. +Regel 1 - Definition von böse und Auge - hilft hier nicht. Regel 2, Zusammenhang: Dies scheint uns nur noch mehr zu verwirren. Es scheint nicht mit dem zu passen, was davor und danach steht! Dies sollte uns zeigen, dass wir es nicht richtig verstehen. +Was wir hier haben ist ein hebräisches Idiom, böses Auge. Lasst uns andere Benutzungen dieses Idioms nachschlagen: Mt. 20,15 Oder habe ich nicht die Macht zu tun, was ich will, mit dem was mein ist? Siehst du scheel [wörtl. böse] drein, weil ich so gütig [wörtl. gut] bin?. Wir sehen, dass ein Böses Auge zu haben ein Idiom für geizig oder neidisch sein ist.Jetzt gehen Sie zurück zu Mt. 6 und sehen Sie, wie dieses Verständnis so perfekt in den Zusammenhang passt. + +
Beispiel 4B +Jesaja 59,1 [...] des Herrn Arm ist nicht zu kurz Deut.33:27 unter den ewigen Armen. Verweise auf Körperteile von Gott werden von den Mormonen [Anm. des Übers.: im eng. "Latter-Day Saints"] um nachzuweisen, dass Gott einst ein Mann wie wir war. Nachdem sie die Menschen davon überzeugt haben, beginnen sie weiter zu lehren, dass wir Gott werden können wie er es tat. Auf einem Vortrag den Walter Martin (Autor von Kingdom of the Cults) gab, forderte eine Gruppe von Mormonenältesten ihn mit einer Versaufzählung wie diesen heraus. Dr. Martin forderte die Mormonen dann heraus, eine weitere Stelle zu lesen: Psalm 91,4 Er wird dich mit seinen Fittichen decken, und Zuflucht wirst du haben unter seinen Flügeln.... W.M. folgerte "Mit den selben Regeln der Auslegung, mit denen sie gerade festgestellt haben, dass Gott ein Mann ist, haben sie gerade festgestellt, dass Gott ein Vogel ist." Die Mormonen mussten lachen, als sie die Lächerlichkeit ihrer Position realisierten. +
+
+
+
Regel 5 - Verstehen des Zwecks einer Parabeln und des Unterschiedes zwischen einer Parabel und einer Allegorie +Eine Allegorie ist: EINE GESCHICHTE; IN DER JEDES ELEMENT EINE BEDEUTUNG HAT +Jede Parabel ist eine Allegorie, whar oder falsch? + +Einige Gleichnisse sind Allegorien, zum Beispiel ist das Gleichnis des Sähmanns eine Allegorie. Der Samen ist das Wort Gottes, die Dornen sind Sorgen und Gier, usw. Die meisten Gleichnisse sind keine Allegorien, sondern einfache Geschichten, um einen bestimmten Punkt zu verdeutlichen. Es ist gefährlich unsere Lehren von Gleichnissen zu gewinnen; sie können so gedreht werden, alle Dinge auszusagen. Wir müssen unsere Lehre von klaren Schriftstellen bekommen, die es auslegen; wenn ein Gleichnis dies zusätzlich verdeutlicht ist es hilfreich. + +
Beispiel 5A +Das Gleichnis der Witwe mit dem ungerechten Richter in Lukas 18,1-8. Diese Geschichte verdeutlicht eine Lektion: Mut im Gebet. [Anm. d. Üb.: im Engl. "boldnessin prayer"]. Wenn wir das Ganze in eine Allegorie verwandeln, was haben wir dann? +Alle Arten von Gewalt geschehen in der Bedeutung: Gott ist widerwillig die Rechte der Witwen zu schützen, Gebete "ärgern" Ihn, usw.
+ +
Beispiel 5B +Das Gleichniss der unehrlichen Verwalters in Lukas 16,1-9. Was ist der Knackpunkt des Gleichnisses? Ist es eine Allegorie? +Der Verwalter wird nur für eine Sache gelobt, seine Schlauheit in der Benutzung von Dingen, die er vorbereiten muss für eine Zeit, in der er sie nicht haben würde. Aber er wird nicht für sein unethisches Verhalten gelobt, nämlich seinen Herren zu hintergehen. +
+ +
+
+ diff --git a/bibletime-doc/docs/de/howto/unicode/index.docbook b/bibletime-doc/docs/de/howto/unicode/index.docbook new file mode 100644 index 0000000..b60c87d --- /dev/null +++ b/bibletime-doc/docs/de/howto/unicode/index.docbook @@ -0,0 +1,126 @@ + +Bibletime'> + + + + + + + + + + +]> + + + + +Das Biblestudy HowTo + + + Bob Harman + + +ROLES_OF_TRANSLATORS + + +20012002 +BibleTimeinfo@bibletime.de + +20012002 +Bob Harman + + + This the copyright of this text is held by the author Bob Harman. The text was adapted for publication with Bibletime by Fred Saalbach. + + Non exclusive serial rights for this distribution of this document with the Bibletime Software have been made. Redistribution as part of the Bibletime software without modification and limited reproduction as provided by the "fair use" provisions of the US copyright code are also permitted. + + For questions regarding the use of this material contact Bob Harman c/o New Covenant Church 1079 Big Bethel Rd. Hampton VA 23666 USA N_Cov_Church@compuserve.com + +Anm. des Übersetzers: Der deutsche Text der Bibelstellen ist der deutschen revidierten Lutherbibel von 1984 entnommen. Ich übernehme keinerlei Garantie für die Übersetzung, weder für falsche Wiedergabe noch für unwörtliche und sinnverfälschende Übersetzung. Ich habe mit bestem Wissen und Können übersetzt. Da ich jedoch kein Übersetzer bin, können sich Fehler eingeschlichen sein. Die Originalfassung wird in Englisch mit BibleTime mitgeliefert. + + + +10/23/2001 +1.01.00 + + + +Zusammenfassung + Die Anleitung zum Bibelstudium ist ein Handbuch zum Studieren der Bibel. +Bibletime Anleitung. + + + +Bibel +Studieren +Anleitung + + + + +&how2-chap1; +&how2-chap2; +&how2-chap3; + + + + + + + + + + + + + + + + diff --git a/bibletime-doc/docs/de/install/Makefile.am b/bibletime-doc/docs/de/install/Makefile.am new file mode 100644 index 0000000..98eb499 --- /dev/null +++ b/bibletime-doc/docs/de/install/Makefile.am @@ -0,0 +1,39 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +po-files: + for f in `ls ../../en/install/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/install\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + + +unicode-files: + for f in `ls ../../en/install/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/install\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/install\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/de/install/Makefile.in b/bibletime-doc/docs/de/install/Makefile.in new file mode 100644 index 0000000..818b547 --- /dev/null +++ b/bibletime-doc/docs/de/install/Makefile.in @@ -0,0 +1,495 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/install + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/install/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +po-files: + for f in `ls ../../en/install/pot/*.pot`; do \ + pofile=`echo $$f | sed s/\.pot$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/install\/pot\/"//`; \ + if test ! -e po/$$pofile; then touch po/$$pofile; fi; \ + echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \ + msgmerge -o po/$$pofile.new po/$$pofile $$f; \ + if diff po/$$pofile po/$$pofile.new > /dev/null; then \ + rm po/$$pofile.new; \ + else \ + mv po/$$pofile.new po/$$pofile; \ + fi; \ + done; + +unicode-files: + for f in `ls ../../en/install/unicode/*.docbook`; do \ + pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \ + pofile=`echo $$pofile | sed s/"..\/..\/en\/install\/unicode\/"//`; \ + newfile=`echo $$f | sed s/"..\/..\/en\/install\/unicode\/"//`; \ + echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \ + po2xml $$f po/$$pofile > unicode/$$newfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/install/html/Makefile.am b/bibletime-doc/docs/de/install/html/Makefile.am new file mode 100644 index 0000000..1df3c79 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = instmgr.png + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in instmgr.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in instmgr.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; diff --git a/bibletime-doc/docs/de/install/html/Makefile.in b/bibletime-doc/docs/de/install/html/Makefile.in new file mode 100644 index 0000000..e11fce0 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/Makefile.in @@ -0,0 +1,390 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = instmgr.png +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=inst-user-source.html inst-preq.html instmgr-load.html installmgr.html inst-user.html inst-bin.html inst-user-troubleshooting.html installmgr-install.html instmgr-rep.html index.html inst-sources.html instmgr-cfg.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/install/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/install/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in instmgr.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in instmgr.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/install/html/index.html b/bibletime-doc/docs/de/install/html/index.html new file mode 100644 index 0000000..7a46b7b --- /dev/null +++ b/bibletime-doc/docs/de/install/html/index.html @@ -0,0 +1 @@ +BibleTime Installationsanleitung

BibleTime Installationsanleitung

BibleTime Installationsanleitung

Joachim Ansorg

Fred Saalbach

Jeffrey Hoyt

Revision 1.01.00

Die BibleTime Installationanleitung ist ein Teil von BibleTime.

BibleTime ist freie Software; sie können es vertreiben und/oder verändern, entsprechend den Bestimmungen der GNU General Public License, die von der Free Software Foundation publiziert wird; entweder Version 2 der Lizenz, oder (je nach Wunsch) jede spätere Version.

Dieses Programm wird vertrieben in der Hoffnung, dass es hilfreich ist; jedoch OHNE JEDE GARATIE. Lesen Sie die GNU General Public License für weitere Details.

Sie sollten eine Kopie der GNU General Public License mit diesem Programm erhalten haben. Wenn nicht, dann schreiben sie an die Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

BibleTime ist ein Programm für das Bibelstudium.


KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-bin.html b/bibletime-doc/docs/de/install/html/inst-bin.html new file mode 100644 index 0000000..d15e533 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-bin.html @@ -0,0 +1 @@ +Chapter 1. BibleTime Programmdateien

BibleTime Programmdateien

Chapter 1. BibleTime Programmdateien

Programmdateien werden in den folgenden Formaten zur Verfügung gestellt.

Table 1.1. BibleTime Distributionsformate

FormatnameBeschreibung
RPM-Pakete. Besuchen Sie die Sourceforge BibleTime Homepage für die unterstützte Distributionen. RPM-Pakete werden mit dem entsprechenden Paketmanager installiert. RPM-Installationsanweisungen befinden sich hier.
Quellcode Der Quellcode kann auf jeder Distribution installiert werden, die die Installationsvoraussetzungen erfüllt. Der Quellcode sollte auch auf Nicht-Intel™-Plattformen und den meisten UNIX®-Plattformen kompilierbar sein, die die Installationsvoraussetzungen erfüllen. Anweisungen für die Installation vom Quellcode aus befinden sich hier.

Sprachmodule, die das BibleTime Handbuch, Bible Study HowTo, Installationsanweisungen und den Hilfedialog enthalten, werden in separaten RPM-Paketen bereitgestellt, ebenso als Tarball-Quellen. Die Sprachmodule enthalten die Dokumente in HTML und XML™ Docbook-Format, sodass die ohne das normale BibleTime-Paket angesehen werden können.

Sprachmodule werden in der selben Art und Weise wie das Programmmodul installiert.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-preq.html b/bibletime-doc/docs/de/install/html/inst-preq.html new file mode 100644 index 0000000..e81a52d --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-preq.html @@ -0,0 +1 @@ +Chapter 2. BibleTime Systemanforderungen

BibleTime Systemanforderungen

Chapter 2. BibleTime Systemanforderungen

Anforderungen für BibleTime 1.1

Alle benötigten Pakete, um BibleTime zu übersetzen, sind in den meisten Linux® Distributionen enthalten. Es ist ebenfalls möglich, BibleTime auf den meisten anderen UNIX® Distributionen zu übersetzen.Wenn Sie Übersetzungsfehler erhalten lesen sie die Meldungen, diese sollten sie zu den benötigten Paketen führen, die sie wahrscheinlich auf den Installations CDs finden werden.

Die folgende Tabelle enthält die Mindestanforderungen, damit das BibleTime Binärprogramm läuft oder damit die Quellcode Version übersetzt werden kann.

Table 2.1. Pakete, die zur Installation von BibleTime 1.1 benötigt werden

PaketOrt
Qt™ 2.2.x http://www.trolltech.com
KDE 2.x (auf jeden Fall die Bibliotheken) http://www.kde.org
Sword 1.5.3 ftp://ftp.crosswire/pub/sword/source
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-sources.html b/bibletime-doc/docs/de/install/html/inst-sources.html new file mode 100644 index 0000000..d13eb1d --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-sources.html @@ -0,0 +1,44 @@ +Chapter 3. Installation der BibleTime Quellen

Installation der BibleTime Quellen

Chapter 3. Installation der BibleTime Quellen

uDieses Kapitel beschreibt, wie der Quellcode übersetzt wird. Diese Schritte können sowohl auf die Entwicklungsversion als auch auf die herausgegebenen Version von BibleTime und Sword angewandt werden.

Installation von Sword und der Sword Module

Sword und die Sword Module sind die Textbibliothek für BibleTime. Bitte lesen sie die Download Seite für weitere Informationen über das Herunterladen von BibleTime.

Lesen sie die Anforderungen Seite um Sword zu bekommen. Beachten sie die Seitenlinks um die Sword Module zu bekommen.

Installation von SWORD

Diese Seite benutzt Sword 1.5.1a. Für andere Versionen von Sword können die Namen abweichen.

Zuerst müssen sie die heruntergeladene .tar.gz Datei in ein vorübergehendes Verzeichnis entpacken (falls sie die CVS version benutzen, ist der Quellcode bereits entpackt, als lassen Sie diesen Schritt aus). Machen sie in etwa folgendes:

+mkdir /tmp
+cd /tmp
+tar -xzf sword-1.5.1a.tar.gz
+cd /tmp/sword-1.5.1a
+

(die Tar-Datei ist in ein Verzeichnis entpackt worden, dass sword-1.5.1a oder ähnlich heisst)

Bevor Sie versuchen, Sword zu übersetzen, müssen Sie unter Umständen Makefile.cfg anpassen (sie liegt in der obersten Ebene des entpackten Quellcodes). Der anpassbare Abschnitt von Makefile.cfg ist gekennzeichnet. Versuchen Sie nicht, Dinge in der Datei zu ändern, die außerhalb des mit ##### Customizable stuff. Set it how you like it ##### Bereiches liegen, außer wenn Sie wirklich wissen, was Sie tun.

Für viele Installation werden die Voreinstellungen funktionieren. Wenn diese nicht funktionieren, können Einstellungen gesetzt werden.

Table 3.1. Sword Makefile.cfg Einstellungen

EinstellungBeschreibung
# compilerWenn sie gcc haben, ändern Sie dies nicht. Ansonsten geben sie den von ihnen benutzen Compiler ein.
# shared library-Setzen Sie dies auf 'yes'. Dies bewirkt, dass die dynamische Bibliothek libsword.so erzeugt wird. Es muss noch ein Eintrag zur Datei /etc/ld.so.conf hinzugefügt werdem der auf libsword.so zeigt. /usr/local/sword/lib ist typisch. Die dynamische Bibliothek ist notwendig, damit BibleTime funktioniert, aber Sword wird auch ohne Fehler übersetzt werden, wenn sie dies nicht setzen. Seien sie hier vorsichtig.
# VCL library-Benutzen sie die Voreinstellung 'no', außer wenn Sie den Sword Installationsmanager benutzen. In diesem Falle setzen sie dies auf 'yes'.
# Debugging options etc...Die Voreinstellungen sollten funktionieren.
# endian, etc. support for other hardwareBenutzen Sie die Voreinstellung, wenn Sie auf einem Intel übersetzen. Wenn Sie andere Hardware benutzen, wählen Sie den richtigen Eintrag.
# zLib supportVerwenden Sie die Voreinstellung 'yes'
# pathsDie Voreinstellungen sollten für die meisten Distributionen funktionieren, ändern Sie dies nicht, außer wenn Sie wissen, was Sie machen.

Nun beginnen Sie die Übersetzung.

+make
+su
+make install
+make configure
+

Im Falle daß Befehl Reports einen Fehler auf Beendigung machen Sie, zeigt sie vermutlich an, daß Sie ein Paket vermissen. Z.B.:

+bash-2.03# make
+make just-pre nodeps=yes
+make[1]: Entering directory `/bible/sword-1.5.1a'
+make -C src just-pre
+.
+.
+.
+make[1]: Entering directory `/bible/sword-1.5.1a/include'
+make[1]: Nothing to be done for `just-targets'.
+make[1]: Leaving directory `/bible/sword-1.5.1a/include'
+make -C apps/X11/VCL just-targets
+make[1]: Entering directory `/bible/sword-1.5.1a/apps/X11/VCL'
+gcc -I../../../include/ -D_GNU_SOURCE -I. `gtk-config --cflags` -static -pipe -Wall -Wno-format
+-fomit-frame-pointer -ggdb -O0 -m486 -c -o TWinControl.o TWinControl.cpp
+/bin/sh: gtk-config: command not found 
+In file included from TWinControl.cpp:1:
+TWinControl.h:6: gtk/gtkwidget.h: No such file or directory
+TWinControl.cpp:3: gtk/gtkwidget.h: No such file or directory 
+In file included from TWinControl.cpp:1:
+TWinControl.h:281: syntax error before `*'
+TWinControl.h:284: parse error before `*'
+TWinControl.cpp:10: parse error before `*'
+make[1]: *** [TWinControl.o] Error 1
+make[1]: Leaving directory `/bible/sword-1.5.1a/apps/X11/VCL'
+make: *** [apps/X11/VCL/targets] Error 2
+bash-2.03#
+

Die kursiven Zeilen oben zeigen, dass eine GTK-Anwendung fehlte. Eine Untersuchung der vorhandenen Pakete zeigt, dass eines der mit SuSE gelieferten Pakete gtkdev ist. Es stellt sich heraus, dass dies die Anwendung ist, die erforderlich ist, damit make ohne Fehler durchläuft. Oft fehlende Pakete können auf den Installations CDs oder auf der Internet Seite ihres Distributors gefunden werden. Sobald make ohne Fehler durchläuft, starten Sie make install. Wenn es immer noch nicht klappt, öffnen Sie die Datei Makefile.cfg im obersten Verzeichnis des Sword Quellcodes und ändern Sie die Zeile buildvcl := yes zu buildvcl : = no und probieren Sie es erneut.

Installation der Module

Sword unterstützt zur Zeit 3 Arten von Modulen: Bibeln, Lexika und Kommentare. Damit Sword und BibleTime nützlich sind, sollten diese Module installiert sein.

Sword Module können entweder per Hand oder mit dem Sword Installmgr installiert werden.Sword Installmgr wird mit dem Sword Paket zur Verfügung gestellt.Sword Installmgr kann im Abschnitt Wie man Sword Installmgr benutzt und installiert oder im Sword Quellcode in /sword/apps/X11/InstallMgr/INSTALL gefunden werden.

Wählen Sie ein Sword Verzeichnis

Sword unterstützt zur Zeit 3 Arten von Modulen: Bibeln, Lexika und Kommentare. Sie müssen die Dateien eines Modules in ein eigenes Verzeichnis installieren. Sie müssen entscheiden, welches Verzeichnis ihr Sword Verzeichnis sein soll.Wenn Sie die Bibliothek und die Include Dateien in ein gesondertes Verzeichnis installiert haben, benutzen Sie dieses als ihr Sword Verzeichnis (z.B. /usr/local/sword/). Wenn sie die Bibliothek und die Include Dateien an einen bekannten Ort wie/usr/local/ installiert haben, wählen Sie bitte einen anderen Ort für ihr Sword Verzeichnis aus.

Entpacken Sie das heruntergeladene Paket

Als erstes müssen die das heruntergeladene Paket entpacken. Auf der Download-Seite von Sword können Sie wählen, ob Sie ein Windows® oder ein RAW Paket haben möchten. Wenn Sie einen "Linux® only" PC haben, wählen sie die RAW Variante. Aber falls Sie aus Versehen das selbstentpackende Windows® Programm heruntergeladen haben, versuchen Sie WINE zu benutzen, um die Dateien zu extrahieren.Unter Umständen müssen die die Datei_INSTALL.1 nach _install.1 umbenennen, um das Setup zum Laufen zu bekommen.

Module einbinden

Legen Sie das Verzeichnis mods.d innerhalb ihres Sword Verzeichnisses an. Bitte kopieren SIe die Datei [Modulname].conf in das mods.d Verzeichnis. Die .conf Datei ist normalerweise in den entpackten Moduldateien enthalten. Jetzt verschieben Sie das komplette Verzeichnis /modules, welches die entpackten Moduldateien enthält, in das Sword Verzeichnis. Im Beispiel ist /usr/local/sword/share das Sword Verzeichnis.

Die Verzeichnisstruktur sieht folgendermaßen aus:

+/usr/local/sword/share/ -|- mods.d/ -|- module_1_name.conf
+                         |           |- module_2_name.conf
+                         |
+                         |- texts/rawtext/ -|-module_1_name/files
+                                            |-module_2_name/files
+
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-user-source.html b/bibletime-doc/docs/de/install/html/inst-user-source.html new file mode 100644 index 0000000..49f5772 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-user-source.html @@ -0,0 +1,8 @@ +Quellcode

Quellcode

Quellcode

Quellcodepakete müssen entpackt werden (Archiver or similar). Versuchen Sie dann:

+export QTDIR=/usr/lib
+export KDEDIR=/usr
+export PATH=$KDEDIR/bin:$PATH
+./configure				# Makefiles erzeugen
+make					# BibleTime kompilieren
+make install				# BibleTime installieren
+
QTDIR ist das Verzeichnis, welches Qt™ 2 enthält. KDEDIR ist der Ordner, der KDE enthält. Die angegebenen Orte treffen auf Mandrake™ zu. Ihre Distribution benötigt vielleicht andere Werte.

Zusätzlicher Informationen können im Quellcode in der Datei bibletime/INSTALL gefunden werden.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-user-troubleshooting.html b/bibletime-doc/docs/de/install/html/inst-user-troubleshooting.html new file mode 100644 index 0000000..0eed100 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-user-troubleshooting.html @@ -0,0 +1 @@ +Problembehebung

Problembehebung

Problembehebung

www.bibletime.de hat alle Antworten. Bitte schauen Sie dort nach... :)

Vergessen Sie nicht , das FAQ und die Installationsanweisungen auf www.bibletime.de zu lesen. Falls Sie den Quellcode heruntergeladen haben, lesen Sie bitte auch die im Quellcode enthaltenen Dateien README und INSTALL.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/inst-user.html b/bibletime-doc/docs/de/install/html/inst-user.html new file mode 100644 index 0000000..5362839 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/inst-user.html @@ -0,0 +1 @@ +Chapter 4. Installation von BibleTime

Installation von BibleTime

Chapter 4. Installation von BibleTime

RPM Installation

Wenn sie einen BibleTime RPM installieren, öffnen Sie einfach ihren Paketmanager (rpm, KPackage und andere) und installieren Sie in der gewohnten Art und Weise.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/installmgr-install.html b/bibletime-doc/docs/de/install/html/installmgr-install.html new file mode 100644 index 0000000..165a183 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/installmgr-install.html @@ -0,0 +1,7 @@ +Sword Installmgr

Sword Installmgr

Sword Installmgr

Um den Sword Installmgr zu kompilieren, muss Sword bereits kompiliert sein. Siehe auch die Installationsanweisungen für Sword.

Finden Sie die Datei libsword.so, Sword hat sie wahrscheinlich in /usr/local/sword/lib installiert, außer Sie haben die Installation angepaßt.

Damit Sword Installmgr (und ebenso BibleTime) diese shared library finden kann, öffnen Sie einen Texteditor und fügen Sie /usr/local/sword/lib am Ende von /etc/ld.so.conf an.

Nun sind Sie bereit, den Sword Installmgr zu kompilieren.

Wechseln Sie in ihren Sword-Quelltextordner, und öffnen Sie das Verzeichnis .../sword/apps/X11/InstallMgr. Führen Sie folgendes in einer Shell aus:

+	ldconfig
+	./configure
+	make
+	su
+	make install
+	

Jetzt können sie in einer Root-Shell (su) den Installmgr ausführen, indem Sie /usr/local/bin/installmgr aufrufen.

Wenn das funktioniert hat, dann gibt es zwei Möglichkeiten, Textmodulemodule in Sword zu installieren.

  • Options -> Manage remote sources -- Über Internet mit Crosswire verbinden, und Sword Dokumente und Module vom Hauptarchiv herunterladen. Dieses Feature wurde noch nicht nach Linux® und UNIX® portiert.

  • Options -> Local Path -- Wenn Sie entpackte Quellen haben, dann stellen Sie diesen Wert auf ihr lokales Verzeichnis ein. Es kann sich um eine lokale Festplatte oder ein Netzlaufwerk handeln, oder auch die Sword CD, die auf einem lokalen oder entfernten CD ROM Laufwerk vorhanden ist. Alle verfügbaren Module werden angezeigt, und können nun installiert werden.

Sword CD's können vom BibleTime Team bezogen werden

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/installmgr.html b/bibletime-doc/docs/de/install/html/installmgr.html new file mode 100644 index 0000000..749293e --- /dev/null +++ b/bibletime-doc/docs/de/install/html/installmgr.html @@ -0,0 +1 @@ +Chapter 5. Installations- und Bedienungsanweisung für den Sword Installmgr

Installations- und Bedienungsanweisung für den Sword Installmgr

Chapter 5. Installations- und Bedienungsanweisung für den Sword Installmgr

Sword Installmgr wird nicht mit dem BibleTime-RPM vertrieben. Sie müssen den Quellcode von Crosswire Bible Society herunterladen. Eine vorkompilierte Version des Sword Installmgr ist auf der Sword CD enthalten, die vom BibleTime team bezogen werden kann.

Voraussetzungen des Sword Installmgr

Alle Pakete, die vom Sword Installmgr benötigt werden, sind in den Haupt-Linux® Distributionen enthalten. Es ist auch möglich, den Sword Installmgr auf den meisten UNIX®-Distributionen zu kompilieren. Wenn Sie auf Kompiler-Fehlermeldungen stoßen, lesen Sie bitte die Meldungen; diese sollten sie auf die fehlenden Pakete hinweisen.

Die folgende Tabelle enthält die Minimalvoraussetzungen zum Lauf der Sword Installmgr Binaries, oder zum Kompilieren der Quelltexte.

Table 5.1. Pakete, die für den Sword Installmgr benötigt werden

PaketOrt
Sword Benutzen Sie die Version, die in Ihrer Kopie von Sword enthalten ist. Muss (in der Datei ~/sword/Makefile.cfg) mit den VCL libraries = yes konfiguriert werden.
GTK Wenn Sie den Sword Installmgr kompilieren, sollte jede Version von GTK genügen.
KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/instmgr-cfg.html b/bibletime-doc/docs/de/install/html/instmgr-cfg.html new file mode 100644 index 0000000..b83a2d9 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/instmgr-cfg.html @@ -0,0 +1 @@ +Die Sword Konfigurationsdatei einrichten.

Die Sword Konfigurationsdatei einrichten.

Die Sword Konfigurationsdatei einrichten.

Anweisungen für die Sword Konfiguration befinden sich im Abschnitt "Die Sword Konfigurationsdatei" , die die manuelle Modulinstallation behandelt.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/instmgr-load.html b/bibletime-doc/docs/de/install/html/instmgr-load.html new file mode 100644 index 0000000..948090b --- /dev/null +++ b/bibletime-doc/docs/de/install/html/instmgr-load.html @@ -0,0 +1,6 @@ +Sword Installmgr benutzen, um Sword-Module zu installieren.

Sword Installmgr benutzen, um Sword-Module zu installieren.

Sword Installmgr benutzen, um Sword-Module zu installieren.

Sie müssen Sword Installmgr als Root starten, um Module installieren zu können. Beginnen Sie mit folgenden Kommandos:

+	[me@localhost user]$ su
+	Password:
+	[root@localhost user]# /usr/local/bin/installmgr
+	

Sie sehen nun das Installmgr-Fenster. Sie müssen nun options +>local path auf Ihr lokales Verzeichnis einstellen.

Jetzt werden die verfügbaren Module auf der linken Seite angezeigt, und die installierten auf der rechten Seite. Sie müssen nur Module auf der linken Seite auswählen, und Installieren anklicken, um sie für Sword und BibleTime verfügbar zu machen.

Sword Installmgr Screenshot

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/instmgr-rep.html b/bibletime-doc/docs/de/install/html/instmgr-rep.html new file mode 100644 index 0000000..d94b780 --- /dev/null +++ b/bibletime-doc/docs/de/install/html/instmgr-rep.html @@ -0,0 +1 @@ +Vorbereitung Ihres Archives

Vorbereitung Ihres Archives

Vorbereitung Ihres Archives

Wenn Sie die Sword CD haben, können Sie diesen Schritt überspringen. Die Texte sind auf der CD unkomprimiert gespeichert, und können vom Installmgr direkt verwendet werden.

Laden Sie Module von Crosswire Bible Society herunter (wählen Sie die normal komprimierten Module (modulename.zip), nicht die ausführbaren Modularchive für Windows (modulename.exe).

Erstellen Sie ein Verzeichnis für Ihr Modularchiv, z.B. $HOME/sword_modules.

Öffnen Sie ein Programm, das .zip Dateien entpacken kann. Z.B. gnozup oder archiver. Auch Kommandozeilenprogramme können verwendet werden; um herauszufinden, welche auf Ihrem System installiert sind, können Sieman -k zip ausführen

Entpacken Sie die MOdule in Ihr $HOME/sword_modules Verzeichnis. Alle Module werden in die korrekten Unterverzeichnisse entpackt. Wenn Sie später Module hinzufügen möchten, dann entpacken Sie diese ebenfalls in $HOME/sword_modules.

KDE Logo
\ No newline at end of file diff --git a/bibletime-doc/docs/de/install/html/instmgr.png b/bibletime-doc/docs/de/install/html/instmgr.png new file mode 100644 index 0000000000000000000000000000000000000000..11c577aa0be0c8a5b3c111edccfa0ccc67171679 GIT binary patch literal 22187 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 H+l2iKQZ-Y~ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/install/unicode/Makefile.am b/bibletime-doc/docs/de/install/unicode/Makefile.am new file mode 100644 index 0000000..5afbaf4 --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; diff --git a/bibletime-doc/docs/de/install/unicode/Makefile.in b/bibletime-doc/docs/de/install/unicode/Makefile.in new file mode 100644 index 0000000..6ee312f --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/Makefile.in @@ -0,0 +1,390 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=index_cache.gz + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/de/install/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/de/install/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/de/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime; + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/de/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/de/bibletime + +uninstall-local: + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/de/bibletime/install/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/de/install/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/de/install/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/de/install/unicode/index.docbook b/bibletime-doc/docs/de/install/unicode/index.docbook new file mode 100644 index 0000000..bce6cc0 --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/index.docbook @@ -0,0 +1,156 @@ + +BibleTime'> + + + + + + + BibleTime'> + Sword'> + Sword Installmgr'> + Crosswire Bible Society'> + + + + + + + + +]> + + + + + + + + + +BibleTime Installationsanleitung + + + Joachim Ansorg + Fred Saalbach + Jeffrey Hoyt + + + + + +1999 +2000 +2001 +Das BibleTime Team, info@bibletime.de + + + + +Die BibleTime Installationanleitung ist ein Teil von BibleTime. + + BibleTime ist freie Software; sie können es vertreiben und/oder verändern, entsprechend den Bestimmungen der GNU General Public License, die von der Free Software Foundation publiziert wird; entweder Version 2 der Lizenz, oder (je nach Wunsch) jede spätere Version. + + Dieses Programm wird vertrieben in der Hoffnung, dass es hilfreich ist; jedoch OHNE JEDE GARATIE. Lesen Sie die GNU General Public License für weitere Details. + + Sie sollten eine Kopie der GNU General Public License mit diesem Programm erhalten haben. Wenn nicht, dann schreiben sie an die Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + + +10/23/2001 +1.01.00 + + + &bibletime; ist ein Programm für das Bibelstudium. + + + +KDE +bibletime +BibleTime +sword +crosswire +Hilfedialog + + + + +&instchap1; +&instchap2; +&instchap3; +&instchap4; +&appa; + + + + + + + + + + + + + + + + + diff --git a/bibletime-doc/docs/de/install/unicode/index_cache.gz b/bibletime-doc/docs/de/install/unicode/index_cache.gz new file mode 100644 index 0000000000000000000000000000000000000000..582a7cf8c8482c24e813a7b001398499c6bfb83a GIT binary patch literal 9763 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/de/install/unicode/inst-bin.docbook b/bibletime-doc/docs/de/install/unicode/inst-bin.docbook new file mode 100644 index 0000000..584b8c2 --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/inst-bin.docbook @@ -0,0 +1,50 @@ + +&bibletime; Programmdateien +Programmdateien werden in den folgenden Formaten zur Verfügung gestellt. + + + &bibletime; Distributionsformate + + Formatname Beschreibung + RPM-Pakete. Besuchen Sie die Sourceforge &bibletime; Homepage für die unterstützte Distributionen. RPM-Pakete werden mit dem entsprechenden Paketmanager installiert. RPM-Installationsanweisungen befinden sich hier. Quellcode Der Quellcode kann auf jeder Distribution installiert werden, die die Installationsvoraussetzungen erfüllt. Der Quellcode sollte auch auf Nicht-Intel-Plattformen und den meisten &UNIX;-Plattformen kompilierbar sein, die die Installationsvoraussetzungen erfüllen. Anweisungen für die Installation vom Quellcode aus befinden sich hier. + +
+ Sprachmodule, die das &bibletime; Handbuch, Bible Study HowTo, Installationsanweisungen und den Hilfedialog enthalten, werden in separaten RPM-Paketen bereitgestellt, ebenso als Tarball-Quellen. Die Sprachmodule enthalten die Dokumente in HTML und &XML; Docbook-Format, sodass die ohne das normale &bibletime;-Paket angesehen werden können. +Sprachmodule werden in der selben Art und Weise wie das Programmmodul installiert. + +
+ + diff --git a/bibletime-doc/docs/de/install/unicode/inst-installmgr.docbook b/bibletime-doc/docs/de/install/unicode/inst-installmgr.docbook new file mode 100644 index 0000000..ddd1dd1 --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/inst-installmgr.docbook @@ -0,0 +1,182 @@ + +Installations- und Bedienungsanweisung für den Sword Installmgr +&swordInstmgr; wird nicht mit dem &bibletime;-RPM vertrieben. Sie müssen den Quellcode von &crosswire; herunterladen. Eine vorkompilierte Version des &swordInstmgr; ist auf der &sword; CD enthalten, die vom BibleTime team bezogen werden kann. +
+ Voraussetzungen des &swordInstmgr; + + Alle Pakete, die vom &swordInstmgr; benötigt werden, sind in den Haupt-&Linux; Distributionen enthalten. Es ist auch möglich, den &swordInstmgr; auf den meisten &UNIX;-Distributionen zu kompilieren. Wenn Sie auf Kompiler-Fehlermeldungen stoßen, lesen Sie bitte die Meldungen; diese sollten sie auf die fehlenden Pakete hinweisen. + Die folgende Tabelle enthält die Minimalvoraussetzungen zum Lauf der &swordInstmgr; Binaries, oder zum Kompilieren der Quelltexte. + + Pakete, die für den &swordInstmgr; benötigt werden + + Paket Ort + &sword; Benutzen Sie die Version, die in Ihrer Kopie von &sword; enthalten ist. Muss (in der Datei ~/sword/Makefile.cfg) mit den VCL libraries = yes konfiguriert werden. GTK Wenn Sie den &swordInstmgr; kompilieren, sollte jede Version von GTK genügen. + +
+
+ + +
+ &swordInstmgr; + Um den &swordInstmgr; zu kompilieren, muss &sword; bereits kompiliert sein. Siehe auch die Installationsanweisungen für &sword;. + Finden Sie die Datei libsword.so, &sword; hat sie wahrscheinlich in /usr/local/sword/lib installiert, außer Sie haben die Installation angepaßt. + Damit &swordInstmgr; (und ebenso &bibletime;) diese shared library finden kann, öffnen Sie einen Texteditor und fügen Sie /usr/local/sword/lib am Ende von /etc/ld.so.conf an. + Nun sind Sie bereit, den &swordInstmgr; zu kompilieren. + Wechseln Sie in ihren &sword;-Quelltextordner, und öffnen Sie das Verzeichnis .../sword/apps/X11/InstallMgr. Führen Sie folgendes in einer Shell aus: + + ldconfig + ./configure + make + su + make install + + Jetzt können sie in einer Root-Shell (su) den Installmgr ausführen, indem Sie /usr/local/bin/installmgr aufrufen. + Wenn das funktioniert hat, dann gibt es zwei Möglichkeiten, Textmodulemodule in &sword; zu installieren. + Options -> Manage remote sources -- Über Internet mit Crosswire verbinden, und Sword Dokumente und Module vom Hauptarchiv herunterladen. Dieses Feature wurde noch nicht nach &Linux; und &UNIX; portiert. Options -> Local Path -- Wenn Sie entpackte Quellen haben, dann stellen Sie diesen Wert auf ihr lokales Verzeichnis ein. Es kann sich um eine lokale Festplatte oder ein Netzlaufwerk handeln, oder auch die &sword; CD, die auf einem lokalen oder entfernten CD ROM Laufwerk vorhanden ist. Alle verfügbaren Module werden angezeigt, und können nun installiert werden. + &sword; CD's können vom BibleTime Team bezogen werden +
+ +
+ Vorbereitung Ihres Archives + Wenn Sie die &sword; CD haben, können Sie diesen Schritt überspringen. Die Texte sind auf der CD unkomprimiert gespeichert, und können vom Installmgr direkt verwendet werden. + Laden Sie Module von &crosswire; herunter (wählen Sie die normal komprimierten Module (modulename.zip), nicht die ausführbaren Modularchive für Windows (modulename.exe). + Erstellen Sie ein Verzeichnis für Ihr Modularchiv, z.B. $HOME/sword_modules. + Öffnen Sie ein Programm, das .zip Dateien entpacken kann. Z.B. gnozup oder archiver. Auch Kommandozeilenprogramme können verwendet werden; um herauszufinden, welche auf Ihrem System installiert sind, können Sieman -k zip ausführen + Entpacken Sie die MOdule in Ihr $HOME/sword_modules Verzeichnis. Alle Module werden in die korrekten Unterverzeichnisse entpackt. Wenn Sie später Module hinzufügen möchten, dann entpacken Sie diese ebenfalls in $HOME/sword_modules. +
+ + +
+ Die &sword; Konfigurationsdatei einrichten. + Anweisungen für die &sword; Konfiguration befinden sich im Abschnitt "Die &sword; Konfigurationsdatei" , die die manuelle Modulinstallation behandelt. +
+ + +
+ &swordInstmgr; benutzen, um Sword-Module zu installieren. + Sie müssen &swordInstmgr; als Root starten, um Module installieren zu können. Beginnen Sie mit folgenden Kommandos: + + [me@localhost user]$ su + Password: + [root@localhost user]# /usr/local/bin/installmgr + + Sie sehen nun das Installmgr-Fenster. Sie müssen nun options +>local path auf Ihr lokales Verzeichnis einstellen. + Jetzt werden die verfügbaren Module auf der linken Seite angezeigt, und die installierten auf der rechten Seite. Sie müssen nur Module auf der linken Seite auswählen, und Installieren anklicken, um sie für &sword; und &bibletime; verfügbar zu machen. &swordInstmgr; Screenshot +
+
+ + + + + + + + + diff --git a/bibletime-doc/docs/de/install/unicode/inst-preq.docbook b/bibletime-doc/docs/de/install/unicode/inst-preq.docbook new file mode 100644 index 0000000..1479185 --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/inst-preq.docbook @@ -0,0 +1,58 @@ + +&bibletime; Systemanforderungen + +
+ Anforderungen für &bibletime; 1.1 + + Alle benötigten Pakete, um &bibletime; zu übersetzen, sind in den meisten &Linux; Distributionen enthalten. Es ist ebenfalls möglich, &bibletime; auf den meisten anderen &UNIX; Distributionen zu übersetzen.Wenn Sie Übersetzungsfehler erhalten lesen sie die Meldungen, diese sollten sie zu den benötigten Paketen führen, die sie wahrscheinlich auf den Installations CDs finden werden. + Die folgende Tabelle enthält die Mindestanforderungen, damit das &bibletime; Binärprogramm läuft oder damit die Quellcode Version übersetzt werden kann. + + + + Pakete, die zur Installation von &bibletime; 1.1 benötigt werden + + Paket Ort + &Qt; 2.2.x http://www.trolltech.com &kde; 2.x (auf jeden Fall die Bibliotheken) http://www.kde.org &sword; 1.5.3 ftp://ftp.crosswire/pub/sword/source + +
+
+
+ + diff --git a/bibletime-doc/docs/de/install/unicode/inst-sources.docbook b/bibletime-doc/docs/de/install/unicode/inst-sources.docbook new file mode 100644 index 0000000..b78bf4b --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/inst-sources.docbook @@ -0,0 +1,246 @@ +Installation der BibleTime Quellen + uDieses Kapitel beschreibt, wie der Quellcode übersetzt wird. Diese Schritte können sowohl auf die Entwicklungsversion als auch auf die herausgegebenen Version von &bibletime; und &sword; angewandt werden. +
Installation von &sword; und der &sword; Module + &sword; und die &sword; Module sind die Textbibliothek für BibleTime. Bitte lesen sie die Download Seite für weitere Informationen über das Herunterladen von BibleTime. + Lesen sie die Anforderungen Seite um &sword; zu bekommen. Beachten sie die Seitenlinks um die &sword; Module zu bekommen. + +
Installation von SWORD + Diese Seite benutzt &sword; 1.5.1a. Für andere Versionen von &sword; können die Namen abweichen. + + Zuerst müssen sie die heruntergeladene .tar.gz Datei in ein vorübergehendes Verzeichnis entpacken (falls sie die CVS version benutzen, ist der Quellcode bereits entpackt, als lassen Sie diesen Schritt aus). Machen sie in etwa folgendes: +mkdir /tmp +cd /tmp +tar -xzf sword-1.5.1a.tar.gz +cd /tmp/sword-1.5.1a + + + + (die Tar-Datei ist in ein Verzeichnis entpackt worden, dass sword-1.5.1a oder ähnlich heisst) + + Bevor Sie versuchen, &sword; zu übersetzen, müssen Sie unter Umständen Makefile.cfg anpassen (sie liegt in der obersten Ebene des entpackten Quellcodes). Der anpassbare Abschnitt von Makefile.cfg ist gekennzeichnet. Versuchen Sie nicht, Dinge in der Datei zu ändern, die außerhalb des mit ##### Customizable stuff. Set it how you like it ##### Bereiches liegen, außer wenn Sie wirklich wissen, was Sie tun. + Für viele Installation werden die Voreinstellungen funktionieren. Wenn diese nicht funktionieren, können Einstellungen gesetzt werden. + +Sword Makefile.cfg Einstellungen + + Einstellung Beschreibung + # compiler Wenn sie gcc haben, ändern Sie dies nicht. Ansonsten geben sie den von ihnen benutzen Compiler ein. # shared library- Setzen Sie dies auf 'yes'. Dies bewirkt, dass die dynamische Bibliothek libsword.so erzeugt wird. Es muss noch ein Eintrag zur Datei /etc/ld.so.conf hinzugefügt werdem der auf libsword.so zeigt. /usr/local/sword/lib ist typisch. Die dynamische Bibliothek ist notwendig, damit BibleTime funktioniert, aber Sword wird auch ohne Fehler übersetzt werden, wenn sie dies nicht setzen. Seien sie hier vorsichtig. # VCL library- Benutzen sie die Voreinstellung 'no', außer wenn Sie den Sword Installationsmanager benutzen. In diesem Falle setzen sie dies auf 'yes'. # Debugging options etc... Die Voreinstellungen sollten funktionieren. # endian, etc. support for other hardware Benutzen Sie die Voreinstellung, wenn Sie auf einem Intel übersetzen. Wenn Sie andere Hardware benutzen, wählen Sie den richtigen Eintrag. # zLib support Verwenden Sie die Voreinstellung 'yes' # paths Die Voreinstellungen sollten für die meisten Distributionen funktionieren, ändern Sie dies nicht, außer wenn Sie wissen, was Sie machen. + +
+ + +Nun beginnen Sie die Übersetzung. + +make +su +make install +make configure + + Im Falle daß Befehl Reports einen Fehler auf Beendigung machen Sie, zeigt sie vermutlich an, daß Sie ein Paket vermissen. Z.B.: + + +bash-2.03# make +make just-pre nodeps=yes +make[1]: Entering directory `/bible/sword-1.5.1a' +make -C src just-pre +. +. +. +make[1]: Entering directory `/bible/sword-1.5.1a/include' +make[1]: Nothing to be done for `just-targets'. +make[1]: Leaving directory `/bible/sword-1.5.1a/include' +make -C apps/X11/VCL just-targets +make[1]: Entering directory `/bible/sword-1.5.1a/apps/X11/VCL' +gcc -I../../../include/ -D_GNU_SOURCE -I. `gtk-config --cflags` -static -pipe -Wall -Wno-format +-fomit-frame-pointer -ggdb -O0 -m486 -c -o TWinControl.o TWinControl.cpp +/bin/sh: gtk-config: command not found +In file included from TWinControl.cpp:1: +TWinControl.h:6: gtk/gtkwidget.h: No such file or directory +TWinControl.cpp:3: gtk/gtkwidget.h: No such file or directory +In file included from TWinControl.cpp:1: +TWinControl.h:281: syntax error before `*' +TWinControl.h:284: parse error before `*' +TWinControl.cpp:10: parse error before `*' +make[1]: *** [TWinControl.o] Error 1 +make[1]: Leaving directory `/bible/sword-1.5.1a/apps/X11/VCL' +make: *** [apps/X11/VCL/targets] Error 2 +bash-2.03# + + +Die kursiven Zeilen oben zeigen, dass eine GTK-Anwendung fehlte. Eine Untersuchung der vorhandenen Pakete zeigt, dass eines der mit SuSE gelieferten Pakete gtkdev ist. Es stellt sich heraus, dass dies die Anwendung ist, die erforderlich ist, damit make ohne Fehler durchläuft. Oft fehlende Pakete können auf den Installations CDs oder auf der Internet Seite ihres Distributors gefunden werden. Sobald make ohne Fehler durchläuft, starten Sie make install. Wenn es immer noch nicht klappt, öffnen Sie die Datei Makefile.cfg im obersten Verzeichnis des Sword Quellcodes und ändern Sie die Zeile buildvcl := yes zu buildvcl : = no und probieren Sie es erneut. +
+ +
+Installation der Module +&sword; unterstützt zur Zeit 3 Arten von Modulen: Bibeln, Lexika und Kommentare. Damit &sword; und &bibletime; nützlich sind, sollten diese Module installiert sein. &sword; Module können entweder per Hand oder mit dem &swordInstmgr; installiert werden.&swordInstmgr; wird mit dem &sword; Paket zur Verfügung gestellt.&swordInstmgr; kann im Abschnitt Wie man &swordInstmgr; benutzt und installiert oder im &sword; Quellcode in /sword/apps/X11/InstallMgr/INSTALL gefunden werden. + +
Wählen Sie ein &sword; Verzeichnis &sword; unterstützt zur Zeit 3 Arten von Modulen: Bibeln, Lexika und Kommentare. Sie müssen die Dateien eines Modules in ein eigenes Verzeichnis installieren. Sie müssen entscheiden, welches Verzeichnis ihr &sword; Verzeichnis sein soll.Wenn Sie die Bibliothek und die Include Dateien in ein gesondertes Verzeichnis installiert haben, benutzen Sie dieses als ihr &sword; Verzeichnis (z.B. /usr/local/sword/). Wenn sie die Bibliothek und die Include Dateien an einen bekannten Ort wie/usr/local/ installiert haben, wählen Sie bitte einen anderen Ort für ihr &sword; Verzeichnis aus. +
+ + + +
Entpacken Sie das heruntergeladene Paket + Als erstes müssen die das heruntergeladene Paket entpacken. Auf der Download-Seite von &sword; können Sie wählen, ob Sie ein &Windows; oder ein RAW Paket haben möchten. Wenn Sie einen "&Linux; only" PC haben, wählen sie die RAW Variante. Aber falls Sie aus Versehen das selbstentpackende &Windows; Programm heruntergeladen haben, versuchen Sie WINE zu benutzen, um die Dateien zu extrahieren.Unter Umständen müssen die die Datei_INSTALL.1 nach _install.1 umbenennen, um das Setup zum Laufen zu bekommen. +
+
Module einbinden + Legen Sie das Verzeichnis mods.d innerhalb ihres &sword; Verzeichnisses an. Bitte kopieren SIe die Datei [Modulname].conf in das mods.d Verzeichnis. Die .conf Datei ist normalerweise in den entpackten Moduldateien enthalten. Jetzt verschieben Sie das komplette Verzeichnis /modules, welches die entpackten Moduldateien enthält, in das Sword Verzeichnis. Im Beispiel ist /usr/local/sword/share das Sword Verzeichnis. + Die Verzeichnisstruktur sieht folgendermaßen aus: + +/usr/local/sword/share/ -|- mods.d/ -|- module_1_name.conf + | |- module_2_name.conf + | + |- texts/rawtext/ -|-module_1_name/files + |-module_2_name/files + +
+ +
+
+ + + + +
+ + + + + + + diff --git a/bibletime-doc/docs/de/install/unicode/inst-user.docbook b/bibletime-doc/docs/de/install/unicode/inst-user.docbook new file mode 100644 index 0000000..474dcfe --- /dev/null +++ b/bibletime-doc/docs/de/install/unicode/inst-user.docbook @@ -0,0 +1,41 @@ +Installation von &bibletime; +
RPM Installation + Wenn sie einen &bibletime; RPM installieren, öffnen Sie einfach ihren Paketmanager (rpm, &kpackage; und andere) und installieren Sie in der gewohnten Art und Weise. +
+
Quellcode + Quellcodepakete müssen entpackt werden (Archiver or similar). Versuchen Sie dann: +export QTDIR=/usr/lib +export KDEDIR=/usr +export PATH=$KDEDIR/bin:$PATH +./configure # Makefiles erzeugen +make # BibleTime kompilieren +make install # BibleTime installieren + QTDIR ist das Verzeichnis, welches &Qt; 2 enthält. KDEDIR ist der Ordner, der &kde; enthält. Die angegebenen Orte treffen auf &Mandrake; zu. Ihre Distribution benötigt vielleicht andere Werte. + Zusätzlicher Informationen können im Quellcode in der Datei bibletime/INSTALL gefunden werden. +
+
Problembehebung + www.bibletime.de hat alle Antworten. Bitte schauen Sie dort nach... :) + Vergessen Sie nicht , das &FAQ; und die Installationsanweisungen auf www.bibletime.de zu lesen. Falls Sie den Quellcode heruntergeladen haben, lesen Sie bitte auch die im Quellcode enthaltenen Dateien README und INSTALL. +
+
+ + + diff --git a/bibletime-doc/docs/documentation-links.html b/bibletime-doc/docs/documentation-links.html new file mode 100644 index 0000000..c5f7b80 --- /dev/null +++ b/bibletime-doc/docs/documentation-links.html @@ -0,0 +1,77 @@ + + +The BibleTime documentation index + + + +

The BibleTime documentation index

+ +

The english files are up-to-date. Translations may be outdated or even unavailable.

+ +

English (en) documentation. (editing in progress) +

+ +

Czechoslovakian (cs) documentation. (not available yet) +

+ +

German (de) documentation. (not up to date) +

+ +

Spanish (es) documentation. (not available yet) +

+ +

Italian (it) documentation. (not available yet) +

+ +

Dutch (nl) documentation. (not available yet) +

+ +

Norwegian (no) documentation. (not available yet) +

+ +

Slovak (sk) documentation. (not available yet) +

+ + + + diff --git a/bibletime-doc/docs/en/Makefile.am b/bibletime-doc/docs/en/Makefile.am new file mode 100644 index 0000000..a3240f1 --- /dev/null +++ b/bibletime-doc/docs/en/Makefile.am @@ -0,0 +1,10 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = handbook helpdialog howto install + +EXTRA_DIST = tips + +rcdir = $(kde_datadir)/bibletime +rc_DATA = tips diff --git a/bibletime-doc/docs/en/Makefile.in b/bibletime-doc/docs/en/Makefile.in new file mode 100644 index 0000000..344ac00 --- /dev/null +++ b/bibletime-doc/docs/en/Makefile.in @@ -0,0 +1,490 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = handbook helpdialog howto install + +EXTRA_DIST = tips + +rcdir = $(kde_datadir)/bibletime +rc_DATA = tips +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DATA = $(rc_DATA) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +install-rcDATA: $(rc_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rcdir) + @list='$(rc_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p; \ + fi; fi; \ + done + +uninstall-rcDATA: + @$(NORMAL_UNINSTALL) + list='$(rc_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rcdir)/$$p; \ + 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: install-rcDATA +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: uninstall-rcDATA +uninstall: uninstall-recursive +all-am: Makefile $(DATA) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(rcdir) + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: uninstall-rcDATA install-rcDATA install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/handbook/Makefile.am b/bibletime-doc/docs/en/handbook/Makefile.am new file mode 100644 index 0000000..17d7a2a --- /dev/null +++ b/bibletime-doc/docs/en/handbook/Makefile.am @@ -0,0 +1,23 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/en/handbook/Makefile.in b/bibletime-doc/docs/en/handbook/Makefile.in new file mode 100644 index 0000000..e291018 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/Makefile.in @@ -0,0 +1,480 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/handbook + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/handbook/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/handbook/html/Makefile.am b/bibletime-doc/docs/en/handbook/html/Makefile.am new file mode 100644 index 0000000..88ca8e6 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; diff --git a/bibletime-doc/docs/en/handbook/html/Makefile.in b/bibletime-doc/docs/en/handbook/html/Makefile.in new file mode 100644 index 0000000..82aa287 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/Makefile.in @@ -0,0 +1,390 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=hdbk-op-module-tree-select.html hdbk-bars.html hdbk-op-search.html hdbk-bars-menubar-file.html hdbk-bars-menubar-settings.html hdbk-bars-menubar-Window.html hdbk-bars-menubar.html hdbk-config.html hdbk-config-bt-Colors.html hdbk-op-output.html hdbk-bars-menubar-mainindex.html hdbk-intro-ToDo.html hdbk-bars-toolbar-action.html hdbk-bars-menubar-view.html hdbk-config-bt-sword.html hdbk-config-bt-profiles.html hdbk-bars-menubar-Help.html hdbk-start-screen.html index.html hdbk-config-bt.html hdbk-op-MDI-Window.html hdbk-op.html hdbk-intro.html hdbk-config-bt-Accelerators.html hdbk-term.html hdbk-intro-motivation.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/handbook/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/handbook/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in hdbk-bars-toolbar-Configtoolbar.png hdbk-bars-toolbar-action-cascade-auto.png hdbk-bars-toolbar-action-cascade.png hdbk-bars-toolbar-action-contents.png hdbk-bars-toolbar-action-exit.png hdbk-bars-toolbar-action-print.png hdbk-bars-toolbar-action-reset.png hdbk-bars-toolbar-action-search.png hdbk-bars-toolbar-action-tile-auto.png hdbk-bars-toolbar-action-tile.png hdbk-bars-toolbar-close.png hdbk-conf-font-about.png hdbk-conf-optdialog-color.png hdbk-conf-optdialog-fonts.png hdbk-conf-optdialog-start.png hdbk-conf-optdialog-sword.png hdbk-config-toolbar.png hdbk-inst-sources-installmgr.png hdbk-op-change-range.png hdbk-op-crch-dia-choose.png hdbk-op-delete-verse.png hdbk-op-module-select-1.png hdbk-op-module-select-2.png hdbk-op-module-tree-1.png hdbk-op-pencil.png hdbk-op-search-dialog-searchanal.png hdbk-op-search-dialog-searchresult.png hdbk-op-search-dialog-searchtext.png hdbk-start-bticon.png hdbk-start-screen-terms.png hdbk-start-sequence-tips.png hdbk_op_module-tree-bookmark-bookmarkandfolder.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Help.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Help.html new file mode 100644 index 0000000..d9d0697 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Help.html @@ -0,0 +1,106 @@ + + +Help + + + + + + + + + + +

Help

+ +
+

+Help

+

+ +

+
+Handbook +
+

+Select Handbook to access +this document from the KDE Help Center. +

+
+Installation +
+

+Select Installation to access +the installation instructions for BibleTime from the KDE Help Center. +

+
+Biblestudy HowTo +
+

+Select Biblestudy HowTo to access +A good basic text with recommendations for studying the Bible. +

+
+What's This +
+

+ +Allows you to click on certain items for contextual help. +

+
+Bug Report +
+

+ +Send a bug report to the program's maintainers to help development. +Before sending a bug report please configure the bug report application +to use your mail program. This is done by configure +on the Submit A Bug Report dialog. +

+
+Daily Tip +
+

+Launches the tip of the day dialog.

+
+About BibleTime +
+

+ +Opens a window with general BibleTime information. +

+
+About KDE +
+

+ +Opens a window with general KDE information. +

+
+ +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Window.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Window.html new file mode 100644 index 0000000..bd11dbb --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-Window.html @@ -0,0 +1,106 @@ + + +Window + + + + + + + + + + + +

Window

+ +
+

+Window

+

+

+
+Save Profile +
+

+Saves the current configuration to +a selected profile

+
+Load Profile +
+

+Loads the contents of the named profile to +the current session of BibleTime.

+
+Configure Profile +
+

+This brings up the profiles tab of the +Options dialog. +Here you create and manage profiles

+
+Fullscreen Mode +
+

+When Fullscreen Mode is selected, BibleTime will expand +to the full size of your monitor screen. To reverse the action select +Fullscreen Modeagain.

+
+Cascade +
+

+Cascades open display windows

+
+Tile +
+

+Tiles open display windows

+
+Auto Cascade +
+

+ +Automatically cascades newly opened display windows +

+
+Auto Tile +
+

+ditto for tiling newly opened display windows

+
+Close all +
+

+Closes all open display windows

+
+List of open modules +
+

+shows a list of all of the currently selected modules.

+
+

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-file.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-file.html new file mode 100644 index 0000000..a61c4e8 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-file.html @@ -0,0 +1,62 @@ + + +File + + + + + + + + + + + +

File

+ +
+

+File

+

+ +

+
+Clear printing queue +
+

+Clears all items from the BibleTime print queue. +The BibleTime printing queue does not clear automatically.

+
+ +Print +
+

+This menu item launches the printdialog box. +From here you will select print or view as for any other KDE application.

+
+

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-mainindex.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-mainindex.html new file mode 100644 index 0000000..570ef7a --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-mainindex.html @@ -0,0 +1,81 @@ + + +Main Index + + + + + + + + + + + +

Main Index

+ +
+

+Main Index

+

+ + +

+
+Search in module(s) +
+

+ +If Search in module(s) is selected, +search dialog is displayed. Any selected documents +from the left pane are preselected on the choose modules tab. +

+
+Reset Main Index +
+

+ +If Reset Main Index is selected, +the Main Index in the left pane will be rebuilt. +Any customization in the main index and bookmarks +will be deleted. +

+
+Remove selected item +
+

+ +If Remove selected item is selected, +any selected items in the Main Index in the left pane will be deleted. +This action can only be partly undone by the Reset Main Index. +Use this feature with caution. +

+
+ + +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-settings.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-settings.html new file mode 100644 index 0000000..1d6b0fc --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-settings.html @@ -0,0 +1,62 @@ + + +Settings + + + + + + + + + + + +

Settings

+ +
+

+Settings

+

+ +

+
+Configure Toolbar +
+

+show the Configure Toolbar dialog.

+
+Configure BibleTime +
+

+Shows the Options dialog. +From this dialog the startup mode, fonts, colors, profiles, +sword features, and accelerators are configurable.

+
+ +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-view.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-view.html new file mode 100644 index 0000000..3b8a6d7 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar-view.html @@ -0,0 +1,66 @@ + + +View + + + + + + + + + + + +

View

+ +
+

+View

+

+ +

+
+Show Toolbar +
+

+>If show toolbar is selected, +the toolbar is displayed. +If show toolbar is unselected then the +toolbar is hidden.

+
+ +Show Main Index +
+

+If show main index is selected, +the left pane showing the available Sword documents is displayed. +If show main index is unselected then the +left pane is hidden.

+
+

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar.html new file mode 100644 index 0000000..59e8536 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-menubar.html @@ -0,0 +1,45 @@ + + +Menubar + + + + + + + + + + + +

Menubar

+ +
+

+Menubar

+

+

+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-Configtoolbar.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-Configtoolbar.png new file mode 100644 index 0000000000000000000000000000000000000000..6b9f33b697e46f6ee05a43d0dd6ac0cf13f37772 GIT binary patch literal 17363 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-cascade-auto.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a846144b31e832b2c63b6b47c83ab4197767b5 GIT binary patch literal 492 zcmV7V(DW?f?J*en~_@RCt{2 zRy$I|Fc5uasKPPQ4{(~wtrB-!ty z-5mq}9bL^KW6bKrL<9hMtbO6<;{^b)J6^(b3*z^7$4gkxCa{HbMs)&fJ6B4=4cY2wVn{gRIFgnZKtF;z=-)|>?MZ}Jo7(g@mA^}X)a?cEDCM*)L6hw6M|It*0OOcy~f0BUY iJS(6yzwfwXP5c6~aMW-5fK1&00000NS%G}EByV>Y zhW{YAVDIwDKoRy5PhVH|3+!Uz^6bIyeMEplS3F%DLn`LHoo2{)Sb@j2ewE+O$^8?z zhHu>AbxrPY`Kw!g3RfB$PhDWV*D^`r-~Wxe4L5IQ*(IfYZk}7r&`|xh?fPd%h8z9H zYoa^8zdbHFZ#Czaf_E$Z4&1U7baXlNdr8BMN}2FId7=}QXFKFSpO?a0^Y?f8=a;G5 zl6VCK85~@8l{RQOxHNs9SGu6=V29NXj)Z55=QcAn6v|EzH8`|W>p*z}tL5`~vu}FZ z8!czBXZ^3Hkj6Q~+aXIWB;HH6;9TrGd1s*u%N|Z(2|5?bxb)}Vh=@;&Pa6su?WQ)E Q0{zF}>FVdQ&MBb@0Omk}YXATM literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-contents.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-contents.png new file mode 100644 index 0000000000000000000000000000000000000000..293b736bb55212db60d813d9c2c22a3282441412 GIT binary patch literal 1383 zcmV-t1(^DYP)_&$2_1PAx-sDRvI026>U z0Eozc39+E6AwUp7U~0SmJ%j*q?b7)L7bXDk{ZNH^44z#I*@v z0x&l2ZE+Ct>-n>+EDRtB2&gu;MG6F9Ow$EzKnTFKE0@USau6*P1X1lO5cn+t7J!h8 zznr9R^aIZ9vHRQ-@jBv$Pt#3V}n= z%*_173mZ33d~PF!m4mE(fH8(t z9l-4L4VHBGH*Bk=ATU@vzXAZ(I%E!~h@c|b!A2T6lF1~gj`Y0#YFz+rDG&n8UFQ(d zC|q@Xi3nOl!qaU4RGc@N1#tiy15gsSTv(whoCDGQ&W_X~09q(ujR71cC}T`q0TBym zlt}oALr~HE`KXq!J~q5 zA&{5=W8x_g1fmvJN>!ih7WuC)_C^2^#Fnc8!yjkE;0V}R5Q!I|xatI~K8n6qRE;ap z1i%=Fm{MK9@KcFJ#3HtgYtjW$8DMpzm?*H;aTRRc*l(->aX9N&1439}A`WXT&iDjP zQc$lz?Jc4*j9MrVacRz+Bs2LP08_VS_~yVzI6I5j0B2?qQ^xqS1m$V0En#ikp@<+( z5G;bliDCNB-`KHz8>sjpI=2SY)N5}_c5IaGPdv}d6XS>+pja#-goPORCB#^?@ng;q zhhR}CjBjwI>+Jt*AD92Q!O*((q*E#K1B29;f-we?jVY)?yjvWBL*po=*!1i(m|zxL zDia>Cet606d1lPj=3e?J3-d(k>PC6je$LaQ#QL2MeqO^oAt z9*;jZgaj6=KukF%z|EUeT)%dagI^xtfz@ls+?AofuNNmCN+~?gBbo3>CX+PYFMvK zFLw`vg+2=Xy{uT;)x>QmeW_HMSAiPDtFKFTY?SvmZ$VG&!`gKWt;*n>!&=9lPrs%= z-_7!DhE@0FNhH#o{^=Y5Go>&GGNAAY8`TQ+V1#d7za>DR5R$N|DeCrFA&a0MFBOq&upEs;$@U?AR!` zA6n1WiE*->uq4yNt&-2%4?hjog6Fm2CT@1?OKtz@knGrKc;y^K<8|u2PvF9te-u2j pCS$6Vb!Fq{>g}n;{A+4ze*^m>+(S}x>f8VT002ovPDHLkV1iIAZ|ML4 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-exit.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-exit.png new file mode 100644 index 0000000000000000000000000000000000000000..49ccbefc58fa4f2cd89803dd87dff63e4620adf3 GIT binary patch literal 367 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}EByV>Y zhW{YAVDIwDKoQOYkH}&M25x>3W}Nhsc_~nky~NYkmHi?!yP$+hj_sr#pwJsn7srr_ zId4PX@-ZuN99FGPiK{QKzw<~dLvV7fnc?*41tqqO6Yb-ACY`b06f=DZ!;w+TlU4;?U2DqXSBd;C@AfP-3I=j!4Ezr%Jn{OR$1W7~OWx%-=Ufj$fOy6=DK(EVLF;Y;N< z?RlRj+FP?9Vw#}6t8epB*OYs#i=T7|uZ(?g_RrN)pZ5aYCu}T&UjKe^Brx=R$IQ#0 zbU7on&gg8*sCHemWXDU-h_~8GK{ndAC4Ri+HY|KtT)+i_+oJ5+~0v{sfy z%Tnl4Dy6V5wq?QXqQl}+OKTp6d9YZ)6|smuSm;aXmJUm(8WxK$D}pk`%DmM29@mD! z!H&DkXl`!qJ?Gbln;a82j{mj?4!QT{-1GhXzQ5n^-bC?oL%NRDi)`>hH+2In-(CP< z)A;tUa^GhYuP;<22!fuue0xDioaxLp$IFmP5Cm&3Xx{x7gA=c>si&V;^+#`gOP)ns z#F81Fegqbmum1vUzeBtteK{ z5W_PQ-2E05(Qi4U7p9iD)d}CTNE4zNb0R(?<1$ z3WMKx6I2T2DUdFHWf3EZ?QL-zw=hwF304s?D5V&FZD*2}_DHQIUaeNSckdozEgyVv zfWp`gtcg*|AXcN)BYqJ9u~-|UY=ku}#Dth;156W?hxy_*B0^>E=Zud}vEz-|CjvNe ztu_0m_w(65KPGN9Fm{!cpT+YtSdn&d#UQkE-!4FF5!=EORLquqDg16cwPpu&H;s>0E5A_0+1HQ3U*}) zYlW%pI~gCJdSVKsTCK9UxQNzCey69WxqIU;gm?dqSC~MQhw>7cX4FJ5q*7T@sT80S z2(2(tkT}+Sh-ja!-{1eG=pP4=YPCweUU!izrP#Z7FI#{3EB^Z7J8Ye}hhzqcTTT2; z6L{i*wuEYxSY^r)sqgeg?=60ZC@|Y@-`BNA*|nsRz6-z<7uB%8gyjwJP)NkUVHOhe*OLsQ`>j4 z@BNFctgN`|O?AX;wHit(XT6A^lp+WM;y7m4u3hZjy_;+{%b(7jJy9M8rC@vZVYpUU~rH2V~Nksc$FIudK|$qxM!R(R$REr%#{map3Wxlp=~E zlu{InMJ`>sM5R)pkQ?CR-|y#}uM}uV4z0mUW%$9nzvGM51`ir7Vq-aU=nz2=kjv#b zapD9Dko))VJAuK$!7ssd1BwXNT8uGdvss$WCfRJ3d_K=V=I8n7qd((mk8`J|`R>FZ zTYmB(KmFM|L~+c(zyKmbu~=keWQ3WSnFL^QanT86G8wE*+G==s*j+z$>XZZM0Cm;@ z_`XjRMdWfh(&;o;u3TYmZVs&!zj*IGM1*`kkLP)ej*fEU#tkZ!N&--;)tr#;`!33E zn942?C8;>Jt^`$k90Z>!0_-e*REZ|_x;|Yrri=}&YZzo%a$!$ zoKUG$asY)w!ClYi^B7|g5publ6P=u#bQ>Q&eArztl}cQ_dbKBVz}0{&@a`NNV;CD7 zbD|?7BhHl#8#eTSb=)Zyi!L2gQ;(i_d-m+1-*7e1vlPElkt)W^JBQesL7BB%)iNPOWQUi%d zF|mLT)(4FN6G220qyL1O$d6Dek`$FhBhUIMgeF8<6GSv=M3(;Y7ZlstZFjr(-kCW* z-0g1f{%E%(#0O6@xx0I3=KGm5=bV{^|GPPh=qq<({#pU#;*PC|2qNU4v&|Mh+vsJX z-*e|KE~rrpfb{O%#>Tz-F`HUT#06{f0JaEn_1AvResP-qzCKR(56-LOEhOHztBt4j z?uX}ha_dxAnYgu)7iOO~hllt(b&WM5OkEvfi-PkOsRl70fPDXA8&B>%0NdNSdiZ_r z8XG4&y9Go50LECXSVSyIfd`vclb)Plr2`5O1wBCQz=6a$N{DEgyFm z<^kCB!}Zv>1_v5STwVfDEHYV%-nw;l48Hp|rPh3?6MteHr4%}wq2)w3@wtTF4XY@w z6%zS24?w)gh>ga2OX?YV?_e3k>LXqFlasV`b;rg5T<&Nu>ks95SRDYtibadXT8p=I zX+=-0Ira%qEWZF(_Pk8t%K|4zMS!TnS*$TwqX~^h`yt-F_mO(%t+GjG%P|N)?|T)j zfY$RXR|c@L@@lk3>ky+gp$^cw8Ql82`Q_lg3S%rky}1XgEuuq=AKVT=@r1J$!~~cy zLZ;N$xNnTfH2+pRSiV+tN<>FP#why(%p#_(+d#^tu*znES zNW6x_K3JYALnLU~e@ZNcd1 zU)&rX#)^qZy{1|(`dQq-;#CbC7rGY&L4u)?hp zNj2V)XT^sEQYGS0`9k8Hw}_~G&=`qsHgkn*yi2EyFaZn-T(2Nr4FJIDu}C3AjnJs# z5DpcbFz3f>M)-$l<<-RJ1BgLbfnh5&IMIOl93Vu|o)-9>@;$G_ypYLe2Oi2_CTa!% t{#-!3R)7M;Vr?Pu#Q?w^`fvE3+rMzDVQp1i2D=55#{yJSN)qxOxND!++{52b519at00bz7%Eh)AY=xB79F?Dc;4#?C$R3y`4qLlip zAUF+Skqz7=H@kQD^^dm+#2+JP=FNTk_P#ye`#tA;&shN8yEFhm4s~2kX>8l(Sf9kU zZ3p<;%eHODwrv2q`UdH|*pH8TY}>}RZ5Br?7Dp_Gt*Pl@nwlQw)w6xPdbV%mxfs65 z@wjU$16e0jRaFs*M5w5!ptQ6U04XIWPo8A|{{39IaAEjek$n%3$NiylpM&rSRy9A# z)%MPdn*dn%*yhmy-uUxx0l4{>k2}kjFJV??6_d)!sI0HYFmf?+a{)*X4Ux{I$fPx= z-hZDxdtTtcf!Epo-*W5J34%2wFCqpzEb(Sq( z!peIanNm3uZ(bglCKe{rG*M(Qbp}&wu)N$jWePKA&n6P7;*rTE4j`z@fkrQ^>L z93}7mowc=h68)0nmG`W28Cbu*34onDcR0(IFX0!f8@YaFCHcW(FhOYti32)=(i(}0 zR0^~v;P+98Lw-6*Ytwr6?%m5n4?QHp;V_$8x1f@jdF3XH1#ZMOefaAyCgMk;t z`VGerLa^h>yIl{y2mr?~_5)BI9OLH9a0q5qRxu?~NibN9X@WMv%w85IXbpe{wALsz zJyLSK=RBYE50TExe?L zxEx;|!(L1@!JHiaM{1N~4QSH>Ezug{QlaT1;LoFY@^x62#YgE04j_K|@Uw2>aylD| z?7FI#Eku#o5IDEpb}KEhCzQC2^G`p^_-AFfpl~ zFo78)i9NW6Lx&C_r6B|!5D5VMewXso@rwZL+OgfO0)V=@IpmKm#*(ix=INDUGLi5IB`kXqw6Gf15zVR>1&a3Kc|9wgD8!(Uo1v+g5@X$+uluH#hC zrxfMp;Gv8(r>_7gEiJ{LYoP&D5~hWLncjnrwhmPoBoN?}?i78yjY!Sw0V z5ke5SpCpel9a*}8Ox8KO$GHH8O=$Mk?jfuCvb7AaSM0 zqz6!!C1$>#gx1KRH0Qdz0ho~f6QAh2Mtn^);f#i8b2KaTu6Y0sA3nqviHk_nBB7G> zNJWnvAfXfqogo2NojgTCDYTR**-tJ8e$z|H@>4{Hj*bo-$KjJ+13@9V0t`le4e?Lw4t>vYcUZS;iBTxOhnKr}g;F~TO{5S1e*8tE4 zc$i3Kfe&_%qgS~SFD%>vqSbB&AR3K2_4RXDvScaON2(b=eJau%L%+vB;SMBahM>rk z;cqYgmA!lS(ACw=t+y`Z$nRb4Kj8?<%gdp4tYFg@2nwklKgfw*FGDHGGzR%F^fNN? z4n$oJ97{pHb(o{-hj>aBkvaF817Mmaixw^7mRoLN#*7&RgF(8xyXolYpuN2vfLJWX z=FOX-{S^Qf?R$Z_bLX*Q#R^JGOIf{owE$>qYXjWb5TLj?qA!NYk+Nr6jAsjBjvaAsh;cyss6$={A16P#r-t~_#&dRwW z#dGid74ygCk2rYkKS@eYpB9acjR5T0wF`hZ&$|=tO~r)(d@kLIdQ;On(bm@H)YR0F zpI^YyqwfIF)6+vZ9Co&B*&>7xM5FFVcEd!&6{KsihK2^>mo9Ve(j}^@+{tF!wr%8` zR5S)5Ftg<9?M_WijWd7#0%z&cCC>Kk+nt`Cp5bwR#D)iw(X#Xnwr<^eX0Cmll;d#x zsn&1Ze>D?DMZr%07mo=0KD~uoBbZ)p5grYH~_moy)X*6ZQCLmjXJfpwE!G__iX^i zjxFNRM;~zke7Qw_<=K&g-2UOw><4$8njLgwXgPl1im>E*1SU{2aUyGL?_|S|4ayhK z6rCNNBOu;*;|QtL5YderMvr9QWcEA%9J&8Ft}yMJ?T%gpUS||TKN{=)BmUi)Gepm9 z<+<<81i+w7bar++d3kQ9+}d?Yz%?de!O1k2rWr1ntdb22%9oY&+iY`-yFZx@0`Pyq Wa~NF~P4%V#0000NS%G~10G|+7 zAYETyU#fL?&z?OE4Go*U?^FYY7)yfuf*Bm1-ADs*lDyqrSo$+=1_C+do-U3d6}Q$- zxXat1z|(U60E3nugRnyi1JCdGDUIw=rfM$l7y9n|@;vH+xUP@rnrl0+Zu=3FSQeB~ z$Z(`Z$6?VK$0Lc0k`BB+&7;Azrs+_MjnxMSg9ahp;+vP-CmG%gnya?atbJ|7ThS?7 z_OM#<&->4p=l^ew@SRB-%`+a#*#n*6Ug8>25}cn_Ql40p%HW`(tm&DXn4apJn4X!O ztzfEWsAr&HV4!bc2t*2jRu&4$MVZAVl@7U;#U+`^da1>FDWwJZc_n(u`MGV;XI}%2 z)B+osnVy$eQVKLPDLFCG$kIGH%{V17IVsWD)Y2%;B-u1AEhQ}}%{0wo&eFI`KwX?5 dT`s9PiIoh71_m*bE&M=122WQ%mvv4FO#p4MiX8v| literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-tile.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action-tile.png new file mode 100644 index 0000000000000000000000000000000000000000..5dfd05f6ade0b433921f77604cddcf0efae892b4 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@mUKs7M+SzC{oH>NS%G|>0G|+7 zAYETyU#fL?&z?Qz4^Gbj@)=8l{DK)Ap4~_Tagw~!UluT}tcae{QYq~;`6G8h^d#7MUA0|gm8UHx3vIVCg!0QuuwP5=M^ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action.html new file mode 100644 index 0000000..e16c57b --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-action.html @@ -0,0 +1,76 @@ + + +Button Action + + + + + + + + + + + +

Button Action

+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-close.png b/bibletime-doc/docs/en/handbook/html/hdbk-bars-toolbar-close.png new file mode 100644 index 0000000000000000000000000000000000000000..bb4b445a88f2089c5559f32cf3349c073301cd77 GIT binary patch literal 1155 zcmV-}1bq96P)Zos|$sCxjzHut{rU zr`U-9z}nivHid}2jo=Tk)t{k_kjrj%cWyhU&>42kCSID;oDV{h+1YuYneR5hfBVPg z{N|-jr=znhgOn0dN(dpqIR|45udlB^TGRW<S*LC4I4%XM#5r!cEXelK|qtQZ;F9CYJ zp5ETxhVT1U!~k&4?Kl8vt&wFJvMhrT0zwFAt@U_3o(r)MV1IvKx7%${N>w;5ZKI^}5}? z5jQ)RQbKEOPfSV)$C)1nr2xk7gb)xyKq&=d45z230D!?@fFKBjlZKpgaLyrwuWb$z*~gNoIn% z3}7ZXo6V-Cl%myYAqWE72RP@2JO|!=Ua3?t91ijD@KAWRwzdYXwT%Z86H>~8ZfSLB zHk*25V*`{@P)Z@Cv=z=+zu$-FdG8ZmzXj zO#=X>)CN+%w3eMh?${S<{OAr(Db>LHZD|p}SG)c-fHB|qb-uQLYBaxE^S}Kw`wNg( VXFujO5VrsT002ovPDHLkV1fty2j2hy literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-bars.html b/bibletime-doc/docs/en/handbook/html/hdbk-bars.html new file mode 100644 index 0000000..32b4e48 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-bars.html @@ -0,0 +1,54 @@ + + +Chapter 5. Main toolbar and menubar + + + + + + + + + + + +

Main toolbar and menubar

+ +
+

+Chapter 5. Main toolbar and menubar

+

+

+

+Toolbar

+

The action of each button is described in the configuration dialog box. + Moving the cursor over a button will activate the button's tooltip which + describes that buttons action. +

+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-conf-font-about.png b/bibletime-doc/docs/en/handbook/html/hdbk-conf-font-about.png new file mode 100644 index 0000000000000000000000000000000000000000..24afaa1ab3d810ad3797cfbea7759355a7d8fcd9 GIT binary patch literal 9473 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-color.png b/bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-color.png new file mode 100644 index 0000000000000000000000000000000000000000..c66917ff9dba9e4157df12716d74449db3ff54ae GIT binary patch literal 17131 zcmbunbzD?Y+cvrZ5u{rL5osxrE(u}i?(XgmX;EZIrKP1Cq`L=@?(S}e?l{}$J>PlX z-}jyK*C7UG&#bjq+*qokG#0HEXj`$ZUA^t%TyqPR-QiJ^=k zl48?ib!!?G0l-^83i3(SGv#p6-*%xpk^9&J{q_UK1QI<@(3B*WK81j(8zxTg?rN2M zn6`bGrnA2823J6}Txg|UD|B;fWUe=iOWt7PpvscUV07YiRn872f(m7)i{3FL_P5-I zD4vYixHJmS-nA)O^p3J{sHW{x|UL4$^(1cRfQ+rhNXJ^AvzBkEW1&barrKi4n z{9P|JhzkJ1gf9L`F*Wyt@zObX9#Y^)3)>}7g44-}YD$^?E5$072*SizZIFS0NqnD? zct|M*0Fan%eNEg6xpTjWXc5#_@v`7J#U{LIg=ccn`1?mvcgwCZhet_=|9HxETno<2 zECZV)SsYxHL+QaLlTk}s_zaiZ&Z*33%f;qGF-kn6jmQnH$=asXVn)o;ut@+205ZN3 zWtIKlqk@#|G7DyiY^M;f)3Od-ROH^*!^#Na1`DH%!Y5YTs%mTTM-L8)Z8B}ZedGvr zm$R|jWEMyH~rWp!6GA>Ub`c30bmSkrd)q7IfT7i25b^K)socXsiXx4c^;jUnlX zbAb`g>U{f+3IsaE=&;n-&KfJEBo}#6e2eqzk7pj@D6M^;ew;|lN@*NEW6`+tMc&;z z3BG5#sF(dg{G)U|W1RFI9z3z`vVEGb@U|PzVr}Kwi!Z1MfYWM<%TNiA5xI6P*r(i; zoC8hGIM4EJX-A$KMe;%@5sWxyOgBlMebO+TH7J=;*_`bad<~rT<>8*U-9fcB%7P8$ z!ALkU07zNj;SN4JP5B+B93}f*{-`|kpO-HcOcNSX*MZTgYWm8iNSY65u2i*Q4o%i@ zQ6BZ>e2HqCbamw9@!=1$+;m!)FW5}ZbC7meOHwB=%kn}0q4XNi6zJ4tNbU>yQhM^5|&s zVQ$7|YT0`KvI6^LigkkTSM)a2R-u+RW;X0@Yd3j}lhshH>hw3cV{w_47y!7rT$0%B z&xu1?({FvNOQ|((S3+tE6IOO%A*|8A8j5;8@Fr$E=`-!~N|3;n#`x~FC}20-yv6I) zWTAV15rRDdNg@gVVYvUD_jIiFZtcSZ*LIbi-aJvl#X3HNbPBs3i+`KK{dM46N9c4F zSBPoi+#K6&;2UjoMy_Wb2eAH|td=Ru@;>t~WcevH2!JN0#aF|-ZBT?ZYgth8YNKcA zOKRsI{dB64eMQ7(v(xy;nrCYc)Wy_eYv%c-C_lR-(W9x1d3|&FogyK;ESO@A7?}~l z$3OM?QOyxsnVkdv+5njOa}Z;Olv}se!udEgl$Poc(Q20C+I(^Pf^e3f4fd-~)!HbO zG6qtZiRUB^L)1`E!wPJn!fa7$Z>(c4zp8Dzsv}nn52$XW(qBdAMFG%V2Jn z<>rcJbB{p=Dz$M!@rL*Gm5$E?Ry}|Kz6mc{YhQ~}b+V~950jo`v!6axF#x~IGnWzm zw4BFhFMRV^f6c)?6ptvZa&frlviMY8zMD!U+BJZ}ei1|h05}diJ)($H&gVK3B`>4l zssJ#vk}~=i?*0X|e^{u5;5!gAKuap}7JNw<^&6<3sJPC0|Job(;bukh^RK-}1cWn# z3<5oF&#e$Pq5V5WSzX4gN1!35*3K@fmN2lJa#2_}TgbotO9uddXg0gwydcQ~pjgjR4YKCjT?ikK z(5=*ULc}BhG_&w<8I+Ti>xZ|L3u2l23skM2S{{}-rixV=Xj(jrjD+qZKm0)eY}D_` z6zh+4H_gpX2IVs4Vx@D2()jmf$7_omKo#7bA7|GvzdeGR!0LMUz2jAU)t~D4KHgvf zQ>E9U$R@TogS6?-d>d~s$rch?1mqxO9&X_+eAdL>8;vo0C551^5|28tnB*+%M?HK2 zXpTcXgbzPED)_yHA4sgxVoUm;pJXjAE_%Deo#ZFBFH)QNlL_dUhQtA}9SO7}V-XYr zpx8=8hw$dh{R!O%WE!afPZ35E!&R+6+FR&GNlPNcGqIrt6L{Ms3pPsn_ix zn}S8TCjz;5;?NPTNoOQL6CV~7Du8|T%FFtli^O-R^V849`^!yL2F^bozdstd=P>!{ z4q$IwkT!6YMKpcL%vIZ7s2onGQPC_w0E7)u2&U`0tGh1SY5Nx9DKewbsnm}h`)mh4 zo}|+K&8BO)gKUj6ZV?GFy&?Yi;eO%IZxJLQ;IAU{xZ*QCK)$UqDNEmEoYZ}%*ZhGh9-XesTz-jJ-;<0!Od zT-hF;q^O|-03{Ti@GA<6o1W0)gwy(WR$kuE8_8j!xQRrZo}VcB9-G&LvB?B4I#mP= z_D1_}C*lfni7t+_f|HYk0O7F|uS?Z7UEB;~P*SN!XSav&{yjJk$!ta^$>ZZj8981} z&VjO~d*!j$(8&0taC73(qu_G|xvg=vRtX*0x=b#aMtMR2uF?ElUB^Yc9)0f)y`SQw za|RAybrWx={NzFJ4~@k>fa?{1SCWg%6iIuR6b9t@ZzzXlnpp zbj(W=2tu((0%nrlFu2OG#7Rqsb;!x55Svs`gFeEQGNLNFR;^vGwDqcQZiDFtoa*@icJ=w>l%iEs!+}w?a?q=IkbZ#hx9vv)5Cx z{hqArM`&~UAb~!4T9Pg+?daqz=Xp#<%y5b+n~Z}z_kZ=_mHz=_9b73L9UTk7w8Te4 zuiHM3m|qQAG|jRaLbUn}UiLUTX)Jk!Q_HD-w-O2o(lpz}k0`f|9N!sl5Lv`dLR_t&dc(MQd#9@72Ja&$*6&wfaS z%NoEQezY2&if* z($CL3X-M2oRTUQQ>WuHY^7V(3vnZAioG!QWxR}v;Td0p$pBVhGp|Lw2F|@H^d|rhB zK=8b<^B1ph-EQ__&7ozNan`~092mC$q_bZT9X^K|v z^!i#MZ#clsn+W5bCaPKs?i!mMyG%Po@Vwe(t1f=w#)5WdbXvPjR^oPupl)1 z(^ZRLZ#bOu@5-6a=|%6jkieq10er(dM#o{f&|cl!{rp`rVRP{hg-DwQ_uITY#<)mH4QXiM3qw@S5i0sm!}2gRsHK2O$&?djq{CFfBly4 z@268qeN2znS`C;C7;AIpov$`pYMyMSbUQyN7fkfGde-kBm5!y$@ZWiKk7eUr?tmT* z!TJH2$+g&cEj2{f!`|63T3t}V>egdifZvM`zBlpGHQEwfi5#;VB850RpPO+`a(Uacy!f(%S>3_Zk2+<6{+B-OLz#y&HV0 z7g`(r@5el^K{x(ZT3G}cH}3JkKS2uspc;W9U2|(6CkOcArjqdBR@GAPkbq(#saI3_ zItNr0?4S`X*05BY7`W*7b$6e7#h~kQs8y7*)|al%Wk#7>6}HF3p7a*LK`RM;?)b(o zRl?C?MstuL+2J*soYk;%*9(pi;4S61&|hk#+o*zp(~AUuh-8OW(179>sDzk*`pCCh zOx{$=sO!{etD^xcMfDk!n=2`JzO&}>rSdJ!d~P-l4rTG8$HlZI1VCF+NJa1a~FA0=~X|3=#7vvxU0ZAOb#es$7wN~bzdjWPKuXy3unN_1Lnyys=Z+1H|l1dq8`n_POLJr$Ckr{ zMQpUq!H|qRll{w;OM&_ahnmq&O<^lv8A6)j?-Th+g3x#LNSDHGYfDx z8Z4Szv6fNmUx=%iJ6{<{1vibNO6)*(MQ6161xaIqt_!`bhnN;uo3$Wp1nZpxR%w^U zxHIN^HL}K{7Lv^*;`{cXc#5hj+_Qq+FqLJd{{GzuisYX^jVI`&S4)0> zIA6~I&2EG`axntt4Fakh$uWTynQaG2kRpN&fQ6Znd64P$hZMj1MF@jzC5??He>t`k zGBEQOZ=z5#N4Y1RPyhONKr(;`P=hu|j3JI>hTrkPy9b(o)$&-*t^cVF03@NNZo*)2 zDgwC)z6#eR{(Q2{f^|S9X`7&Whj+5?)~so!UY!*}mnQFL52j94y&oCjj&RYvJUE7g94qtW^w!oCL+mUHYE89n&q3areT0 zB~>3%SUYcQrf;V1NSo${pJ`x~!deakMsg6RB-55@OKpqn%JwPgx7R9Vt_bthotFn} z7U^2%m6^F6un>Yynk7rLzwF<=E{daGTXQqrS=3)19!efaHWH>eAN-@;Ug-OdQw?MJ zp6aMPpm0-XunC{aUZfhJUzLm!`6a>(^aZm-*BD4#M?5>+mkH@Q$0$ zOU{4C;vrDtNP-oAfPVxA#0sk*YFy_c-eB=AZ^RBWT% z#{Qvpf`)U%+rZ&*)#q_lAW`-fTw6$debS_l?Wq6D2@MLLB2P>Er9LtzwtfUUc%5&vHeVc9LSaKR;IkL`|M0ucq2{zFYHZ%m+_KmMq0CVSJ4V^0VeVEKeGH zMu)XTNKj|hqShbBR7#87#iq`B+5vT27#3>EyJ}e~=kET9@RfIb-h}w;4-7Px;#M_3 z(yk{;=xNsQMOUQX4#qXb)C}HKk`8Quv~h3pjLX<~RX`G10v)drJLa-rwvdpisx5;Q z&!G!P0PK1!=zh92p8W5RCdVk~DfYI+`|zggvjhz+F~@Dngyj~Wo5TJWR-+*dXG!XdGtIco5o>blhc7KVg;>1F`TTJp^x>6~)sNw* zi=ljYP~N8J8eM$K-FGhSQl3Sb%3!vo8miy$)8m|}UYmH*_UZm|28H3>fq8sJ#Qq8` zLy2vU7k;DPU2th_6o0J6P>#EywRRw}jb5!P~t+M)70md9o}l z1bV&RK<>tn_8dY1lss;O!5sU%{4ngAoeGYl$F{H4j5uZ z(}t9Ua%MC)>&*m#VCPBb6GndZyBFIH2mtC=b+JL+X@EcZ<)KUyy(nGg0|F2dS63do zQOS}=-CCs9{Icx3KJ#XCI1%tx3C~F{NCnJAFFC@f7yK5Aj=XE?jwVO{vLOH*s(3vN z#h!*J82c>>_;6WWzdL8dtRVPeqP4)e$p#V-%~WqfI3;>gJgq(>`L`L-mor-{pavPB zR{2;G8luWT&YZK@A!(k1T1Rero`DM2qjvgE2%0;L4CBnpZ4)|X$+{zq1O9&gTrxBI z<=TJq$UtJyDA-_#dy)BKxL7(zS>i1M5Re;cr^&BTFrti3B>_oamXGU$@#CLgZi2T+ z_+$PIXcH$||HBnk6l7FQC)i5ngb2>d_@kEltTQ^&zbBtTT!aY~T)^Jg--=PDb!!L! z7u&Z`M;ogIV^nx0HhHkMs}~y zr{8tYeEEv9_CDyXMH+wSjkfO*QStM=&jCEc0Tsz4mxm^Y+a$c?j;2Cc9dU2I@j4#2 zWrzmR!>d%`V*7hhp)i_sc+?$Wx2Ts@*F{dLosedmE~>)_BM_uR7GQL89*a-M(Gtr%Mq*640wyo}MMWnn^Cw3H&5A>!w0S-mfnz2Euuf_aCmS=ctf zt&JOiNNpwUqw!Xk3cMACqVxUUV{L?a**u|!)~W�^#hG{V)(JU9${7FVTwcd2Xd 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 WrWLv`0M>_~@+zx}$d`Wk;r{`uM^NVg literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-sword.png b/bibletime-doc/docs/en/handbook/html/hdbk-conf-optdialog-sword.png new file mode 100644 index 0000000000000000000000000000000000000000..e0bcfadc2f39cf3bf9963d0e26b7b35927ca9c22 GIT binary patch literal 21257 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Accelerators.html b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Accelerators.html new file mode 100644 index 0000000..fbce0cb --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Accelerators.html @@ -0,0 +1,109 @@ + + +Accelerators + + + + + + + + + + + +

Accelerators

+ +
+

+Accelerators

+

Accelerators are special key commands that can be used in the place of + the menu items and icons. A number of BibleTime's commands have + predefined Accelerators. All of BibleTime's commands can be assigned + accelerators here.

+
+

+Table 4.3. Default accelerators +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ActionKey combination
Auto TileCtrl+Alt+T
Auto Cascade Ctrl+Alt+A
Cascade Ctrl+A
Close All Shift+Ctrl+A
Configure Toolbars 
Preferences  
Quit Ctrl+Q
Remove Selected Item(s)Ctrl+Alt+D
Reset Main Index Ctrl+Alt+R
Search in Selected Module(s) Ctrl+Alt+S
Tile Ctrl+T
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Colors.html b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Colors.html new file mode 100644 index 0000000..1863443 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-Colors.html @@ -0,0 +1,61 @@ + + +Colors + + + + + + + + + + + +

Colors

+ +
+

+Colors

+

The colors of the objects in display windows can be customized. + Objects that can be customized are:

+ + + + + + + + + +
Text
Highlighted verse
Footnotes
Morphological Tags
Background
Hyperlinks
Strong's Numbers
Words of Jesus
+

Some options like "Words of Jesus" only apply to texts which + support this special feature.

+
+Options Dialog - Color

The Options dialog - Color.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-profiles.html b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-profiles.html new file mode 100644 index 0000000..fb9a729 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-profiles.html @@ -0,0 +1,50 @@ + + +Profiles + + + + + + + + + + + +

Profiles

+ +
+

+Profiles

+

Profiles define the appearance of the work area, for example which + windows are open and which texts should be displayed in these windows. + Once a profile is created, use the menu item window -> + save profile to save a current session into a + profile. Use window -> load profile to + load a previously saved profile into BibleTime.

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-sword.html b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-sword.html new file mode 100644 index 0000000..3073a52 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt-sword.html @@ -0,0 +1,102 @@ + + +Sword + + + + + + + + + + + +

Sword

+ +
+

+Sword

+

Many features provided by the Sword backend can now be customized in + BibleTime'

+
+Options Dialog - Sword

The Options dialog - Sword.

+
+
+

+Sword General

+

Key Catch for Lexicons

+

Bibletime can create a key catch for lexicons. This speeds up + opening large lexicon modules. The catch file does use some disc space, + so if your computer has only a small amount of free space, you might want + to disable this feature.

+

Scrolling Behavior

+

The default is that a down arrow moves the current position in a text to + the next verse. This option allows the down arrow to move the current + position in a text to the previous verse.

+

Specify a language for biblical book names

+

This feature allows the language used to displayed book names + to be changed. For example the King James Version can be displayed + with German book names. If your language is not displayed and you would + like to create a sword locale for your language, please see the + crosswire bible society developers site for details.

+
+
+

+Sword Default Modules

+

Default modules are specified here.

+
+
+

+Sword filter settings

+

Filters control the appearance of text in the display windows. + Here you can chose the default settings for the various filters.

+

The items controlled by filters are:

+
    +
  • +Show line brake after each verse

  • +
  • +Show verse numbers

  • +
  • +Show footnotes

  • +
  • +Show Strong's numbers

  • +
  • +Show headings

  • +
  • +show morphologic tags

  • +
  • +show lemmas

  • +
  • +Show Hebrew vowel points

  • +
  • +Show Hebrew cantillation marks

  • +
  • +Show Greek accents

  • +
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-bt.html b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt.html new file mode 100644 index 0000000..86e3ccb --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config-bt.html @@ -0,0 +1,332 @@ + + +Options Dialog + + + + + + + + + + + +

Options Dialog

+ +
+

+Options Dialog

+

The options dialog allows many BibleTime and Sword + features to be customized.

+
+

+Startup

+

The startup behavior can be customized. + Select from the following options:

+ + + + +
Show tip of the day.
Show startup Logo.
Restore windows in workspace area.
+
+Options Dialog

The Options dialog - Startup.

+
+
+
+

+Fonts

+

The display font used for text can be changed as desired. If you have a + module that requires a special font, check here to see if the font is available to + BibleTime. +

+
+Options Dialog - fonts

The Options dialog - Fonts.

+
+
+

+Unicode Fonts (ISO10646)

+

Sword modules are provided with either iso-8859-1 (Latin-1) or iso-10646 (Unicode) encoding. + You can tell how a module is encoded by right mouse button on the main index and selecting about + this module.

+
+About this module

The 'About this module' window shows what kind of encoding is used.

+
+

As long as the modules you are interested in display correctly nothing needs to be done here. + If a module you are interested in displays as a series of question marks (???????????????????) the font + available to BibleTime does not contain the used in characters in your document.

+

In the options dialog, choose fonts select in the Unicode area of application. You will need to choose + a font that has a iso-10646-1 character set. Try clearlyu as a first step (it is included with most distributions). + If your module still does not display, you will need to use a more appropriate font.

+
+

+Tip

+

If you use a small Unicode font like clearlyu (about 22kb) BibleTime will run faster than if a large font like + Bitstream Cyberbit (about 12Mb) is used.

+
+
+
+Font Installation
+

Installing fonts consists of three steps

+ +
+
+
+Obtaining Fonts
+

There are a number of fonts that support Unicode encoding, some of these are + available at no charge. Few of the fonts available include all of range of symbols + defined in the Unicode standard.

+

Here is a listing of some of the fonts available:

+
+

+Table 4.0. Unicode Fonts +

+ ++++ + + + + + + + + + + + + + + + + + + +
ClearlyuIncluded in some distributions. Contains European, Greek, Hebrew, Thai. + Does not contain Chinease pictographs, or Arabic
+ftp://ftp.crosswire.org/pub/sword/iso/latest/FONTS.Several fonts available from the Crosswire Bible Society ftp site.
Bitstream CyberBitCovers almost the entire range of Unicode.
Caslon, Monospace, Cupola, CalibanPartial coverage, see information on linked site.
+
+

For A partial list of other Unicode fonts and the ranges covered: + Unicode Font List +

+
+
+
+Installing your font to XFree86 (your X-Server)
+

+ If your distribution includes a font installer (Linux-Mandrake™ supplies Drake Font) try to use the installer. + If the font installer does not work, or your distribution does not include one, + you will have to install the font manually. Instructions for installing fonts can be found in + + The Unicode HOWTO. This was tested and works on Linux-Mandrake™ 7.1

+
+
+
+Installing the font for printing.
+

There is a known issue with Qt that prevents + printing characters outside the range of the Latin-1 character set. This is expected to be + fixed with the release of Qt3 and KDE 3. If you want to try anyway, the + + Font HowTo explains the process for installing fonts to the printing system.

+
+
+
+
+

+Colors

+

The colors of the objects in display windows can be customized. + Objects that can be customized are:

+ + + + + + + + + +
Text
Highlighted verse
Footnotes
Morphological Tags
Background
Hyperlinks
Strong's Numbers
Words of Jesus
+

Some options like "Words of Jesus" only apply to texts which + support this special feature.

+
+Options Dialog - Color

The Options dialog - Color.

+
+
+
+

+Profiles

+

Profiles define the appearance of the work area, for example which + windows are open and which texts should be displayed in these windows. + Once a profile is created, use the menu item window -> + save profile to save a current session into a + profile. Use window -> load profile to + load a previously saved profile into BibleTime.

+
+
+

+Sword

+

Many features provided by the Sword backend can now be customized in + BibleTime'

+
+Options Dialog - Sword

The Options dialog - Sword.

+
+
+

+Sword General

+

Key Catch for Lexicons

+

Bibletime can create a key catch for lexicons. This speeds up + opening large lexicon modules. The catch file does use some disc space, + so if your computer has only a small amount of free space, you might want + to disable this feature.

+

Scrolling Behavior

+

The default is that a down arrow moves the current position in a text to + the next verse. This option allows the down arrow to move the current + position in a text to the previous verse.

+

Specify a language for biblical book names

+

This feature allows the language used to displayed book names + to be changed. For example the King James Version can be displayed + with German book names. If your language is not displayed and you would + like to create a sword locale for your language, please see the + crosswire bible society developers site for details.

+
+
+

+Sword Default Modules

+

Default modules are specified here.

+
+
+

+Sword filter settings

+

Filters control the appearance of text in the display windows. + Here you can chose the default settings for the various filters.

+

The items controlled by filters are:

+
    +
  • +Show line brake after each verse

  • +
  • +Show verse numbers

  • +
  • +Show footnotes

  • +
  • +Show Strong's numbers

  • +
  • +Show headings

  • +
  • +Show morphologic tags

  • +
  • +Show lemmas

  • +
  • +Show Hebrew vowel points

  • +
  • +Show Hebrew cantillation marks

  • +
  • +Show Greek accents

  • +
+
+
+
+

+Accelerators

+

Accelerators are special key commands that can be used in the place of + the menu items and icons. A number of BibleTime's commands have + predefined Accelerators. All of BibleTime's commands can be assigned + accelerators here.

+
+

+Table 4.1. Default accelerators +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ActionKey combination
Auto TileCtrl+Alt+T
Auto Cascade Ctrl+Alt+A
Cascade Ctrl+A
Close All Shift+Ctrl+A
Configure Toolbars 
Preferences  
Quit Ctrl+Q
Remove Selected Item(s)Ctrl+Alt+D
Reset Main Index Ctrl+Alt+R
Search in Selected Module(s) Ctrl+Alt+S
Tile Ctrl+T
+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config-toolbar.png b/bibletime-doc/docs/en/handbook/html/hdbk-config-toolbar.png new file mode 100644 index 0000000000000000000000000000000000000000..ab1f51318a57092e4014056211a5c9f8b202ab7c GIT binary patch literal 17212 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 G^#1^!%wLB9 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-config.html b/bibletime-doc/docs/en/handbook/html/hdbk-config.html new file mode 100644 index 0000000..4069897 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-config.html @@ -0,0 +1,61 @@ + + +Chapter 4. Configuring Bibletime + + + + + + + + + + + +

Configuring Bibletime

+ +
+

+Chapter 4. Configuring Bibletime

+

The BibleTime user interface can be customized in many ways +depending on your needs. To access the configuration dialogs, in the +main toolbar select settings. From here select +configure toolbars to launch the dialog +configure toolbars dialog, or select configure BibleTime +to launch the options dialog.

+
+

+Configure Toolbars Dialog

+

The Configure Toolbars dialog allowes adding and removing actions from + the main toolbar of BibleTime. The order of actions in the main toolbar + can also be changed.

+
+Toolbar Configuration Dialog

The Toolbar Configuration dialog.

+
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-inst-sources-installmgr.png b/bibletime-doc/docs/en/handbook/html/hdbk-inst-sources-installmgr.png new file mode 100644 index 0000000000000000000000000000000000000000..11c577aa0be0c8a5b3c111edccfa0ccc67171679 GIT binary patch literal 22187 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 H+l2iKQZ-Y~ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-intro-ToDo.html b/bibletime-doc/docs/en/handbook/html/hdbk-intro-ToDo.html new file mode 100644 index 0000000..b18135b --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-intro-ToDo.html @@ -0,0 +1,59 @@ + + +ToDo + + + + + + + + + + + +

ToDo

+ +
+

+ToDo

+

+Very much! +

+

+We have lots to do. Because we are a very small team of active developers it's +very hard to get reasonable results in a short time. If you are interested in +helping the BibleTime team, please contact us at +Sourceforge BibleTime home page. +Information can also be found at the BibleTime +homepage.

+

The BibleTime project needs programmers / developers, reviewers, testers, and +prayer warriors. If you can help with any of these tasks or think up another, please join us. +Without your help, BibleTime will develop very very slow and it will take +a very long time until you get a full-featured Bible study tool. +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-intro-motivation.html b/bibletime-doc/docs/en/handbook/html/hdbk-intro-motivation.html new file mode 100644 index 0000000..d8deba8 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-intro-motivation.html @@ -0,0 +1,71 @@ + + +Motivation + + + + + + + + + + + +

Motivation

+ +
+

+Motivation

+

+Our desire is to serve God, and to do our part to help others grow in their +relationship with Him. We have found a gaping hole, in that there has been a +total lack of user-friendly Bible-study software available for Linux®-based +computers. We have developed BibleTime to fill that void. +We have striven to make this a powerful, quality program, and still make it +simple and intuitive to operate. It is our desire that God be praised, as He is +the source of all good things. +

+ + + + + + + + + + +
 

Every good thing given and every perfect gift is from above, +coming down from the Father of lights, with whom there is no +variation or shifting shadow.

 
--James 1:17, NASB + 
+

+God bless you as you use this program, and may He be glorified by the work of +our hands! +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-intro.html b/bibletime-doc/docs/en/handbook/html/hdbk-intro.html new file mode 100644 index 0000000..eee082e --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-intro.html @@ -0,0 +1,97 @@ + + +Chapter 1. Introduction + + + + + + + + + + + +

Introduction

+ +
+

+Chapter 1. Introduction

+

+BibleTime is a powerful Bible study tool written for the KDE environment on the +Linux operating system. It is based on the Sword library, which provide the back-end +functionality for BibleTime, such as viewing Bible text, searching, bookmarking, +etc. Sword is the flagship product of the Crosswire Bible Society.

+

BibleTime is designed to be used with documents that have been encoded in +Theological Markup Language (ThML) and General Bible Format (GBF). These markup +languages are focused on the requirements of religious texts. +Complete information on the supported document formats can be found in the +developers section of the Sword Project, Crosswire Bible Society.

+

+Over 200 documents in 50 languages are available from the Crosswire Bible Society. These include: +

+

+

+
+Bibles +
+

+ +The full text, with optional Strong's Numbers and footnotes in the text +

+
+Commentaries +
+

+ +With a Personal commentary you can record your own personal +notes to different parts of the Bible. +

+
+Lexicons +
+

+ +For word definitions and Bible topics. You an choose a key in a list which will +be displayed.

+
+

+

Additional documents are being added to the Sword repository frequently, so visit often.

+
+

+Changes

+

+Please read the file Changelog of the sourcecode package if you are +interested in more detailed changes.

+

A listing of the features included in the current package can be found +in the sourcecode at + +CVS log for bibletime/bibletime/ChangeLog +

+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-MDI-Window.html b/bibletime-doc/docs/en/handbook/html/hdbk-op-MDI-Window.html new file mode 100644 index 0000000..aacde8d --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-op-MDI-Window.html @@ -0,0 +1,139 @@ + + +Multiple Document Interface (MDI) Window + + + + + + + + + + + +

Multiple Document Interface (MDI) Window

+ +
+

+Multiple Document Interface (MDI) Window

+

+This is where the opened documents are displayed. +documents are displayed in "Document Windows", that are specific to the three types of +documents. Crosswire Bible Society may release other document types for sword in the +future. When they are released, BibleTime will support them as well.

+
+

+Controlling Open Documents

+

+Document Windows can be controlled and manipulated with normal KDE window/title bar functions. +In addition to this, you can tile and cascade open Document Windows. Use the appropriate tool +bar buttons, or menu functions under "Window" in the main menubar. Document +Windows can be set to automatically cascade or tile also.

+
+
+

+Navigating in Open Documents

+

+Navigation within a document is accomplished with the Document Key +Control Menu, and the scroll bar. +

+
+

+Tip

+

To move to a specific location use the Document Key Control.

+
+
+

+Tip

+

To move within a section of a document use the scroll bar.

+
+
+

+Tip

+

For Bible texts the index key is Book - Chapter - Verse +

+
+
+

+Tip

+

For commentaries the index key is Book - Chapter - Verse +

+
+
+

+Tip

+

For lexicons the index key is Keyword +

+
+
+

+Tip

+

Drag & Drop Works Here; if you drag a verse from one open document or a bookmark and drop +it on another the second document will jump from it's current location to the location +of the verse or bookmark dragged.

+
+
+
+

+Editing +your own commentary

+

+The tool bar of commentary display windows has another button, with the picture of a +pencil. +Enter your notes +For the "Personal" commentary module, left mouse button the button with the picture +of a pencil to enter your own notes, or to edit notes you've already +entered. When you're done, left mouse button on the "Save" (disk) button +to save your notes. To delete notes for a selected verse, left mouse button the +delete verse button +Delete Verse Symbol. +

+
+

+Tip

+

The personal commentary is a sword module. If you do not find it in the +main index, get it from the +Crosswire Bible Society.

+
+
+

+Tip

+

If you can not write to the personal commentary your permissions for the +personal commentary module are wrong. Reset the permissions to allow your user +to write to it.

+
+
+

+Tip

+

Drag & Drop Works Here, just like other +commentaries and Bible texts.

+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-change-range.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-change-range.png new file mode 100644 index 0000000000000000000000000000000000000000..f85ce40cbb59519b2ade25723999863bb7b26b4c GIT binary patch literal 4442 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Ð4&=sFXT55~?Xmjkr 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 TwKJG5=U7T|YO>{EXu!V!ifGil literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-module-select-2.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-module-select-2.png new file mode 100644 index 0000000000000000000000000000000000000000..496c404d19f4fb07af60421c5c980137ed5a7567 GIT binary patch literal 35998 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 QvkXAs>FVdQ&MBb@0A#|X*#H0l literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-module-tree-1.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-module-tree-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3d867412ba53a3f24ab6e079a923f708e8da338e GIT binary patch literal 15869 zcmc(_g;!Qj^zVOwhf*3u3E`1$qy*`flm=;#?(RmUJEglzxPw(VxJ&9ipwVr;T@fBW3b_AKyWyL_A-h$RpXD#Z2vMxc{62^)HxT zz!0S$1Tn)`^kw$P=%Uz~>Q&)$2+qFFm9+Cg1$&Z_y9>9tkX|MfZbCKes3MWLZpcEW zZ8DyIYDIBKw_nu(I#}V9SVyQ{va=9jJom0&kV~Rp-P{>{s2R5Koy5Qpzz{@2^+i@| zw$^#Odk|$%MM7b4dA{F*>Bz|d*xWTtD^kNvABTvR*STv~H*1)&p!y>R#;%_mns4zG zwCIdD;XtCo^6w6%K=cV zR~1)XyI~umatZXath@4{>-a(dOuf>rfac1&&%M4kepJ3Eg1BZW=hF7!JFT&4>sIU$ zaHsIHC*A6$`MA-=`AEzOxB=wK1pzfvo!D9NSj_pTS0a}A+6hDKSae|l=cPsqrhbap z!GJPFx1!oGpV3_xftQN>&?`ZFgmW<<_)15v_=^fNyx_$QteByskABxl?}-+8bAUhZ zo)}eJks@GtzR7o^3CE?VB9LcR&fke0qL|UBUG3!-DN+4Wme#g264B7a%8A61-FNF_ z)nvS4P8wWd6n*+V4oaJ-{tG|pc$op=IO%vWbl~8l(+fHcNm6FCPDP|gMt%H+*A#Y1 zidN>DDmMorj}TVckloe03;U1*kk#RFAO!p7zt_JRtrg`GV;f@eiTWZ*bsxIeTC@^d!BJPVK4I|Tmtbgxd7R?a^bjrUZtIv)uKk_=y*XgDE>?57A7 zlA={0M59VklnTxq6hz6cE-wHA_WRXv)&Q<4u6$bzU5F zgg@^wwc)^mXGQ#t5DWmFxGGA3@Pl$9%BiCIq{Ws7g|`%?(;mmnhYDms5E4Dbaq74p%Zd_LTDhSbW5a9dQAJU-hhiczq^-spAn8y+jbaur23*nuK*O^MfuGSRE|u z3)#N|^iF2RCDiZi**N5#DU15P7S05ZZ7JrU*7bBsSO5Kd9?MWQHW7iOXO+SLzW6M3 zy;=+Y=M|KPTHO?$te+v0JRn!yO#YM7I}=8F0|-Pg;<$|cyR;}?&()6kwbKy-fPX>Y zPHTkCWkisB;Vvvn0Fep`{MvqP@b#v#V=@&52krqHx=VT z$edvM(owr5G_k1PK{WPlVyB;|SjM^3v=Blc?5trrp6UngM`m>?I&2K$+6|@H{hCBV z8qGK;xh5mK%JMJoV$Vimg+(P+#7I%hAiQH~-OAdIc$m<=7g@5#04_~_K%-VDxd&~z zuxiD3W1Zf`Jf>O-CH^qV%p+3_LV$t}t`8x>*CAgh(HDVEy1Q<4p~GHt-y5}hO8FEY zUa&Z=9BG}VA4tnl<5#d+d^7)`i(JcocY!AuLF)I}FUUu=ZLb64y)4s2g538HYXY6@ z>B6056LwKZEDAQVku&-3>XHa1QtD$w1dIHV2$>z-68 z@L01HW7E9UzG%EVafa08^)ZAMdc!b;#ZpM`0DcR2w1f9~TTLx&2de2L}LTz<9}>U&$?k41HgIL2-(Jt-~YG z-|5gjq8RJ9(`qiWQwHZt&FkBZyPA&_iA;df_w7Knl!X;*H1#`DzZGg)mbk-$*>8n< zis)}h06cNHDgA|+V+s&W8vu0Tx!#z}04FD7CHgP0e8K4g^tO~{$jwk#Fhq#LEkoU43Un1G+=EPgV-$N|I?6hSr)SXhjq0xXGT zh8GO*8J%~?<;^9gxy3SmAZZ0#F;dLEtUgPt!*3vdgbQex+b5K4n9)*t5l~n6k!M8y zo-)Bm4Bg^+*4#pwIad%b=*95igzj6v=J)b5_g^y1(|*KMmoSy}L>W>fDql-gO7^N7M4Q;#9!~cYqL7mWblM(5vfKzcj=r&@13z!G`?rIT z<`o}#87CbCnc-}KBthxcGm{y5p90ay)MHWrg9ceD-n>)Kvl}xW83!`xVf4b%F%iMW z2#X8F{Q(ErzmItkpg>{8?8aoZ$%o-b$plqs62qxS&`7?QRRW@PFI(70;-K<_xTNyt zxs)$>rH@ZPnxEYGDz0wUOawIQxPvS_y(v1#3n8VU?8cl{@bIf1gFoOnbuDJVjv_T2 z5U+{K+L+A%*M*E8bxL^*AB z6Hkc4_g}jECTR$PcxyDFj_FDh?)MGMi<&$)<`NFIztluDI0TV4uxm-Wz!tu(WdB;# z=((pkA@4BUPPruv4|nAPGSn+Dg*@pf1N_N z5HrF^K>jy&o9gv=rJDUunK4`d$_wW^f|ibSD#@7J)y$RXW2l2^3NV80)Q{X zH%UxKGDRZP`GaL zc&;02lJ&xuVCKbiA1?2o5vb09IaDx*55s3+DA@!BtRW;*t2n)ZMGv*Kzy!Z^lG0P;}s{9#imKz~!un+-6cq_n_F^FTUW6b@EL%TB~e4maj;3DNxna1Kv<@f4U ztW!5DvUYG%l;^lfJnIr|{hb-8Qg$`okne#$Z`V zqR2UDZFA8H`$;r2xyizq8K>BR_}kZ8f>VPScb5#v+9?+o+bp@x3;8`ENrJ4N2*YIj z;M(gq+?@D}-s2suJ0E=8o_i$}kVWa1Mn&8}hDxRO%UrjQk1x%PFR5b!ZRwY7%pi_hD3QgrXqVYYiSmz9zv zvqtqRsT!f7RPdO(M?5!|sWIgv`st?Z#8cqSDSpAiU8p9{!f}T=p^n5{z|SX9#=$8I z)ahVW`Keb$u$R*pko{@nO0@M;Iy2TyQRe53SeT(MAI*?Hrt~EM?IPV72{08n#lzUoBUpAMOvA6my3i`7Xi7VNhZDX{e#s0Qa)tTUAS~2NP(XP4qvC< zEQG$H=p>g1o;e9|lrP{zC~;%nVHW}2FWC!5`K!hUxdIp2q{MI!v7xm7eaHjZXpEF% zPE?_4$umazaV#0GlpoXh_SRwFokOqw<&eVL?La8?L&b9(&MS<@ON#=hk_rB7j?#@2H zn)+l|UWd1_p&Y;XsB%RG5e0D4kP@Zc~pY1o`5 z*4^j6YZ^WYr+}6jTx+x3eyGc%_LOIEkGsU3aj?6v!k7_4Gb-@_w1S3$HeVvi!tn}a zksDC#j2(k1oe1M4 z#v8?_tovqF%6T%o6OiOL8!Z!AP1^#j*;DhgxKlLI1>4A3^zbzz?yGg}JHI9E09-bS zDZV%ek-IXlC;3&wE}FeXs-2u5Kz&7|s~?tcd8q;L)4@qpT7>KC!2!$YCJ3M`GOV>| zw9A?Y^qKY)7$R1H(He@RU|T!XHCUbi(nJ)j`=}D7Za%tnFKls#rf*Ylb@Pq@K@Kan z3UncZR(s^sOff6`MQVkKL)MQFlFWEKx2SR|@2s42RsyBX*Z2sF79FKVtOcvEg1>sj zaT@WAyW8GGwf1kT=4Hcfx;x9$OOhsHg5`FMK(FbGVm8`Sw|sMGqj(ggL~N2*$tXXS zZ=LU#!UP19+9()^bHu7x=xLNhQ~v^RQG1xTxi(i2s5jIH2?&6G%1^L7wLT1 z;0K0}#hI|8Hd0GS6@&v!eWbIDUjqVo*Uv-Pq>f7|+X+vqb(M zVWrR>?u8V)eqq9F1&XNccs%@$Lyht$8!=%Bb^3VSs3nI{%`JtVOOJ+`#YSHe{Hec; z&|L5IU23ikldRl>FSl@c*~HQNi1vlp7^{mB{FSyM_Hsno3xnmr%My}3awPfMS!4Ya z+?=4)i!Jf{R3uDJU+=)I?^ML8Dx)<`TTC3bIwixz&a(^R!Oi(lqukq=3H^S>oi~h9 zo##-=P6TSBLO6=;Z@@>3b8iug^!Mye=-2xs^AJUN*UEFnJxZhNBXx@u`C5C<{ABzf znNJ_SjI}Mc$XM0J6L0WAVwDLnt7a8hvm>46nLbvEE))fKW6 zMZXfArK7N&V7|**gmH^`E|YcbhS6e~jarJa%K^DGh9k%XLc?vQ!72IbiL86Z0k>p5 zS?k2o1l6OHgn`wh&rX3;M>8Cvo;ZlBm^i?(%Q&9zd9%hKgo{~zRnfyUI&WK=^3LJQ zSvNH$T(F!Jw`s;rLb8{nd1*1faP35No?vUVp|^hFjJi|SaCyy?<-seI(~o8)k#ApO zq?C~V?1qWgWI(obur10*eP$P(sS)xt-STzWv}dBW z=5JYDW7PgvL6eb;L9t-bcRV9G0xvuh34z^yndY)u3R*Ui+qAmb6_nS^{Nqfw8&KJgXU@)hg$y7z#4+V|EZ^_Y(eR3kU6B+^k( z6xNSL9W6S~mD$B%;2#S@n<7|wf8P&pwy@*Z31UHL$=;m4Ls7KP`mZ$n;6%A#ohSfG zU=#p3KSW3h!(@}bL2#)=E?G{c%$bwXg8k>%n(SWF%=?{9!U)`r8`>Wgq-sHW48L7h zniqx?UI$qU#8^(nQyE9)v%dG#pEoQovyNp`+m4($Dlm$G-`d(LK-T0h*D4J}2OFu} zq`N>RXn$|Xi@G&6Xf^wdw;e+$N>SvIFf3{wQuDF}<#o1*>~h)I2iZNA$du-;*MYBm zgrbG@9Qitj(BOc$U}kBVN=7SOTx%b_^fS)e%MW-lF}+W^IPh~{g|*Es7JZCh_rf(nUp2_)}9Mtk*Q!pl)sSO za@dk18j7EGA z+m=c+nq!}nbaveGdSQL1g2V!dskt=kYWA!#SMHL>9IIa#wi_}1p$osg1Egv$P6c5N zn%75*FZW@TZ^fMu{Cr1d;WMP}{a$THZ1S zJ*Fd@BGEY1Ntw|K23jh{yze73M*X2Eio{wG`(!BoGF0z3{y{?UKUCPdR5Ja;0olmS z{&59qsXG+KA1{J^(||1%8zMx-Y1X^b*2|-M39^KM53DhV?9A2Z2bCDmf3w_Z7-Ks~ zqXrSe%KOsTZWKYV(OoS-k2}XE^@%-DEDEQWoUltN2zslp@2Qk^EoigS+8nd>)(MC^ z%^~h0PuZn*$eAOh)n|>6i=_nC3r`Fb2u#ekXD>*Pn1zMP*UTc?NT)tWJvXn9S}lbS z)bq8K-|JnETJeO*=Z8oyOtWqdP8Sw$%t3_SSf@6JzOy$l3m(42F}Z7Fv)JFByJ+8E z_bnT}dJ|>3AizWvias+t`(b5nqw+$DATMwJTv6>O9oK!q!hQ4A9-G$ezCWlBYZ}gbfRKqy6>O$3lAIUUGXkmUvl41Xnx&m@R>ksLZ9#XQqPVbBkRu zDAv-62iXU_=jBb4j$rsQ>9~}=$|;x_TuBIAxsXbsUB(UW^T3XHr#)zPEZHJW6{d3J zX{PI)(;F0l-v|JrMF03z{$2g2Sx3t+x@+>4E@|aU_0=-Xn9dE$bFmH+Rsxpf#9#{J z)BFfqYo~Nht;Kc4;@I4sm-l!E={p3V%+oY~)8rTbch8^Ckh&M~NlBXd49v`PT5{64 z70L&dKj%>W8})xLSJ&sBqXW@^Ya}S$B9qXS!mZ06zvE^X^qd)b&1vn$UkNoG*r3cF z3sU8s7l$y*z@6sA13Gz%!UcaQ$}8|xd8>_glr#xD7K+@~5;JYE#q35FIW&EmI4Zj~ zp02v^0mDh|3Ah#SK6QWc4jV(p1d5qL^=?m`*iLDL< za}J$w@_Gc-=N}aVEL8(egC}7&_p|~jJsj_KeB5IOL=)xo>Kkdmr30bmf*H+(;=@`z zrF0_WLX}kz&I@dv92_9Q7kK4|+s%gHU-_YrY?@qSy4rMaGJjRdZ&1)Ei#WI%0-z=< zV&Jg8ic?%GMj1w{FE`h`T~oC_nwN=Vcjgy28vI(676!_G0R-Hj+Nbx9F`;-J8?Q9S zyt@xB!OYfpTsGv;VzH(&(G7jYlEWJUuA)PQwCI{cm?-HOwA|a6WJY#D(z7;S#=28f zEW$PCc&h^`zufOGewy2!Y*w$nsee1x0Y@yMY=s0SdLV|_Tz;Y0ztq|umcq_hQ~{`9 zD}M*nm0U6ekQ0KBj8X_0jLuSymt;sj@c?|0Y*3x}TV4WWg=ES(?2@~jd( z-LKPLQ3whKhTE1o3zetx&XsAf@v!sUH%s(IeRtt&puc~c?U|Br?N_f;Ck%W^-6;%& zHvRdqVGwA#*#EU1KLuB#W_J0eS!e$RDY}d0LI2>*QCY{i{B?G(&4(k8Kj?HASlNVz zbZ~%t8w~p$O~&rx-Ef9jn9b7p15q#cQtn&q1lo52gE#=%04gd>`MUjT&IZ*u@J+r&o}9l4HG-=hL$U38zCWA)}7 zS{M$$eRDD*SCU**a%Pjbpe4FXkLoY!vD){#E5E7;8UsFs3OdVbZ;BOv_dtJ1RJICe z`?&DkUsbIAY`0QLP4!Q#WmtG#derXNTU=^VHwwd{M_;`}2c@gNi_OYoC%kd`9ZQMqRQelBn6R>h99x~kw@XsruhqTo5dvH6iM zMW)bg?U^gDwU(}eLUxl5FUhAUk={^GQpNGAs&A-7pES>daZt^f%*JAEm=~%nKFvvM zU+PxaSesMT5U!V7#iK-rD}44nN3cXC5lBN7F>(?U6C3(AvBl_O40Ct)oV!JeM5hQO z>qM=}dm|khb6(YdEBYmT;#?%efo1(>f$ec7-g=>Z1x9;fV2OeiA~o1q%B>VIIPDS9 z(3-RC5s`F#Rv?XhJpNd*hro@XDDMBjSe%pd+j1lrwv{a4|M%Oko4;Dzsc$#AM(&Bt zEKQeBha)SJnhEhgIJV8#H8|Lai6K55R-YVQuAffDt;nmRi|7}X1uC_@XREb0bKoU; zJ?8j#(;fI(Y@np8t2m=S&J{qHV7 zSIb<`k$M-qrm+h{;9c$V(&V$d&w;1q&KS?`upSLwNyZ*^8nZLqq|Z+u8{M&DgP4pp zM+!CUKYndvsZCa&#lE3grc~MQAR%XkZ4V9(0?-7h7+O*8*SRLmb&v7vswOkp zQF3;C0KDLmlASC)wr=8-y37QB%FTjnPxuR}@s;Q*%9`TRVJU}*58sU*dt;tjZWbC> z1D7ulSQ9J1U=Yho;qKtXPl~esY3p4&yJqYb(KxbNxLmFX{EiN84)6ttj@^st9mi7s z_f|N;iXPk?zm;>IH#rKFeVbY&aUU5#-T~Y9aQ2w%jns~+ICKMltMq2EwakKXrq@mE z`XgSZX3Q(&mRRd7r}=~s-f7Z`8y~^}f^-Q|`HBEk2XDv(LT8?6cwiK=a-6d54nX1M zRSI9F6CJ>hKe5j4#IgC~1$Y+L)RvnYB+fnBH|+891H0}`VW_1LLd^!th_p~hC1z+2 z4T`_34g^rZL&R#GbJaYuI(2UyYHtbW!`2(>unx(LaCvAoaOm6C9y>I@*C#sv70$h6 zz?%b(0?>O5yo`~60P`!_GrwSSk5kPhNiBa;M?CYN|I8dlRd_ib2G)&)CH?62TEH*w zz)Tv9cY6B)akE)vgHh>}I@Z?Qb?Hx|jn=g5w~86*k94aJ z_pHjV>pnEFf6AS(?D%kZq0Q{<)G;{{KK3R}F_}bH{g(mzE6=`ucv& zl-Hcc%LzjU#o;wR^M^)*j7G*@o+H=nU3giqX^W_eI)dgPk+ zut9jsg$#EO?S&Ea$I&UraLwEaQ>fm;?Hd%xe35lec&I76IcT}?4~TDOtib7hxi!zQ zB?$ewwWA4&vM3OE7-xl=)^Q96y?5hp7W%7^;+9eTca4)U&{@JumwLc}jGf8uLn5;(kID{0vXqNkBBXJ$5NUj;W8 zs=T`g?r2x#UryIw;6Iix{j7M5xjIT}fgM*I^UZ5s_cVjU;BYXX$CVKp273wpd3qV@yj0uq8T zS;_gWY`^K`D3VcS5ECrhuJz4jOj^f{_qmfQJ&diLq^6#>344&C8BM^9j z-F*pIVb<62&Hr-`_c;sD>#p=tA0t&oBBaoV#In&-8r5*qxu{ zJ=Vh0g|iTr{YP<*Hdh6$+i|G^)KB06>RRni2)#wIdE$$dnVVQjIakDfeqs?AJpL6t;h>|I@Z(*ZXb%+04VJZ2zbez19Y{QMknZN$QZ%fmsst%T4airE< z_h!6*b>|xCi5r|{Rl+QiRI~r+9b$ZM_mA10;>+uWxgf8u*Pg}tJ8Wj#2}{1! z86b}auWo62PxiMpZHDNOiK+=_7%hcR6m4I;FVXZwLPjo@QAg`{991{F7ym3?B#O%} z6c=xV!4&CYYx|x&lQ^_~Y$2nhgpScmJdnxZ=ewOCyuS__Sa~QiKR%76#y-1f8mv6) zs1=ok4y>>1si>&HjUo8Q!*65j{#^-P+nHm2OUfreGT?3MM24?TF*mfQv+^4+0Q$W^ zFSi*tfrU3G#G94c{V@io_u>17c<)t2Gm1YHk>dY%g4VpwMP2w6^;hIlc4mZ;JSusi zg?^1728H!$z;eI-nWE!04jJwXXJ)*wX3E5Uv}Dx4df*iYc-~Hq|9fBk z&TulCOU<_dfxJHeh`W)&FViOc9dNA(t_O>1 z4BozYRjDqPb>zZe2_G(k-A#!xwn=o_E~Wd(c-bw2GtfPLFB0{%tHAl_MWFsFt9=u- z)VS{cEeG+~OrAh8ilR&!sc4Do8s?Jwmd`t@0`Y@I4N^Lu{^9NcRj!;?u-7CM8 z>*VH)#9kI$PI|UkLzT24ua&v?V`wYKKYZXJLI(p|D@9ztgQ5KaRDH-XIj|-ZnWL;u zT`EWwTxO>hTIjLRt~<(C1VU1OC}of&X{MtBoi|_fMwjkLl+!CLL(9(Ke~ypvKkg6i zqVXAZlmklsX;sKUZk}KW2f1S+R${Uqhoy(S-RDz|4}FK?ACB+bJ9jhEo9)55QtvLk zw9_VitVvjg!HRtFr0w#U1QTfpn6=Ro@YMezt;=7&%uec+LQIpXnqh(g2DJM@xQ(gl z?l_yQf1%l&rbt)@EU=J!(fko?~w6 ztCcr;%vW141|4et+@1K)oWx(3Up}kJQ~2S_+wi{4uoV2my=8-hfs^n0XbYgUrZ!JN zn$IpA;z}nDMIp41YH#B7(FrPk1e*{dYCd{&N^qLd6oHx+L!i&SDD<#Xdwvkfg!KCP)6{Ox<$t~FFo|0OQ`&6o!ehYKA0xUQW5;gc+$O2 zy)YBpaaV02NAaK6Gx6m8vnL;pAto{TGEIWl5K8-S{PJm)4YebPedX`*?BUn7 zT$2N=>DhV9!T#mJmGMg~h+RnfDLCOI&kDJCrAzkjTOT_G|H_18F~5V*efPtS0Wkpp zW(|B1SL;a4ME=m*&G(IPNdT{5Pm)EF7cE8T#%TLyi;lpnj~@kjb$+A!t%r3JbKkt+ zXw+wyPpo-b;|&wU$`k!*wGYosNeN`dSJ#%;)o5CnNDqk4`8Gb*`Sln3`Q_~rJ!&l0 z21l5IFg&PYYya_vh>K~k84R~cmh!=SOvM$FRcEb4%eef%S8fzMI6}Eh`&K4 zp5_VGvX4Z-w1mZR5&C!G^6UB+Bye9Ys1Xuq<)dS9j{my5XAb^kOiEq;8xBR;APMqt zy8MjS%!k)ZIqfKiE9V+56ifL+ImZn1nC&oR=w{BmI%9;&p!(0tuKB(osDyQ+*MfWs z!YHbWni{8Px!*~^&W$K5n7uGkW#S}I+us!Bqy**I-GMts3wPwQ_F@gJ{-?E#a}ALE z5`WL!C6UB6LA6%?1a%n2Kc3js^Iu6NtL=GRe;@V-jq*!HSot9mkc6f1rMioB-!CZ3ls_aki7Ewtu~e1+nU*81kC8bq6Sqf$R3P)MRU9xMvES}@)ttUo^LK2%FK3KW>|lsUW+57whMqc zD!+|3qmf?SgVg3+xU18560~f_HtIut*5f5ukO5?#O_;!>uBvL{j^^x}54jDhA-tK-hf*rZm zbtonG+Yj!PJwi^}L(YXAU*jNXzRWB$(IgMlV@Sh>l)n;DC^|&+$VR;@3soo@^##8l z!T+IBUNOCPd^ml~0CM|hOj`B-kHr3=Jv1~_EbR5GY&wuDJ-_t1rBzg3c?=Prx6dcf zXRnIgLQm^5O& zMl>?~op`qq{z<>=n^~HLF6AZ_=r$s!tN)A_jMmXV4?(INpiWj1TI>*iuCC08u-Z~Z z|5qgjtP*poGIo-J_S%*}Km+|}BXhs3${}pM-83l~M4-D&e?!@;pzv`^Gz)*Igg))6 z=4`0kleN)I+z*F|0uil)hC`_SV1nae?m~CHtuo{)~@Q88#Ob1h36EjWFu$BE! z=0#&Zf2bHaED3$@ZFHNF)w9j18zUHb6!tztgyKy9cVaMkJ2#(}o}O)nVBS&~^y_~X zPSjTv@0x6Rw@Ba*-Sh)3Tz-1g>&1LrGf0sjr4I>$_BZB4+o(Hq@A_)+nr?=xn!QgH z#iHO8e`K^^0#69B>iGi_Q9_jd(4+sNua{G1V3(LZ0{QLKn;P&XRfU~4>NTXx|8hH+ z;dh#|XT-}tlgYk$fvEZ0>*_O<5|OJ98VA~>@Xx4l>|79`v%b-ryQmA08bEnHU$tEv34pI_CqLLz$6u4EJgbB?!)(&uK~TqTC;>H zdN&f?RsV3M@tf%7+mkL#-TN*JWDF7%QglplBxapf6hNu)bNY3U8>n_zuD;&MzJ9lf z%g#^nl0VePaicp#fcU8kj5?dP$JstoA5Tz>5C4oQwKvq^aT_Pc-*mTM3N8t6OH0Ut z(M>&r5mFW&pJvubJz(=aVXp=557_$JR^9K*IiuP_dV|8{z+T8O>9#*8JmlJPEuTw` z{h7nW#K7=A8=$UcFaekN6I<3~;(S6fi3~6c5B$q(cvW6LE*<&sEc#p|jx(B!Wwd$T z+Vdk^vl$PALI7gfJAXVZ_V!6i{IItl?fV z15(1{d8mzZ*;YiTS}fZCTQBErNY7V3KE5%5XHQTGC5wqRYVwU68yXxe_?*t|usxh= zvgXvx&^NEa__0}tQe}YK2<1k;s3gj}qht^ilT+W{{Mlh0h!CD$% zEr&6_2CJp|Wv$AxvT*Qr(yd7LIN0RPgH>kcM+d6a5I-4=@f#|}Pm#oKcYB3Ffq~VF zuu%Gn##0;X*7H#wqW0O7?@hXbg(6gxrk-($E~{=kD=upz&Xq$+%$cq`-61ZY4_0eh z=)Sy4!A$|3#KrSZq(x<$Gdo=f)Bv7v&2al{Yv|)aPp=^V)6M3|gzb%~>;3b>sNM36 znyyz@8PUEu43wx~1*z64IxKDD31ZP3e!ZM#O{cv?Cc{5Ye<73p%}ihz3K88niRlW8 zB7WK%^KsuwP}A`^tg9(8UU6Qsa+z7<*l}?9DHbln@NY1g&ks8tcQcjz_XjmeOxkpM z^~K6kiCdWbH|yWP;?ZwS;C70-vU$G*6g|gxgmoYH)$Gt9$yom;?ZNvQtmJxkv6qpN zA-oc14AMbCYAo#|Xu0Iq*KH^On3?scAoHI|!2j0RZT6~^svfR& ztT|qtO&2RE6;E#sC7pXx_+|Y0^QR%I*$|}zY9;% z7wCd6g-DAcWRC>8L|3cLLbcH!+j&!~Oz%6|v2%~B0|F8f@6+$EpKWh2kK3+EYJNX> zz5ge37Dov@aS>w#b^Xz`dYl30=A%Jxc!}Q3+Ui5Yc{^7nmGZZ5J^epyx14;uv`++( zVCFDj{o(d}rQ`T%w4sA-wodp($ksU0((CM)U3 zkGE|*8E#B(&^}lG$dJnCCwTfhnJ?WtN4e7rjuGU9>)qp2Wyh&ID8>8KU8>1FuNB_k z-Hm4O+%K49x;+hwpwLPPp?novv+#WS#gv>wDy6}{*NcdVfcc;OJK5JQ z^heFGik3a_UVw{8 z$qWI^Ed%qraJKv|X~%UG0F|7a5FlAuYkQ91T;=-cde((0@NiHw_G0qm52^g8v!sqR zUbnNq19A5{iw)jgcV}m3u;VQ9Lf@s_6WFdMsPNJG~ahU#z_4A-SZMLnY%0P0z{|& zH;OUddo(~M^#l4bh0qH`LR~XE5L@Z|UUz*0PgQ%6q}A2c&S8d(*8*){@6?W-2EosZ zd$s5Kfor5S1DjNaekf|*nxs7#F7AlOj19~7pe1#G+#|NeK?d;I+hYwzQaA<-?KgWP z#E+%(6(`sxGRy7e0Jbuoy1 z~()e%Y6HkO=Tr+)sTG zUXrzDr_zagLv@|!`8xtOV+L~_Odw z5(^a{zmZDnBk^D$i8@}W>1&jX&6|lTL-PIYp4od5y5};x;s#C$=Hqn`unwB~0P~uZ z%XK}<=IONU*Y#+ofNnGa+py&6XPj;nLfyTMOLtDo`IDB%4qV(EyHc9a+MWfUNh@-^GHVj2K{hyIE4e&yHA9>gX?oQ zl^L!nrl576%b^xi+CFg;k)sl_a|<)paakD#Gh}1eKRJ%u?~k4`9zR8q@LkPT^%tY$ z*Fq7iMt_;I6Gn(*l5pP)`8;lcobj5w12NjZdgH|YYXF^4w^&I>=V?st(Lq`|Y_Ig= zXgbeadwsf=*wNG3N>3$`h!1rLP3ZB%Ui!(z$**t7Yy3}FK_&tW)9DnJNSB#%&$k!% zh4(rz&2~pO2PHQ5HA6%XPOPHJN}r7o>ax|8tEc2^wdb)J=I5g=vbjM#A*}ZI*DnQb zo-mzxYseqmZ`xc|Jx-t7ZpM9lOrKhBy*r)<=_`ky>o=6?oc6~GGuF;MeHuHUPU5}q zzzcN%z{tp$sdbZQ*5i#qRFwX*N$At(SP(Eic+WJ%7}u?nQ=~_v z#KglppJQF*+C9$N;t~D{d`70UaX_VCOdssPw$0f3DwI%Q4A$&7}3-+6%<0Hwdq&$8!VREtQSiWl4K* zjWT{LRPQNgR^$bDC+x;rJe#EWk6pcy5t*K6lD!3B=SUCuZYDmF%HnNK88}f(+UOqh z__%-a7?x32C+M@|9B$S>&FSIDwj*33yZzQ1lxGJYXwE+i=2J)#XpW`xa55zG zE*O#hKBCZPD_TgWuxYhW^CUtDV-<$Ao~}l`|RFx5z10d=#K}0 z=Us;aH5uLW{uGd!M{Bw_*S~%V{i0`hSp0q8;UmC*i;)ZgH&}@`p6$oX&)(;JBVCgx z)3i$T1#0VzkNtl^^|VR^D + +Selecting a document to +view + + + + + + + + + + + +

Selecting a document to +view

+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-output.html b/bibletime-doc/docs/en/handbook/html/hdbk-op-output.html new file mode 100644 index 0000000..85fbcbd --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-op-output.html @@ -0,0 +1,143 @@ + + +Exporting and Printing + + + + + + + + + + + +

Exporting and Printing

+ +
+

+Exporting and Printing

+

Bible Window, Lexicon Window, Commentary Window

+

By right mouse button on the index key number, verse number or text the +Bible Window, Lexicon Window,or Commentary Window drop down box is +displayed (depending on which kind of window is current), +providing options to select all, look up text in lexicon, +and the export options copy, add to printing queue, and save.

+
+

+Select All

+

A left mouse button here will select all of the text in the chapter displayed +in the current window. +

+
+
+

+Lookup Text in Lexicon

+

A left mouse button here will bring up a submenu with a list of all of the available +lexicons. A left mouse button on a lexicon will open that lexicon to the cross reference of +the selected text in the current window. +

+
+
+

+Copy

+

A left mouse button here will bring up a sub menu offering to copy to the copy +buffer using the current location of the cursor as the starting point. +

+
    +
  • + +Verse - The number of the current verse (such as Genesis 1:25) +

  • +
  • + +Text of Verse - The text of the current verse. +

  • +
  • + +Verse with Text - Both the text of the current verse, and the verse number +

  • +
  • + +Chapter -the entire chapter +

  • +
  • + +Selected Text - Only the selected (highlited) text +

  • +
+

+This text can be copied into any application that can access the linux copy buffer. +

+
+
+

+Add to Printing Queue

+

A left mouse button here will bring up a submenu with the printing options: +

+
    +
  • + +verse with text +

  • +
  • + +chapter +

  • +
+

+Selecting these places text into the bibletime print queue, but it +will not print yet. When all of the items that you desire to print are +copied to the print queue, select the print icon and the print dialog +window is displayed. Now you can select to either view or print the text. +

+

Printing from BibleTime is rather basic and is intended as +a utility. If you are composing a document or presentation containing text from +BibleTime documents, we suggest that you use one of the presentation or editing +tools on your system to format your work. +

+
+
+

+Save

+

A left mouse button here will bring up a submenu with save options: +

+
    +
  • + +Chapter as plain text - a file is created in UNIX® formated ASCII text +

  • +
  • + +Chapter as HTML - a file is created formated in HTML +

  • +
+

+Once saved this text can be opened and edited by any text or HTML application. +

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-pencil.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-pencil.png new file mode 100644 index 0000000000000000000000000000000000000000..8e2f895e6ff3591e8c55eb7ee455c5510ee8fc5c GIT binary patch literal 361 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H1|*Mc$*~4fEa{HEjtmSN`?>!lvI6;RN#5=* z4F5rJ!QSPQfg+p*9+AZi4BUbs%vhfiKM^R%UgGKN%6@@UhK1SUtZ;nkB0dmbtCY7yAo%ew7Jy?~~zj2#US_N4DQltTea#(Z09{wPEUyw)$2FuOnttygZB-a z!362;jy}gTe~DWM4fCGUi} literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchanal.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchanal.png new file mode 100644 index 0000000000000000000000000000000000000000..625e1af15c707ccd3723293f54e6867152bab2ad GIT binary patch literal 7203 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 HtM~s4e!y}V literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchtext.png b/bibletime-doc/docs/en/handbook/html/hdbk-op-search-dialog-searchtext.png new file mode 100644 index 0000000000000000000000000000000000000000..24a94645692a86a1213ff85faede529cbc32e2ce GIT binary patch literal 9248 zcmaia2UJttwr&8WBPH~vpnxDnL|W*fNee2ygH-8VAXG&V5%}r7Bfa+`!GtandT%Nc z0tAr~N@zF!=iT$px$oY0ld;E|YmK$W+N;cOesj(p^Aw^^Mb1hN005{oo~S$r00?0C zCxw&{-_k!n{tI8+a8%M!0stBkC@ySn;_JjOwA57q*MI&6-DS!67BbH#CO!ZF1>K*A zU~(n&0^dmDtD&PxGI4{6j7J7KQ5y~b+yQ8)DCq~}?5^m(Gatch}F0lg8i6gk!?pMdo)wrvx5SGL; z-7;}Q3TvMawFy7L&c2;JVb{mMc3I7e2(x?_EGMnO(TBgaYr-Co`2c4zm zK^3QZP({73?a+dGWESf8ngLK20QlGsWIWzf{Q2p-^O zsQAj=Lh_g^Qp^`Qh62CSWy-Itv}X`85BZ)vr8`Yb+zWS=&~wYpm-ARIi`B)Fb9fNb z{<=D?rTMX{u%aijckw$u$fPb~?1{UnN7RLad26oj+Nze?QqJh_7M(hsFc#srj5&j& zO=4Vq6e6&KNqfP`;_*Z7+Hikte-#qv*kod(m~7q+!LO|Rq2PMy^5hJBW-0;F52lPF z;_CC1%8|<^vmwTc#E7u86n=WUzOfPptD^gLiT<&-teL`p66!l<{E+;Mvq7GxmL1Ql zuwbLQ*}0MoVm54w-7ZfPWRvZvZPcV=)jGtHbtDM&wB^3)01rzdL;=JArnF=oGPWBW z^)XaDoD9lZ4d;#YjDi%OJdg~;O>BMp7~%Tyi*zQW@5cqyS{S8f(geQOdH$yBB-Hy# zGVp}t)!x-N{6@HX`S03{T4pWC$sKA+YqeHVjMxN!fD-N!{RT=1k?lV}*QFoBPKd%u>jK7?~%23$m z`K#&1y~9V7*o%l7nJV!w+f)zKf8~FMdhtdrp|tn~8BByUO{@FLzdums>T?B6jYVuP zWnC_-mo6yY(pAE~nw>01(S+ycT*a5ASLOg=fANRr@-sU$5w)t_h7=m4O8+$d< z1;tsuU+(M{GrF-BVBJw*+GkAltg?)M{lkasJWG zetKQrP>qZv?P~26ClM7zn~=lK08+bVxsAP+QMA^)wbtFm%i&ROd2&(^{bZ92(IRHy zE2$Is-B37h;FupP6DGR2u+oCmYn@H<=e2I=;ZNCz6xWvo!E1)Jn1ki(wsY{irEAZn z#DxWEO#!s?@ZsxmCdf}zWizb zr=%`ssQ}|cWzH+Gxw{9uJPf-&I~?NfTUrY_clB~8S&C63Zn@6A87GUl4wR<&a`C+; znoW?2a4F7akLSF*3bo}zbgmNi2AK}aWi%0b!F-~>?WI>EfVsCw;0DXE>Ihbi68}yK zy9(#EpaTo0Yn>4lbhrA!E3K)rDHp45Lz_99 z%gYOeP~pgc^S!lSom@jmBN&dMqn<7oX}I^k4H%ZrPZZT_4?HwqYA)XV6W@gr_$-vI2W zub71_WRe3OqAy2!(DfXEalJ?g;E5XgM!4NSg*)xnglY-*B9Z&Q+B^JR z3*KB3wR~!65x)*D&aXZ^y&Q~=j>gG<4|q_rCk*GTN^S6PYbf;jBy%+*5@ygLCv}4F zvcA%A5n#7`ajJWpDQ%IR-Q(?%@{{^OXM2oUS@}4>Lh9h2LT!ajKz#el^#HAYP8X|v zdv5tu6pf@CyGO;mZSH;2++YDG;Gmhnv9VFRG#Mbt%jfxQRPW|g*;j`q-fe3ADvxdz zF+?g+x1lon6LvtT<>L2*a%y?nA(OkC(Oy5P+^#xzOGohQfcs*wUv{Y8)kz2@zY&U- zQ2An)P@&T{8_wAJe9OG7`|gMIw$*m~V6Bmq(>{bN&a^OOFl{x`N4h1?bg0}hABAlSd*ng^Z^f8nZ2S$7Y402$kM65IeJ5>=dDC~ckb16Y8z1+Xz@fQ@jOCZ88QMaulkFMXhPHOy0cVgb=7l$^hgrYfaZTrmIYOvL`wVGD?eK{iU zI$Ua;XwbgbMFkT%-X`QD-#tQnHmy@6GHoyYiOHK^U>gHhpuDA zHWh`@%vC#Vd2nK!mZ4lCnkyxxm$Rxo`O>^)?xo5YBAH*HX=TBmH>xSssl*3}GnEmA z<&_xrmj~<*4mqU1|71xojE0&(2d7@u_p=-Mmlc1ZWpFq9YJ-vKwe;A$zbVH!g;Esz zkX*A%JugDWl{T_5JUomyB*%7$3vjD6ULn+};{z_DABTYCWM%2Wo}c=c=H+G)WHjqr z4M~(q&^-(X3_9d7PjIAR#1~J6*SYRQjb(a#DVOw*@_xiP8DN;)9RdpSycani8q$?I z;L3Ph8MiJJv-k|tu;|tU0yUqZ!4;Qvu*98fNkS5;BQNqeHmh`i4_ zV3>0$+Jf@_D1Z_aL@zY}SYN2uFmFI}4<_CduK|DMbW6yXUD?jl2{p%_g4PjDMg))f zF3chMnncG49b)1V{~#OdQKgt$4h3T_d->k^+~ITsUF(y%slWDi1eth}HN_iZ1Xjje zdzb+#&RdTXgI<=M)9rF*Ht9bX3+7OCZ1JziAZ8xD)uUHSOCUGnil$E$xtgD7s(EfdFUq|3uQ+Z=)I)>}-l{ zUoPe4)btAV26RFbsS1>rJlrMe<=8NOoN`iGVe(-+OCI8FWB|4eqn--D`P9 zud>iJ9zCjqKt&7r%cH5PV@3dL612{z z!`y%62B1UAEXQvp(x>JaBx2!Nx+4;Iz3X~x3UJba{ym^VxWs269iHjdVZIm$aE*ss zf74cwlXJ7#S)rWA{Pz>tsX) z1U09&E@sB7b+tqC7_}a&bJo$IVxKOWg+?9+@lu1IC;`s{5ls1&ULS`Wm9W9 zZ1^=b*A18T^$aS<6I7R#f;Zt;1XG;^Xv6DLKcJ2TE1%la&oDz zQE04mr@XUGF$MxW)3GBq|tYJa5 z{Mr-k&W2gb`_HmP$~>ekJDvj$CQdt$#Uv(jW79$-zUl5?v ztIPb7l{7Ec(5;}YlZyM==o`3?apNXl#K->h#3FL9=a@&a--EG>fac-~f^#&^$PF&?{kdk4cAsDgwO=m5(5?1} zi3UrJj#VogDkQO(HAzqTSU4j{6S97!~O+<*SzEEqsJio zVArBKG60A3`Xkx~y3bh)Dd!*-CZh6*Qv9)$)8Z8-i55g~hvknT3MW3WXP1^|f97-> z=z7Ox0B$Q2*f`gAUlsDBM_PY>pEc{*4>yAECsz%SV31@I+_x_#v||mK2YI5mKreBe7LE;XR`G^d5r4(EqX;qUe)4qtTPQ)VHNU`zgD%{IrrR68KM?8?*Ty& zY%|n+=i`qWQ=RT@Ct-`@sc=N-oZd{uqP_2aFh?d;Lo*(tPP!{6as?fpt#2`FX~uHX zTA!Gj@2ri#436C%V`jW^yt}|HCUs5BT_uns_J#=bU_*XG5tZ?VFDK$|$*TjZ+JP7yB&&Pj6_D??I{Goq1}pi)mmiun_b}K7`VchVT^rwmazZU^Crg5yDYcQY5E!2-9ZiJn1{;WB zy%5o&0<6K>sJ1T>*$JAy)`zM)EgNtu>MXDpo7{b|)Y+uKD&)Fb+80aCXiOu~P{J^Be z{AQAjULvOjkaj(sObH-l7ELC>+)L&BPuRlMTfX05muNNe|HuQ}_fx_!KF_8igfa{Mp75#Do%01~lcR%($ zp2N5z``!o3tqBnB{&XZ%>`CcT?Vb$p_Dqi0ceSQx0-CXkuT3zW zzh7zXK!2xtVVwUB>ihS?y!NK1yQBpyKJo$mL)Q1yAjWi7v#U9IT)&@$rRoTilsYtQ zx_e0!c)m~nEhsqf#x=n6>!Q;`Ur0X0e*AIXyS7WzG5iXSw@lwA(vH2f2l;>oyn_6q zW*Qg1ylT0ydM6PXTk}&PzHT_(-pw5{7g=~tPOUmZ@ z7h-?CSypzGZlPY5_^l{{X*y5S1CGQI<*bL?b!>m@PbEs#x>F6)9aq<(npdAwmywad zlPj4yM$5aCA8#$W+-BfqAh|I(OzhM;7g!&5r?@1~_(kbK$ur%b<>N-WF-knv-!e>~ zR8hzYY$9crTD31PE26iPPWe;GgkFr&28d-ZzRMi}3Rs_I^Day{KeWCs*x~(IyI@)N zAz=oZ>lAk(lW?&>IGcJgY&BOiWXhHv^Dgz$`{ zZ%pV%+ITMRrxpBjS*2p;mdJdJv&rdgzFJ3$ zxx24*@0_^Vce8|fY;dln1Z*^q$4L?(UBD)f#vtbm3j+#4a@xgxh{S?hNxVb z8pTUq6~F>-hfVkK7HF3y*JcBz@2+*kU_w9o2+Vz^Z-iy(ZFXQsAG9Ga^@KS9O5K^+ zLy(gdi$oBQ>mAXDYnVl19j^FQTYstofDh27AAY5DyNpY@J0qi<#s>(W9?qxQUyPwi ztC6>`8SG@;i{DVTv1Zt5t{)goo6nzz$j=GV;UOF0H3 z(}ypspsP;rJZV?iHOu8XQsllpB`f_O(H^t zpGBF<;&gph3uERqysc|B8Ruzn^xi>?5 z`JEm1>7`SW?K2V`5@S=P*=hW;+9Q9+_yPte&e2Q_=Y$j!} z>gZ>gQrV+++*Z9iC2`{&=E5@>-Cvw68r4S=pxuoH%$L zY!c*N^m_u6Oft-o__gql9p2&a_q`GHS^j+;9*0TrKa%tBN<6M!6j+nD(6Ak z*0Kt>dr*-la++J*o%W+DWZGS~wu1bN!C`;!que2t5cq1OsmpY=^SBuENTtNxiTU?F zU1)I>FX5MV(N6gCQ1*w8nD9ruQ^Ro+R4vPHw&Sq8m7M8E#3&B**hb z?5{FYf8I3Yw`KF-792RHl8^#0tN1q)SPh+R;|xbM^tR1r*77k%l^|FV_F6f$Elmsj z7X^SJr4APIf1v}@7}rbI`Nf(R=mIRX?HkEWMb0lPMV2o=Tec5>zCVMHB~^Ej`8r@v zez4UaW)l{e{b2;0+W%k#8Xqff{K#k=@GI$*pt@rwWWoDfWY^cKXhp{-P18B5E}z-y z!#?8=t$tTlMP2bwt>FGx1^**KLAs_6gfm5(K_`8<`1obGoGxWE!HvhOJD7?|J`#ZI zYbh9;*;GVZITG zyd{WFiDd(-d(JiwQ39L)eVoQc*7ugUkZaW_d0^)xuA`&@h)oeTjsEbETE-JXtP;4B z@ga3&<2es2|GX#FF(@}7(5ULj75DnGhZH&XEBoFG@}3WpD?NMp}gIC2pJ*IN3mJ^u?Dt;D>T8zDWdxXM5@&?Or z)!bI{wW8EDV-aX(L%&QWri`uXcA?lcr}>qTiUo#3-J*?@!^!iryKb*pNY;Ub%qu(# z=FzmF^0eXTjNi058TI~ERZ{Ph?(4-HN__13CKv0OS^nzi0T?09oX$V+wm6L~M%!0` zy6cb?(y=wy3oIUVz0d1tC)YPBPaX*lVW0&DTG)_;Ti*HCU{+)3@>~Z5c6!JZ2gxKX zxEYBw#Bcd_CmFz55$!s2oV{crNictB)X$JK*UgsGzkuUwFU-BYkkyIc5FdN6{C^2E zYY*aAu%+W}wl%N#G&n4;p_3L7`kIeAngl;!Gb5T~e=#q5Mf!GU118&hC7r;D#RBs4 zkLgR<@sCoJQ)Kwsd#mgdxJ-9jWxG#j`kgVEnPZ{et<{-pfn0vRL?M(-bdp7#*s{%I zVoXglsWDs@L$f>9>;9FSMc!(`d?{St+&H>6J8<6i;Joxq9HsWk0q;v|T66mM?YMIK zuPq|zp~r{6DYq15Q8w!LLf`#Y+Ar934w~b{zpP96_<{h+hGdqgu*rarj}N~Sid6qp z@BfdRP(3NMkJlcHT|hWz1wH7@ge!bh|B){z=JxMwFn}%A=fCwbs!z$!&DKJz-ueR+ z6X+xV#Hw1RZsGI0ug9gcM;Bj`0FFpE|I_#XuUz^cVF43(NUkgi=Vu4dyaH*p&=nVN z!fTTH2!yVW2x+b?6(_(oXXjt@7XOU-@NC))5-;Xt2Zu-=QAPKrnN2dRy$O;grU&yC zeRws9CyEwrMLhV_#AUh|`>osZLGv2WMM?HsyXaxjg1f%l@Z%l)MJe=B-+LQMgy6KM zeuAGUFZL|k!~+vCB&S#h97g4jb-9D}EYD|M@GQ?fBTnu!C!U)vEc~e6;r0E1uUUV- z1sF#Aajz8Z5c|f<)$c>Y{||WEX>4}Hhe3l6vnBB{qS`{7R?Ze1B{6PfYHA9X)zlcn z>)blyU8}doSGn*8UXa`Nl(rl4_}5~K%f~s1ZmjV@5MUutNd0sx2-|9lG&dRV%B za|A{8SRgyMJT2~KaY3TAng876!jvye$x3s?BXc~)H#Q}#@*TT;7~bXBS;Ei7Na1z3 zgQuTMbskn-{yH_!U9jAZo8=;ZDjU*Pw`TK~zpIiPPzuvutfYQAnWHg^M+{l*F@U=ZDOHdS6$Z6w&R{%QZxy7`~hHE#3|5JsG?{ zE2jCeXl0R1fuwJ#W|~OXnqI5Hr?(Tr!h(0=%-*CEAAE!vss(cO?e8VnL+(D?NNG60 zPoS@qX|)k}iY_#jzq)Lwv>RoXsSk;S+mXRv`!|)|cU2R;e0)RfnpJeY9Lg=Q&P3u;3Q`@i*`q&SC0zN^Wj;6R z<)#HC#)^m5MpC99)LE#GZB12}yU6~fQ7ayl{+^ac@~`DMTvKjv!jKDnA#h7``Bry5 zqj?Npm=rBoTOlXjl2f|TWMqoEEC@FNRsZ#xhn3y160tQkbMld;Tb32}h#vekZ}h0| zhmJ_3#dz1CvwqFuLeqk$)bx^Uuqt#*!4$DzI4kjCJSKiPKr$$>gcwttu5K3A&C^?+ z{6#h>@JKd@yx|hpsws)bbF7!cm_x5oR1nj1e}TB8=mbuPLe6%KzmntIMr*dc68Qrm zvJT|fnG32-f=NI>|cH&Nmq6o5=ZGg<*$@lH21WqLe#m!|55Hd1Edrf zvap(?-K@9mY;X_E$6AI+!(-vlD^9d@mR{wO#6xZ(rEIwN?Bd zXp>n70(OG5H2Q;s($u+TW@aZRdu5EUZfKVZKLBlro%iDeRb7C?t(XAlVu6N#2S!X1 z&5KQ_jD;i-AZY#figJUwaF;tV;Al8`o$s2OA@gO@_5(^){I@#*4ONIrE!g_?e*lLW B@LvD` literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op-search.html b/bibletime-doc/docs/en/handbook/html/hdbk-op-search.html new file mode 100644 index 0000000..84db198 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-op-search.html @@ -0,0 +1,496 @@ + + +Searching in Documents + + + + + + + + + + + +

Searching in Documents

+ +
+

+Searching in Documents

+

Portions of the instructions for the use of GCC Regular Expression in +Searching Documents is taken from the help files for the +Microsoft Windows® version of Sword

+
+

+Accessing search functions

+

+You can search in a document by right mouse button on the document name in the Main +Index and selecting Search in module(s). +By shift- or ctrl-right mouse button on other module names you can select more than one. +Then follow the same procedure to open the search dialog. You will be searching +in all of these Documents.

+
+
+

+Using the Search Dialog

+
+

+Using the Choose Modules Tab

+

In the pane on the left side of the choose modules window is a list of all the +Lexicons, Commentaries, and Bibles installed on your system and available to BibleTime. +In the right pane is a list of all of the modules that will be searched by the current search. +To move a Lexicons, Commentaries, or Bible from the left (available) pane +to the right (to be search) pane, left mouse button on an item to select it, then left mouse button on one of the +arrow buttons.

+
+
+
+

+Using the Search Text Tab

+

+Search Text - In this pane enter the text string to be searched for, and set +search properties. "Regular Expression" uses standard regexp syntax to refine +the search.

+
+
+Search Properties
+

The text box in the Search Properties field is where the phrase to be used +as the search key is entered. This phrase may be one or more words, or partial words, +(separate words, or partials, with a space), a phrase, or pattern (Regular +Expression). + +You can use the radio buttons select to perform the search using +the search key in multipule word, exact search, or regular expression mode. +A check box is provided to turn case sensitive search on or off. +

+
+

+Tip

+

Drag & Drop Works Here, you can drop verses and bookmarks into the +text box. You can also copy and paste text into the text box.

+
+
+
+
+Using the Search Text Case Sensitive Button
+

left mouse button on the Case Sensitive check +box to toggle case sensitivity on or off. If the box is marked a +search will only find verse in which the found text also matches +the case of the text in the input field. If the box is unmarked +the search will match if the texts match but are different in +case. To locate "LORD" but not "Lord" or +"lord" mark the check box. To let "LORD" and +"Lord" match "lord" leave the check box +unmarked.

+
+
+
+Using the Search Text Multiple Word Button
+

If Multiple Word is marked the search will locate all lines (or +verses) that have all the words, (or partials), listed in the +Input Field. The position and order of the words, (or partials), +in the line is not a factor. If all the words, (or partials), are +in a line, in any order, even separated by other words, the line +will be included in the list of found line. A search for +"prove cause" will find Gen. 21:25, "And Abraham +reproved Abimelech be +cause of a well of +water..." This is because a word that is part of another +word is considered found if a word containing it is found.

+
+
+
+Using the +Exact Search
+

If Exact Search is marked the +search will locate all lines (or verses) that contain what was entered in the +input field, exactly as entered, including any spaces. The phrase found does not +have to start or end at a word boundary. A search for "now how +thou ought" will find 1 Timothy 3:1, "...that thou +mayest know how thou oughtest +to behave..."

+
+
+
+Using the Search Text Button
+

left mouse buttonSearch Button to start +the search.

+
+
+
+
+Search Scope Options
+

Define the Scope of your search in the Search Scope Pane

+
    +
  • +No Scope this turns off the search +scope tab. The entire document is searched.

  • +
  • +Last Result The new search will only +search within the verses found in the previous search.

  • +
  • +Use Scope The new search will be +performed within the range specified in the maintain custom ranges portion +of the search scope tab.

  • +
+

If No Scope is checked and a search of the KJV Bible module is +done for the name, Jesus, 939 matches will result. Then if +Last Resultis checked and another search is done for the +title, Christ, 257 matches from the first 939 matches will +remain. Then ifLast Result remains checked and another +search is done for the title, Lord, 106 matches from the 257 will +remain. All the remaining 106 matches will have the name, Jesus, +and both the titles, Christ and Lord.

+
+
+
+Edit +Ranges
+

Edit Ranges - You can enter upper and lower boundaries +for the search by left mouse button edit ranges button.

+
Change Range Entry Box
+

The preentered ranges show examples of the required syntax. +

+

+If the add button is left mouse button a text box is displayed where the name for the range is +entered, then left mouse button on OK. Now enter the desired range +and left mouse button on close. Your range is now added to the list of custom +ranges.

+

A number of custom ranges have been provided.

+

The scope of a search can be set to the Entire +Moduleor the Current Results. If +Entire Module is checked and a search of the KJV Bible module is +done for the name, Jesus, 939 matches will result. Then if +Current Results is checked and another search is done for the +title, Christ, 257 matches from the first 939 matches will +remain. Then if Current Results remains checked and another +search is done for the title, Lord, 106 matches from the 257 will +remain. All the remaining 106 matches will have the name, Jesus, +and both the titles, Christ and Lord.

+
+

+Tip

+

Drag & Drop Works Here; you can drop +verse numbers, and bookmarks into the custom range entry field. +You can also paste text into the entry field.

+
+
+
+
+

+Using the Search Results Tab

+

+Search Result - This tells you first, by module, how many instances of the +search string were found. Double-clicking on that document will open the list of +references. Clicking on a reference opens that verse up in the window below. +Drag the reference and drop it on a document in the main index to open the +module to that verse in a new display window

+
+

+Tip

+

Drag & Drop Works Here

+
+
+

+Tip

+

Select verse numbers and drag them to the main index to create bookmarks.

+
+
+

+Tip

+

Select verse numbers and drop them on an unopened module in the main index +to open the module and jump to the verse location (Bibles and commentaries only).

+
+
+

+Tip

+

Select verse numbers and drag them to an open document and the document will jump +to the verse location (Bibles and commentaries only).

+
+
+
+
+

+Using the Search Analysis Tab

+

+Search Analysis - This gives a graphic analysis of the number of instances the +search string was found in each book. It can display results for all documents searched. +You have the option of saving the graph as an image file on +your hard drive.

+
+
+
+
+

+Search Syntax using GCC Regular Expresession

+

Regular expression searches provide a way to do simple or +complex searches for strings that match a pattern or set of +patterns (branches) separated by vertical bars "|". +While a pattern can be built to look for a word or phrase, a +simple pattern that consists of a word does not look for only +that word but for any place the string of letters that make that +word are found. A search for "right" will return verses +that contain the word "right", but also "righteous", +"righteousness", "unrighteous", +"upright" and even "bright". +A search for "hall not" is not a search for +"hall" AND "not" but for the string +"hall not" with a space between the second +"l" and the "n". The search for "hall +not" will find occurrences of "shall not".

+

The power of Regular Expressions is in the patterns (or +templates) used to define a search. A pattern consists of +ordinary characters and some special characters that are used and +interpreted by a set of rules. Special characters include +.\[^*$?+. Ordinary (or simple) characters are any characters that +are not special. The backslash, "\", is used to convert +special characters to ordinary and ordinary characters to +special.

+

Example: the pattern "i. love\." +will find sentences that end with "his love" +or "in love" or +"is love" followed by +a period. The first period in "i. love\." is a special +character that means allow any character in this position. The +backslash in "i. love\." means that the period +following it is not to be considered a special character, but is +an ordinary period.

+
+

+Rules for GCC Regular Expresession Search Requests

+
    +
  • +. The period matches any character. See Details +

  • +
  • +* The asterisk matches 0 or more characters of the + preceding: set, character or indicated character. See Details +

  • +
  • ++ The plus sign matches 1 or more characters of the + preceding: set, character or indicated character. See Details +

  • +
  • +? The question mark matches 0 or 1 character of the + preceding: set, character or indicated character. See Details +

  • +
  • +[ ] Square brackets match any one of the characters + specified inside [ ]. See Details +

  • +
  • +^ A caret as the first character inside [ ] means NOT. See + Details +

  • +
  • +^ A caret beginning a pattern anchors the beginning of a + line. See Details +

  • +
  • +$ A dollar at the end of a pattern anchors the end of a + line. See Details +

  • +
  • +| A vertical bar means logical OR. See Details +

  • +
  • +( ) Parentheses enclose expressions for grouping. + Not supported! +

  • +
  • +\ A backslash can be used prior to any special character + to match that character. See Details +

  • +
  • +\ A backslash can be used prior to an ordinary character + to make it a special character. See Details +

  • +
+
+
+The Period .
+

The Period "." will match any single character even +a space or other non-alphabet character. +s.t matches sit, +set, sot, +etc., which could be located in sitting, +compasseth and sottish +b..t matches boot, +boat and beat +foot.tool matches footstool and +foot tool +

+
+
+
+The Asterisk *
+

The asterisk matches zero or more characters of the preceding: +set, character or indicated character. Using +a period asterisk combination ".*" after a commonly +found pattern can cause the search to take a very long time, +making the program seem to freeze. +be*n matches beeen, been, ben, +and bn which could locate Reuben +and Shebna.

+
+
+
+The Plus Sign +
+

The Plus Sign matches one or more characters of the preceding: +set, character or indicated character. Using +a period and plus sign combination ".+" after a +commonly found pattern can cause the search to take a very long +time, making the program seem to freeze. +be+n matches beeen, been and ben, +but not bn.

+
+
+
+The Question Mark ?
+

The Question Mark matches zero or one character of the +preceding: set, character or indicated character. +be?n matches ben and bn +but not been. +trees? matches trees or tree.

+
+
+
+The Square Brackets [ ]
+

The Square Brackets enclose a set of characters that can +match. The period, asterisk, plus sign and question mark are not +special inside the brackets. A minus sign can be used to indicate +a range. If you want a caret "^" to be part of the +range do not place it first after the left bracket or it will be +a special character. To include a "]" in the set make +it the first (or second after a special "^") character +in the set. To include a minus sign in the set make it the first +(or second after a special "^") or last character in +the set. +s[eia]t matches set, sit, +and sat, but not sot. +s[eia]+t matches as above but also, seat, +seet, siet, etc. +[a-d] matches a, b, c, or d. +[A-Z] matches any uppercase letter. +[.;:?!] matches ., ;, :, ?, or ! but not a comma. +[ ]^-] matches ] or ^ or -

+
+
+
+The Caret first in Square Brackets [^xxx
+

If the Caret is the first character after the left bracket it +means NOT. +s[^io]t matches set, sat, etc., +but not sit and sot.

+
+
+
+The Caret as Start of Line Anchor ^xxx
+

If the Caret is the first character in a pattern it anchors +the pattern to the start of a line. Any match must be at the +beginning of a line. Because of unfiltered +formatting characters in some texts, this feature does not always +work, but may if a few periods are placed after the caret to +account for the formatting characters. +^In the beginning matches lines that +start with "In the beginning". +(May need to use: ^.....In the beginning)

+
+
+
+The Dollar Sign as End of Line Anchor xxx$
+

If the Dollar Sign is the last character in a pattern it +anchors the pattern to the end of a line. Any match must be at +the end of a line. Because of unfiltered +formatting characters in some texts, this feature does not always +work, but may if a few periods are placed before the dollar sign +to account for the formatting characters. +Amen\.$ matches lines that end with +"Amen." (May +need to use Amen\....$, Amen\..........$, or even +Amen\....................$)

+
+
+
+The Vertical Bar |
+

The Vertical Bar between patterns means OR. +John|Peter matches John or Peter. +John .*Peter|Peter .*John matches John +... Peter or Peter ... John. +(.* slows a search) +pain|suffering|sorrow matches pain, +or suffering, or sorrow.

+
+
+
+The Parentheses ( )
+

The use of Parentheses ( ) is +not supported!

+
+
+
+The Backslash Prior to a Special Character \*
+

The Backslash prior to a special character indicates that the +character is not being used in its special meaning, but is just +to match itself. +amen\. matches amen. but not ament +and will not locate firmament.

+
+
+
+The Backslash Prior to an Ordinary Character \s
+

The Backslash prior to an ordinary character indicates that +the character is not being used to match itself, but has special +meaning.

+
    +
  • + +\b if use outside [ ] means word boundary. If used inside [ ] means backspace. +\brighteous\b matches righteous but +not unrighteous or righteousness

  • +
  • +\B means non-word boundary. \Brighteous\B +matches unrighteousness and unrighteously +but not righteous, unrighteous or +righteousness.

  • +
  • +\d means digit; same as [0-9].

  • +
  • +\D means non-digit, same as [^0-9].

  • +
  • +\s means space.

  • +
  • +\S means not a space.

  • +
  • +\w means alphanumeric; same as [a-zA-Z0-9_].

  • +
  • +\W means not alphanumeric; same as [^a-zA-Z0-9_].

  • +
+
+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-op.html b/bibletime-doc/docs/en/handbook/html/hdbk-op.html new file mode 100644 index 0000000..3dcb48e --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-op.html @@ -0,0 +1,60 @@ + + +Chapter 3. Program Operation + + + + + + + + + + + +

Program Operation

+ +
+

+Chapter 3. Program Operation

+

+BibleTime is mainly operated from the Module Tree (this tree is called the +"Main Index"). The second important place to work with BibleTime is the MDI +area (MDI = Multiple Document Interface).

+
+

+Main Index

+

+This is the pane on the left side of the BibleTime window. +It contains the tree of installed documents (Sword Modules), as well as any bookmarks you enter. +

+
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-start-bticon.png b/bibletime-doc/docs/en/handbook/html/hdbk-start-bticon.png new file mode 100644 index 0000000000000000000000000000000000000000..c2a6346daec7f407bd193d59bd15cd8ba1465c96 GIT binary patch literal 1629 zcmV-j2BP_iP)v1=>kOK~#90#g@s7UB?xNzdAMCd*9rH)Rw!EEhoVloWXRAg-IX~ zqChY*C}{|Yth3S|pg%)dz3=xZnB`XT%X9wmlA1)TtV(bav08}59D8@uxl_U|U6J~XtaP3o)xrZKq zo@5P%l2jixRZ4~!6R9d8CPZrhj4HBGV)7DALUIl%3NV&f zE7tjg0oc!Vv{+AAuaUoA#SF`4O`Pxj4RwwxDJBcZ50*(sJcJg`h5Z2>KYpA`mo5=R zFhJC%cbpacgKf+|?qN1ZkDbx0x0wu-b_=vDANi`f-XDO70OJ|wKXWP~$ZQw$;+J4! z1Y0BY<~`WlhVOkH@_-2$GSfqzo=1udQP7n32hi*FnwyN59RpeCaEpgAPalG$u)0b8 z+xOAUZOltwAq9`M0p|j?$go+48P$~K*8Tt{HW^x(^nn4FWf;@kO1DdJ4V?2i$-71a ztiw8o7_b6j_EzN`0PE}P4S+s=u&NdBJ%UozHL1uj-4+VCGGV#}J_JMrAAF;R3F>;E zC0JcueeC9w9tgoBRzS6xcONiWGh#BT@gZQnLsP%`HSmK>WoJTQOJ1&8Ns;c$}FtIc#!8j9TS&?GIIM+N#s!&H@+!G2$WE|Xp z0qcM#^ngrrn3S5}6D5p^m=x92WJWBe+r|t!&?$&9l2Srb1Wg#zya~N-?_e3&0VLy| zFa~2CE-wh*c#d>*0YBGAERZ5e6UKX-F{mbDj0XcqG^03?;}{dh7{q1xtc~>%_wDDK zUh$R`OEe`UWQcEpc!r}*)`z2MA@&A%RJn0447W$b1jag&Dk&*jb>#t@TY z#gLLxRWE&ch+ zFPP`%+Vlqn-9bkG@PJTcWStfv&k0$MIEOfg4Gswb2_E0-V0{h>RjKLNH-Bn@U4P8e zbl|;&(Iif-%h1?px>`rFju;cMs)(`129GN;#QR1wng;+>F@W_Vdwth;1rU)});2cZ zc>n4r<)3e@>YXj+v$bs=u8!DRuc)>vs*NENu}|CEXjP-JnTAwXXo^V4L1kmgC4nhZ zaPi_rbK=B_(;s|%ZS8}PuYGyx(Cm)}ofgkN`;ey=W;xQfX5Nl?YQ9I&ZR5LLTu~5; zK+$efbR$_3g0`tjyXS{s*SwrNcaG6$WX_&FJ4h+5Y4bL#bCx2{$(_&+mUiZNX7O|A!LrCXfZ$2<>=B8p84u`a7BN(F_K@r`s!J+C>pZ=f3 b{=)We+saosMFSbn00000NkvXXu0mjf=C1R1 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-start-screen-terms.png b/bibletime-doc/docs/en/handbook/html/hdbk-start-screen-terms.png new file mode 100644 index 0000000000000000000000000000000000000000..13568bbebd3233841dd169fc70507018ada788dc GIT binary patch literal 45294 zcmXuK1yoeu_dYy;bVx{dcSv^&5|Yv|bayvMN(hLwl(fXq-Q6iMba!{h|9-x|_dTpx zGn{qf?6d3H&%QTOMM)MNg$M-%0-?)&mR19SU?YIfBoZtzlW~jZ34Fb?l=vb60#(JK zJ{!XW|09?v$V!9W{`>pWR+IqDAUl25aRq@;(f|9voFI0x0F#Jra$i0nPQAl;&wyqK z#xe(iC_r-35?{SCj@tt5NCq<3pE7$$RH&Uo$Rv6B-whQ}l1Sxao6?>UZ6YC??49&{ zswS`WV4(Pw(4#xfM#boj$+-8Et1XC{wyT^L%T@seJbt@Tos5TRf3{)Ah`Jn&O~d?a zuul!M;&Tu3X9=3mRJK+K#9iv0=p1Kp>^e-ET3T9fscBhRXNd2n)D2!BjxYOCxFmodG!b^CxD-gaHQHcs zR$7{KOWcni*EcsjhS}Sdt*yd5JYkVsg8v&rLa3k?&ohTQ8xW|briSZ(gPNLpAeMC6 zM_X4HTTE6~HpGVllXKL$8aS1g*W=({fmff>moLUaWW>Y@gUm#k3kwUy#l-~$1+TBK zQ&UqbEuP9sN;Ye^$?NI6>gwv7%^e+UCj(Ha?_8py?X|U`yNICVl$5)(wT{+SzvKC; z?GGW^z)BH7YrF&7+uQT=^J!d`YzED>zzqfd8%?dPKOAMJXE>&z(C_d|%yE?%y+;KF zw6u*?RUexcus$Uus?%?7jizydIJmfQD&`eZ*o<{L+zx&@kq{Ffot+u#>P9j6Sz8aW zzKb!J9ty_cqN$2a=aHzqXw!sOxo_F zAtffZP11}3*+UlI%jjQ(({hyaP064W`)PFZ!78*L|0mR`nWtZlz%GARJpW%F3qs9%ri}A|f$eL$@p_xnpERYYr&94^_Eo zX=$pQCN?%Gjxn*ZWI`T4nn#lLo85{#I^F=;(3t{QC7uF?*7xJBvQU(=MOW6=*0_00 z-ceJ%C)!Xxq}7uQ7vQz9w5;;T`u#h~f!$xg|Iw`t90%UAHH0oTIIgw(3+0-zCL|;% zC@26LR_|}zBz<$#C7l7b6(RNTPh%$)sqay}#(Hhl!uxvax{w~{n8T&NSk!-SM@N4w zcjl&alW~q#edOVBKc4?+ul})$`@!7+4DLsP8mt_zw&|g{ell}$;lvY2Hqze~H%%M0 zwdG7lzGi8ckPibhCEcE_88Rg;qyGsCf_cEZ6$MNnP9T`p4;XK+FZW2ze-K*<2nZOG zVbUgMXJquUodK5e`tlTp!D+&nQU4sRN+_ik zs&4Axffu-`c-z@2PM3hiiEix>sfP305Jk}gP3f-)VE9BR8eD0k_xFwaw}WJzNjE27 zN(cT;!+}^>SvQ2{*4Eh9bai#R8Rar|y9hPCsn9LC0aI~)bvOHONM}7J(Qm5|J*G%? z8H@YrXDJH0?xMy1y1Ba>G5J*V?ku-9EsZdzgvHO!4y|nn8?a%w-O)6_CxGcz&^N$Z zE7Ba%rbMWj^M_okHY7jP5%eROQvO0U{Z2?jHihu@F7=(phkofE%&<$#@r zj1EbA0V(IEg~36j*!`%YM3R*0E`>HtW1S%{+6n@p_`s;pU*z$$5j&*X9MZ$4|BQ<} zizeYmK!qGpeIycM`-W`pRDn}mq6|?u$>gm|fRG)pyaj{ROtK@~n|5*CzcZ-a*CQc2^sqpA+~efs^-*~yd2O>LYs2(3fi2+bE_rAdK)J_TXysLv z>{T(d-h`J~qN_N(MERV~kJ8PNC*Gus|AkwiI`y@h4^4MmrFM)8ubaTARDoA(x6T^U z-G1X}oti{frXM+?@FA&B{S>zBZ%%DiQr-6`hhaVHqjkJ6$BgE)fz(e`?Bru&BQ0EVM*morv!@k)A)9vFgaeR*d@duo;t-* zUz0U}NdqoftKxU=DbpG_DN)UsQJD~|MfqhapX_`rzKVMkOUez}y~(I}4k)!YkQZiw zz@o|Zn}Tu}uzD-`x|ho4Qjn2ypOJyztgR@oV^n89N6SlubPqRvL*)sT?WS!i>-5}8 zCnq25hs-U`(eV6;T!hB(yI_QEnch!jOeuyaw8bkY3IaTSM{Tu47QanzyDY*LN3l21 zzBhWX!z4g$PFCA|t*zzKIO-`^iyS34ADV;PeAr%%a@vgfZ#V99lQhk4-;nN67@eDkH$?7@SX^rM^iB?*cKKRP6FC+H%px=ayK_O8^f_cb{NoJ?$JQBx@~2m zXmx+QJ|K|#T3H;@4etiz0>DM=9wS75YF4+xe%4t`Ad=KGpVwB68`?B~t|a^*7=dYI z%GOMB!Y0^QF$e^u7QgZF@!UL0#!a;z77l6g`?2oPQ8cz9j{6TI7RaGKqcEKk2n{XT zajcyVKgTx3U7h1rnaIh>ff$mJmDL|m(?njVp4n1&Ch&{VJf-B!83MG~y-X)tjZO@OWrOFMfE=M6029@mv_8f$N-^ z`D$pGt#;fyU#O;%7$?5mXYl$JRCf1^=c^hJ2LJ^&s7$D&d$pBU4`DTjIjov|pEp1> zj$xt8*+Rkce7SBW7NLmG+6=Mi**XVT_yuT;2lM4{**z;lk186O{iaA3XR^>}Ul z5k4eL`bY8lYpi5!h9{8eO$=ckq!@Kz9*TaRwa-GK^oZ|>!%)^3?@$XGBhC^*AigG7 z`cH<2|W6B%K}gl#?!Z!wSND{y#uJ$zFGelG-NQeHoxhARK9GM%zlW5aWsM z(4x)5r$E`54BZB88JvpYSATW<##9J&UQzcqHAZD(Y`4TTj2mqBW;M{n3!ICI?g%9s zre2&uBBi2(@Bfq^^29juEpejXEHlX;afe+*ntMmNGSOVxg}2Fc1N=-YE5Y*bR;}V; zUW>8uejI&KtRax4fqyx7o5F%nwA>FdC_7_A-t@T^?R$0N7C~RMGT@yevcTS9IUANhowq~S_jiKy$tEl z+XeEV5W2DJLg#p>_A(R--BWU{I@DGr;6hcH+VB4nDI~+%wd+rb)Q!M7n$-)Q`eS@s zA~nUK?ty8KLTC{jf%@B&4gjSQ?tgGsVw@~porLZ}>G+7b)+85)gGB5AT98*U4I(F^4 ze$B%)7^m$p9ohNnqE+eAgWo_F{Wng;ELB7<))?=m;yGZmFeEQMF5F&p(G{#$t}(4r zzY#hnz#UeGR7po^`#HINm% z>SM`zeIjM0zT{-BkDhWhOgRWuk-x9A7d|r5LK0aSz$PnYNwkyZ7H81 zG41MJ#r^IKk{(HDRY$lbb#8!a9$^#jHes_D78agsH_7~HS5i`9V`U{3@=#=axNtxx zX4|C1q@QHidSfj!9pa!59z_6?$%JHtgce;NuXS{MWkS}At&srY#($tKZ9OO`NUfNr zgku5DE`tdu2gt6Gc!k9g8g}tw0a*GM8-a;ewQDPhLq(WRFk#5*&Pa|WTnpcG*0GQ? zSjh_48Y}&0gKoT6CzNAf{eBm~(tIZW{Jp&i6QCj~KUyvZu;usFq1}|R#F%W_vUN7I zu!I)MhhvNMU4^o2*#R(WInK}yD}CpC)FSP~fZLgw5389#7PunoH7JAM4lnUr%!J`S zod3+8BtM+I4y?%3)YOZvR!C*W2FPT9V>Skt#h}%s?m~mVuddfE>$>obwmF1>Xa|#a zFE20e@A(nphs@56L^lYRz^Nf=iWWvj6w9lwUwjQmjfCU`3}=5{!ok5^vaani{s(q3 z?Z3p20~6sa^^VLy(G;~s1Ylyv1!I=axb%Ksv+m zTi9(C%uSi(S0j}X5>Bf@vJf7vzs$v8g|dfUJyr(F!ek#WQT&0fQoKMwi-d7J363EIgI{C!x_c5Q?ibhLRU% zv>|Y+jI8V!v$>zO1!R-QlR-E1Qdw$vOW6<0iBK498ny9{=|Nh_Eht7K!2KZg>&FHN z$xzg5l~*)7%i+IA(Rc}y(>cE1;9|<$icG7!fBEHl_?vaV9Ne}d%xmP`&$u-DewW3^ zV>$mQ&aG)l=1A12_;%>wI!b`w6by09ASfl7)m0lgNdl&+c!kdFHJ{mbsK0kYL%64QPt73)#atT(tqr0qn3V} zgK?9e>7aZK$!LJE=5N);{X0y6SzL1BebTTe>=bt%7QT);rE6t}Rp_x(@{Y&Yg-S0a zCf3O5#FXvh6+lP^Iik(~rNW+?8zOv3RG*)Ew(6Y;Vk#Q$B2lT}LN7X(6Ss9nkl_-g*4? zfR807(bcbiD=Oaa#Z@WV%3Wm9+~*XLNR+Ac^8H!V3kt@hS0)$oKpS%n4D7(9Qu4eN zl!E6CzXYmKf9oyj!|nAJ*dA1=%gsHANf|c1CoJUJIYrx^u>V^kje)N2FD}Ud4*AWA z@$pR?cE6j%9LE~EMiAf-2#6Lyo}vnf{UOK@S@EI62}^6Z~*LHmt3Xq_;m@)A`hrn{xiH3E8q7u_ z{W2PH{EXplR*G6>+Ir&;Gh}%NAJerxhoj$ND1Rx;`3R;UxmAx-DOs05tw|d$RO#c!sKjy$Vy3C>Gslfh*rHL2G1SRuCua}^cPHI zBHj&`B^)DFoO?XnQzH5Cxn!6{m~)1*9BJY@q{{7BAoZONA3;hkNqWx`uHI=Nl}O}Z0$}V%(dp(^IiiDFaHV@8q41WGU@WTPPa^Y z?fljj-i-a!sIf5YL&BH(i-Pr2mm-XH8?p^;6b#!^e_zObqOWy<5W*KkE5gsDrL=?=o=4;mQbk&t$ z7UR*-773i7YL;cxyAoQKnCg+gcP7@J#p-y0IVA*!@jPJjSw4yiw;sO~5eDCfNb{>p zW;*)fmhHhRj=c)){1eTJpq?6Qs!1jYrU@hdB9eW1Q^!XQgchgmJisw6*SG1KZvW#i zT7PwlxbX@I9JnWkRJV)(DTDW0C3B>D9KTgDi)MtVIKE^2oV>c448^#r$}&1*T$`Dn zwCEm4?CXC-OM4wZ1MIZs5Wc`s(hd102pjD`x4$F96j2gD#8utY85Koa6!AP#LjMub z;)UedK*tGq8Bojd!tD~&60{(E1DGua>P}!%61}QiC9?2W{$F~Fpyfv`@W+BO8@OLM zUH$|=gbq{yYVT^CfVqH-StKIOyg^Mt_h;u#mX82kgT1*=zld?1DdwUjMGe0+JjsFwL9^r&O#oJP3%ICDQ?h za_B$arPDFDz4lmpuya258f2AUZknUdg=6}tqK1=+jBdUZ9KE9pfd}wpyvrcR_t3)0 z{}88)cz7B`M84FCQEnbUN1*9ueE|R`_Xp0=_=pkSgcwIz2I#1?GP&-ogd3e%Dx6dj zyaYG74FXms9N{iUFVCMZyzQjGeWVVgFtI2B`c&G5l1tf*!YtMF8^VGh-teP^Wbqd_ zB(qd0Y+tD?CQ<;E!UA-wG?JBHU7CswPNs~{?QkI(JwU&HKOfaH^gsFjT^I5x?{lQF z!>qG%Rfe5}&`kq1x?rvlX>S&P;$rA%yd#Og+wjAOl+drFPmPU@^V^vCcz6hihb#a&s%X~7^JzBAE>INN3Y$cBdESq zL@i^NX;zTvG-41hk1Z9c~qH}>d-@I*O(6TKnGsYsMIXsL> zSW(F`fxnE(RmFbXYOSX5bMk2XL>M|ia7xEp^y5p@zg3rL+d&m!qiWCKkBfP6$gf40cH3z@5r*zM z~zN^#RyNO!G#7Z$q7Q8Pxffp6JI6>y2;&G&esZ*oz!lkrVBXB#H50voq zSo!qo(4-uEleNTDu~i~05-(Vnl~klear?ZAxn)WwJ$t+rLB@9!tslu-w{|p5y=J@ z>Gua_W@f6h@eY?&W-4&8*(Bx9#pDB1!g2xgZPW&$sLN9-d%~zWRVDidvr*4PYbB2p zWy3pN+sS_AJGdc`yY_dXNck}rlUJ`&~ zJ;hFmvDR275iBd}Vfs2GA{^%iqvXo0|kZE-_RH>C($xFG0*Aw9lUsO1j*?8~F0L$ClYs0MD@*>7h7j1K5E+!_s zPPAsdoncOg=J~Jq_N7&K?;j0Z==dx0mE%6N%LV0fz=Vlb7xM$buE$X9I4N?|nHI^P z%8NNqV~H6umyk=>wA5!%n&h=iW6WhzGDxD&AzS0*XujOAExhuzbJ3H**R>#^f^13q zs?HjIP9}z4Y*WYEXI;;`pN-=te~!a;kIO6Oy(m9}Zx6!nf2DKDa4(9A%iL@q-2Dgo zmG8plE(W2ojc1Ffcg?)fNoO`93=QKi>lt2$!1TH@ySdqfMYcoc)LXHZ5+l*?8);8J z{Q%8$B#Bwxq9l&o)6mPP79Hl0cYFlRI)B>oma#8UpbdYm0(}e`@SDnPVQOYfSGhe~ zoS~%yELvHBBQhk>gS0iXz_4|X^MGYoXPJWE*vD)lg59t9_@Ic2AP?bMI2)A>TszgM z2edD7P0oSn=%3Mh_*vjVY#aEEU zpOL*jZlEhWy(V25SBoo!ViFO(h1Scq`}8u&j_ML77~JEZK}CXT>K0V-+D*L%3NQ0C zRx?m@)OeZ#)4LYmk1;KZWpu4vOvc^?JY?0EPitnWgrvKsUtaItr0<{VdHc-vhrGu) zC0PB)FWk75L%KO31B4&@I6{3^c2MI(db$vqZg$T)Pr%jV7-`F#Leb?;hVN>D0IlhO zl+bF+E0~%l`-%Nd^h)d+|GTtXZ(mLae`r8r%lFsKN!zy@o{L65tv~+naXohyWy(bE z%c#_`N~Kk9%Y^@GEP*X66y1t`N&L|wvY8dV#@B3l7?CrMXo=CZ;7LrifnN+Y`HZL| zI!@uW6Rowuy=U>H3%iqGsEW9n(b8n<_1!7(Eafc7GjPVhThn${pZB{4!ygUJ!k9K@ zWr#RC3w&YvS5lLpmb%Q}!tSR#uF)L^p)uY00kdo=aWMk#?^bLeK05!&DL<9>Tw&~gN>E;NL+8; z+drV^`UNP_B_O*=U@MBdV8h6|9Q^8Le#R-)dIS0|OsL#_FB zy#H?!6FJv8-y;Mom_m@yxClA-9PZ9PhsaxsLkkc$g=j0DLhvjy)74PtDDTrKzdu!qF!GFIA(=9!GfWzUjA+C;YDdM_sOtF|M`V`e zeDO;nAWV$QP0~R$yy-OWw4-9%Q$X6uvm!H6&=l-7R@0UNH%ChJk^>#=>%suqVo^@1aW5i2GB-E3?PuoKcdHgoK+0 zUuF^#Cjd@`r82L@LWXE0at{70_mG224@}auPS$F;`xwLVH-AkcVW9uPT=dJC;p)d7jnI4gvSr4vj{>w|S`y3?H7H zO_I;5>nO~O?f9`H=dG^Jy_4~|MBRglx;%2OwcGHX+Qv^qBe?sLrPd|MKhF^_Ta=P^ z@4!RBr`0C%wDZ`IcUaTHZj(UBZ-i4LTQFnVRQd?%EZk9mowAUnr$>tC{T6w<$2aMnl-Yc6^F*sY3j@Phyo*$p*8rfb|}sQy8rs~|XGnw6ey zTPO1_N46fZnsEMOYo4`c&XDoOCr4nTwj0I|wqgTR_-=}>Hh-1g zbW6s8V`vcach^SRjqQMY)Gh1%6yC9y)qpQ_&9)9NW~c4wOr-V5xK-&sI?|i6R^#WG z$DwPC6)SKo&_~$7l!1;&GB*r<#;F3V~0w|2gKSJd~ulaEqX zC-CzWDYW+GGekHSWqCK|5mi%1oAFzC)&}=Ca0(E$?dnk8Z78>aC(JlE_tw{qqC7bz z)gBz8^b=gwCy^Hxxo<_P9QB;_O6#l;fF*%c*i!0FSw?=BAxq3B44H`n)si0M6I}5t zrNol?K2Yy$RV5Eo{AlSU?@DlYBum@D>E^mHBLMKLD+HT_KswTw6P6 z?^rr=DEaI>R>p*%F zq)(sMbK{>mh@rwj>@h`oVoi6Y3F5@`Hw*#v%^xv~4bO*Z2jz*{(%HI7o8g?v^Ykd~ z?c`Z`H2@V9D<vqcf9g=?SEVvIaC9Tcp z1yXxpK>=Z5VLm?mk4Pb(;vv=NH5*>t&t>8V+@6In3VaqM!!dsyeYpj!`n zS!++d;D8jZoZlfNg_C=C0k8cP4&vK<-*-H_=cvqFk2-9Bt~DRcMmxgpwN^Jep6x}8 zj4wb#7Dl@LMQ|}#*0%T`;@dYNdeJNcB=m+1Wr1A7wv|`YEli%JQcK?{NBH-ovdNm= zZ9mFOWB09}ug6!!kv|_&TH3;Z@Vs#;8hjc?1z0!(_M4C~IQWGLir3IUul<+s52xWd zB3K_M-TuVRdUAkw2?r%{i1Vj8e2wq*4~yxueRfAC&WV7TI3hk$3jQ4D9F1rJ@1LBA zobSL@yzKLU{w9}3UqyHRc~(vPm~1LA*qu{B_S?(B1mfYF<6opD ztr>8CT`)4V_$@t0bZ`7_;;`5^{wwcMQL_WfYOAZOZJ|yoq_wX}Njjw?rLrB)*T*B4 z_G;QlBxGcw?vEch5J1m?aG!Gx6a{sgWA2_*UV~nbqzX%|eSE$R5L!Wboe8J^0*F>za zpbNl%B+0|usI=?t^2Cn#OIf*Hr%iOYU+C6pj+wivzzxFAln8vYiGc%EXb^Tzowbr} z()!(=JKvslIcE@GU4bYHf5NO^7NCME9p5BC1P{~y78egU|FvP+wH}QOIg$rHWit2K zixkLue0jSR1SP(j?d^%_Jq}G2g_JN|^#}UG@t#d-v*3LX50}qoWMyHQU!qAi?=z_y z7@D}U5lt_hD``zGy>ux+*dbzvesdj%@p*Nl>4!)zA0me|Hc<`6I4|XI<)C8oIwZum23|(~Fi$q68Urdc{bg6PN;})%I{)1)3PY@Li6^ zn(f+K+j~$3ThV++jh|=yEXpj)gn5o`h=u z$}cOWlr+@J_}SrnpmJDHrzuD)=XF{T#KOjg7u{zo)=^(9da3jdyfr?TC6E5C$EJQ5 zX1G;{qD7zqPOs#gFk2nhHq%GU7JfW1SuZ7YWb zIQnf#Ae4MFs_qPmCgYkbYOO!*uKwW)-qBFlm>>)AcuwDnE{*03aL*epz2b8? zCeaNmr?Mk80hza>bb|P2_-8;iJJD}1!#N$xzJA9iHDb?^9oJuANGs; zO-@g{`aLf|$20!ICJLMrt*f;5%=cDN2Yp@Xo%l1U)tPhrXn9CD*r~yPSw|h#-hFs^ zxVgDG{WfJotqk6ZzPb`w^3*)NoNW;v&~EA%`0fo3moIp(D3yBYBkRWt^r^#gy*h1H zs~diYh2jtO{?V)#4Q?@j84-Eb6v>QI24&=}l}4cJ>=z|S;UQyMHW{P<9g!*(TKHR)>W zESl|UVNnr^LKd%)Cx%6q~AWNHNUeRJ`gwY(%<1qzKI#_^pdIsPFo&w zem~sZ9sJa4$vxrr&o%0RrRRs&9BR7nsGq;ioJ<^{ea-eMExEE0M6+}!kf|aG`Uj!q z)eKr1c*$gX3<=D7eKsT&IWK@i6x~Y<4;OHCf_>Tyd^^aoyu}c`UI_~e`%_wtPHK29 zZ~@u6Jy`e1$Z8k8i)QXqcIY8KUfpI(6c7$PKJTg!zF9mHot}@H4=ch)Fm~EFxcN;B z*#0vb$jIFrkh7~lmqSX;t~n{J;ccWzYU0aRezMpKljiLjDqW=_DIG>>Uie9qtFQlk#6TbsrRagBV0B zan|KI4eRsPM7=kj87)g|+OtSN(q{swmT$KY>TB8juMi_cg^r8B)~e>#X3?%^u5YE4 z=Z}(A+V4^k7+~IMU-|^C1GwF2)C z%S|pGP4enBun6g!`H@FubN#1&TQXT&(-wp;pk7hp?Fv}vr`u1Vn|SvN?D2p%aJg@- za!O|pX9JskY!C1d!G3@458s{uebogvyX?HRT<-6YW!}GT-d8#Ir`n{y%psFMkK|=& z^+8oOU5hiNq~^6m-R`|!-Y*sq>9+}r09fpDK&rK03p)G& zdBAyl_*~^k406Kw8Mb98!f}xuoApdQonO~I{dRE>76xyeRN=q3*k7bhtL=vxrEGtB zl7ckdk+FI+SUz2mA$r4C1Z1xK{q2#Y%f+`0LNYN7o%tsJz3D(TAJapK!T0Q&1#-GU zN<1)buEwW@A?5@jfzv7N|5dOC&Qe0fcLgXF{02&~JFAZa4a)#qO3s8Kfj1}0^xoeF-*og~Sjyw3E=3tR+spsCmvLYS zAI7I1&jA8S7Ax78xKeII?JL_UGHetcX9@qBAhDNlrnJ$~< zmebH zOzDU6>qxhBzsX zsS^NNsA88o`!uU*dmT4^RTcZod)t|Q06_EHxo9bquU9Kiq(p5hUj`hz;q1a68tDFV z&ld+5Lb5&D&1(GS5)^ny0qVSMBLRsv!Y&!`3K2nzDwO@M_OI52e`H#$cM=HQWL}65 zd_rS;-#zi?wY%<%zxkADtj3ZWa)Y?#f9g?VH0tn%E7){hB8Y$b`Ux97ta+S~E)#G} z?)miCc%ZTZnkZyX9b`*a3nCd;)P_R;ZT^L?dDZyQGV`8A0M8c3-lKbI7G68?cMS5! z)4L8-(D#mj#(8y?Yut?19)StZ9em@Dhyq5H&GjfejTf)zMxAGuC>6qwO|mP3BMgt^ zFT1^ylatq@XcZcs80cSwJxM@wkZPkRFo^%okbSfxuxCiOkQS;=L1~^6t&)Fsje~JADm*8V_6<*Q6_reSCbhknfo8j``Bzur;!p zrtQ?Z!mWhrh5nDX34)RmydY2(F$L3J?JkeuSxfhdTM}AG>oMxLyLbak2|*?E+to0D zpZY!Kju>l!<%52rYvyG5d;5Q!ab5E|eP-T+Sx@WmDr|&k&+9soe2076yu{x~KR*>~ z7rHxY(&rtpeeSPt1e#^m7@wM+{@rCEezR?6(}D1CIG?EOYKzX^v42D_MoC~3lnhP_W9nn_e7VP zBEGd=ngji>l6R4KoAqO$N>eXH+>u)#x(duxPo#G=A%lF$7PtaE!ELyZh>q(^1@S-t^XrpQrhp-rm=IvVB9|lku6@V-rNC?BmDM0d-Q#O z=A-?5e119Sk-xy-?B~KOX4?pId^}r%P5pMX}gci%A-7mrlNV!%-Ky7!e4y zfhUq0+lm98(V&hOnw0LAGmi5H+61}~SP4v`ThaDAfF?VC4C@HUsT+2KbqR(m@P7I! z+2ePAzM)wUcBt- zQE+>M@wa<|e18ER?~++2?vM{e7N7`Ecy)TGhs+Uxt@C`yyt$%hd%M4!awPG;+DvZ} zi?Td(2zHVxV5Z_0Ow|M!4;b-zg6@<<@{&bcGiT?jrbA3?3u9vmxAnhPJcKu8o>ay8 zZWk%ibO{1p>qc}5)^$|&J&Uro5Y3={B!GI-t7f&OmqK2}%da2!VaAyTXDG-~`_dhW z&;G~$b_FGb!|87=YIDZFydJ5gdWiy9fB3=bVFS^-mf5YfC?8E+37YJfnjZf_GtOj< zFLViA;Ig*uKW$*|#9%8_HHTD~_3l1Y#P=lczTvRX!H6FSCS+nriyrYCG?^$XPYqSA zLApHpPno}htkMXk1R9HcKeT(TM@#sJUpc;C*uABC2`2=x>9=ycL?5_{HCkrD-=gcm z&Ur2kcCDZ+Z~9p$`L8=+s4zI4IrdfwV%qy%s5{3={>aUJN2D6l-zPaU=&%8ucA7=#9@#Qwqh6T=1_h!X}(Uw24_EYb>*Dk_d?(d|7C|Vc$VqeHo?V2 z^5|;x6TmrTknL_8#a!9L7pZ(>G1V!hF5A{kI@An9pp8hOoxaUBo9H$p^5aGFG-b0c zO+LO0L2Y&=c|1EkZFk*^b^02BT}%&%0lBV9 zV4{|7_t*w{!N)J}edGL222t0>GrX!|6DA{;(3oY2;tj+PjrCSJqt(db1BoQHmT|MA zwtt!tf-H3qepC@{+pw(deEXE$*`WKCC8NHi?)@j*WHTWM`Uv!66h@RN!iEJh_|Ym` z?T78Zb9s%X5e&8b+Nmlz4XNg^yd`4yqqUfqZ(;s73p9-go&kZf81NNm&#xHvOv?iK zYaGm)ggW~AEO^lpVtLZ(F$|iR2EActtThZ95%#dpjsd+|%AZ{L`71yi;H@SW(+AIh{luz6BJfMowQvB(ZB#KTFO`O5|7;30Q5=GHsa?&>C6uI*Jtub7Im zGKT-Sv)2A3IdkxqgTgYQ-`{uVMwC!s2SN{s6nyHB<#?+Ls z`#pvIck`PfE&H-+U%dLMC2!uZ?a+TUPWp{5?ibVnJN=v26^>)i6%R*O(a=47Ehv*M z?ve!W$Z6TRMV4 zspI~4g2b!77f_%_`OVja?}bJ%x! zcT}(?Y=AQn9Yh~^tx53)#{GL+1g$GDGei#RMlr+Ma!2-ou9LZGeEreg_19y6M>i^- zSIj(ND@fkJRowLWh709@EME?t)HoH(I15Jn;{^WO#%5n&BZD5xQVUuJ$KdWmnB#P@x?JdwkMZI}S}et#IKheRubk>BR&{JZi|9)jT{@0}Eb;%nRzj3% zl3M303%nZbM#OEAGfY!~k#u)rfdZ;*0Fnt8^GiO1(C9NZ8`VLi`p|QZWOk0d) zO`LW`19ao=ja{xwG8OE)^XVriD-xj%;CgVKF@|fMN?f21(Vv73hV8RLObF&QW%_U( ztw}H1pT~EA9L#+@_inZIzOZet^vzG>h|LZJCT5Y?0xm^mN{*F_^SQ|wFVlj1s1F^q zeyDtwW(mK>vy>BK%LL)P?1M8@{2WKK;syEHAk7Pc1_Yo7ZU(ZOPX5U#h@haP!p3T9 z$(X-!CRKXmBj{4%`pis;>JJa%zuyU&Pw=32oFz0-#=f(lV<_@(;M?GdMXijimmy>6 zlQ-1wv_Oq_0`|FCuEV$-dgS=FwWJm3gM0E3RK`|;_lN?J%G$#GZ(Ut7q5G@BLbYki zoMx4J;^{ZjSpWaC0IY-A7@lH^si87Q?Z{Ds7IiCZ4xWBnxvicv1`eqIdAojxvq-{F z>r0$t962$&f8jggw!MFrM$XP>n~+Xe)}knNu{ygDfz!+k&aroUns=h@_@MTuhBbHJ z`KNm@q=ooovA+<@RJzkN1_{h9=y4&_i>-S#%jOnpjBt=K0Pt^DKm(w!(xb}jd{~T> zWKopHw?57ER@a=>GkWK&V$oN_L(x_uazAvRsgGYN&tQolHd$8sh=9ri5)&a3rBQh5 z^6TJ3&ku&(rt37d11_hVA}I$k@I(}9Upl9ay_c}YJMMY#3Rb~vu)B#bpZPE8Kiu3) zKjtiCkFh@9TU#mi$mS!o!L>zw$9yrW9!4&zLF39z-HYtV;(y3YfM_zkc)82g!o6~% z8c8`;=*m(9@jptT^+~aB)xt(Yx>h>UAeU+rUT0@}Ix?Ive$2JhT}}|)U}IJS4z0?F zOFri+;VDmFpQ(4+LS9^YIn)}9j*|-fQ^NsO5XwPq2FevzsMZ?+!rNWv?y!BGYqH-j zocIV_$vo4hHMqOGyE_DTcXxM(;O@ci z%KzPS&KUm~-_u?Xy}OrGS6A1ZHCvyI9hErldm3V$o>B0UQ$qlOdSa$-0QuDkSHsxS zEjp^705GQ!mo@emy7-ZJC*x%k?9`yxeHfr(3=k?OCvQ6`@qQcPZR=G}Y(;=g5D5z= z9{?-?mkqyWEY_i63SK7IUC}Swuoqzxyqb+GKK(Req-S{weSBzT zc9Rb3L6(g32!>pz4fb@tA$<|s|p)>z+|NbUw5Va!;^4|TX0Kkm|)Yqb)!_F|0i zeH`~)lfGkSSR%FJcL(ZvQN3xMA<{ajT$`bg;~hido&h_Z+4UFuibX%B9li?{E(BF~ zb0Kj1#y(P^f~`D{-;Nr8z&m^~zsn*M|nKNa_s>97}+6RpN zkKLrkO5!;GmohwNS2F@SX?38(5E&xgAhq{jE6&Hk=g#99b&^Ks5MIxTO*sAyb_*jy ze9)7NLV@;2xbm;iEUBY%jcecGt*ZT&vX<$jwjvt9N>@z6NQ4|oxkIanuIUQdiGN;%-O>ONyxiVuWuEFQxmT+Vtk{bE zEM4VzC*?x}z@;DxK_Wp6;_7dXF^X>aYqE#oV}F@(=IY%r{ptIsV5^Bke3P|Cq3gM4 zSYv-%cHlc$3`D=h)ePDKyGx2-ag+eWPF|EeX$gP5B(7IST3WOthtgb13Xl&(xlN7= z*kAVUDu@V!ChoiU&%(3Kuaib@%yW{z5pH{XdjUEt2jB7dP>x&}s_-7nH@&-q0ZzOE z*jUKbO{QRtt>r(rDZm8$R}fHL6>GX8c4FqRB>6%L6N_O(Ht!l3ghxvU+-JexRac8%NER@>G5RA@FaRm$e8T|g zEwl5jHmd7a>0GfEYij)cbHJ`2Rv5Qsvk(P@-DesH z&oE@TpQEy4L!`54WprrO6%}>~s#GFW88L=J+}3EI>BS(f(F?95`|&~{z5n7)go3lc z1HhE=19_d+&i=+)n6N$hW<_eJ50Q}7Uj+qSgcIKhgpu=;s*63oZGe6qK02#cz|2^# zE;EVs)DDevK@a9Yb#r}`j3+7UbwW4VQDK68bK{g`YgNCcbFW5qxKv*|O{CRq@jko2 zw;*(IXINl51 z*|7k)!1hNg8yiM#hpnxS+FCTNuQQ?rdQn`{XDs?$LuU@mARoHweU_Jd+2+iQH`aTo>m`lV82>mh?kQMyZ~pDEVPv}?#8eHt>+ zy5u-V?&6BhO)O@dCOm1krn4rZl70up_;0q4C&t*se<5Z|X08_^feWRTXb_HQfL3Sy z(b$rIB-dxzMuUfJ2GZ4XJsSPz2csOheBgUDbCi;_{$yWRvuWc+G$kMQuez6^o}uvS z;`ySuenpLxJ2RuTOqY)i9~6e5agP6`V~~NrZq-aB1g@q@zJ6e+KhgX?=8-Ipdj4$) ze}?7LrWP4I-Pm6(B=%wE!P+cJVmIP7%PI@JYAgc%JHF6>s6d`8Y{na1<9sty6lyAB zI|gCbEkudjFUTp@b3(JZVjvRfc5Fgy^yvMPwUnwkE>^(Y6G*_42nBvJ})iyiuB0CezD^QF$6 zT*#lfN?v2ZuYE!PJTM$Ss5Zs`=~WFD^gBZZM?(|gZszg@F}yGprgCoqz8}0+8Nwvb-2QdD((Y1&k^_CMu;%o>L zi`-raPOZ5mE+-A0Y%b$10u!PSV`S|n!|(b}2~{P(vii(SajbI+>LNnkNRu)xb;PPr zCSn_8;T{8Os(Uzg(gK5hieg|vrV4%dU&go&8gO|Y1oSTDWNp*qo$-rfOd@>ar)ot#0fwM`nPQ(Y%CE_Zph8qyAEE={XbaBKdUlyWzBJcpa^gY@LSEj4qAi ziW2hNB*oyETm2!Ws*4{Q)R#^7(B7qfVoFt z0^W}(FD|9&_$;+yRg>1t{Y-dbGM8?zZe|O{p0k1fci@gjNg2$44ACwNpol zMJg(5^0mos53Y>VSOH=jrzH>@C^iz*hA#`ya7^VMkm#L>=yI=Ftj zsFh=V5J*jT%;@2iy##DseUC7)XD@?@mO!uXrNJ8R6BUA-a%(1HI^#(=H!-BsCvg0YoBr z%NLHCKjF-8yH)iQKxEjOawB_AUx&{)0#%cAVg_A_;oLHG#xbic4OjTEL=ng(+8Ks3 z50lJd$JT+aT#5M2^vy+Nh*r(Rz}#uR_2n5sF$pFQ!@=R-AmGqGbbnGHyp_RyXbzPI zF_&o6N0zOt&)C9m)91EEqB2GAT;!)q@}h_Y>-oQ!r_gs9Xzynz(O3{(%~iEeV3#MB z$za}a{c6OdS+}RcBMT4bAGsL(5pghNp;<32A&3r>w|5MzUR*=%%Kk$HRA*mKsIBd9 zqV~{lBA9>OJXP>cCvx&ztRMp$Q0!f421yS;qBvpqapoaDTZYBVu(2CW*g zP){qb!HMzy3EW}l5Y&a9UQU5^Ur~nhURGhY>XvL*S3G6xS*|Hld9}t|s=T#DR{mmM zHegu*(n0|_|C|WNxLp)Z>dU!4oo`W?KwbOAL<;TGe1eY6p|tL%(6T))T|hGz`%gc1tTAo{MFO+4gL*67 zR;PTPf`x)?Fz$f>udz^}b;m^fqCF{%vsB`lKL@;Jf7%t)NGNRx)J|d?>X@pjk$Rf) ze(jWK7l?_MdjnEBWN|h(D7D;<$HmjsaQO<}fpo36j&9mwiekTbafa5x2zj`5C`mHpnzP?%@{P7|$T8Q?HG=B2F9iF^<%OhPo8v0@ETSVRwbL1!3kIPSF-Y zQ5lv5=Ddc6+sTxU3hEDU-TE4@nIdoE9qo!*pHAzZ+Ghc~*@%5CPV!)`Q?KZf#m>;ZZB2t079uL!FXB} z-vG!^bb1eBNML?h{Wk~rPRLP!f9{gW@ zUFMa+Yu~6|R{624`p41cmxlVoJ-~af#*(Tht*2QN2S}XI|10VgBIcM_Y;|wh4t!O( zuDVB&7r{GOG$DX~riNz@Uoh9lq~&(gTI(k{YEaf2o4=CQv${((IgjrJ;=DF4M9)3E zyo_e@HL_%tf49JI1QSc-H%#+rmF_!%ry^eea23b%|aAt4c84;L-ds~#0EZ* z4+rzQ!_G*OhTKgr+T%d#2?E9d`7&|w0Y1rP$jL`I4!+hYP4}cfUjG+fI=@3JVm}1F z4;2@3hN|DiW-dowx*!uN(?GO(>+HR%8;l5^>!3S35tK9PnpiW?AlWQHU(qnDf<)H; zN+;M4o5<`Jk{-n|-dS!pNt4)s{P$R8(->iKREZM)3ID4GJVxcmE=pt`wyP6kA<`IQL+;u(gc#y{~~h1_&7*UKYp>`=oH3-m)0`cr>*` zfHyja$1(o=9U0xX2Eg-Mu}{GVRV%{<0VmgI#YiH{GuAi<6vlmta;iF+#od0u8;vsJ zl64@yun9xphxH@Eg#iA&w3Q9vvm=Y?zNtg+&?DEQr*X?Qw9;51_v%2rRpl*N(;U=R z8(uXfpuaXq_C3Jy`?b1c9qtWfmsLU|q+mUD-JL-7czBUd({(Lt-pA(z7*T5#eo^QgP7Wb<4 zbd!YndAJdiWe_OWPXSVNKPc?4x&>D=SiG)yK<7Kq7x&{A_UM*m@F$K7g@KTfNI-=> z%4#>0SWRi_j{|_ygJ9M5Yj?n{Z_4qA?acWExxTmy8(ZZyeCCD<27+*)d=~W+&~@D1 z6thmV%g(m1KL}`kKT-Xs?fgzHHcFU{odn4Ok0;ojiQ!WkT_jM~4_X~#3g*beV$e=` zAGm8FTxXpEUnQd@TPKR~5XBhf2X_ zJyyoY;g)2S=T1P!Ks3&)FGAV%8EfwEEdWdEF5%#;dJ&6StQwxCgxH=v1jd#X8z5ie?^gMqi+fb+@(0G%M1~+Tgeq4`YEy`sAD8dM5?)o}_#c>^Tj=S@<9rlLb|qanBy8{jkkWm-1Iok_Ili5lL%0zC1)r7p{-D>ddu1g9Xm(=F|g{j-KbmYTiBp6V3@3tlRGnsYyf z;=7}(=|(HLQUM*X+H$+(sWJFH_nW_T5HR0$dA_mX*7s;HsvJwW$4-5dQK?*>Q*f|5 zbGE3?ta*XM@X4y+t)cyaLf!5BX&(#OgSlkt*L$ewoL~?RbBak`>J={Z|HAOE(vC}e zdIUi+8W%@?%^Ox8xCAvn``)SX#?6PY<>Z8f=U&B+9BwDXDt@IG!;la=Wc<$y=xtgv zri~_ZNS;u2N(S>`9t7bR2Xk?$?s;hRP@@x#sVZ-|sGP;0Q6c=<-rfeNt{qb#R0}xm z1L5X+Ir|^WNyX_le2q32Yuy$+PT92|7Z(@Y&KEFZ`;;?mzzRq@Qg4+h6#1P4StiP} zR`p4Dff_Ss3=Apbloq|k-CXpPRa2z=90z_x^6i2nPdzaJQYUeJb6iWHDJbalND}Jg z2KQTekgyZ{<2lJoQalIy$j|Efs*R0}S`%P|AFJCyGFuuq4P6bYTP+F9pd6|Ncg&d! zr8E#(3)xg^ZNyqzqxJ$;~uA~*MPW4KLN+n6b0#h-g2DYx~LM7@9 zaCHq}Llbgg^AZ=ub?_godd1erXn;3=+(Ppj3bgU)48Z0t5{(XIX&{_~Mq;xz&ldMV zUng|6KZ(S;_M8W0gi2qpJbi=P2FT; z)y=|gbma($OM=hUFoM@Wt5nI!TqF`$v#d@dM)<9Nc1^i*kOV9OZ>CS9RjLoG?Z5U< z`c<;jJ8D$v{=ko66c6di6sj7wRB%;au+rL(C!JojsI{?;(^XOEs`nb{X5(z)$_56>s(F@utAG~@W4R~6&)EV18jkISChZT@ zKF8F<0?=?;#9L>Ip!0OW7tVMnK!Q*lE-8MLK6j47Ha^I6j>nWV3-=8ckRD8*xq&s# z%OzX9Ay=+J%C$X~&^C!6yk| zj}qW>kg^u~=f^+X^#=v%DXACD1q%QyN<5=N&R_#oe^m=K1%xc)62Sh1cS?%yz-unj= z2Mr4Un(XwzWVC*L77ZDSkFP^VCE1D5qY&~N#O7$d8J+5$|NrseC|PL|4&a7m)7b&P z4b52j_L{a-7di?6%K}#l3?URkK`p%E2VWcWl;|Y2y$3#jYDS=fXz^R7L%Xf$guu~7S0@RQ>-qikK4S@$PCBShE| zmE#+Lw~^!gGrWc`d_3;=0B(c254k!k9yFMZ7c9@tNJoc&gfzq&Fv~T+QD^pQ(DeU~rAo}RAZ1W&$G-t`%hAGzR zf?*^hEPOQ5Nv|1l+X{1_xb;D0saRu)Ca_)$oz3Z-2l;%;B9b5xlHJY>*YqRDSw@nb=gOFpH2kQ zhc8)@4X^`DrpI^9nkuRftfqQL#8~`wosDgY?rmG_Y9ceh^oh~naSjY)pA&Vox$kP} zENUr)VdNF~s7Zw5{tW`ow%jg+cS@P|SlNX&?A;=79YcYd8-gMcgkUcuu|LYlgXRyo z5GFtw%akA(na~<2K^7Dyf3~#`06x30Las_0(P|n%^eAd-o{7CsUi1G;B-eS z2$F6VOy{-=_xzr^7{Z1Km?K#tZC5)Al&UTI!?IN!XRa#hD^6NSbXy_2cy02sXmZB# zoLH>!H2+|Zr%1ynTGP=0WAa22iL&Vjpa82S35L;8aKkqURX5NT8 z+D$5|Sn+g}D{zHXN%)Ds0q*&-F1a_T9U}Ohs{(xoD$&xfaq1IeUYt{3>pF4DWfI#d2p>by_AfZ31|a$Egwq>AFPBL6yu0v zq3~(A3}3@v>VJOOA={i>J9-%XF%dR?_r^x}%}PqD?P1s+g2hOxNj=*YBb<-iC{!@P zz8PeqCY44HS!h6;?C?|Q_kwyl`AuGhK=P!P0ePSL$}^=YBGo~?&zCkbg7|z&!{hy( zFk;%#9A0f1gu4D$|4^a52u&*$HVzfEo#;Q9X~ngYAy@=CqoB&go@^z=@0?;_MQ4Az zqpV1hlju3D>5)1 zxfj{(mi&#iHERNgFGm%J(*hf&$IbTxc#KRtj4-358rO%ky2APJLbjgZEA=WM1`y)9 z=R3K!7!I|sx9kF&XjD$KE4MH{jV1Q9TfYxWuVN5AO6uyFs|(U3UJb)9*j;GR|Ik%R zBA82n!QX7{&8F`?<}Ifx21mCSLYR&^fAUbvKUo?l!aT^8Y{B8@@tPzPXtbZFP9!mvEZUa zV!d9PyRR$wi-O8wv0x>&<*+3qPrF1&#%OF+OnrIbA!8xRNQH)i8m)@;$^rF<0FI_) zYd|hHQ?-;heO=|Uqze8KyO#VoZ@My44;o6?SrPk2j__7RAncPCd9@t^dbx%;jfS%( z70-^!?R!92ky1y0d9$b@i%-&)=8BNvmFa$7khN@XAPf$+#&H;gXE8*P<+Q!#v&74n zP2QI0+I4Midzv0jogyg1{^e{T-*fb3jYnEK$J?D z?*Vs1$~FVO1T%#=_BzL@aB_;nb~{q*H?KHx%Hqc@qjS;h_v_)6;^4O!s(|7g#%MXUVY8xg z4>%s|5j&HS7zlnm(nr2R=zjkX0c(tSN@WxMW?)L*a-*Rc?~H z+r{E-Dn1a;K#h(=P;_DR&{WeVs{j7MXDWJ%1KO9|O|EY3c3tJdNkT`Vut-X3A-COh^6Ey-?D~ zte@GitKs)&BBlehI7QTD1I5Swa#%Hy-zXYxp)938d)-{;o&36y`I5nF^r|r5bG05{ z8AmuwcFli|nB5IK)iUzu-KVTNvSQ3J50PfEj~Tl}kMHL_3#$(;1DeAPPsqt z-6G!)4)RRNd}pA75XQ^9)TP8RQZ!x0$;l8x8^KMYCr=_#6v@m6)>XJUOfwwRWzfgS zN_ww;pF#6K3;y%UamwQ$bfTpvTDW6zc{l=mD^$fehwsdf`3gQ@Iks*y zGP7XxPB5C;I^KVecH;Rtv~>w_ngVr}Pj%coL|UK_Gr9mn_X+UPj}qVqN{YYc41iBl z$c@v3mFZHQV<{%0?=PuEQYi8Y)eC^Wfdlg)bdoxn?&Zjve|i+;!<3V<2Bj=W_!F); zQ`kbbP%dCVAvhA+N7bQ^7VnO*47b|ry+57Yb$90Bils>yx|_sW)>bu7_!I`1y7}zu+uZ2pTKn~Bl++o-R@hdToF%O@BxKZ$&sHzFb1Aa zi0&W)+Td?7UQv}f8H>zwjD?1M4s_Z(#dG(hM0>=(dTbv^z{X1T8*FGVYnn0c!z>i0 z@}9r0E468&?XZ+EA)d>8=?nwaBmY<-;*kIHtktav_8Q$hTgxXxJLfe8?A}=Rv+tJt zXd9j6p+O1Yti~~*RNHTMPVd8pg=bh5u~Y_~Wyi#G?rPzhQ1&8ayaay}#DvaU(SO)O zvO+Yo?AjfVN^hhMp%MH7`RocX`?JNA^&W_*fK#F>b_ARoP}zt?-qBp$-hKUO3V z4F#qI4L)x#K=kb_d7UrmhhL$lF#j)icSJ^tcV4V*lfgcy{H+Cd0ERK|;N~K_<-4`@ z7c>k-${BX!`d&e1Tu&|PL?a!~zhl9^(e01nkK^Gx(JBE7Rm=mAUf0?dH_#L+KM80G zW5mU7uz*+aJn&W_FGe#$d&UDTpJ-;&UYq zBNKqg(#et5eqNWV5fKlW$FS#jgT@AF8m_1$=4M?2;@XKe?^a}?-Jjq0?idZiK|#HE zI`4hUBn6)qflvi7W^vEKb=GG+kZJtO$0_YeYWPd`8)w(sv1}PM^8AC*{rsZ8H<$Yh zCBNq(PDHK6K^3M>1U4GmeYp*{7f zm&_-uPSy{hd!(jH25!0P2X^75^X1yj3L}e#ssp|S_ep}x1p@gX;3Tx!w#&{jtOkDH z!~)<2`xteiMNiHvO#KeWYJ9(kM}9vp#?omn&uS@|oL^C^;S&mFSe{?U58^guEqK!4 z(=U=2;^;zX(QnH!QQL23VPQeHZ&pmh4um7FX42ZZwK7HkO&zY|Sd@BPmyw_>%syuK#ub}a6D!oy@ zVfTjPB4x!U>|%M-BeYXNY%%jqiDV=*KRIfJP{Mk==x3{3A%a|H*Gru|_PBiOD68%ip%DS^Xv22Ym=|W{T{#Z(N}G9#TgSSWQe`rf)@9O?WTprHU8J@K42&XlPSKshWqiwf$(HT{;vDJ z>}A5(XL$wj_wGQ4A32MU{0!Oj=n~t0P4}hi;%r<}A+dPa1wr!@3?dfhMx7UK{T`!) z*eG)26W~)-VVWNAPh0OQ$sccB9j|A%SlL}3Pra-f8d%vIt$$w^S*JFiZwZq_s-F|Y z8NwI&bS!1uUDu1ulWD?`oB$zqL85|mUiG>Fp@jtAH`t8~DZ5FXX+r_Kr|3?%$3v4Q zFPF!M==Z0;FZ}O4(UCChY7K`Rj+7Ve*mXz6ymeBNIYrd0E z(zdu->`=))xZ>29-Bo>0X7LUx%_jQ_8OPHK~9^3 z^-^UrEd{4&_%9%kJduaacpkT@{?G(XL1BvC5CH{tKp{lYSRZkF7yT-0K4q1-dKeBu z{MDYtZxAU5DDD7C4|`LI?B_rP_581Dq)OXgZeyWwdk6PhA z{I}5AxrAFUZI>-s(!Y&kQ48^l6?}qx^`SBYCf9scDnvE2YPQ}NoBBwf);_HGJp&v; zZx5z^2j-YKu>mHK^~mU~M>N?Vve~kRqO)3mf*~q<9bAW@Niez}-!I(nDBmvSp%547 zScDRWVN7u>nZV`$oXy~H>H5o%Mi$N=-y%C|e@-#ToiKP+-0S`mM&54AodqZP0yQ_<=Co$y@u z@nB-?Q^u&%pv}3%Y@HBR#!Nc8_^Ljp)qw*R8JDMjq1LrhcUBMSA(&1%U80~bq>$et zZeAPa|N981Mw>3Str-W5J_cw9=7Ja|ME}!q{p~r9 zPD`r%`wv5DgikAABT2cA*TgAb`rW%+WZRZY_(K}xzbSc{q$aN>Y5$p0L_N;=`Z zncgDWwu@sbht-6ZcieXr6%|M;$V(CIDm@n$4DL0~HYd0AUkuM-YGmoU^}cMjE^WVb`{`Vfpic@BM{p=uH9Y$#717G&QL`r9%zgkDmpN^l|#6*Huogu|$ z=tF_X2KvOvyY!^a?{o~w8X`bgu;+=0pxdjNzS$0B@!+Y~9uv(&5{J`vNJGeaSir>4 z`hU^)!O7*UJoctHYU2j>+^wV8A4~k+FN9lB^dc%xnck1wuWc>*Y|$?Z zNDz%#X)(GJNIaxDMnJA6?$49o=BxGF;S_RG+iBZ`hzupH`Dd0XuF#RiGhJ5jRp_u5 zud5MVe;#?sQowD!pIB54Vir{1|k+&C5u2br6te509VLvM-lB-5uLLNwmVC+aro|bJW|Zn@S-_EKHgzrt`3iE)bWuG(NkU z_LwtPHt+L~uU@i`P#?^gLT*55Mu_T6)mE9S90faRSyg78HqIXR!ac!04-n*x5gVaJU|2;V2wSJ=1cv&8+0|)*o<4-JNUk$#dU7%vWAjYp#j|TCa`|` zkEr?g!b1k?!p*mpwwh1JK$=FWhf@ArKyvAKmXVLXDy4R<&~egzn8)brT*M--cO{dD z*5*F89R>pI;M8;cBFTK#1ONh(cf}A>yXjvgSBGx>+BJjP>D7Q8i7loNRP>cPZ zje*{DFzE$7uzqyU#;bgWtD4^oC-cX35Sfk-i$P z7f+r{l~&^eQW=;g#Pp&*)x$%W_7G%D$@|{>U0hUAU;wx*qrX!K}$zEfn7+ zL~P%u0pXHGuTHU`;83V7^VWPa#!7Reb4{sOLiHzGq)cGp=T}DqrM~HjmhJ>CT)=Le*Fy4p<=u{N_Brpvk>E0_B7;(10cZ9g}m)4;P3}534O%3I~pJa@3y@ zJ${$)6jGz=Rn|95rCXGLm9->h=DdCmMvf>)98vg69z?P5>q{w;5McLTL>cJUtX60J z2VIu+E9ZMH#-_5iism9M$P+))KPFH#I*_s)I(clop3^|9xTvK59h>+~23Kghs2h^0 zrl3-(Z#w|I$;z9@`kK5zCft2PXa^ugjoS@wZ;`UfX%g8|f+gQv7kym(IW7-D?xOSx znm0P7Rqf?mHt#4grY(>KJLR++q!dS`@=i?L2j9asUI0>#r3Ic0ZMkNR?9QS@K!*tg zC35OySvbGO@7lJH{sJVkjzAJ68qrGlJ_%+W1H0oTVFJu5pPbHeeZruKB2I5lkqLP{ zZiWVn-eS2^s_nYo8Y2r=KHj(#X6Jd&pQ22K$ZDuczY6`^8X&wSo#qHx&`g7)sGW29LNIGa|xKluI}d)(FN z;BR`Ef%Tb@uKOHsEV5HCjd$th1cUb-x6y@0DVPJd#-s@>UOf5drWHGK`lfQ0G2u0q zADLS+vuUQ{0d{MQvWg7#nKR`=qumkr)U0+m+KE=Jfj6p^Prl1!xhdRWMPt{@+}0Ia z%pdg+K8wraF~qX2d3K)|C{s?=ykQ}C)pQ?1P9)S{4!E1}HM^uEPow4LF1()D$1mqw z0xJBdhnA_TR}!pScU*B6)jDrIr4GWtK2mqBViv0p>NpesqKi(<>K;``$iQ|D3& zDQxE@d9#{XIR5?YsHAprxn5*}F_JiB2RyBS$3RAH?pLFgppY^`TQ$M&y)PdQj^R7U z>JaXR@UcDK~sqLj4P?X^PGYj0;m3ki%t~!6k^f ziGSHEj=Xn=SJG=|cH(LTSjUIyLlGgBG8B0PJdBtBtE*@W|VtX(dN7hHq<+H%aO z_G#kqxz{>Y2ctpmD%{VvZbLwj2{C{ zRjPMk21~k^@z>1R3*pQxT=IIN5l)3vL|)6}+xbY&e9?P*0A*$ZX>Wc?sB>nD_6oJE zY;IzFUsXL1G4E$h$-CWMhjd;ga%H zz1gOKp^Kg&>9UI_<^0^36K=hSv(&P;D(*=?SUfpao;hk@ zD_)0zNG4Y7X*YB&yR2cqL-xA!Zw7ZrBSW{B7oaVUDjTA<&J@=7} zG+Ue!D;hixk|bs@^OOq3g0TNv0{2_rGzM$LvX;=IOeNPm?lQtxYEl z%2AmPJI)}1fsowz41$2D7Bo#yLUpi+nURwSyjq8-&B>J9|GA1y z32R|Df~`RCfp(FGh(UkLVBT^&Rkj3VDL_6fchj^l`(=z{{LESeEUGipF)toQY6q#b z8a8I1RL3gy66Cb5hfB&;%DcwMv1+*Vx*EOaz7Nm|uAP6*pIJ(jS9?%;Dh{v-rB#dc zw2fw#5~cm7QoTAyA4y%!4&Q*X^f$UNcyo?(z+*3+Q$HMZGBn?F(vI5*Rn0rAD7%4i zGU0x|tX>H(ZKV=QndcOd?gmpOqZ3Il)O4Jv?{z(ZwV(a{!rL9{SU34$!FYB@HL|33 zEMH@h_J;aamQ@{R7K3Q1!~&{XluEiejjL(5x!=Z@$~=KXdg4G!R-K$hUfrdu#25`f z{a#R3TSz@bs@=h@J>6y#0pV%(P}^KFE^4+>-`XlCSqAUZvF>?tL-^=M@T^t^V!C&$ zA`$<^(gj1J0n{%Ms)gcLD~yIaTAVD~Q;`oef6Vl*aVZ#0b(asHZiRs?br{$62zt4{ zs_R|e{G8+G3+I?*$0TppqcZD_5V$0Utvsu`=h|9xxcf)P;|;3bF7yRD$L2Qy;%J*# zD%rL{{lP1tXxE~A`qdOG(lSQ>E!Fz}Yws)HqWYq?2T?*orQt_P4lziFlpsiV4k_gVanJ>|tK@Yb zv@iiLQHbR==OJe09a@Hbzmf2wwzLA!HNVx&3ZC)7c7V;)0NU;|*Awff%MT19&fC%s z!hw1t2bJrAu_0oa9ES2CkRysTBL>e16K*Iu^Uq4_(@<9Af1IzlH%Osu@E6sk8ytF- zW^0G6G3J%kl%An?xk8VB(d8+oqq{%~Zhi*jr+j)JqaRel|9hr$19vBJY1q zgmpe==ZVM9Uh5fY#J}gU`e5L8^=oxOGhi)2UJbi6xYQ0~|L#cy(S|d4p&FQ%Aaa^) z9vKeII8G1oFhT%^PrUEN?{uSi{0~O zbk4*Z>U#A4(bE?VOdny|vZ77QMNQ;yI2AzFfr5q}D-F2E2;*F)*DA|}hfA4wOY2S) zNJ$L!Wsnlm5g#xPFbXaJz*4429YCND3w14(k?FUcSo5v@_;f_Ef2{`5KDG*t5vy7( z=&ia4kD+B~d5KHgtSrVZj~(@knl=^Mp_0usqVf_?+=Q)2=iB+`Bkr7E_06BZi|w$xj3f~-UYdPr zzI3$TYt}a}+zanoKOJnD^IOc4_hhmCgyJH3CP{Hk%3@2+&no{4Ges|5hqQ`Id@z`K?WetkzW+T?X#ZNL7EQ30pSey&`I_s$W}F&Ih6s z2mu%>`Cb!5Mxgb%(bsfx#`y!Z$FtUm>r3$q;V#`&pzE6J1Z6KiqhMT;A!L+b zbKerPHx4iEuE%RK_EO&Lr{5I6M>FClxb7!qb){vPSTd{(uVb02j=AU{?p+pSyNEBs zAVInoQ{&Zr zJkoLRpdL6lSgg1;qhqZb5y5IG?ZCd@AbMVDFpw+5UzrB4-oWpl!MbZC`Et3ui5Y+|E0m$qAS%KGN;LGbI3g;U4qIi;Hym~b_tUb zEAJYNH9%JnuRQakm@_@n$N~!!h5SXqC`tdOj3e5O_8j@zeI&9|ww7~jH}2jtEevaoII=F=o1zx-{C^8 zGs@cwwCV5@0pHQTNXX;~vse|`O6Kk$lBEFsd7P4t@fpBqM#Gg$iY1)G z6Pdu@_Cy6ZcHA!S6fHmS0H?WbKgQG2JDb0uK>XO$wHVgvg(S|-tb+A%PeHkm z+<8E5(tJBc05Gv8@UR0tj~s{)@j+8SDFX;G+6bj=n)xkY|BG5KlC?={P3Pxo5(R-v z$4R(mLuM!Rl&^)KUi{}48+1bs%AHE*Y3ZEe1x*Hi5CGXveKv<&$s&v=9|8YgW!|Uc zOG&}_{F%SPVhUdh4mjywT>dS(FL8Ub@c4y58Ud12pd(@xo}PI?{GeC+eNmL4=g6ty z5&axM#;2rwBQwDFAYxM>)~#7s=O{Q=gu(U>`P!ekx5rc>ic9*c@n$u%S{9Jt7vgt3 zLPs~Q=PGPz-2iR+ThG*6=Ydj#B96rU*UCoIStNJ+=aN^T=&2sc^NQoO=HIJ^)dhP@ zIer_{cel~K|4nXDup5KVi4bnga1g4qSZUE?f)b5$zA6=@)x5KW4(l>cBxv$R1$!;4~gSGUSphxj> zm7N{eBPnvvgE_;ye|kjjRd4M93dIK!Sb!%adRb`x>+~rGsO_z4MkdZPkh-yf1>xz@ zpDDO0JB@$x2aMuK2Va$wv)NSBn=_7$jh5us6OZ;hjNhINK{i^E|6Sw#z2W}5>;Kn0 zE(y4vsA>m6r2>!<6o|3+5((e>)Sk(H8V}4S>@ibNfVupAL@Xz$7&*oUYyAsyd13t# z6fs5FTYjSZZ!UpKIAENL7;*GVVhfVieJIKRX;ftz>6$HYVVOM42+9E3>D6i&1Ds6R z6cjQYO(0jpx%p5w^hOgDKn1=sZKF(pv|62l(ZS2+Y>ECWLDP1+tELzv@|r6|1~r;yzA4{ z4e|E&P8smBpPvs5J7;`P<>B`p)x&lx^D@YxCnraaVUw8$&5_l;PTh&N&iyO3Hr@KMI z%pS^oEW%pLD+fIHmJV41aA^P1?i87A~jo?r!xKt=8WRsR!NkE zk*Zd6^7jKX`)axtKzrC?4$~yEce3LN^@&!$h6=HIWuy}xrk|RUwHOFwsmzs-NX5Kj z0}T$Y3al4!7$w(yt9!(xaq~umS1Ar~`s7v*apf%dZ7-HS^Db+viM)@AjlB;(kQ$lO z&5-zgCX@RiLWBeEKeZ!Ts2ev27GdQh<%?vn$d$+-9ruy=@Py^oH)cZM9lymKuWG^s zeyro5Fj&OXcsTVkX(XdiLWPFK;(S*rGD16JL@(DoC0PKeTB6%7IJ#lvkH5bWXBIk?uBrf<1(D(TWs$u_lQ;daJ@t`D#VbQ_>ADH? zcW`E;)LR}vy9fr!B@LVD5)JYxYg-$EhSOyVJJL^Oc!uTcS^%|yYUBXw7iI#q^#xRf zyft-r+e54n?Q9DLU#-0mq!|2G__*TD0rAhf$oR74reU_~=zv9(qKtW?Wv&C<(Q$lw zOrFA@0%Xg;(ReUmUY+Z%WxqzgrWiz0x`L7hqubhyFVK1Kv;UcKQf$dau9n^r$ zk5uHpc8?F_l?X>rZ4lO4AKbzgAv-Y_MFst>J81p$j~XWrRV6uJ*R& z`r0}WC12fEv5gQ6>NWoe+~rh_C2`TN9+>;hH*UngJrPW;%rQuGPOJWTBgw7Oq41Ys{m)a6Lz^jDu~_AzX<$jz=N#BnXfgcA3Z`nW zU9u=53;%6CJyRo-((!Vj#a0wKG)bCVZ|kA^lU=i2H9>vc$Hk@2q-ytEL?C!ZaUc_NXfVDa(hm+FS;{D;>@*5Vsku3~`Xk73MOC}r zn|wrxc%Mx(J#sQs-*-4zcvdL|H%>9KNZDwL8+;;uZ&LZ9H*0ymZjqzfe8;84HKE^U zM?J?ycKSWcdx~A(oBj1MdM|#0q_frfUieMDG+)3C!j^`*bmuyUSOd=#=sw*WG)Gu84X&CwQ)+8ya6eiSIQmGL@HQbjN54XMdOvBd zB1!Z7X2mwZ_2`7N_v6 zv&v@ZI)KC4N6z9kPHXEP7bY#OuDX)q$S671Fy@WDEBnZ2bHh5Di~a?xT|_jYT*WVM zH}V*#`K^wY&~TWsbtL%p>(?dA)jF$~mnYVliEm`a(wgokpAnjo2KRU0{dh8#woQ6t z6ZTH}yldsU0s}=lP}^!5^DCJr5i~jp-HaV`LOhj2;5f23&!2URX+WxQIAp}^mr(ToBGHwdgP{X{+Fs@Q zgF(w5XR>$K{gNiKp`62O{(pVX|6tSkoIKnfOZwgEKXF;K?3mIn;a4ztrl7Oi@!Ys- z{`U5EzS1~zd>2^FRI-w=0R;YhlEfMA{HfQRLFdK6(h4_W!5H4+lz7&p^~J@s8jt|< za2hLle=$vWyU?Fx|MjfQ^ghDR=cEfemQHf#S*O0Liu}WhmWgTA{KfC2C7{cUbOTni1zOAcwWSbF`3GOS7uKS-=>oAk1#kU(gmYaGAUq{@an z=+pyPCkNJ|E_S`zQg|}u0Jx`Y7&O4K({5ZC!W7`<3oO;j@gLflSZ~W|$x4*w%|0^zg4amjTAJ}%OC}%90Oq*$5scAjU zdHYK;2o(4h$e_l@Zl%$EefcW#5$Ksf70)IOCVgsGJIh>@#VjQ#nyIx0V^3UN@-f#J z8*&X{kbJZ6XMk6ZjB`l&BfLe;J`F|*jXl?OC!XCp)f&v3<<+Sc`}l5g#jBJK`Ht0m zl9F}uKb>GcSX2-O{nuvdZtGyl1@mfQVd1n<*wJB_OxUd=pw(kzsz)W$kZhM?8rHVj z+S-l|$Ds+=JCPrGab2+5blu~N(;|G`Hru_Z-Kp4lxg)=|XgNYD@-C%~FV-EF+3#kk z>xkps;@z4Ze$YQYpJ09X!E^6S{`7^%tI%?*d6sWyhb0j@)3E6?t-nzsJs}_v5aaaI zgb<%QD;CV4;qyRYVgFJSU`m$qKD3+};OR+jGT+nuegx6=x%%qVRYfsu~wUI6FO7Qat?i|i;j^e-0Gy>212|H1Va z1yfv3nUrJWYM7a|?ez{ba3`OqHdOXcSph+ck?Ob}s?+RD6=Z3bdALdaYC~E*Bm*@g zGvAt2-_Kwb zFO^hfd}Ons9)NvR06;iV6)RFziB*1zlyY}+GTtuFNB-q{o_IJg4HTFXatOV*^9A<{ z0C-q8&};+&79>CxY^&P{1!s4ze;AW1A~7$|J|jsJn4U8YT5p<6WY!RA-eN-%zdg$9 zo1`rHzH4!dWY%Rew2eVYCooc7WPgziPEMU74}ND*g^K$773_q{)w_6_e3)$ZlP11A z{TZ*dah4tb?%liAe3V#VtI$N?R#R8ubcxtamf&HMq1_PUqG52Xxhu1ZVFaS=mGjVX zu$YjgC5x_>p#W^bWOfV_0QRsK^=rMrsq&bg4^pC5`&?~Q)S;6 zJQp?LtaFzz+N06}Syti?26B#pyDCESY1^(TA%a9Z!u^{({R)GVIWvZ^%zQ@!_H$Bt z@zSIp9~89x=t}gry1#Om0%Ig0?GR2%F~W7T(h9c9mE6V{r;bHaIu)|n*jHJRy1$X4Z@~17bDWsHLy~(scGHCyBps88X$P~sq-so zv?fY3nGxSP$)c}(TY5Sd>Ty&#*RR>$xK$7%^xLI((c)?@&E}P~TlhlFj9ewhV*~B2 z*6F(N_+%EL($D&#ikpsfXgLC2Zzf5d6=yO%TSP>@u^cVjx=y11C8JxW z^L?oB9Z|(Ok25N{mS~kc{X;QVyg+I!Px)Grs~S(43efLhegCUTmGi17V0PEmvM;mC zbvceA+mZybma>`@l-~I8eC#bx5)~7hu_S!_u&^(s)C(x-&b!JT4Ix=lTmic?8vum2 zS}XEQhs{4m((7q^B#2z0pj?aqtR!g4oJp=S(kDl7zbVZ~Y0JO(&uBnVNZI52wAx2tpqDgllqovippz;^>@f^s4KE$}IIIRlElDZuOCOs`Ue-CYI=i z{u5z(PBOe2)MV4-&<6LboN+LPO!f<4NEeFgcASF6CpKNlCjRHf z6J98yiQ(aQT^ShV;v&41%e~>Q~cD9*WLhVga1zo0ogcJZR^Xjg^ncaKS3XR662jP zze3_`&XbJp3qtC)<;LOW(djQYvilDSt|7@$$}!`n^G{U{s7FBQM>OyMSG%XqnE#?; zdUfa*3yXj(&7|hvz86B6T7pMyg7axsc1u)zVY_{sFUr|`)kii@^__1v^WJ|L9&yUP z;D1eM_D900!n#I*E1B|lMJpjrQ^X>%nM4jeSU0^y>gsVvZ16>Wes~KwVFzv@J4fC> zP7^l!rSIoP0;MZ?p1U}Pw3v(Hb*dGRATG7KZMhksVr?%4k3-0?EsaFlW>s2OgIr&|p5AfX|g}XD<#rE+na}Rhm1fHNpOm5mlE~PvH*JYLQK~ z0^jTSWO={T;sQu7UzPgQ%6D<7L81Z6`&q;3eHX`Ie5t|s&gp&awY*k!S{oO0E*^Ni zt-sehs|RL3iWlKsr$2ZX1)YNNeVwBr#Uo8kO3^AJnlAL` z)u`YuwK|_sWrx|6xqx>7s-mO2OoOL()zG`7F*HMcL^n8G@NFEUFmFx#QVP{1iCT+! zin9F2bSIC??6}%Xg#dFmg5HQZq(Jb+9~;LS*3jqw%66IeQ0ID;93e|S;PpanVD6)Z z8PgZf(rss6?o?;P4>$I9^7)jiP=_YoJ{d|G4x4E>3$EMwb|9CrEbHc{Bgwb&wEV$)N>seM z$yh(f3R7xljW@JA?Z+VXWOMw!U*6dY@tp)=B>{JV1&w3(2dqR4mdsD0`;FPS4dhK? ze5YPkO3%n^f88a+MeDD{UD#ap=EPjKWidfavSV1M)p0o+it?0cbZw_X-^ykcZ(Gw~ zgBLiC994oj8NEK`2_f4hd&^ZN?>$tZN5OM)YmQ?Q0`;E z=9(2W(YOUfMp%tCQ*u**=%2Ig#JnNiUeLt<6u0dr`LD=3Pl^X~f*zH|ZQAbRY4loF)^!aHMKs@!%-c+k4-c=OWl0DN zQvgh>u+tI2E2%nL<{=uG4mm)<`upd^gl3My01uA&QjaZgQPqeXEuH`4sZENXwG5tU zGViw5&!e|@+IRtLGLDN^9e;ffj300eDO=({n5$hA9fQT;4hgn?aTUm`?Z6J^#PPEd z#fN;HKNv>^S^q^{)ef)XEGcsJ6Z0T2v25+OQS2D8c-yi^I4{9PcCs6zQ{!8A)lZBu z_+TLO?stlr=cOz$K|)tj0COcSA<+)dH{lCz?(S8_EpjbY$H&JFe58@`-yt2O6@>!7 zn3d~|mR?EOUn1>CGe(zb2kJ-vd$1ZE1TlE5Gxfs#FGKcJCcMf8aWhX3=CcwS-F-2q=V1Sd0MV<>xLf zwVPJXCdmXO>#4Hu1Ac7C=)RXc(sJ4}#SIYC>zb1?31B`IZ?mw-$RI%O&G z`Gj9f&Dt-eYt{JlQ4I8axM9HPn$d)~{b#U_e zoxx2Qj+FHDB{lB&apJ&3&WdcAE6eH~YOzY>g7$2Te1_H+<@@+x!2^-9|B^g=xm(NM zcw!;Talo~ng@mb+*l{14)fH;yP=>sg4uRIruc$uSlJ{>`ABv2^DD?xDZup_Kmg#62 zUrTmq$kP5>gA@Z-gQIWSBiUE2k=EFT2GwJlzlL)r9s7g#i`<*M~+)uesy6ajk_B3Sfw%MdbtwS^-NqeWX%- zQU-Csw61>aRo_5AuCEuILrtQ;T?}PYU>`tImHuow`1`NB5af<8U6XMU$?t;ysK-kB z=5vq)07-v`amRaJZNRhuz$P#yVA7nJRaXObx@ADu&~AWP{^_t#Fg#Lqx3tTlzb>sF z9og3`q%Pp}a=wgtYgmEO6j*1l3XS!;XS zGkr$gOAQH6$dmWI)e2w=w^Nz}@nYGN8r>$w_*m_RUz&`NC3V32%A;3f zR{Gh8DT<>8PGmc5v}NlFJw09-N?w0`PwTDN5<$c$(FEcg$A=|S<>-uH<*e8>pB=n` zMRQ7Kspx@|IS4%Q`K;+gEOy#8msFQ>c;FoNyjbH=27cAHDj7vqP3Njw13&e|kR|Bn zAFNY(Yyj5aFxL{dk52Fi`Ty5r^!!iXG3QzCtR;+q?v4?5#b;ODvySAuvM z>h~rNz~tu8TNBAI$7vsGDe1Uc0k%0^*+W7obJT+}r}yRpZv7s zo4fM`+sAx=*a-sdWb!e{pA_P7Y4Irs*e4Bg7F&p;;?8l49RMnQlndLF)>x0{FRwRc21-6Bv8wzrgL(C zv%zs)Lezi66Q>Y1h2_kGx-D_u#1$G>8I&-R4|P(!Hcm8){I`|Ugjvu7D!U2E-3a8d z4{s;9aG8EwY#*r8EXI3PVX50f$&5;FDfAMTOPEskX2xv1Bmf<|DjQrTX?h^eP64X` z?IX)2TWFsT3e6{+Y*p?yLPtX7$fPF`Nj64d)*j}5GBNf zh&9F7J*1SMg$Uc)KPgRK<{oqhL$))I~ITQY4F&kUA3!DX7o;K3!&S%dFf_FNh z#Y%TN(d8pQ4P+FwpB z@>@6~63mr3nSkOzfw^MUx5@J^IDeZjF_QQJp_JPwlI*Pi_GIaAtP*#)QwQS43;;a? zXw;e(RMdbYvO-T@aNn$p2kzSS$t*fB68Q^i>IAQdmx*FwGX8=ChF6N7;f)Wb3lwih zCVVfBiHTtYU3v4Wq77yyBsP;8Mw-t%+uxk!mHp*`Gqr*YD&jnNY17#n#1CqC6gaA4 z`!@yMS1GJWbqyXdysm)xn^etjiMbxHi8t2(G+s-~@Of`=a4-;nb>FX}UK2_Vwd0SV zjFuxl-M<?8_xo51!5Uy|6yT_R)m1kt-N{HpKAkS*~T>&(@B-ozMz<-(25q79?!+**W^djTT$;_L*B@ z>+t)Gm4VRU^ug^EO*5O5hPxz(?*ZgM-pyF2uNmMh4k*9| lKBT1o|BwIg3E}iF#!b`&_3?z+zoaaXf~@M>N@=s8{{jDMjI#g$ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-start-screen.html b/bibletime-doc/docs/en/handbook/html/hdbk-start-screen.html new file mode 100644 index 0000000..0a86fab --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-start-screen.html @@ -0,0 +1,48 @@ + + +Parts of the BibleTime Window + + + + + + + + + + + +

Parts of the BibleTime Window

+ +
+

+Parts of the BibleTime Window

+

+Now the main BibleTime window will open. It's operation is covered in the next chapter. +

The BibleTime Application Window
+

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-start-sequence-tips.png b/bibletime-doc/docs/en/handbook/html/hdbk-start-sequence-tips.png new file mode 100644 index 0000000000000000000000000000000000000000..1911f32e3bc85a49992f39f2f2adfe9d5e862975 GIT binary patch literal 22302 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 -vV+hs)=Sf9$hZZ zDdmX%dc-u`{k0eMkE&u+s_-}wK{X;P!M~0Oc}sgfPq~l7si9X;6gmH`YmX0iFty)L z>m8{<9FD--U|`Ee_};k}PsIoZKO=;eh-kZ>{d@)-;VF4IZt0lKU0MhTW!;WqKDczJ zQfXM@`u&(d+Ls5C!_*{;&?E7>?1^~zd~#i?!S}cSD2>9EGB$BBlqrTRN;MQ4cYI6) zn`l^3lT5grkCYM*Bs}8p*K?Pt(wYuM8NKg)Uz>+=n>%Bacef;nfLvabDh0$iR*`n(l}3#{z?4z9^r%?^b?o2kJ8Sf6$~CDip@E zxz5^}qcn3$IKXXVcnp*ma~1@lpiJ15uH<{p)Xe}o!?-AK&L|RJA=v=lA%yG zUEKY~1r@=lryj-O_sMi|OglaefPuUf%-~=1F4%Xv4|CcsjO)Dw<ⅈ^3u0AdT)9S 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/hdbk-term.html b/bibletime-doc/docs/en/handbook/html/hdbk-term.html new file mode 100644 index 0000000..466f7b4 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/hdbk-term.html @@ -0,0 +1,89 @@ + + +Chapter 2. Starting BibleTime + + + + + + + + + + + +

Starting BibleTime

+ +
+

+Chapter 2. Starting BibleTime

+

+BibleTime is a KDE program and is integrated with the KDE desktop. +You can launch BibleTime from the KDE start menu in +the applications group. + +

A bunch of rectangles
+ +

+

+BibleTime can be launched from inside other window managers +(like gnome) providing KDE is installed. You will need to install +your own icon to launch the program. See the window manager help +files to see how. +

+

+BibleTime can also be launched from a terminal command prompt. +To launch BibleTime open a terminal (any Xterminal) and type +BibleTime. +

+
+

+Startup Sequence

+

+As BibleTime launches you may see some message screens:

+
    +
  • + +No Modules Installed - This is shown if you +have forgotten to install sword modules, or if the sword modules +can not be found. +

  • +
  • + +First Time Startup - This is shown the first time +BibleTime is launched. +

  • +
  • + +Daily Tips - These show on every startup, unless +you turn them off. +

    Daily tips
    +

  • +
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/html/hdbk_op_module-tree-bookmark-bookmarkandfolder.png b/bibletime-doc/docs/en/handbook/html/hdbk_op_module-tree-bookmark-bookmarkandfolder.png new file mode 100644 index 0000000000000000000000000000000000000000..6b685d7bc4dd30793c6fca08ff6c1b0c3767d334 GIT binary patch literal 14751 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 ap-We-sGT5fCO~{T2~hl`CJUA^`~H7f_;%p{ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/handbook/html/index.html b/bibletime-doc/docs/en/handbook/html/index.html new file mode 100644 index 0000000..b7cc09d --- /dev/null +++ b/bibletime-doc/docs/en/handbook/html/index.html @@ -0,0 +1,200 @@ + + +The BibleTime Handbook + + + + + + + + + +

The BibleTime Handbook

+ +
+
+

+The BibleTime Handbook

+
+

Fred Saalbach

+ +

Jeffrey Hoyt

+
+
Revision 2.00
+
+
+
+

The BibleTime helpdialog is part of BibleTime. +

+

+BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. +

+
+
+

+BibleTime is an application to aid in study of the Bible. + +

+
+
+
+ + +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/handbook/unicode/Makefile.am b/bibletime-doc/docs/en/handbook/unicode/Makefile.am new file mode 100644 index 0000000..1790861 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; diff --git a/bibletime-doc/docs/en/handbook/unicode/Makefile.in b/bibletime-doc/docs/en/handbook/unicode/Makefile.in new file mode 100644 index 0000000..6976d6a --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/handbook/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/handbook/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + else \ + ln -sf ../../../en/bibletime/handbook/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in hdbk-config.docbook hdbk-intro.docbook hdbk-operation.docbook hdbk-start.docbook hdbk-toolbars.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/handbook/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/handbook/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/handbook/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/handbook/unicode/hdbk-config.docbook b/bibletime-doc/docs/en/handbook/unicode/hdbk-config.docbook new file mode 100644 index 0000000..286ac5e --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/hdbk-config.docbook @@ -0,0 +1,296 @@ +Configuring Bibletime +The &bibletime; user interface can be customized in many ways +depending on your needs. To access the configuration dialogs, in the +main toolbar select settings. From here select +configure toolbars to launch the dialog +configure toolbars dialog, or select configure &bibletime; +to launch the options dialog. + +
Configure Toolbars Dialog + The Configure Toolbars dialog allowes adding and removing actions from + the main toolbar of &bibletime;. The order of actions in the main toolbar + can also be changed. + + + + + + Toolbar Configuration Dialog + + + The Toolbar Configuration dialog. + + +
+ +
Options Dialog + The options dialog allows many &bibletime; and Sword + features to be customized. + +
Startup + The startup behavior can be customized. + Select from the following options: + + Show tip of the day. + Show startup Logo. + Restore windows in workspace area. + + + + + + + Options Dialog + + + The Options dialog - Startup. + + +
+
Fonts + The display font used for text can be changed as desired. If you have a + module that requires a special font, check here to see if the font is available to + &bibletime;. + + + + + + + Options Dialog - fonts + + + The Options dialog - Fonts. + + + +
Unicode Fonts (ISO10646) + Sword modules are provided with either iso-8859-1 (Latin-1) or iso-10646 (Unicode) encoding. + You can tell how a module is encoded by &RMB; on the main index and selecting about + this module. + + + + + + About this module + + + The 'About this module' window shows what kind of encoding is used. + + + As long as the modules you are interested in display correctly nothing needs to be done here. + If a module you are interested in displays as a series of question marks (???????????????????) the font + available to &bibletime; does not contain the used in characters in your document. + + In the options dialog, choose fonts select in the Unicode area of application. You will need to choose + a font that has a iso-10646-1 character set. Try clearlyu as a first step (it is included with most distributions). + If your module still does not display, you will need to use a more appropriate font. + + If you use a small Unicode font like clearlyu (about 22kb) &bibletime; will run faster than if a large font like + Bitstream Cyberbit (about 12Mb) is used. + +
Font Installation + Installing fonts consists of three steps + + + + Obtaining Unicode fonts + + + Installing fonts to the XFree86 &X-Server; + + + Installing the font for printing (does not work yet). + + +
+ + +
Obtaining Fonts + There are a number of fonts that support Unicode encoding, some of these are + available at no charge. Few of the fonts available include all of range of symbols + defined in the Unicode standard. + Here is a listing of some of the fonts available: + + Unicode Fonts + + + Clearlyu + Included in some distributions. Contains European, Greek, Hebrew, Thai. + Does not contain Chinease pictographs, or Arabic + + ftp://ftp.crosswire.org/pub/sword/iso/latest/FONTS. + Several fonts available from the Crosswire Bible Society ftp site. + + Bitstream CyberBit + Covers almost the entire range of Unicode. + + Caslon, Monospace, Cupola, Caliban + Partial coverage, see information on linked site. + + + + +
+ For A partial list of other Unicode fonts and the ranges covered: + Unicode Font List + +
+ +
Installing your font to XFree86 (your &X-Server;) + + If your distribution includes a font installer (&Linux-Mandrake; supplies Drake Font) try to use the installer. + If the font installer does not work, or your distribution does not include one, + you will have to install the font manually. Instructions for installing fonts can be found in + + The Unicode HOWTO. This was tested and works on &Linux-Mandrake; 7.1 + +
+ +
Installing the font for printing. + There is a known issue with Qt that prevents + printing characters outside the range of the Latin-1 character set. This is expected to be + fixed with the release of Qt3 and KDE 3. If you want to try anyway, the + + Font HowTo explains the process for installing fonts to the printing system. +
+ +
+
+ +
Colors + The colors of the objects in display windows can be customized. + Objects that can be customized are: + + Text + Highlighted verse + Footnotes + Morphological Tags + Background + Hyperlinks + Strong's Numbers + Words of Jesus + + + Some options like "Words of Jesus" only apply to texts which + support this special feature. + + + + + + Options Dialog - Color + + + The Options dialog - Color. + + + +
+ +
Profiles + Profiles define the appearance of the work area, for example which + windows are open and which texts should be displayed in these windows. + Once a profile is created, use the menu item window -> + save profile to save a current session into a + profile. Use window -> load profile to + load a previously saved profile into &bibletime;. +
+ +
Sword + Many features provided by the Sword backend can now be customized in + &bibletime;' + + + + + + Options Dialog - Sword + + + The Options dialog - Sword. + + + +
Sword General + Key Catch for Lexicons + Bibletime can create a key catch for lexicons. This speeds up + opening large lexicon modules. The catch file does use some disc space, + so if your computer has only a small amount of free space, you might want + to disable this feature. + + Scrolling Behavior + The default is that a down arrow moves the current position in a text to + the next verse. This option allows the down arrow to move the current + position in a text to the previous verse. + + Specify a language for biblical book names + This feature allows the language used to displayed book names + to be changed. For example the King James Version can be displayed + with German book names. If your language is not displayed and you would + like to create a sword locale for your language, please see the + crosswire bible society developers site for details. +
+ + +
Sword Default Modules + Default modules are specified here. +
+
Sword filter settings + Filters control the appearance of text in the display windows. + Here you can chose the default settings for the various filters. + The items controlled by filters are: + + + Show line brake after each verse + Show verse numbers + Show footnotes + Show Strong's numbers + Show headings + Show morphologic tags + Show lemmas + Show Hebrew vowel points + Show Hebrew cantillation marks + Show Greek accents + + +
+ +
+ +
Accelerators + Accelerators are special key commands that can be used in the place of + the menu items and icons. A number of &bibletime;'s commands have + predefined Accelerators. All of &bibletime;'s commands can be assigned + accelerators here. + + + Default accelerators + + + + Action + Key combination + + + + + + Auto TileCtrl+Alt+T + Auto Cascade Ctrl+Alt+A + Cascade Ctrl+A + Close All Shift+Ctrl+A + Configure Toolbars + Preferences + Quit Ctrl+Q + Remove Selected Item(s)Ctrl+Alt+D + Reset Main Index Ctrl+Alt+R + Search in Selected Module(s) Ctrl+Alt+S + Tile Ctrl+T + + +
+
+
+
diff --git a/bibletime-doc/docs/en/handbook/unicode/hdbk-intro.docbook b/bibletime-doc/docs/en/handbook/unicode/hdbk-intro.docbook new file mode 100644 index 0000000..6b3146e --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/hdbk-intro.docbook @@ -0,0 +1,106 @@ +Introduction + +&bibletime; is a powerful Bible study tool written for the &kde; environment on the +Linux operating system. It is based on the Sword library, which provide the back-end +functionality for &bibletime;, such as viewing Bible text, searching, bookmarking, +etc. Sword is the flagship product of the Crosswire Bible Society. + +&bibletime; is designed to be used with documents that have been encoded in +Theological Markup Language (ThML) and General Bible Format (GBF). These markup +languages are focused on the requirements of religious texts. +Complete information on the supported document formats can be found in the +developers section of the Sword Project, Crosswire Bible Society. + + +Over 200 documents in 50 languages are available from the Crosswire Bible Society. These include: + + + + + +Bibles + + +The full text, with optional Strong's Numbers and footnotes in the text + + + + +Commentaries + + +With a Personal commentary you can record your own personal +notes to different parts of the Bible. + + + + +Lexicons + + +For word definitions and Bible topics. You an choose a key in a list which will +be displayed. + + + + + +Additional documents are being added to the &sword; repository frequently, so visit often. + +Changes + +Please read the file Changelog of the sourcecode package if you are +interested in more detailed changes. + +A listing of the features included in the current package can be found +in the sourcecode at + +CVS log for bibletime/bibletime/ChangeLog + + +ToDo + +Very much! + + +We have lots to do. Because we are a very small team of active developers it's +very hard to get reasonable results in a short time. If you are interested in +helping the &bibletime; team, please contact us at +Sourceforge &bibletime; home page. +Information can also be found at the &bibletime; +homepage. + +The &bibletime; project needs programmers / developers, reviewers, testers, and +prayer warriors. If you can help with any of these tasks or think up another, please join us. +Without your help, &bibletime; will develop very very slow and it will take +a very long time until you get a full-featured Bible study tool. + + + +Motivation + +Our desire is to serve God, and to do our part to help others grow in their +relationship with Him. We have found a gaping hole, in that there has been a +total lack of user-friendly Bible-study software available for &Linux;-based +computers. We have developed &bibletime; to fill that void. +We have striven to make this a powerful, quality program, and still make it +simple and intuitive to operate. It is our desire that God be praised, as He is +the source of all good things. + + +
James 1:17, NASB +Every good thing given and every perfect gift is from above, +coming down from the Father of lights, with whom there is no +variation or shifting shadow. +
+ + +God bless you as you use this program, and may He be glorified by the work of +our hands! + +
+
diff --git a/bibletime-doc/docs/en/handbook/unicode/hdbk-operation.docbook b/bibletime-doc/docs/en/handbook/unicode/hdbk-operation.docbook new file mode 100644 index 0000000..8bbb113 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/hdbk-operation.docbook @@ -0,0 +1,715 @@ +Program Operation + +&bibletime; is mainly operated from the Module Tree (this tree is called the +"Main Index"). The second important place to work with &bibletime; is the MDI +area (MDI = Multiple Document Interface). + +
Main Index + +This is the pane on the left side of the &bibletime; window. +It contains the tree of installed documents (Sword Modules), as well as any bookmarks you enter. + + +Module Tree + + + + + + +
+ +
Selecting a document to +view +To select a document, &LMB; on the desired document group (Bibles, Commentaries, or +Lexicons) to display the contents of a document group, &RMB; on the icon for +the desired group. To open a document, &LMB; on it's icon. + + +Document Selection + + + + + + +Drag & Drop Works Here + +A document can be opened from an already opened document. +Simply &LMB; on the verse number (pointer changes to hand) and drag it to the +module list. Drop it on the name of the module you want to open, and it will +open that module to the verse you dragged over. If you drag a verse number to an +already open module, it will automatically jump that module to the verse dragged +over. This works for Bibles and Commentaries only. + +There are two other functions accessible through &RMB; on +the document name. "About This Module" opens a window with information about copyright and +other pertinent things about the selected document. "Unlock This Module" opens a small +dialog for encrypted documents. This allows those with the key to +enter it to decrypt the document and make it human-readable. Crosswire Bible +Society must encrypt modules unless either the copyright holder provides permission for +distribution as a sword module, or the text has passed into the public domain +(copyright has expired). +See information on locked modules on the Crosswire Bible Society web site. + + + + +
Accessing bookmark +functions +Drag & Drop Works Here +&RMB; on an empty part of the module tree window and select "Create new +group" to create a new bookmark folder. You can use normal drag 'n' drop +functions to drag verse numbers from search dialog results to the bookmark folder, +and to rearrange bookmarks between folders. There is an import/export function +for bookmarks also. From the right-mouse-button menu, select "Export +bookmarks". This will bring up a dialog box for you to save the bookmark +collection. They can be shared with other &bibletime; users, archived, etc. They +can be imported in the same way. You can also &RMB; to change folder names +and bookmark descriptions, and delete folders and +bookmarks. + +Bookmark Selection + + + + + + +
+
+ +
Multiple Document Interface (MDI) Window + +This is where the opened documents are displayed. +documents are displayed in "Document Windows", that are specific to the three types of +documents. Crosswire Bible Society may release other document types for sword in the +future. When they are released, &bibletime; will support them as well. + +
+Controlling Open Documents +Document Windows can be controlled and manipulated with normal &kde; window/title bar functions. +In addition to this, you can tile and cascade open Document Windows. Use the appropriate tool +bar buttons, or menu functions under "Window" in the main menubar. Document +Windows can be set to automatically cascade or tile also. +
+ +
+Navigating in Open Documents +Navigation within a document is accomplished with the Document Key +Control Menu, and the scroll bar. + +To move to a specific location use the Document Key Control. +To move within a section of a document use the scroll bar. +For Bible texts the index key is Book - Chapter - Verse +For commentaries the index key is Book - Chapter - Verse +For lexicons the index key is Keyword +Drag & Drop Works Here; if you drag a verse from one open document or a bookmark and drop +it on another the second document will jump from it's current location to the location +of the verse or bookmark dragged. +
+ +
Editing +your own commentary +The tool bar of commentary display windows has another button, with the picture of a +pencil. + + + + + +Enter your notes + + +For the "Personal" commentary module, &LMB; the button with the picture +of a pencil to enter your own notes, or to edit notes you've already +entered. When you're done, &LMB; on the "Save" (disk) button +to save your notes. To delete notes for a selected verse, &LMB; the +delete verse button + + + + + +Delete Verse Symbol + +. + + + +The personal commentary is a sword module. If you do not find it in the +main index, get it from the +Crosswire Bible Society. +If you can not write to the personal commentary your permissions for the +personal commentary module are wrong. Reset the permissions to allow your user +to write to it. +Drag & Drop Works Here, just like other +commentaries and Bible texts. +
+
+ + + +
Exporting and Printing +Bible Window, Lexicon Window, Commentary Window +By &RMB; on the index key number, verse number or text the +Bible Window, Lexicon Window,or Commentary Window drop down box is +displayed (depending on which kind of window is current), +providing options to select all, look up text in lexicon, +and the export options copy, add to printing queue, and save. +
Select All +A &LMB; here will select all of the text in the chapter displayed +in the current window. + +
+
Lookup Text in Lexicon +A &LMB; here will bring up a submenu with a list of all of the available +lexicons. A &LMB; on a lexicon will open that lexicon to the cross reference of +the selected text in the current window. + +
+ +
Copy +A &LMB; here will bring up a sub menu offering to copy to the copy +buffer using the current location of the cursor as the starting point. + + + + +Verse - The number of the current verse (such as Genesis 1:25) + + + + +Text of Verse - The text of the current verse. + + + + +Verse with Text - Both the text of the current verse, and the verse number + + + + +Chapter -the entire chapter + + + + +Selected Text - Only the selected (highlited) text + + + + +This text can be copied into any application that can access the linux copy buffer. + + +
+
Add to Printing Queue +A &LMB; here will bring up a submenu with the printing options: + + + + +verse with text + + + + +chapter + + + + +Selecting these places text into the bibletime print queue, but it +will not print yet. When all of the items that you desire to print are +copied to the print queue, select the print icon and the print dialog +window is displayed. Now you can select to either view or print the text. + +Printing from &bibletime; is rather basic and is intended as +a utility. If you are composing a document or presentation containing text from +&bibletime; documents, we suggest that you use one of the presentation or editing +tools on your system to format your work. + +
+
Save +A &LMB; here will bring up a submenu with save options: + + + + +Chapter as plain text - a file is created in &UNIX; formated ASCII text + + + + +Chapter as HTML - a file is created formated in HTML + + + + +Once saved this text can be opened and edited by any text or HTML application. + +
+ + +
+
+ + + + diff --git a/bibletime-doc/docs/en/handbook/unicode/hdbk-start.docbook b/bibletime-doc/docs/en/handbook/unicode/hdbk-start.docbook new file mode 100644 index 0000000..e94357f --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/hdbk-start.docbook @@ -0,0 +1,74 @@ +Starting &bibletime; + +&bibletime; is a &kde; program and is integrated with the &kde; desktop. +You can launch &bibletime; from the &kde; start menu in +the applications group. + + + + + + +A bunch of rectangles + + + + +&bibletime; can be launched from inside other window managers +(like gnome) providing &kde; is installed. You will need to install +your own icon to launch the program. See the window manager help +files to see how. + + +&bibletime; can also be launched from a terminal command prompt. +To launch &bibletime; open a terminal (any Xterminal) and type +&bibletime;. + +
Startup Sequence + +As &bibletime; launches you may see some message screens: + + + +No Modules Installed - This is shown if you +have forgotten to install sword modules, or if the sword modules +can not be found. + + + + +First Time Startup - This is shown the first time +&bibletime; is launched. + + + + +Daily Tips - These show on every startup, unless +you turn them off. + + + + + +Daily tips + + + + + +
+
Parts of the &bibletime; Window + +Now the main &bibletime; window will open. It's operation is covered in the next chapter. + + + + + +The &bibletime; Application Window + + +
+
+ + diff --git a/bibletime-doc/docs/en/handbook/unicode/hdbk-toolbars.docbook b/bibletime-doc/docs/en/handbook/unicode/hdbk-toolbars.docbook new file mode 100644 index 0000000..54943a1 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/hdbk-toolbars.docbook @@ -0,0 +1,392 @@ +Main toolbar and menubar + + +
Toolbar + + The action of each button is described in the configuration dialog box. + Moving the cursor over a button will activate the button's tooltip which + describes that buttons action. + +
+
Button Action + + + + + + + + Icon + + + Closes &bibletime;. + + + + + + + + + Icon + + + Prints items in the print queue. + + + + + + + + + Icon + + + Search in Selected Module(s). + + + + + + + + + Icon + + + Cascade Document Windows. + + + + + + + + + Icon + + + Autocascade Document Windows. + + + + + + + + + Icon + + + Tile Document Windows. + + + + + + + + + Icon + + + Auto tile Document Windows. + + + + + + + + + + Icon + + + Close All Document Windows. + +
+ +
Menubar + +
+ +
File + + + + +Clear printing queue + +Clears all items from the &bibletime; print queue. +The &bibletime; printing queue does not clear automatically. + + + + +Print + +This menu item launches the printdialog box. +From here you will select print or view as for any other &kde; application. + + + + +
+ +
View + + + + +Show Toolbar + +>If show toolbar is selected, +the toolbar is displayed. +If show toolbar is unselected then the +toolbar is hidden. + + + + + +Show Main Index + +If show main index is selected, +the left pane showing the available &sword; documents is displayed. +If show main index is unselected then the +left pane is hidden. + + + + +
+ +
Main Index + + + + +Search in module(s) + + +If Search in module(s) is selected, +search dialog is displayed. Any selected documents +from the left pane are preselected on the choose modules tab. + + + +Reset Main Index + + +If Reset Main Index is selected, +the Main Index in the left pane will be rebuilt. +Any customization in the main index and bookmarks +will be deleted. + + + + +Remove selected item + + +If Remove selected item is selected, +any selected items in the Main Index in the left pane will be deleted. +This action can only be partly undone by the Reset Main Index. +Use this feature with caution. + + + + + + + +
+ +
Window + + + + +Save Profile +Saves the current configuration to +a selected profile + + + + +Load Profile +Loads the contents of the named profile to +the current session of &bibletime;. + + + +Configure Profile +This brings up the profiles tab of the +Options dialog. +Here you create and manage profiles + + + + +Fullscreen Mode +When Fullscreen Mode is selected, &bibletime; will expand +to the full size of your monitor screen. To reverse the action select +Fullscreen Modeagain. + + + +Cascade +Cascades open display windows + + + +Tile + +Tiles open display windows + + + + +Auto Cascade + + +Automatically cascades newly opened display windows + + + + + +Auto Tile + +ditto for tiling newly opened display windows + + + + +Close all + +Closes all open display windows + + + + +List of open modules + +shows a list of all of the currently selected modules. + + + + + +
+ +
Settings + + + + + +Configure Toolbar + +show the Configure Toolbar dialog. + + + + +Configure &bibletime; + +Shows the Options dialog. +From this dialog the startup mode, fonts, colors, profiles, +sword features, and accelerators are configurable. + + + + + +
+ +
Help + + + + + +Handbook +Select Handbook to access +this document from the &kde; Help Center. + + + +Installation +Select Installation to access +the installation instructions for &bibletime; from the &kde; Help Center. + + + + +Biblestudy HowTo +Select Biblestudy HowTo to access +A good basic text with recommendations for studying the Bible. + + + + +What's This + + +Allows you to click on certain items for contextual help. + + + + + +Bug Report + + +Send a bug report to the program's maintainers to help development. +Before sending a bug report please configure the bug report application +to use your mail program. This is done by configure +on the Submit A Bug Report dialog. + + + + + +Daily Tip + +Launches the tip of the day dialog. + + + + + + +About &bibletime; + + +Opens a window with general &bibletime; information. + + + + + +About &kde; + + +Opens a window with general &kde; information. + + + + + + + + +
+ + + +
+ diff --git a/bibletime-doc/docs/en/handbook/unicode/index.docbook b/bibletime-doc/docs/en/handbook/unicode/index.docbook new file mode 100644 index 0000000..88cbc96 --- /dev/null +++ b/bibletime-doc/docs/en/handbook/unicode/index.docbook @@ -0,0 +1,107 @@ + +BibleTime'> + Sword'> + + + + + + + + + + +]> + + + + +The BibleTime Handbook + + + +Fred + +Saalbach + +
info@bibletime.de
+
+
+ +Jeffrey +Hoyt + +
+ + + + +1999 +2000 +2001 +The team of BibleTime, info@bibletime.de + + + + +The BibleTime helpdialog is part of BibleTime. + + + +BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. + + +09/February/2002 +2.00 + + + +&bibletime; is an application to aid in study of the Bible. + + + + + +KDE +bibletime +Bibletime +sword +crosswire +help dialog + + +
+ +&hdbkchap1; +&hdbkchap2; +&hdbkchap3; +&hdbkchap4; +&hdbkchap5; + +
+ diff --git a/bibletime-doc/docs/en/helpdialog/Makefile.am b/bibletime-doc/docs/en/helpdialog/Makefile.am new file mode 100644 index 0000000..17d7a2a --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/Makefile.am @@ -0,0 +1,23 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/en/helpdialog/Makefile.in b/bibletime-doc/docs/en/helpdialog/Makefile.in new file mode 100644 index 0000000..e634189 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/Makefile.in @@ -0,0 +1,480 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/helpdialog + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/helpdialog/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/helpdialog/html/Makefile.am b/bibletime-doc/docs/en/helpdialog/html/Makefile.am new file mode 100644 index 0000000..cc7b5b5 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; diff --git a/bibletime-doc/docs/en/helpdialog/html/Makefile.in b/bibletime-doc/docs/en/helpdialog/html/Makefile.in new file mode 100644 index 0000000..599459a --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/helpdialog/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/helpdialog/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in help-first-startup.html help-first-time-search.html help-initbackend-failed.html help-module-encrypted.html help-no-mods-d.html help-no-modules.html help-sword-module-trouble.html index.html; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/helpdialog/html/help-first-startup.html b/bibletime-doc/docs/en/helpdialog/html/help-first-startup.html new file mode 100644 index 0000000..1bde6c0 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-first-startup.html @@ -0,0 +1,167 @@ + + +Chapter 1. First Startup + + + + + + + + + + + +

First Startup

+ +
+

+Chapter 1. First Startup

+
+

+Table 1.1. The first startup of BibleTime! This table describes the features of BibleTime! +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Feature + +Description +
MDI +MDI is the abbreviation for Multiple Document Interface. +With the help of MDI it's possible to have more than one display window opened at the +same time! You may view two different bibles side by side and compare their +text. But it's also possible to open only one window as in prevous versions of BibleTime. The +menu Window is used to work with the MDI interface. + +The MDI area will only contain display windows, nothing else. This clean +presentation avoids confusing users with too many choices. +
Display window +A display window is a window inside the MDI area of BibleTime. A display window presents +the content of a document (Sword module) in a reasonable format (for example Bibles will be +displayed as HTML text with hyperlinks to verse references). +We use display windows to have a general approach for the future. +Crosswire will extend Sword as more material is made available for distribution. +When new module types are created for Sword we will simply create additional types of display windows. +This approach makes BibleTime extensible in the future, and able to display any +type of module that might be created in (for example maps or sound modules ...). +
+Main index + +The main index is the tree on the left side of BibleTime's application window. The +main index combines bookmark management and module management. +To work with the main index use the right mouse button menu. + +The main index is Drag 'n' Drop capable: You can drag verse references from a +an open document or from the search dialog into the main index to create a bookmark, and you can move items in +the tree (e.g. move groups or bookmarks into another group). +
Search interface + +The search feature is now in its own window. Click with the right mouse button +on a module and select Search in Selected module(s) to open the search dialog. The dialog +contains sections to enter the searchphrase, set the searchscope and to navigate +through the items found. The last tab shows the graphical search analysis. + + +
Drag 'n' Drop + +Drag & Drop is an important part of BibleTime! You can drag documents, verse +references, bookmarks, document groups, search results etc. Places where you can drop +them are the main index, the document windows, and the commentary editor. + +Simply play around a little to find out how our Drag & Drop system does work! +We hope you like it. + +
+
+
+

+Table 1.2. Here's a short list of useful URLS with more information about BibleTime! +

+ ++++ + + + + + + + + + + + + + + +
URLDescription
www.bibletime.de +This is the homepage of BibleTime! Browse to this page to read documentation +pages. Don't forget to read the FAQ on +www.bibletime.de, it contains answers to questions you'll probably have. +
www.crosswire.org +This is the home of Crosswire Bible Society! Crosswire Bible Society produces the +Bible text module library - and the library manager Sword! You can down load the +Bible text modules from this page. Most of the modules available from Crosswire Bible Society +are either in the public domain or have been released to Crosswire Bible Society for distribution +by the copyright holder. Modules that are not released for free distribution are +locked. Please see the helpdialog on locked +modules before downloading locked modules. +
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-first-time-search.html b/bibletime-doc/docs/en/helpdialog/html/help-first-time-search.html new file mode 100644 index 0000000..597fe1b --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-first-time-search.html @@ -0,0 +1,122 @@ + + +Chapter 2. First time search dialog + + + + + + + + + + + +

First time search dialog

+ +
+

+Chapter 2. First time search dialog

+

You opened the search dialog for the first time!

+

This page describes what the search dialog is, how to use it and how to make efficient searches.

+
+
+
2.1 +What's the search dialog? + +
+
2.2 +How do I search for some text? + +
+
+
+

+2.1 +What's the search dialog? +

+

+ +The search dialog is the where you can search the Sword documents (modules) installed in your copy of BibleTime. +You can enter text and search this text in the documents. The entries found will +appear in a list where you can work with them. +

+
+
+

+2.2 +How do I search for some text? +

+
+

+ +To search some text click on the first entry of the tab bar at the top of the dialog. +Now enter some text in the search entry box at the top. If you don't want to do +special things you can leave the settings untouched and click on the Search +button at the bottom of the dialog. The progress of the search will be +displayed in the two bars at the bottom. The first bar shows the progress for +the current module, the second one does show the percentage of the whole search. +It's possible to search more than one module so two bars are required. But +if you want to do more things with the search dialog we offer these settings to +you: +

+

+ +Multiple Words + +

+

+The entered words can occur in another order as entered in the line, they can +even be part of more than one word. +

+

+ +Exact search + +

+

+The text is exactly searched as entered in the line, unless you enabled case +sensitive search the search does case insensitive search. +

+

+ +Regular expressions + +

+

+If you use this type of search GNU standard regular expressions are used +

+

+Normally all searches are done with insensitive character matching, to use +case sensitive search enable the box Case sensitive. If you have problems +with the search types, case (in)sensitive search or other search related things +have a look into our handbook for more information. +

+
+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-initbackend-failed.html b/bibletime-doc/docs/en/helpdialog/html/help-initbackend-failed.html new file mode 100644 index 0000000..049fb2d --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-initbackend-failed.html @@ -0,0 +1,50 @@ + + +Chapter 3. Initialization of Backend Failed! + + + + + + + + + + + +

Initialization of Backend Failed!

+ +
+

+Chapter 3. Initialization of Backend Failed!

+

The initialization of BibleTime's backend failed!

+

If you get this message, you have uncovered a bug we need to know about.

+

Please send a bug-report with some information and show us how to reproduce the problem.

+

Email us at info@bibletime.de! +

+

Thank you very much for your help!

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-module-encrypted.html b/bibletime-doc/docs/en/helpdialog/html/help-module-encrypted.html new file mode 100644 index 0000000..8935cdd --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-module-encrypted.html @@ -0,0 +1,108 @@ + + +Chapter 4. The module is encrypted + + + + + + + + + + + +

The module is encrypted

+ +
+

+Chapter 4. The module is encrypted

+

The module you selected is encrypted! +

+

+This page describes what encryption does mean for you.

+
+
+
4.1 +What is an encrypted +module? + +
+
4.2 +How do I unlock a module? + +
+
4.3 +Why are modules locked? + +
+
+
+

+4.1 +What is an encrypted +module? +

+

+ +An encrypted module (document) is a module which is locked with a key. Only a user that has +the right key can unlock the module to read it. +

+
+
+

+4.2 +How do I unlock a module? +

+

+ +For normal users it's sadly not possible at this time to use encrypted modules. +The problem is that the copyright owners of the modules do not want to release +the stuff with SWORD. But If you have a key click with the right +mousebutton on the module and select "Unlock module ...". A dialog appears, +please enter here the key to unlock the encrypted module. +

+
+
+

+4.3 +Why are modules locked? +

+

+ +Modules are locked because the copyright owners of the module do not want to +release their texts through the Sword project. Please contact the +copyright owners and ask for the modules to be made available. If you want to +pay for it please let them know, this is a thing they like. We know freely available module would be +great, so try to get them! You can also visit +Crosswire Bible Society and +read the information on the effort to make copyrighted texts available through +crosswire. This project needs your support. Thank you very much for your efforts! +

+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-no-mods-d.html b/bibletime-doc/docs/en/helpdialog/html/help-no-mods-d.html new file mode 100644 index 0000000..8ee2052 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-no-mods-d.html @@ -0,0 +1,100 @@ + + +Chapter 6. Initialization of Module directory failed! + + + + + + + + + + + +

Initialization of Module directory failed!

+ +
+

+Chapter 6. Initialization of Module directory failed!

+

There's no mods.d directory!

+

This page describes what the mods.d directory is and how to solve this problem!

+
+
+
6.1 +What is the mods.d directory? + +
+
6.2 +How do I solve this problem? + +
+
6.3 +Can I start BibleTime without this directory? + +
+
+
+

+6.1 +What is the mods.d directory? +

+

+ +The mods.d directory is the directory which should contain the config files of +the modules! You must have this directory, otherwise you can't use Bibletime +and Sword! Please read the installation instructions on our homepage! +

+
+
+

+6.2 +How do I solve this problem? +

+

+ +The solution is to create a directory mods.d: +Please go into your Sword directory and type "mkdir mods.d" to create the directory. +Now copy the config files of your modules into this package and remove (if they +exist) the file mods.conf which isn't required any more. +The mods.d directory replaced this file. +

+
+
+

+6.3 +Can I start BibleTime without this directory? +

+

+ +Yes, it's possible. But it's not very useful. +There are no modules in the main index. It's possible to test BibleTime this +way, but it's not possible to work with it without modules. +

+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-no-modules.html b/bibletime-doc/docs/en/helpdialog/html/help-no-modules.html new file mode 100644 index 0000000..b1be441 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-no-modules.html @@ -0,0 +1,97 @@ + + +Chapter 7. No modules installed! + + + + + + + + + + +

No modules installed!

+ +
+

+Chapter 7. No modules installed!

+

There are no installed Sword modules!

+

This page describes what modules are and how to solve the problem

+
+
+
7.1 +What is a module? + +
+
7.2 +How do I solve the problem? + +
+
7.3 +What should I do if it doesn't work? + +
+
+
+

+7.1 +What is a module? +

+

+ +A Sword module is the base of BibleTime. A module may be a Bible, +a commentary or a lexicon. Later we will have maps and other interesting stuff. +It's not possible to use with BibleTime if no modules are installed +although it's possible to test BibleTime without installed modules. +When modules are displayed in BibleTime we call them documents. +

+
+
+

+7.2 +How do I solve the problem? +

+

+ Please download some modules and install them! Get the modules at +www.crosswire.org. +Please read the installation instructions of our handbook and of our homepage. +

+
+
+

+7.3 +What should I do if it doesn't work? +

+

+ +Please read the documentation on +www.bibletime.de and if you can't get it +working please send an email to info@bibletime.de .

+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/help-sword-module-trouble.html b/bibletime-doc/docs/en/helpdialog/html/help-sword-module-trouble.html new file mode 100644 index 0000000..2fb7d48 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/help-sword-module-trouble.html @@ -0,0 +1,52 @@ + + +Chapter 5. Sword module trouble. + + + + + + + + + + + +

Sword module trouble.

+ +
+

+Chapter 5. Sword module trouble.

+

The sword module did not open. This is usually caused by an out of date or damaged sword module. +Please visit Crosswire Bible Society for an update of your module.

+
+

+Note

+

Currently sword does not trap this problem. BibleTime and sword will crash with no error message. +

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/html/index.html b/bibletime-doc/docs/en/helpdialog/html/index.html new file mode 100644 index 0000000..9787907 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/html/index.html @@ -0,0 +1,100 @@ + + +The BibleTime Help Dialog + + + + + + + + + +

The BibleTime Help Dialog

+ +
+
+

+The BibleTime Help Dialog

+
+

Fred Saalbach

+ +

Jeffrey Hoyt

+
+
Revision 1.01.00
+
+
+
+

The BibleTime helpdialog is part of BibleTime. +

+

+BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. +

+
+
+

+BibleTime is an application to aid in study of the Bible. + +

+
+
+
+ + +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/unicode/Makefile.am b/bibletime-doc/docs/en/helpdialog/unicode/Makefile.am new file mode 100644 index 0000000..61f8a38 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; diff --git a/bibletime-doc/docs/en/helpdialog/unicode/Makefile.in b/bibletime-doc/docs/en/helpdialog/unicode/Makefile.in new file mode 100644 index 0000000..077b493 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/helpdialog/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/helpdialog/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + else \ + ln -sf ../../../en/bibletime/helpdialog/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in help-first-startup.docbook help-first-time-search.docbook help-initbackend-failed.docbook help-module-encrypted.docbook help-no-mods-d.docbook help-no-modules.docbook help-sword-module-trouble.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/helpdialog/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/helpdialog/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/helpdialog/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-first-startup.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-first-startup.docbook new file mode 100644 index 0000000..f6dbf4a --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-first-startup.docbook @@ -0,0 +1,157 @@ + +First Startup + + +The first startup of &bibletime;! This table describes the features of &bibletime;! + + + + + +Feature + + + + +Description + + + + + + + +MDI + + + +MDI is the abbreviation for Multiple Document Interface. +With the help of MDI it's possible to have more than one display window opened at the +same time! You may view two different bibles side by side and compare their +text. But it's also possible to open only one window as in prevous versions of &bibletime;. The +menu Window is used to work with the MDI interface. + +The MDI area will only contain display windows, nothing else. This clean +presentation avoids confusing users with too many choices. + + + + + +Display window + + + +A display window is a window inside the MDI area of &bibletime;. A display window presents +the content of a document (&sword; module) in a reasonable format (for example Bibles will be +displayed as HTML text with hyperlinks to verse references). +We use display windows to have a general approach for the future. +Crosswire will extend &sword; as more material is made available for distribution. +When new module types are created for &sword; we will simply create additional types of display windows. +This approach makes &bibletime; extensible in the future, and able to display any +type of module that might be created in (for example maps or sound modules ...). + + + + + + +Main index + + + + +The main index is the tree on the left side of &bibletime;'s application window. The +main index combines bookmark management and module management. +To work with the main index use the &RMB; menu. + +The main index is Drag 'n' Drop capable: You can drag verse references from a +an open document or from the search dialog into the main index to create a bookmark, and you can move items in +the tree (e.g. move groups or bookmarks into another group). + + + + + +Search interface + + + +The search feature is now in its own window. Click with the &RMB; +on a module and select Search in Selected module(s) to open the search dialog. The dialog +contains sections to enter the searchphrase, set the searchscope and to navigate +through the items found. The last tab shows the graphical search analysis. + + + + + + +Drag 'n' Drop + + + +Drag & Drop is an important part of &bibletime;! You can drag documents, verse +references, bookmarks, document groups, search results etc. Places where you can drop +them are the main index, the document windows, and the commentary editor. + +Simply play around a little to find out how our Drag & Drop system does work! +We hope you like it. + + + + + +
+ + +Here's a short list of useful URLS with more information about &bibletime;! + + + + + +URL + + + +Description + + + + + + + + +www.bibletime.de + + + +This is the homepage of &bibletime;! Browse to this page to read documentation +pages. Don't forget to read the &FAQ; on +www.bibletime.de, it contains answers to questions you'll probably have. + + + + + +www.crosswire.org + + + +This is the home of &crosswire;! &crosswire; produces the +Bible text module library - and the library manager &sword;! You can down load the +Bible text modules from this page. Most of the modules available from &crosswire; +are either in the public domain or have been released to &crosswire; for distribution +by the copyright holder. Modules that are not released for free distribution are +locked. Please see the helpdialog on locked +modules before downloading locked modules. + + + + + +
+
+ diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-first-time-search.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-first-time-search.docbook new file mode 100644 index 0000000..7fcfb14 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-first-time-search.docbook @@ -0,0 +1,77 @@ + +First time search dialog + +You opened the search dialog for the first time! +This page describes what the search dialog is, how to use it and how to make efficient searches. + + + + + +What's the search dialog? + + + + +The search dialog is the where you can search the &sword; documents (modules) installed in your copy of &bibletime;. +You can enter text and search this text in the documents. The entries found will +appear in a list where you can work with them. + + + + + + +How do I search for some text? + + + + +To search some text click on the first entry of the tab bar at the top of the dialog. +Now enter some text in the search entry box at the top. If you don't want to do +special things you can leave the settings untouched and click on the Search +button at the bottom of the dialog. The progress of the search will be +displayed in the two bars at the bottom. The first bar shows the progress for +the current module, the second one does show the percentage of the whole search. +It's possible to search more than one module so two bars are required. But +if you want to do more things with the search dialog we offer these settings to +you: + + + +Multiple Words + + + +The entered words can occur in another order as entered in the line, they can +even be part of more than one word. + + + +Exact search + + + +The text is exactly searched as entered in the line, unless you enabled case +sensitive search the search does case insensitive search. + + + +Regular expressions + + + +If you use this type of search GNU standard regular expressions are used + + +Normally all searches are done with insensitive character matching, to use +case sensitive search enable the box Case sensitive. If you have problems +with the search types, case (in)sensitive search or other search related things +have a look into our handbook for more information. + + + + + + + diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-initbackend-failed.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-initbackend-failed.docbook new file mode 100644 index 0000000..f67bd35 --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-initbackend-failed.docbook @@ -0,0 +1,12 @@ + +Initialization of Backend Failed! +The initialization of &bibletime;'s backend failed! + +If you get this message, you have uncovered a bug we need to know about. + + +Please send a bug-report with some information and show us how to reproduce the problem. + Email us at info@bibletime.de! +Thank you very much for your help! + + diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-module-encrypted.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-module-encrypted.docbook new file mode 100644 index 0000000..24e3d4a --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-module-encrypted.docbook @@ -0,0 +1,60 @@ + +The module is encrypted +The module you selected is encrypted! + + +This page describes what encryption does mean for you. + + + + +What is an encrypted +module? + + + + +An encrypted module (document) is a module which is locked with a key. Only a user that has +the right key can unlock the module to read it. + + + + + + +How do I unlock a module? + + + + +For normal users it's sadly not possible at this time to use encrypted modules. +The problem is that the copyright owners of the modules do not want to release +the stuff with SWORD. But If you have a key click with the right +mousebutton on the module and select "Unlock module ...". A dialog appears, +please enter here the key to unlock the encrypted module. + + + + + + +Why are modules locked? + + + + +Modules are locked because the copyright owners of the module do not want to +release their texts through the &sword; project. Please contact the +copyright owners and ask for the modules to be made available. If you want to +pay for it please let them know, this is a thing they like. We know freely available module would be +great, so try to get them! You can also visit +&crosswire; and +read the information on the effort to make copyrighted texts available through +crosswire. This project needs your support. Thank you very much for your efforts! + + + + + + + diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-no-mods-d.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-no-mods-d.docbook new file mode 100644 index 0000000..945f3ab --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-no-mods-d.docbook @@ -0,0 +1,54 @@ + +Initialization of Module directory failed! + +There's no mods.d directory! + +This page describes what the mods.d directory is and how to solve this problem! + + + + +What is the mods.d directory? + + + + +The mods.d directory is the directory which should contain the config files of +the modules! You must have this directory, otherwise you can't use Bibletime +and &sword;! Please read the installation instructions on our homepage! + + + + + + +How do I solve this problem? + + + + +The solution is to create a directory mods.d: +Please go into your &sword; directory and type "mkdir mods.d" to create the directory. +Now copy the config files of your modules into this package and remove (if they +exist) the file mods.conf which isn't required any more. +The mods.d directory replaced this file. + + + + + + +Can I start &bibletime; without this directory? + + + + +Yes, it's possible. But it's not very useful. +There are no modules in the main index. It's possible to test &bibletime; this +way, but it's not possible to work with it without modules. + + + + + + diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-no-modules.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-no-modules.docbook new file mode 100644 index 0000000..3b2f9da --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-no-modules.docbook @@ -0,0 +1,53 @@ + +No modules installed! + +There are no installed &sword; modules! +This page describes what modules are and how to solve the problem + + + + + +What is a module? + + + + +A &sword; module is the base of &bibletime;. A module may be a Bible, +a commentary or a lexicon. Later we will have maps and other interesting stuff. +It's not possible to use with &bibletime; if no modules are installed +although it's possible to test &bibletime; without installed modules. +When modules are displayed in &bibletime; we call them documents. + + + + + + +How do I solve the problem? + + + +Please download some modules and install them! Get the modules at +www.crosswire.org. +Please read the installation instructions of our handbook and of our homepage. + + + + + + +What should I do if it doesn't work? + + + + +Please read the documentation on +www.bibletime.de and if you can't get it +working please send an email to info@bibletime.de . + + + + + diff --git a/bibletime-doc/docs/en/helpdialog/unicode/help-sword-module-trouble.docbook b/bibletime-doc/docs/en/helpdialog/unicode/help-sword-module-trouble.docbook new file mode 100644 index 0000000..83dd65b --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/help-sword-module-trouble.docbook @@ -0,0 +1,9 @@ + +Sword module trouble. +The sword module did not open. This is usually caused by an out of date or damaged sword module. +Please visit Crosswire Bible Society for an update of your module. + +Currently sword does not trap this problem. &bibletime; and sword will crash with no error message. + + + \ No newline at end of file diff --git a/bibletime-doc/docs/en/helpdialog/unicode/index.docbook b/bibletime-doc/docs/en/helpdialog/unicode/index.docbook new file mode 100644 index 0000000..c022fbb --- /dev/null +++ b/bibletime-doc/docs/en/helpdialog/unicode/index.docbook @@ -0,0 +1,117 @@ + + + + + + + BibleTime'> + Sword'> + Sword Installmgr'> + Crosswire Bible Society'> + + + + + + + + + + +]> + + + + +The &bibletime; Help Dialog + + + +Fred + +Saalbach + +
info@bibletime.de
+
+
+ +Jeffrey +Hoyt + +
+ + + + +1999 +2000 +2001 +The team of &bibletime;, info@bibletime.de + + + + +The &bibletime; helpdialog is part of &bibletime;. + + + +&bibletime; 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., 675 Mass Ave, Cambridge, MA 02139, USA. + + +12/18/2001 +1.01.00 + + + +&bibletime; is an application to aid in study of the Bible. + + + + + +KDE +Bibletime +Sword +Crosswire Bible Society +help dialog + + +
+ +&hdchap1; +&hdchap2; +&hdchap3; +&hdchap4; +&hdchap5; +&hdchap6; +&hdchap7; + +
+ + diff --git a/bibletime-doc/docs/en/howto/Makefile.am b/bibletime-doc/docs/en/howto/Makefile.am new file mode 100644 index 0000000..17d7a2a --- /dev/null +++ b/bibletime-doc/docs/en/howto/Makefile.am @@ -0,0 +1,23 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/en/howto/Makefile.in b/bibletime-doc/docs/en/howto/Makefile.in new file mode 100644 index 0000000..0eca588 --- /dev/null +++ b/bibletime-doc/docs/en/howto/Makefile.in @@ -0,0 +1,480 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/howto + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/howto/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/howto/html/Makefile.am b/bibletime-doc/docs/en/howto/html/Makefile.am new file mode 100644 index 0000000..c5601ff --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/Makefile.am @@ -0,0 +1,5 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = diff --git a/bibletime-doc/docs/en/howto/html/Makefile.in b/bibletime-doc/docs/en/howto/html/Makefile.in new file mode 100644 index 0000000..a1cb458 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/Makefile.in @@ -0,0 +1,364 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=h2-rules-context.html h2-importance.html h2-importance-exhortations.html h2-basics-interpretation.html h2-basics.html h2-importance-wars.html h2-basics-worksheet.html h2-rules.html h2-importance-liberates.html index.html h2-basics-expository.html h2-rules-normal.html h2-basics-approaches.html h2-importance-breathed.html h2-importance-once.html h2-basics-types.html h2-rules-parables.html h2-rules-hcontest.html h2-importance-supplement.html h2-importance-works.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/howto/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/howto/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/howto/html/h2-basics-approaches.html b/bibletime-doc/docs/en/howto/html/h2-basics-approaches.html new file mode 100644 index 0000000..4099dee --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics-approaches.html @@ -0,0 +1,99 @@ + + +Approaches to God's Word + + + + + + + + + + + +

Approaches to God's Word

+ +
+

+Approaches to God's Word

+

Hearing and reading provide a telescopic view of the scripture while study +and memorization provide a microscopic view of scripture. Meditating on the +scriptures brings hearing, reading, studying and memorization together and +cements the word in our minds.

+
+

+Hear

+

Lk.11:28 "blessed are those who hear the word of God, and +observe it." +

+
+
+

+Read

+

Rev.1:3 +"Blessed is he who reads and those who hear the words of this +prophecy..." +

+

1 Tim.4:13 "give +attention to the public reading of Scripture..." +

+
+
+

+Study

+

Acts 17:11 "Now these were more noble-minded than those in +Thessalonica, for they received the word with great eagerness, examining the +Scriptures daily, to see whether these things were so." +

+

2 Tim.2:15 "Be diligent [KJV `Study'] to present yourself +approved to God as a workman who does not need to be ashamed, handling +accurately the word of truth." +

+
+
+

+Memorize

+

Ps.119:11 "Thy word I have hid in my heart, that I may not +sin against Thee." +

+
+
+

+Meditate

+

Ps.1:2-3 "But his delight is in the law of the Lord, And +in His law he meditates day and night. And he will be like a tree firmly planted +by streams of water, Which yields its fruit in its season, And its leaf does not +wither; And in whatever he does, he prospers." +

+

The Navigators illustrate this by saying that as the thumb can touch all +the fingers, we can meditate on the Word as we do any of the first four. +Meditation is a key to revelation. A new Christian needs to hear and read the +Bible more than they need to study and memorize it. This is so that they become +familiar with the overall message of the Bible.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-basics-expository.html b/bibletime-doc/docs/en/howto/html/h2-basics-expository.html new file mode 100644 index 0000000..2ab3023 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics-expository.html @@ -0,0 +1,67 @@ + + +An Expository Study +of Matthew 6:1-18 + + + + + + + + + + + +

An Expository Study +of Matthew 6:1-18

+ +
+

+An Expository Study +of Matthew 6:1-18

+

Let's study together Mt.6:1-18. Read it to yourself, first looking for the key verse, the verse that sums +up the whole passage. Think you have it? Test it by picking different places in the passage and asking yourself +if they relate to the thought of the key verse. Once you find it, write it as Roman numeral One of your outline:

+
+I. BEWARE OF PRACTICING YOUR RIGHTEOUSNESS BEFORE MEN TO BE NOTICED
+
+

What does "practicing your righteousness" mean? Does the passage give any examples? What area +of our lives is being addressed? our motives! What sub-headings develop this thought?

+
+  A. WHEN YOU GIVE
+  B. WHEN YOU FAST
+  C. WHEN YOU PRAY
+
+

Now fill in the outline with specific instructions of how to avoid wrong ways of practicing our +righteousness:

+
+  A. When you give
+     1. DON'T SOUND A TRUMPET.  (HOW MIGHT SOMEONE "SOUND A TRUMPET" TODAY?)
+     2. DO IT SECRETLY.	ETC.
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-basics-interpretation.html b/bibletime-doc/docs/en/howto/html/h2-basics-interpretation.html new file mode 100644 index 0000000..4a90666 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics-interpretation.html @@ -0,0 +1,64 @@ + + +Basics of Correct Interpretation + + + + + + + + + + + +

Basics of Correct Interpretation

+ +
+

+Basics of Correct Interpretation

+
+

+Content

+

What does it say? What does it say in the original language? Be careful +with definitions. Don't read into it what it doesn't say.

+
+
+

+Context

+

What do the verses around it say? "Context is king" is the rule -- the passage must make +sense within the structure of the entire passage and book.

+
+
+

+Cross-reference

+

What do other verses about this subject say through the rest of the Bible? God +doesn't contradict Himself, so our interpretation needs to stand the test of other scriptures.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-basics-types.html b/bibletime-doc/docs/en/howto/html/h2-basics-types.html new file mode 100644 index 0000000..6fa9a4c --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics-types.html @@ -0,0 +1,63 @@ + + +Types of Bible Studies + + + + + + + + + + + +

Types of Bible Studies

+ +
+

+Types of Bible Studies

+
+

+Topical Study

+

Pick out a certain +topic and follow it through, using cross-references or a +concordance.

+
+
+

+Character Study

+

Studying the life of a Bible character, e.g. Joseph's life in +Gen.37-50.

+
+
+

+Expository Study

+

Studying a +certain passage: paragraph, chapter, or book.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-basics-worksheet.html b/bibletime-doc/docs/en/howto/html/h2-basics-worksheet.html new file mode 100644 index 0000000..da40963 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics-worksheet.html @@ -0,0 +1,108 @@ + + +Worksheet: How to Use a Concordance + + + + + + + + + + + +

Worksheet: How to Use a Concordance

+ +
+

+Worksheet: How to Use a Concordance

+
+

+To Find a Particular Verse

+
    +
  1. +Pick out a key word or most-unusual word of the verse.

  2. +
  3. +Turn to this word alphabetically.

  4. +
  5. +Go down the column of listings until you find your verse.

  6. +
+
+	Find these verses:
+		"Faithful are the wounds of a friend."
+		"We are ambassadors of Christ."
+		The story of the rich man and Lazarus.
+
+
+
+

+To Do a Topical Study

+

Let's say you wanted to do a study of the word "redemption." First you would look up that word in the +concordance and look up references listed for it. Then you could look up related words and references listed for them, e.g. +"redeem, redeemed, ransom," even "buy" or "bought."

+
+
+

+To Clarify Word Meanings in the Greek and Hebrew

+

What if you noticed a contradiction in the KJV between Mt.7:1 "Judge not lest you be judged" and 1 Cor.2:15 +"He that is spiritual judgeth all things." Maybe there are two different Greek words here, both being translated "judge" in +English? (We're using Strong's from here out.)

+
    +
  1. +Look up "judge."

  2. +
  3. +Go down the column of entries to Mt.7:1. To the right is a number, 2919. This refers to the Greek word used. + Write it down.

  4. +
  5. +Now look up "judgeth."

  6. +
  7. +Go down the column to 1 Cor.2:15 . . . . . 350.

  8. +
  9. +Turn in the back to the Greek dictionary. (Remember, you're in the NT so the language is Greek, while the +OT is Hebrew.) Compare the meaning of 2919 with the meaning of 350 and you have your answer!

  10. +
+
+
+

+To Find Meanings of Names

+

By the same process we can find the meaning of a name in the Greek or Hebrew.

+

Look up these names and write down their meaning:

+
    +
  • +Nabal

  • +
  • +Abigail

  • +
  • +Joshua

  • +
  • +Barnabus

  • +
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-basics.html b/bibletime-doc/docs/en/howto/html/h2-basics.html new file mode 100644 index 0000000..7685c18 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-basics.html @@ -0,0 +1,83 @@ + + +Chapter 2. Bible Study Basics + + + + + + + + + + + +

Bible Study Basics

+ +
+

+Chapter 2. Bible Study Basics

+
+

+Our Purpose as we Approach the Bible

+

+Jn.5:39-40"You search the Scriptures, because you think that +in them you have eternal life; and it is these that bear witness of Me; and you +are unwilling to come to Me, that you may have life." +

+

The chief purpose of the book is to bring us to the Person. Martin Luther +said "we go to the cradle only for the sake of the baby"; just so +in Bible study, we do it not for its own sake but for fellowship with God. +

+ + + + + + + + + + +
  +

The Jews to whom Jesus spoke... imagined that to possess Scripture was +tantamount to possessing life. Hillel used to say, "He who has gotten to +himself words of Torah has gotten to himself the life of the world to +come." Their study was an end in itself. In this they were grievously +deceived. ...

+

There is neither merit nor profit in the reading of +Scripture for its own sake, but only if it effectively introduces us to Jesus +Christ. Whenever the Bible is read, what is needed is an eager expectation that +through it we may meet Christ.

+
 
--John R.W. Stott, Christ the +Controversialist, InterVarsity Press 1978, pp.97, 104. + 
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-breathed.html b/bibletime-doc/docs/en/howto/html/h2-importance-breathed.html new file mode 100644 index 0000000..aefa34a --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-breathed.html @@ -0,0 +1,92 @@ + + +A Book that God Breathed + + + + + + + + + + + +

A Book that God Breathed

+ +
+

+A Book that God Breathed

+

+Heb.4:12 "For the word of God is living and active... +" Jesus said (Mt.4:4), +"It is written, Man shall not live on bread alone, but on every word that +proceeds [lit., is proceeding] from the mouth of God." +As we read the Bible, God's Spirit is there to speak it to our hearts in a continually-fresh way. +

+

2 Tim.3:16 declares, "All scripture is inspired by God [lit., +God-breathed]." Do you believe this? Before you answer, consider Jesus' attitude +toward the Scriptures.

+ + + + + + + + + + +
  +

He referred to the human authors, but took it for +granted that behind them all was a single divine Author. He could equally say +'Moses said' or 'God said' (Mk.7:10). He could quote a comment of the narrator in +Genesis 2:24 as an utterance of the Creator Himself (Mt.19:4-5). Similarly He +said, 'Well did Isaiah prophesy of you hypocrites, as it is written', when what He +went on to quote is the direct speech of the Lord God (Mk.7:6 & Is.29:13). It +is from Jesus Himself that the New Testament authors have gained their +conviction of the dual authorship of Scripture. For them it was just as true to +say that 'God spoke of old to our fathers by the prophets' (Heb.1:1) as it was to +say that 'men moved by the Holy Spirit spoke from God' (2 Pe.1:21). God did not +speak in such a way as to obliterate the personality of the human authors, nor +did men speak in such a way as to corrupt the Word of the divine Author. God +spoke. Men spoke. Neither truth must be allowed to detract from the other. ... +

+

+This, then, was Christ's view of the Scriptures. Their witness was God's +witness. The testimony of the Bible is the testimony of God. And the chief +reason why the Christian believes in the divine origin of the Bible is that +Jesus Christ Himself taught it.

+
 
--John R.W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.93-95 + 
+

2 Tim.3:16 goes on, "and profitable for teaching, for +correction, for training in righteousness, that the man of God may be adequate, +equipped for every good work." If we accept that the Bible really is God +speaking to us, it follows that it will be our authority in all matters of faith +and conduct.

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-exhortations.html b/bibletime-doc/docs/en/howto/html/h2-importance-exhortations.html new file mode 100644 index 0000000..bdec1fe --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-exhortations.html @@ -0,0 +1,64 @@ + + +Exhortations + + + + + + + + + + + +

Exhortations

+ +
+

+Exhortations

+

+2 Tim.2:15 (KJV) "Study to show thyself approved unto God, a workman that needeth not to be ashamed, rightly +dividing the word of truth." +

+

+Col.3:16 "Let the word of Christ richly dwell within you; with all wisdom teaching and admonishing one another +with psalms and hymns and spiritual songs, singing with thankfulness in your hearts to God." +

+

If you're rich in something, how much of it do you +have?

+

+Not a little!

+

+Eccl.12:11 "The words of wise men are like goads, and masters of these +collections are like well-driven nails; they are given by one Shepherd. But +beyond this, my son, be warned: the writing of many books is endless, and +excessive devotion to books is wearying to the body." +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-liberates.html b/bibletime-doc/docs/en/howto/html/h2-importance-liberates.html new file mode 100644 index 0000000..1df18ed --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-liberates.html @@ -0,0 +1,67 @@ + + +A Book that Liberates + + + + + + + + + + + +

A Book that Liberates

+ +
+

+A Book that Liberates

+

+Jn.8:32 "and you shall know the truth, and the truth shall make you +free."This is usually quoted by +itself. Is this a conditional or unconditional promise? Would it apply to +all kinds of knowledge? Find the answers by examining the first half of the +sentence, in v.31. "If you abide in My word, then you are truly disciples of +Mine... "

+

We see that this is a conditional promice, specifically speaking of the truth of God's word.

+

The Greek word for "wind" used in Eph.4:14 means a violent wind. +"As a result, we are no longer to be children, tossed here and there by +waves, and carried about by every wind of doctrine..."One +thing studying the Bible does for us is to ground us in the truth, with the +result that we won't be easily "blown away."

+

+But Jesus answered and said to them, "You are mistaken [KJV Ye do err], not +understanding the Scriptures, or the power of God."Mt.22:29

+

What 2 things do we need to know to be kept from error?

+
    +
  • +God's word

  • +
  • +God's power

  • +
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-once.html b/bibletime-doc/docs/en/howto/html/h2-importance-once.html new file mode 100644 index 0000000..f81c190 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-once.html @@ -0,0 +1,82 @@ + + +Appendix: "Once for +All" + + + + + + + + + + + +

Appendix: "Once for +All"

+ +
+

+Appendix: "Once for +All"

+ + + + + + + + + + +
  +

The truth regarding the +finality of God's initiative in Christ is conveyed by one word of the Greek +Testament, namely the adverb hapax and +ephapax. It is usually translated in the +Authorized Version once, meaning once for all. It is used of what is so done as +to be of perpetual validity and never need repetition, and is applied in the NT +to both revelation and redemption. Thus, Jude refers to the faith which was +once for all delivered to the saints (Jude 3), and Romans says, +"Christ also died for sins once for all" +(Rom.6:10, see also 1 Pe.3:18; Heb.9:26-28).

+

+Thus we may say that God has spoken once +for all and Christ has suffered once for all. This means that the Christian +revelation and the Christian redemption are both alike in Christ complete. +Nothing can be added to either without being derogatory to Christ... These are +the two rocks on which the Protestant Reformation was built -- Gods revealed +word without the addition of human traditions and Christ's finished work without +the addition of human merits. The Reformers great watchwords were sola +scriptura for our authority and sola gratia for our salvation.

+
 
--John R. W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.106-107 + 
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-supplement.html b/bibletime-doc/docs/en/howto/html/h2-importance-supplement.html new file mode 100644 index 0000000..4f34727 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-supplement.html @@ -0,0 +1,71 @@ + + +Supplement: Bible Reading +Programs + + + + + + + + + + + +

Supplement: Bible Reading +Programs

+ +
+

+Supplement: Bible Reading +Programs

+

Here are some easy programs to systematically read your +Bible. You can do more than one at a time if you like, for instance #1 with #4, +or #2 with #5. Vary the program from year to year to keep it fresh! +

+
    +
  1. +New Testament in a Year: read one chapter each day, 5 days a +week.

  2. +
  3. +Proverbs in a Month: read one chapter of Proverbs each day, +corresponding to the day of the month.

  4. +
  5. +Psalms in a Month: read 5 Psalms at intervals of 30 each day, +for instance on the 20th you read Ps.20, 50, 80, 110, & 140.

  6. +
  7. +Psalms & Proverbs in 6 months: read through Psalms and Proverbs +one chapter per day.

  8. +
  9. +Old Testament without Psalms & Proverbs in 2 years: if +you read one chapter a day of the Old Testament, skipping over Psalms & Proverbs, you will read the Old Testament in 2 years and 2 weeks. +

  10. +
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-wars.html b/bibletime-doc/docs/en/howto/html/h2-importance-wars.html new file mode 100644 index 0000000..f7a2199 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-wars.html @@ -0,0 +1,76 @@ + + +A Book that Wars + + + + + + + + + + + +

A Book that Wars

+ +
+

+A Book that Wars

+

+Eph.6:10-18 is one picture of our spiritual armament.

+
+

+Table 1.3. Spiritual Armor +

+ ++++ + + + + + + + + + + + + + + + + + + +
QuestionAnswer
How many of the weapons listed here are defensive weapons?5
How many are offensive?One
Which one(s)? the word - rhema +
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance-works.html b/bibletime-doc/docs/en/howto/html/h2-importance-works.html new file mode 100644 index 0000000..6c0ab05 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance-works.html @@ -0,0 +1,125 @@ + + +A Book that Works + + + + + + + + + + + +

A Book that Works

+ +
+

+A Book that Works

+

+What will studying the Bible do for you? 1 Thess.2:13 says that the Bible +"performs its work in you +who believe." Beside each scripture, write down the work the Word +performs. +

+
+

+Table 1.2. What does Bible study do for Christians? +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ReferenceAction
Eph. 5:26 +cleanses -- "...having cleansed her by the washing of water with the word." +
+Acts 20:32 + +builds up -- +" +...the word of His grace, which is able to build you up and to give you the +inheritance among all those who are sanctified. +" +
+Rom. 15:4 + +encourages -- "that through perseverance and the +encouragement of the Scriptures we might have hope." +
+Rom. 10:17 + +gives faith -- +"So faith comes from hearing, and hearing by the word of +Christ." +
+1 Cor. 10:11 + +instructs -- +"Now these things happened to them for an example, +and they were written for our instruction" +
+Mt. 4:4 + +nourishment -- +"But He answered and said, 'It is written, Man shall not live on bread alone, +but on every word that proceeds out of the +mouth of God.'" +
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-importance.html b/bibletime-doc/docs/en/howto/html/h2-importance.html new file mode 100644 index 0000000..415d03e --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-importance.html @@ -0,0 +1,161 @@ + + +Chapter 1. Importance of God's Word + + + + + + + + + + + +

Importance of God's Word

+ +
+

+Chapter 1. Importance of God's Word

+

Understanding God's word is of great importance to all who call on +God's name. Study of the Bible is one of the primary ways that we learn to +communicate with God.

+
+

+A Book that is +Unique

+

+The Bible stands alone in many ways. It is unique in: +

+
    +
  • + +popularity. Bible sales in North America: more than $500 million per +year. The Bible is both the the all-time and year-to-year best seller! +

  • +
  • + +authorship. It was written over a period of 1600 years by 40 different +authors from different backgrounds, yet reads as if written by one. +

  • +
  • + +preservation. F. F. Bruce in Are New Testament Documents Reliable? +compares New Testament manuscripts with other ancient texts: +

  • +
+
+

+Table 1.1. Comparison of New Testament manuscripts with other ancient texts. +

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WorkWhen WrittenEarliest CopyTime LapseNumber of Copies
Herodotus448-428 B.C.900 A.D.1300 years8 +
Tacitus100 A.D.1100 A.D.1000 years20 +
Caesar's Gallic War +50-58 B.C.900 A.D.950 years10 +
Livy's Roman History +59 B.C. - 17 A.D.900 A.D.900 years20 +
New Testament40 A.D. - 100 A.D.130 A.D. Partial manuscripts 350 +A.D. Full manuscripts30 - 310 years5000 Greek & 10,000 Latin +
+
+

Ten copies of Caesar's Gallic War exist, the earliest of which was copied +900 years after Caesar wrote the original, etc. For the New Testament we have +full manuscripts dating to 350 A. D., papyri containing most of the New +Testament from the 200s, and a fragment of John's gospel from 130 A. D. How +many manuscripts do we have to compare to each other? 5,000 in Greek and 10,000 +in Latin!

+ + + + + + + + + + +
 

"In the verity and fullness of the evidence on which +it rests, the text of the New Testament stands absolutely and unapproachably +alone among other ancient prose writings."

 
--Textual critic F. J. A. Hort, "The New Testament in the +Original Greek", vol. 1 p561, Macmillan Co., quoted in Questions of Life p. +25-26 + 
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-rules-context.html b/bibletime-doc/docs/en/howto/html/h2-rules-context.html new file mode 100644 index 0000000..63db36c --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-rules-context.html @@ -0,0 +1,81 @@ + + +Rule 2 - Interpret within the biblical +context + + + + + + + + + + + +

Rule 2 - Interpret within the biblical +context

+ +
+

+Rule 2 - Interpret within the biblical +context

+

Interpret scripture in harmony with other scripture. What do the +verses on each side say? What is the theme of the chapter? the book? Does your interpretation fit with these? If not, +it is flawed. Usually, the context supplies what we need to correctly interpret the passage. Context is key. If +confusion remains as to the meaning after we have interpreted the text within its context, we have to look further.

+
+

+Example 2A

+

In a previous lesson we considered Jn.3:5 "born of water and the Spirit." In context, what is +the water under discussion here?

+

Water baptism is not under discussion here, which would be a big switch from the subject being +discussed by Jesus and Nicodemus. Watch out for a sudden change of topic, it may be a clue that your +interpretation has been derailed! The water is the amniotic fluid, "born of water" = natural birth.

+
+
+

+Example 2B

+

1 Cor.14:34 "Let the women keep silent in the churches" has to be taken within the biblical +context of 1 Cor.11:5 "every woman...while praying or prophesying..." +

+
+
+

+Example 2C

+

Acts 2:38 And Peter said to them, "Repent, +and let each of you be baptized in the name of +Jesus Christ for the forgiveness of your sins..." Is this teaching baptismal regeneration? If this was the +only verse of scripture we had, we would have to conclude that. But in the light of the clear teaching +elsewhere that regeneration happens by faith in Christ, we have to interpret it otherwise. Peter is urging +baptism as a way for his hearers to respond to the gospel. If baptism were the pathway to being born again, +how could Paul write 1 Cor.1:17 "For Christ did not send me to baptize, but to preach the gospel"? +

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-rules-hcontest.html b/bibletime-doc/docs/en/howto/html/h2-rules-hcontest.html new file mode 100644 index 0000000..cd758c2 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-rules-hcontest.html @@ -0,0 +1,78 @@ + + +Rule 3 - Interpret within the historical and +cultural context + + + + + + + + + + + +

Rule 3 - Interpret within the historical and +cultural context

+ +
+

+Rule 3 - Interpret within the historical and +cultural context

+

+At first we are not asking "What does it mean to +me?" but "What did it mean to the original readers?"; later we can ask, "What does it mean to me?" We have to take +into account the historical and cultural background of the author and the recipients.

+
+

+Example 3A

+

"3 days & 3 nights" (Mt.12:40) have +led some to come up with a "Wednesday crucifixion +theory," esp. the cult of Armstrongism. How could Jesus die on Friday afternoon and rise Sunday morning +yet "be raised on the third day" (Mt.16:21)? Exact meanings of "three" or "days" won't help explain the +apparent contradiction.

+

We need an historical tidbit: Jews counted any part of a day as a full day, as we would count buckets +of water (if there were six and one-half buckets of water, we would say there were 7 buckets of water even if one was only partly full). So to the Jewish +mind, any part of a day counted as a full day, and days started at 6 p.m. and ended at 6 a.m. Friday from 3 +p.m. to 6 p.m. = day 1. Friday 6 p.m. to Saturday 6 p.m. = day 2. Saturday 6 p.m. to Sunday 5 or so a.m. = +day 3. Interpreting within the cultural context keeps us out of trouble.

+
+
+

+Example 3B

+

Gen.15:7-21. The historical context +is that cutting animals in two and then walking between +the pieces was the normal way of entering a contract in Abraham's day. Both parties walked between, taking +the pledge that dismemberment would happen to them if they didn't live up to their part of the contract. But +in this case only God goes thru, making it a unilateral covenant.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-rules-normal.html b/bibletime-doc/docs/en/howto/html/h2-rules-normal.html new file mode 100644 index 0000000..1104f27 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-rules-normal.html @@ -0,0 +1,78 @@ + + +Rule 4 - Interpret according to the normal +usage of words in language + + + + + + + + + + + +

Rule 4 - Interpret according to the normal +usage of words in language

+ +
+

+Rule 4 - Interpret according to the normal +usage of words in language

+

Let literal language be literal and +figurative language be figurative. And watch out for idioms, which have special meanings.

+
+

+Example 4A

+

"evil eye" in Mt.6:23.

+

Rule 1, definition of "evil" and "eye" - no help here. Rule 2, context: seems to confuse us even +more. It doesn't seem to fit with what goes before and after! This should tip us off that we aren't +understanding it rightly!!

+

What we have here is a Hebrew idiom, "evil eye." Let's look up other uses of this idiom: Mt.20:15 +"Is it not lawful for me to do what I wish with what is my own? Or is your eye envious [lit."evil"] because I +am generous [lit."good"]?" We find that having an "evil eye" is a Hebrew idiom for being stingy or envious. +Now go back to Mt.6 and notice how this understanding ties in so perfectly to the context.

+
+

+Example 4B

+

Is.59:1 "The Lord's hand is not short;" Deut.33:27 "Underneath are the everlasting arms." +References to body parts of God are used by Latter-Day Saints to prove that God was once a man just as we +are. Once they convince people of that, they go on to teach that we can become God just like He is! At a +lecture he was giving, a group of Mormon elders challenged Walter Martin (author of Kingdom of the Cults) +with an enumeration of verses like these. Dr. Martin then asked the Mormons to read one more scripture: +Ps.91:4 "He will cover you with His feathers; And under His wings shalt thou trust." W.M. said, "By the same +rules of interpretation that you just proved God to be a man, you just proved that He is a bird." The Mormons +had to laugh as they realised the ridiculousness of their position. +

+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-rules-parables.html b/bibletime-doc/docs/en/howto/html/h2-rules-parables.html new file mode 100644 index 0000000..38f0a93 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-rules-parables.html @@ -0,0 +1,70 @@ + + +Rule 5 - Understand the purpose of +parables and the difference between a parable and an allegory + + + + + + + + + + +

Rule 5 - Understand the purpose of +parables and the difference between a parable and an allegory

+ +
+

+Rule 5 - Understand the purpose of +parables and the difference between a parable and an allegory

+

An allegory is: A STORY WHERE EACH ELEMENT HAS A MEANING

+

Every parable is an allegory, true or false?

+

Some parables are allegories, for instance, the parable of the sower is an allegory: the seed is the word of +God, the thorns are worries and greed, etc. But most parables are not allegories but simply stories to illustrate one +point. It's dangerous to get our doctrine from parables; they can be twisted to say all sorts of things. We need to get +our doctrine from clear scriptures that lay it out; then if a parable illustrates that, fine.

+
+

+Example 5A

+

The parable of the widow with the unrighteous judge in Lk.18:1-8. This story illustrates one +lesson: boldness in prayer. If we draw it into an allegory, what do we have?

+

All sorts of violence happens to the meanings: God is reluctant to protect the rights of widows, prayer +"bothers" Him, etc.

+
+
+

+Example 5B

+

The parable of the unrighteous steward in Lk.16:1-9. What is the point of the parable? Is it +an allegory?

+

The steward is commended for only one thing, his shrewdness in using what he had to prepare for a +time when he wouldn't have it. But he is not commended for his unethical behavior in cheating his master.

+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/h2-rules.html b/bibletime-doc/docs/en/howto/html/h2-rules.html new file mode 100644 index 0000000..88f914e --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/h2-rules.html @@ -0,0 +1,136 @@ + + +Chapter 3. Rules of Bible Interpretation (Hermeneutics) + + + + + + + + + + + +

Rules of Bible Interpretation (Hermeneutics)

+ +
+

+Chapter 3. Rules of Bible Interpretation (Hermeneutics)

+

We already learned about the "3 Cs": content, context, cross-reference. We want to expand that now by +delving briefly into biblical hermeneutics, whose goal is to discover the meaning intended by the original author (and +Author!). While many applications of a passage are valid, only one interpretation is valid. The scripture itself says +this by saying that no scripture is of any private interpretation (2 Pe.1:20 KJV "Knowing this first, that no +prophesy of scripture is of any private interpretation.") Certain rules are helps toward discovering the correct meaning; +by ignoring these rules people have brought much trouble on themselves and their followers. 2 Pe.3:16 "...in which are +some things hard to understand, which the untaught and unstable distort, as they do also the rest of the Scriptures, to +their own destruction." +

+

How do we go about discovering the intended meaning of a passage? Let's say your attention has been +drawn to a particular verse whose meaning is not clear to you. How do you study it out? Keep these rules in mind:

+
+

+Rule 1 - Interpret according to the exact +meaning of the words.

+

The more precise we can be with the exact, original meaning of the words the better our interpretation will be. +Try to find the exact meaning of the key words by following these steps:

+
+

+Step 1) Definition

+

Look up the definition in a Greek or Hebrew dictionary. For verbs, the verb tense is also +crucial.

+
+
+

+Step 2) Cross-reference

+

Compare scripture with scripture. Seeing how the same Greek or Hebrew word +(not the English word) is used in scripture may clarify or throw new light on the definition. How does the same author +use this word elsewhere? Other authors? Your reference tools may give you uses of the word in non-biblical +documents, as well. Why do we have to go to the original languages; why isn't the English word good enough? +BECAUSE MORE THAN ONE GREEK WORD MAY BE TRANSLATED INTO THE SAME ENGLISH WORD, AND THE GREEK +WORDS MAY HAVE DIFFERENT SHADES OF MEANING.

+
+

+Example 1A

+

Jn.20:17 "Touch me not" (KJV) sounds harsh, doesn't it? Sounds like Jesus doesn't want +to be touched now that He is risen, that He is too holy or something. But that doesn't seem right, so let's look +it up in Spiros Zodhiates' The Complete Word Study New Testament (AMG Publishers, 1991).

+

Definition: Turning to John 20:17, above the word "Touch" we see "pim680." The letters +give us a code for the part of speech, and the number refers to Strong's dictionary reference. Let's look up +the definition (p. 879). "680. Haptomai; from hapto (681), touch. Refers to such handling of an object as to exert a modifying +influence upon it... Distinguished from pselaphao (5584), which actually only means to touch the surface of something. " Now look +up "pim." The grammar codes in Zodhiates come right after Revelation; on p. 849 we see that pim stands for +"present imperative active (80)". On p.857, "Present Imperative. In the active voice, it may indicate a command to do +something in the future which involves continuous or repeated action or, when it is negated, a command to stop doing something. " This +is a negative command, so it is to stop doing something that is already occuring. So, what have we found?

+

MARY IS ALREADY CLINGING TO JESUS, AND HE IS SAYING TO STOP HOLDING HIM!

+
+
+

+Ex. 1B

+

In James 5:14, Elders are told to pray and anoint someone who is sick. What is this anointing?

+

Definition of aleipho (218) - "to oil" (Strong's); but we also have another Greek word translated +"anoint", chrio (5548) - "to smear or rub with oil, i.e. to consecrate to an office or religious service" (Strong's). + Since it's a verb, consider the tense also, "apta" aorist participle active. "The aorist participle expresses simple action, +as opposed to continuous action...When its relaitonship to the main verb is temporal, it usually signifies action prior to that of the main +verb." (Zodhiates p.851)

+
+Cross-references for aleipho:
+  Mt.6:17 But you, when you fast, anoint your head
+  Mk.16:1 [the women] brought spices that they might come and anoint Him.
+  Mk.6:13 And they were...anointing with oil many sick people and healing them.
+  Lk.7:38 ...kissing His feet and anointing them with the perfume
+  Jn.12:3 Mary...anointed the feet of Jesus, and wiped them with her hair
+Cross-references of chrio:
+  Lk.4:18 The Spirit of the Lord is upon me, because He has anointed me to preach..."
+  Acts 4:27 Jesus, whom Thou hast anointed
+  Acts 10:38 God anointed Jesus with the Holy Ghost and power
+  2 Cor.1:21 Now He who...anointed us is God
+
+

So what's the difference between aleipho and chrio? Look back over the cross-references and the +definitions, and sum up the difference: ALEIPHO IS A PRACTICAL USE OF OIL AND CHRIO IS A SPIRITUAL

+

As an illustration (although the word is not used) of the practical use of oil at that time, when the good +Samaritan cared for the man beat up by robbers he poured oil and wine in the wound. So oil had a medicinal +use in Jesus' day. +

+

Now let's apply what we just learned by this word study to James 5:14 "Is any among you sick? Let +him call for the elders of the church; and let them pray over him, anointing him with oil in the name of the +Lord." Is "anointing" spiritual or practical? Practical!

+

+And the tense in Greek, the aorist participle, would +be better translated "having anointed," so the order is the anointing first, then the prayer ("in the name of the +Lord"refers to the prayer, not the anointing). James 5 is saying that the elders should give the sick person +medicine and pray for him in the name of the Lord. Doesn't that express a beautiful balance of practical and +spiritual in our God! +

+
+
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/html/index.html b/bibletime-doc/docs/en/howto/html/index.html new file mode 100644 index 0000000..0adcb90 --- /dev/null +++ b/bibletime-doc/docs/en/howto/html/index.html @@ -0,0 +1,211 @@ + + +The Biblestudy HowTo + + + + + + + + + +

The Biblestudy HowTo

+ +
+
+

+The Biblestudy HowTo

+

Bob Harman

+
Revision 1.01.00
+
+
+
+
+

+This the copyright of this text is held by the author Bob Harman. The text was adapted for +publication with Bibletime by Fred Saalbach.

+

Non exclusive serial rights for this distribution of +this document with the Bibletime Software have been made. Redistribution as part +of the Bibletime software without modification and limited reproduction +as provided by the "fair use" provisions of the US copyright code are +also permitted.

+

For questions regarding the use of this +material contact Bob Harman c/o New Covenant Church 1079 Big Bethel Rd. Hampton +VA 23666 USA <N_Cov_Church@compuserve.com> +

+

Scripture quotes are from the New American Standard Bible unless otherwise indicated

+
+
+

+Abstract +

+

+The Biblestudy HowTo is a guide for studying the Bible. +

+

It is the hope of the Bibletime team that this HowTo will provoke the +readers to study the scriptures to see what they say. This +particular study guide has been chosen as it takes care not to +advocate any particular denominational doctrine. We expect you to read +and study the scriptures to understand what they say. If you start +with the attitude that you want to have the Lord sow his word in your +heart He will not disappoint you.

+
+
+
+ + +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/howto/unicode/Makefile.am b/bibletime-doc/docs/en/howto/unicode/Makefile.am new file mode 100644 index 0000000..300f0ce --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/howto; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + else \ + ln -sf ../../../en/bibletime/howto/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common; diff --git a/bibletime-doc/docs/en/howto/unicode/Makefile.in b/bibletime-doc/docs/en/howto/unicode/Makefile.in new file mode 100644 index 0000000..3c22d48 --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/howto/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/howto/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/howto; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + else \ + ln -sf ../../../en/bibletime/howto/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in how2-basics.docbook how2-importance.docbook how2-interpretation.docbook index.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/howto/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/howto/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/howto/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/howto/unicode/how2-basics.docbook b/bibletime-doc/docs/en/howto/unicode/how2-basics.docbook new file mode 100644 index 0000000..63ab544 --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/how2-basics.docbook @@ -0,0 +1,179 @@ +Bible Study Basics + +
+Our Purpose as we Approach the Bible + +Jn.5:39-40"You search the Scriptures, because you think that +in them you have eternal life; and it is these that bear witness of Me; and you +are unwilling to come to Me, that you may have life." + + +The chief purpose of the book is to bring us to the Person. Martin Luther +said "we go to the cradle only for the sake of the baby"; just so +in Bible study, we do it not for its own sake but for fellowship with God. + +
John R.W. Stott, Christ the +Controversialist, InterVarsity Press 1978, pp.97, 104. +The Jews to whom Jesus spoke... imagined that to possess Scripture was +tantamount to possessing life. Hillel used to say, "He who has gotten to +himself words of Torah has gotten to himself the life of the world to +come." Their study was an end in itself. In this they were grievously +deceived. ... +There is neither merit nor profit in the reading of +Scripture for its own sake, but only if it effectively introduces us to Jesus +Christ. Whenever the Bible is read, what is needed is an eager expectation that +through it we may meet Christ.
+
+ +
+Approaches to God's Word +Hearing and reading provide a telescopic view of the scripture while study +and memorization provide a microscopic view of scripture. Meditating on the +scriptures brings hearing, reading, studying and memorization together and +cements the word in our minds. + +
+Hear +Lk.11:28 "blessed are those who hear the word of God, and +observe it." +
+ +
+Read Rev.1:3 +"Blessed is he who reads and those who hear the words of this +prophecy..." +1 Tim.4:13 "give +attention to the public reading of Scripture..." +
+ +
Study +Acts 17:11 "Now these were more noble-minded than those in +Thessalonica, for they received the word with great eagerness, examining the +Scriptures daily, to see whether these things were so." +2 Tim.2:15 "Be diligent [KJV `Study'] to present yourself +approved to God as a workman who does not need to be ashamed, handling +accurately the word of truth." +
+ +
+Memorize +Ps.119:11 "Thy word I have hid in my heart, that I may not +sin against Thee."
+ +
Meditate +Ps.1:2-3 "But his delight is in the law of the Lord, And +in His law he meditates day and night. And he will be like a tree firmly planted +by streams of water, Which yields its fruit in its season, And its leaf does not +wither; And in whatever he does, he prospers." +The Navigators illustrate this by saying that as the thumb can touch all +the fingers, we can meditate on the Word as we do any of the first four. +Meditation is a key to revelation. A new Christian needs to hear and read the +Bible more than they need to study and memorize it. This is so that they become +familiar with the overall message of the Bible.
+
+ +
Types of Bible Studies
Topical Study Pick out a certain +topic and follow it through, using cross-references or a +concordance. +
+ +
Character Study +Studying the life of a Bible character, e.g. Joseph's life in +Gen.37-50.
Expository Study Studying a +certain passage: paragraph, chapter, or book.
+
+ +
+Basics of Correct Interpretation + +
+Content +What does it say? What does it say in the original language? Be careful +with definitions. Don't read into it what it doesn't say.
+ +
Context +What do the verses around it say? "Context is king" is the rule -- the passage must make +sense within the structure of the entire passage and book. +
+ +
Cross-reference + What do other verses about this subject say through the rest of the Bible? God +doesn't contradict Himself, so our interpretation needs to stand the test of other scriptures. +
+
+ +
An Expository Study +of Matthew 6:1-18 +Let's study together Mt.6:1-18. Read it to yourself, first looking for the key verse, the verse that sums +up the whole passage. Think you have it? Test it by picking different places in the passage and asking yourself +if they relate to the thought of the key verse. Once you find it, write it as Roman numeral One of your outline: + +I. BEWARE OF PRACTICING YOUR RIGHTEOUSNESS BEFORE MEN TO BE NOTICED + +What does "practicing your righteousness" mean? Does the passage give any examples? What area +of our lives is being addressed? our motives! What sub-headings develop this thought? + + A. WHEN YOU GIVE + B. WHEN YOU FAST + C. WHEN YOU PRAY + +Now fill in the outline with specific instructions of how to avoid wrong ways of practicing our +righteousness: + + A. When you give + 1. DON'T SOUND A TRUMPET. (HOW MIGHT SOMEONE "SOUND A TRUMPET" TODAY?) + 2. DO IT SECRETLY. ETC. + +
+
Worksheet: How to Use a Concordance + +
To Find a Particular Verse + +Pick out a key word or most-unusual word of the verse. +Turn to this word alphabetically. + Go down the column of listings until you find your verse. + + + Find these verses: + "Faithful are the wounds of a friend." + "We are ambassadors of Christ." + The story of the rich man and Lazarus. + +
+ +
To Do a Topical Study +Let's say you wanted to do a study of the word "redemption." First you would look up that word in the +concordance and look up references listed for it. Then you could look up related words and references listed for them, e.g. +"redeem, redeemed, ransom," even "buy" or "bought." +
+ + +
To Clarify Word Meanings in the Greek and Hebrew +What if you noticed a contradiction in the KJV between Mt.7:1 "Judge not lest you be judged" and 1 Cor.2:15 +"He that is spiritual judgeth all things." Maybe there are two different Greek words here, both being translated "judge" in +English? (We're using Strong's from here out.) + +Look up "judge." +Go down the column of entries to Mt.7:1. To the right is a number, 2919. This refers to the Greek word used. + Write it down. +Now look up "judgeth." +Go down the column to 1 Cor.2:15 . . . . . 350. +Turn in the back to the Greek dictionary. (Remember, you're in the NT so the language is Greek, while the +OT is Hebrew.) Compare the meaning of 2919 with the meaning of 350 and you have your answer! + +
+ +
To Find Meanings of Names +By the same process we can find the meaning of a name in the Greek or Hebrew. +Look up these names and write down their meaning: + +Nabal +Abigail +Joshua +Barnabus + + +
+
diff --git a/bibletime-doc/docs/en/howto/unicode/how2-importance.docbook b/bibletime-doc/docs/en/howto/unicode/how2-importance.docbook new file mode 100644 index 0000000..0791191 --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/how2-importance.docbook @@ -0,0 +1,309 @@ +Importance of God's Word +Understanding God's word is of great importance to all who call on +God's name. Study of the Bible is one of the primary ways that we learn to +communicate with God. + +
A Book that is +Unique + +The Bible stands alone in many ways. It is unique in: + + + + +popularity. Bible sales in North America: more than $500 million per +year. The Bible is both the the all-time and year-to-year best seller! + + + + +authorship. It was written over a period of 1600 years by 40 different +authors from different backgrounds, yet reads as if written by one. + + + + +preservation. F. F. Bruce in Are New Testament Documents Reliable? +compares New Testament manuscripts with other ancient texts: + + + + +Comparison of New Testament manuscripts with other ancient texts. + + + +Work +When Written +Earliest Copy +Time LapseNumber of Copies + + + +Herodotus +448-428 B.C.900 A.D. +1300 years8 + + +Tacitus +100 A.D.1100 A.D. +1000 years20 + + +Caesar's Gallic War +50-58 B.C.900 A.D. +950 years10 + + +Livy's Roman History +59 B.C. - 17 A.D.900 A.D. +900 years20 + + +New Testament +40 A.D. - 100 A.D.130 A.D. Partial manuscripts 350 +A.D. Full manuscripts 30 - 310 years5000 Greek & 10,000 Latin + +
+Ten copies of Caesar's Gallic War exist, the earliest of which was copied +900 years after Caesar wrote the original, etc. For the New Testament we have +full manuscripts dating to 350 A. D., papyri containing most of the New +Testament from the 200s, and a fragment of John's gospel from 130 A. D. How +many manuscripts do we have to compare to each other? 5,000 in Greek and 10,000 +in Latin! +
Textual critic F. J. A. Hort, "The New Testament in the +Original Greek", vol. 1 p561, Macmillan Co., quoted in Questions of Life p. +25-26"In the verity and fullness of the evidence on which +it rests, the text of the New Testament stands absolutely and unapproachably +alone among other ancient prose writings."
+ +
+
A Book that God Breathed +Heb.4:12 "For the word of God is living and active... +" Jesus said (Mt.4:4), +"It is written, Man shall not live on bread alone, but on every word that +proceeds [lit., is proceeding] from the mouth of God." +As we read the Bible, God's Spirit is there to speak it to our hearts in a continually-fresh way. + +2 Tim.3:16 declares, "All scripture is inspired by God [lit., +God-breathed]." Do you believe this? Before you answer, consider Jesus' attitude +toward the Scriptures. +
John R.W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.93-95 He referred to the human authors, but took it for +granted that behind them all was a single divine Author. He could equally say +'Moses said' or 'God said' (Mk.7:10). He could quote a comment of the narrator in +Genesis 2:24 as an utterance of the Creator Himself (Mt.19:4-5). Similarly He +said, 'Well did Isaiah prophesy of you hypocrites, as it is written', when what He +went on to quote is the direct speech of the Lord God (Mk.7:6 & Is.29:13). It +is from Jesus Himself that the New Testament authors have gained their +conviction of the dual authorship of Scripture. For them it was just as true to +say that 'God spoke of old to our fathers by the prophets' (Heb.1:1) as it was to +say that 'men moved by the Holy Spirit spoke from God' (2 Pe.1:21). God did not +speak in such a way as to obliterate the personality of the human authors, nor +did men speak in such a way as to corrupt the Word of the divine Author. God +spoke. Men spoke. Neither truth must be allowed to detract from the other. ... + + +This, then, was Christ's view of the Scriptures. Their witness was God's +witness. The testimony of the Bible is the testimony of God. And the chief +reason why the Christian believes in the divine origin of the Bible is that +Jesus Christ Himself taught it.
+ +2 Tim.3:16 goes on, "and profitable for teaching, for +correction, for training in righteousness, that the man of God may be adequate, +equipped for every good work." If we accept that the Bible really is God +speaking to us, it follows that it will be our authority in all matters of faith +and conduct. +
+
A Book that Works + +What will studying the Bible do for you? 1 Thess.2:13 says that the Bible +"performs its work in you +who believe." Beside each scripture, write down the work the Word +performs. + + +What does Bible study do for Christians? + + + +Reference +Action + + + + +Eph. 5:26 + +cleanses -- "...having cleansed her by the washing of water with the word." + + + + +Acts 20:32 + + +builds up -- +" +...the word of His grace, which is able to build you up and to give you the +inheritance among all those who are sanctified. +" + + + + +Rom. 15:4 + + +encourages -- "that through perseverance and the +encouragement of the Scriptures we might have hope." + + + + + +Rom. 10:17 + + +gives faith -- +"So faith comes from hearing, and hearing by the word of +Christ." + + + + + +1 Cor. 10:11 + + +instructs -- +"Now these things happened to them for an example, +and they were written for our instruction" + + + + + +Mt. 4:4 + + +nourishment -- +"But He answered and said, 'It is written, Man shall not live on bread alone, +but on every word that proceeds out of the +mouth of God.'" + + + + +
+ +
+
A Book that Liberates + +Jn.8:32 "and you shall know the truth, and the truth shall make you +free."This is usually quoted by +itself. Is this a conditional or unconditional promise? Would it apply to +all kinds of knowledge? Find the answers by examining the first half of the +sentence, in v.31. "If you abide in My word, then you are truly disciples of +Mine... " +We see that this is a conditional promice, specifically speaking of the truth of God's word. + +The Greek word for "wind" used in Eph.4:14 means a violent wind. +"As a result, we are no longer to be children, tossed here and there by +waves, and carried about by every wind of doctrine..."One +thing studying the Bible does for us is to ground us in the truth, with the +result that we won't be easily "blown away." + +But Jesus answered and said to them, "You are mistaken [KJV Ye do err], not +understanding the Scriptures, or the power of God."Mt.22:29 +What 2 things do we need to know to be kept from error? + +God's word +God's power + +
+
A Book that Wars + +Eph.6:10-18 is one picture of our spiritual armament. + +Spiritual Armor + + + +Question +Answer + + +How many of the weapons listed here are defensive weapons?5 +How many are offensive?One +Which one(s)? the word - rhema +
+
+
Exhortations + +2 Tim.2:15 (KJV) "Study to show thyself approved unto God, a workman that needeth not to be ashamed, rightly +dividing the word of truth." + + +Col.3:16 "Let the word of Christ richly dwell within you; with all wisdom teaching and admonishing one another +with psalms and hymns and spiritual songs, singing with thankfulness in your hearts to God." + + +If you're rich in something, how much of it do you +have? + +Not a little! + + +Eccl.12:11 "The words of wise men are like goads, and masters of these +collections are like well-driven nails; they are given by one Shepherd. But +beyond this, my son, be warned: the writing of many books is endless, and +excessive devotion to books is wearying to the body." +
+ +
Appendix: "Once for +All" +
+John R. W. Stott, Christ the Controversialist, +InterVarsity Press 1978, pp.106-107 The truth regarding the +finality of God's initiative in Christ is conveyed by one word of the Greek +Testament, namely the adverb hapax and +ephapax. It is usually translated in the +Authorized Version once, meaning once for all. It is used of what is so done as +to be of perpetual validity and never need repetition, and is applied in the NT +to both revelation and redemption. Thus, Jude refers to the faith which was +once for all delivered to the saints (Jude 3), and Romans says, +"Christ also died for sins once for all" +(Rom.6:10, see also 1 Pe.3:18; Heb.9:26-28). +Thus we may say that God has spoken once +for all and Christ has suffered once for all. This means that the Christian +revelation and the Christian redemption are both alike in Christ complete. +Nothing can be added to either without being derogatory to Christ... These are +the two rocks on which the Protestant Reformation was built -- Gods revealed +word without the addition of human traditions and Christ's finished work without +the addition of human merits. The Reformers great watchwords were sola +scriptura for our authority and sola gratia for our salvation. +
+ +
+
Supplement: Bible Reading +Programs Here are some easy programs to systematically read your +Bible. You can do more than one at a time if you like, for instance #1 with #4, +or #2 with #5. Vary the program from year to year to keep it fresh! + + +New Testament in a Year: read one chapter each day, 5 days a +week. +Proverbs in a Month: read one chapter of Proverbs each day, +corresponding to the day of the month. +Psalms in a Month: read 5 Psalms at intervals of 30 each day, +for instance on the 20th you read Ps.20, 50, 80, 110, & 140. +Psalms & Proverbs in 6 months: read through Psalms and Proverbs +one chapter per day. +Old Testament without Psalms & Proverbs in 2 years: if +you read one chapter a day of the Old Testament, skipping over Psalms & Proverbs, you will read the Old Testament in 2 years and 2 weeks. + + +
+
+ diff --git a/bibletime-doc/docs/en/howto/unicode/how2-interpretation.docbook b/bibletime-doc/docs/en/howto/unicode/how2-interpretation.docbook new file mode 100644 index 0000000..0688a71 --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/how2-interpretation.docbook @@ -0,0 +1,197 @@ +Rules of Bible Interpretation (Hermeneutics) +We already learned about the "3 Cs": content, context, cross-reference. We want to expand that now by +delving briefly into biblical hermeneutics, whose goal is to discover the meaning intended by the original author (and +Author!). While many applications of a passage are valid, only one interpretation is valid. The scripture itself says +this by saying that no scripture is of any private interpretation (2 Pe.1:20 KJV "Knowing this first, that no +prophesy of scripture is of any private interpretation.") Certain rules are helps toward discovering the correct meaning; +by ignoring these rules people have brought much trouble on themselves and their followers. 2 Pe.3:16 "...in which are +some things hard to understand, which the untaught and unstable distort, as they do also the rest of the Scriptures, to +their own destruction." +How do we go about discovering the intended meaning of a passage? Let's say your attention has been +drawn to a particular verse whose meaning is not clear to you. How do you study it out? Keep these rules in mind: + +
Rule 1 - Interpret according to the exact +meaning of the words. +The more precise we can be with the exact, original meaning of the words the better our interpretation will be. +Try to find the exact meaning of the key words by following these steps: + +
Step 1) Definition +Look up the definition in a Greek or Hebrew dictionary. For verbs, the verb tense is also +crucial.
+ +
Step 2) Cross-reference +Compare scripture with scripture. Seeing how the same Greek or Hebrew word +(not the English word) is used in scripture may clarify or throw new light on the definition. How does the same author +use this word elsewhere? Other authors? Your reference tools may give you uses of the word in non-biblical +documents, as well. Why do we have to go to the original languages; why isn't the English word good enough? +BECAUSE MORE THAN ONE GREEK WORD MAY BE TRANSLATED INTO THE SAME ENGLISH WORD, AND THE GREEK +WORDS MAY HAVE DIFFERENT SHADES OF MEANING. + +
Example 1A +Jn.20:17 "Touch me not" (KJV) sounds harsh, doesn't it? Sounds like Jesus doesn't want +to be touched now that He is risen, that He is too holy or something. But that doesn't seem right, so let's look +it up in Spiros Zodhiates' The Complete Word Study New Testament (AMG Publishers, 1991). +Definition: Turning to John 20:17, above the word "Touch" we see "pim680." The letters +give us a code for the part of speech, and the number refers to Strong's dictionary reference. Let's look up +the definition (p. 879). "680. Haptomai; from hapto (681), touch. Refers to such handling of an object as to exert a modifying +influence upon it... Distinguished from pselaphao (5584), which actually only means to touch the surface of something. " Now look +up "pim." The grammar codes in Zodhiates come right after Revelation; on p. 849 we see that pim stands for +"present imperative active (80)". On p.857, "Present Imperative. In the active voice, it may indicate a command to do +something in the future which involves continuous or repeated action or, when it is negated, a command to stop doing something. " This +is a negative command, so it is to stop doing something that is already occuring. So, what have we found? +MARY IS ALREADY CLINGING TO JESUS, AND HE IS SAYING TO STOP HOLDING HIM! +
+ +
Ex. 1B +In James 5:14, Elders are told to pray and anoint someone who is sick. What is this anointing? +Definition of aleipho (218) - "to oil" (Strong's); but we also have another Greek word translated +"anoint", chrio (5548) - "to smear or rub with oil, i.e. to consecrate to an office or religious service" (Strong's). + Since it's a verb, consider the tense also, "apta" aorist participle active. "The aorist participle expresses simple action, +as opposed to continuous action...When its relaitonship to the main verb is temporal, it usually signifies action prior to that of the main +verb." (Zodhiates p.851) + + +Cross-references for aleipho: + Mt.6:17 But you, when you fast, anoint your head + Mk.16:1 [the women] brought spices that they might come and anoint Him. + Mk.6:13 And they were...anointing with oil many sick people and healing them. + Lk.7:38 ...kissing His feet and anointing them with the perfume + Jn.12:3 Mary...anointed the feet of Jesus, and wiped them with her hair +Cross-references of chrio: + Lk.4:18 The Spirit of the Lord is upon me, because He has anointed me to preach..." + Acts 4:27 Jesus, whom Thou hast anointed + Acts 10:38 God anointed Jesus with the Holy Ghost and power + 2 Cor.1:21 Now He who...anointed us is God + + +So what's the difference between aleipho and chrio? Look back over the cross-references and the +definitions, and sum up the difference: ALEIPHO IS A PRACTICAL USE OF OIL AND CHRIO IS A SPIRITUAL + +As an illustration (although the word is not used) of the practical use of oil at that time, when the good +Samaritan cared for the man beat up by robbers he poured oil and wine in the wound. So oil had a medicinal +use in Jesus' day. + +Now let's apply what we just learned by this word study to James 5:14 "Is any among you sick? Let +him call for the elders of the church; and let them pray over him, anointing him with oil in the name of the +Lord." Is "anointing" spiritual or practical? Practical! + +And the tense in Greek, the aorist participle, would +be better translated "having anointed," so the order is the anointing first, then the prayer ("in the name of the +Lord"refers to the prayer, not the anointing). James 5 is saying that the elders should give the sick person +medicine and pray for him in the name of the Lord. Doesn't that express a beautiful balance of practical and +spiritual in our God! + +
+
+
+ +
Rule 2 - Interpret within the biblical +context +Interpret scripture in harmony with other scripture. What do the +verses on each side say? What is the theme of the chapter? the book? Does your interpretation fit with these? If not, +it is flawed. Usually, the context supplies what we need to correctly interpret the passage. Context is key. If +confusion remains as to the meaning after we have interpreted the text within its context, we have to look further. + +
Example 2A +In a previous lesson we considered Jn.3:5 "born of water and the Spirit." In context, what is +the water under discussion here? +Water baptism is not under discussion here, which would be a big switch from the subject being +discussed by Jesus and Nicodemus. Watch out for a sudden change of topic, it may be a clue that your +interpretation has been derailed! The water is the amniotic fluid, "born of water" = natural birth. +
+
Example 2B +1 Cor.14:34 "Let the women keep silent in the churches" has to be taken within the biblical +context of 1 Cor.11:5 "every woman...while praying or prophesying..." +
+
Example 2C +Acts 2:38 And Peter said to them, "Repent, +and let each of you be baptized in the name of +Jesus Christ for the forgiveness of your sins..." Is this teaching baptismal regeneration? If this was the +only verse of scripture we had, we would have to conclude that. But in the light of the clear teaching +elsewhere that regeneration happens by faith in Christ, we have to interpret it otherwise. Peter is urging +baptism as a way for his hearers to respond to the gospel. If baptism were the pathway to being born again, +how could Paul write 1 Cor.1:17 "For Christ did not send me to baptize, but to preach the gospel"? + +
+
+ +
+Rule 3 - Interpret within the historical and +cultural context + +At first we are not asking "What does it mean to +me?" but "What did it mean to the original readers?"; later we can ask, "What does it mean to me?" We have to take +into account the historical and cultural background of the author and the recipients. + +
Example 3A "3 days & 3 nights" (Mt.12:40) have +led some to come up with a "Wednesday crucifixion +theory," esp. the cult of Armstrongism. How could Jesus die on Friday afternoon and rise Sunday morning +yet "be raised on the third day" (Mt.16:21)? Exact meanings of "three" or "days" won't help explain the +apparent contradiction. +We need an historical tidbit: Jews counted any part of a day as a full day, as we would count buckets +of water (if there were six and one-half buckets of water, we would say there were 7 buckets of water even if one was only partly full). So to the Jewish +mind, any part of a day counted as a full day, and days started at 6 p.m. and ended at 6 a.m. Friday from 3 +p.m. to 6 p.m. = day 1. Friday 6 p.m. to Saturday 6 p.m. = day 2. Saturday 6 p.m. to Sunday 5 or so a.m. = +day 3. Interpreting within the cultural context keeps us out of trouble. +
+ +
Example 3BGen.15:7-21. The historical context +is that cutting animals in two and then walking between +the pieces was the normal way of entering a contract in Abraham's day. Both parties walked between, taking +the pledge that dismemberment would happen to them if they didn't live up to their part of the contract. But +in this case only God goes thru, making it a unilateral covenant. +
+
+ +
Rule 4 - Interpret according to the normal +usage of words in language +Let literal language be literal and +figurative language be figurative. And watch out for idioms, which have special meanings. + +
Example 4A"evil eye" in Mt.6:23. +Rule 1, definition of "evil" and "eye" - no help here. Rule 2, context: seems to confuse us even +more. It doesn't seem to fit with what goes before and after! This should tip us off that we aren't +understanding it rightly!! +What we have here is a Hebrew idiom, "evil eye." Let's look up other uses of this idiom: Mt.20:15 +"Is it not lawful for me to do what I wish with what is my own? Or is your eye envious [lit."evil"] because I +am generous [lit."good"]?" We find that having an "evil eye" is a Hebrew idiom for being stingy or envious. +Now go back to Mt.6 and notice how this understanding ties in so perfectly to the context. + +
Example 4B +Is.59:1 "The Lord's hand is not short;" Deut.33:27 "Underneath are the everlasting arms." +References to body parts of God are used by Latter-Day Saints to prove that God was once a man just as we +are. Once they convince people of that, they go on to teach that we can become God just like He is! At a +lecture he was giving, a group of Mormon elders challenged Walter Martin (author of Kingdom of the Cults) +with an enumeration of verses like these. Dr. Martin then asked the Mormons to read one more scripture: +Ps.91:4 "He will cover you with His feathers; And under His wings shalt thou trust." W.M. said, "By the same +rules of interpretation that you just proved God to be a man, you just proved that He is a bird." The Mormons +had to laugh as they realised the ridiculousness of their position. + +
+
+
+
Rule 5 - Understand the purpose of +parables and the difference between a parable and an allegory +An allegory is: A STORY WHERE EACH ELEMENT HAS A MEANING +Every parable is an allegory, true or false? + +Some parables are allegories, for instance, the parable of the sower is an allegory: the seed is the word of +God, the thorns are worries and greed, etc. But most parables are not allegories but simply stories to illustrate one +point. It's dangerous to get our doctrine from parables; they can be twisted to say all sorts of things. We need to get +our doctrine from clear scriptures that lay it out; then if a parable illustrates that, fine. + +
Example 5A +The parable of the widow with the unrighteous judge in Lk.18:1-8. This story illustrates one +lesson: boldness in prayer. If we draw it into an allegory, what do we have? +All sorts of violence happens to the meanings: God is reluctant to protect the rights of widows, prayer +"bothers" Him, etc.
+ +
Example 5B +The parable of the unrighteous steward in Lk.16:1-9. What is the point of the parable? Is it +an allegory? +The steward is commended for only one thing, his shrewdness in using what he had to prepare for a +time when he wouldn't have it. But he is not commended for his unethical behavior in cheating his master. +
+ +
+
diff --git a/bibletime-doc/docs/en/howto/unicode/index.docbook b/bibletime-doc/docs/en/howto/unicode/index.docbook new file mode 100644 index 0000000..056cbb6 --- /dev/null +++ b/bibletime-doc/docs/en/howto/unicode/index.docbook @@ -0,0 +1,108 @@ + +Bibletime'> + + + + + + + + + + +]> + + + + +The Biblestudy HowTo + + + +Bob +Harman + + + + + + +20012002 +The team of BibleTime, info@bibletime.de + +20012002 +Bob Harman + + + +This the copyright of this text is held by the author Bob Harman. The text was adapted for +publication with Bibletime by Fred Saalbach. + + Non exclusive serial rights for this distribution of +this document with the Bibletime Software have been made. Redistribution as part +of the Bibletime software without modification and limited reproduction +as provided by the "fair use" provisions of the US copyright code are +also permitted. + + For questions regarding the use of this +material contact Bob Harman c/o New Covenant Church 1079 Big Bethel Rd. Hampton +VA 23666 USA N_Cov_Church@compuserve.com + +Scripture quotes are from the New American Standard Bible unless otherwise indicated + + + +10/23/2001 +1.01.00 + + + +Abstract + +The Biblestudy HowTo is a guide for studying the Bible. + +It is the hope of the Bibletime team that this HowTo will provoke the +readers to study the scriptures to see what they say. This +particular study guide has been chosen as it takes care not to +advocate any particular denominational doctrine. We expect you to read +and study the scriptures to understand what they say. If you start +with the attitude that you want to have the Lord sow his word in your +heart He will not disappoint you. + + + +Bible +Study +HowTo + + + + +&how2-chap1; +&how2-chap2; +&how2-chap3; + + + + + + + + + + + + + + + + diff --git a/bibletime-doc/docs/en/install/Makefile.am b/bibletime-doc/docs/en/install/Makefile.am new file mode 100644 index 0000000..17d7a2a --- /dev/null +++ b/bibletime-doc/docs/en/install/Makefile.am @@ -0,0 +1,23 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SUBDIRS = html unicode + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + diff --git a/bibletime-doc/docs/en/install/Makefile.in b/bibletime-doc/docs/en/install/Makefile.in new file mode 100644 index 0000000..4cbbfde --- /dev/null +++ b/bibletime-doc/docs/en/install/Makefile.in @@ -0,0 +1,480 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = html unicode +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/install + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/install/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +pot-files: + for f in `ls unicode/*.docbook`; do \ + potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \ + potfile=`echo $$potfile | sed s/unicode//`; \ + echo "Calling xml2pot $$f > pot/$$potfile"; \ + xml2pot $$f > pot/$$potfile; \ + done; +html-files: + if test -e unicode/index.docbook; then \ + olddir=$$PWD; \ + cd html;\ + echo "Validating the XML files..."; \ + if meinproc ../unicode/index.docbook; then\ + echo "HTML files created successfully."; \ + fi; cd $$olddir; \ + fi; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/install/html/Makefile.am b/bibletime-doc/docs/en/install/html/Makefile.am new file mode 100644 index 0000000..06213c2 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = instmgr.png + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in instmgr.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in instmgr.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; diff --git a/bibletime-doc/docs/en/install/html/Makefile.in b/bibletime-doc/docs/en/install/html/Makefile.in new file mode 100644 index 0000000..87ccb9e --- /dev/null +++ b/bibletime-doc/docs/en/install/html/Makefile.in @@ -0,0 +1,390 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = instmgr.png +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=inst-user-source.html inst-preq.html instmgr-load.html installmgr.html inst-user.html inst-bin.html inst-user-troubleshooting.html installmgr-install.html instmgr-rep.html index.html inst-sources.html instmgr-cfg.html inst-preq-install.html inst-sources-bibletime.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/html/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/html/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/install/html + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/install/html/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in instmgr.png; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in instmgr.png; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/html/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/html/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/install/html/index.html b/bibletime-doc/docs/en/install/html/index.html new file mode 100644 index 0000000..82ef062 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/index.html @@ -0,0 +1,133 @@ + + +BibleTime Installation Guide + + + + + + + + + +

BibleTime Installation Guide

+ +
+
+

+BibleTime Installation Guide

+
+

Joachim Ansorg

+

Fred Saalbach

+

Jeffrey Hoyt

+
+
Revision 1.01.00
+
+
+
+

The bibletime installation guide is part of BibleTime. +

+

+BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. +

+
+
+

+BibleTime is an application to aid in study of the Bible. +

+
+
+
+ + +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-bin.html b/bibletime-doc/docs/en/install/html/inst-bin.html new file mode 100644 index 0000000..8bcd8a8 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-bin.html @@ -0,0 +1,93 @@ + + +Chapter 1. BibleTime Program Files + + + + + + + + + + + + +

BibleTime Program Files +

+ +
+

+Chapter 1. BibleTime Program Files +

+

Program files are provided in the following formats.

+
+

+Table 1.1. BibleTime Distribution Formats +

+ ++++ + + + + + + + + + + + + + + +
Format nameDescription
+RPM Packages. + +See the sourceforge BibleTime +home page for the distributions supported. +RPM packages are installed using any package manager or the RPM command line. +RPM Installation instructions are here. +
+Source code. + +The source code can be installed on any distribution meeting the installation prerequisites. +The source code should compile on non Intel™ platforms, and most UNIX® meeting the prerequisites. +Instructions for installation from sourcecode are here. +
+
+

+Language modules which contain the BibleTime handbook, Bible Study HowTo, Installation Instructions, +and the Help Dialog are provided seperately in RPM, and as tarball sources. The language modules contain +the documents in both HTML and XML™ Docbook format, so they can be viewed without the main BibleTime package.

+

Language modules are installed in the same way as the program modules

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-preq-install.html b/bibletime-doc/docs/en/install/html/inst-preq-install.html new file mode 100644 index 0000000..9edc9a9 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-preq-install.html @@ -0,0 +1,78 @@ + + +Installation of prerequisite programs + + + + + + + + + + + +

Installation of prerequisite programs

+ +
+

+Installation of prerequisite programs

+

Now download the prerequisites and compile the libraries

+

First you have to compile the QT 2.2.2 or QT 2.2.3 sources. I assume the +user has his QT sources in /usr/lib/qt2, his KDE2 sources +in /usr/src/kde2/kdelibs and his KDE2 directory is +/usr/local/kde2, if you don't like it use your own settings +for this.

+
+export QTDIR=/usr/lib/qt-2.2.2
+cd $QTDIR
+./configure -sm -system-libpng -system-jpeg
+make
+
+

+If you have enough RAM and a fast computer you can speedup the compile process +by adding "-j2" to the make options. For example +"make -j2". If you have a slow computer with little RAM +exit X windows and run make from a terminal to speed up the process. After the +compiling process is finished you have to compile your KDE2 stuff. Please do +something like this:

+
+export QTDIR=/usr/lib/qt-2.2.2
+export KDEDIR=/usr/local/kde2
+cd /usr/src/kde2/kdelibs
+./configure
+make
+make install
+
+

The compilation of QT and KDE should finish without problems or errors. +It's possible to add "-j2" again to speed up the compiling +process if you have enough RAM and a fast PC.

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-preq.html b/bibletime-doc/docs/en/install/html/inst-preq.html new file mode 100644 index 0000000..7d694bc --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-preq.html @@ -0,0 +1,98 @@ + + +Chapter 2. BibleTime Prerequisites + + + + + + + + + + + + +

BibleTime Prerequisites +

+ +
+

+Chapter 2. BibleTime Prerequisites +

+
+

+ Requirements for BibleTime 1.1

+

+All of the packages required for BibleTime to compile are included in the major +Linux® distributions. It is also possible to compile BibleTime on most other UNIX® +distributions. If you encounter compile errors, please read the messages, they +should lead you to missing packages which you will probably find on your +installation disks.

+

The following table contains the minimum requirements for BibleTime +binaries to run, or for the source version to compile.

+
+

+Table 2.1. +Packages required for installation of BibleTime 1.1 + +

+ ++++ + + + + + + + + + + + + + + + + + + +
PackageLocation
Qt™ 2.2.x + http://www.trolltech.com
KDE 2.x (at least the libraries) + http://www.kde.org
Sword 1.5.3 + +ftp://ftp.crosswire/pub/sword/source
+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-sources-bibletime.html b/bibletime-doc/docs/en/install/html/inst-sources-bibletime.html new file mode 100644 index 0000000..fec9822 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-sources-bibletime.html @@ -0,0 +1,76 @@ + + +Installing the Bibletime Source + + + + + + + + + + + +

Installing the Bibletime Source

+ +
+

+Installing the Bibletime Source

+

+First you have to unpack the downloaded .tar.gz file (if you are using the CVS +version, your sources will already be unpacked, so skip this step) to a +temporary directory. Do something like this:

+
+mkdir /tmp
+cd /tmp
+tar -xzf bibletime.tar.gz
+cd /tmp/bibletime
+
+

+(the tar file will have unpacked into a directory named something similar to +bibletime)

+

+Now open a terminal and execute the following commands to compile the +sources. +

+
+$ su
+$ password *****
+$ cd ./Develop/bibletime-2         # Path of source code
+$ export QTDIR=/usr/lib/qt-2.2.2   # QT 2.2.x source directory>
+$ export KDEDIR=/usr/local/kde2    # KDE2 directory (where KDE2 is installed)
+$ make -f Makefile.cvs             # configure for CVS version
+$ ./configure                      # create makefiles
+$ make                             # compile BibleTime
+$ make install                     # install BibleTime
+
+

Path to QTDIR and KDE2 may be different on your computer.

+

Now open a terminal as a normal user and type +/usr/local/kde2/bin/bibletime (if this is in your PATH, you +can type bibletime). Bibletime will start.

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-sources.html b/bibletime-doc/docs/en/install/html/inst-sources.html new file mode 100644 index 0000000..f125170 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-sources.html @@ -0,0 +1,257 @@ + + +Chapter 3. Installing BibleTime Sources + + + + + + + + + + + +

Installing BibleTime Sources

+ +
+

+Chapter 3. Installing BibleTime Sources

+

+This chapter describes how sources are compiled. These steps apply for both the +development version and the released version of BibleTime and Sword.

+
+

+Installation of Sword and the Sword +Modules

+

+Sword and Sword modules are the book library for BibleTime. +Please see the page download for further information about downloading BibleTime. +

+

+Have a look at the requirements page to obtain Sword. See page links to +obtain Sword's modules.

+
+

+Installation of SWORD +

+

+This page shows Sword 1.5.1a. For other versions of Sword, the file names +will be different.

+

+First you have to unpack the downloaded .tar.gz file (if you are using the CVS +version, your sources will already be unpacked, so skip this step) to a +temporary directory. Do something like this:

+
+mkdir /tmp
+cd /tmp
+tar -xzf sword-1.5.1a.tar.gz
+cd /tmp/sword-1.5.1a
+
+

+(the tar file will have unpacked into a directory named something similar to +sword-1.5.1a)

+

+Before you try to compile Sword, you may need to modify + Makefile.cfg (it is located in the top directory of the +unpacked sources). The customized section of Makefile.cfg +is marked, do not try to change parts of the file outside of the area marked +##### Customizable stuff. Set it how you like it ##### +unless you really know what you are doing.

+

+For many installations the defaults will work. When the defaults don't work, +these switches may be set.

+
+

+Table 3.1. Sword Makefile.cfg switches +

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SwitchDescription
# compilerIf you have gcc leave this alone, otherwise enter the compiler +you will be using.
# shared library-Set to 'yes'. this causes the shared library +libsord.so to be generated. An entry must be placed into +the file /etc/ld.so.conf that points to libsword. +/usr/local/sword/lib is typical. The shared +library is necessary for BibleTime to work, but Sword will compile without +errors if you don't do this. Be careful here.
# VCL library-Use the default 'no' unless you are using the Sword install +manager, then use 'yes'.
# Debugging options etc...The defaults should work.
# endian, etc. support for other hardwareUse the default if compiling on an Intel. If you have other +hardware, select the correct entry.
# zLib supportUse the default 'yes'
# pathsThe defaults are OK for most distributions, don't change them unless you know what you are doing. + +
+
+

Now start compiling.

+
+make
+su
+make install
+make configure
+
+

+In the event that make command reports an error on completion, it probably +indicates that you are missing a package. For example:

+
+bash-2.03# make
+make just-pre nodeps=yes
+make[1]: Entering directory `/bible/sword-1.5.1a'
+make -C src just-pre
+.
+.
+.
+make[1]: Entering directory `/bible/sword-1.5.1a/include'
+make[1]: Nothing to be done for `just-targets'.
+make[1]: Leaving directory `/bible/sword-1.5.1a/include'
+make -C apps/X11/VCL just-targets
+make[1]: Entering directory `/bible/sword-1.5.1a/apps/X11/VCL'
+gcc -I../../../include/ -D_GNU_SOURCE -I. `gtk-config --cflags` -static -pipe -Wall -Wno-format
+-fomit-frame-pointer -ggdb -O0 -m486 -c -o TWinControl.o TWinControl.cpp
+/bin/sh: gtk-config: command not found 
+In file included from TWinControl.cpp:1:
+TWinControl.h:6: gtk/gtkwidget.h: No such file or directory
+TWinControl.cpp:3: gtk/gtkwidget.h: No such file or directory 
+In file included from TWinControl.cpp:1:
+TWinControl.h:281: syntax error before `*'
+TWinControl.h:284: parse error before `*'
+TWinControl.cpp:10: parse error before `*'
+make[1]: *** [TWinControl.o] Error 1
+make[1]: Leaving directory `/bible/sword-1.5.1a/apps/X11/VCL'
+make: *** [apps/X11/VCL/targets] Error 2
+bash-2.03#
+
+

The italic lines above indicate that a gtk application was missing. A +review of the available packages showed that one of the gtk packages +supplied with SuSE is gtkdev. This turns out to be the application required to +allow make to run to completion without errors. Often missing packages +will be found on your installation disks, or on your distribution's website. +Once make runs to completion without errors, then +make install. If it still doesn't work, edit the +file Makefile.cfg in the top directory of the SWORD sources +and change the line buildvcl := yes to buildvcl +:= no and try again. +

+
+
+

+Installation of modules

+

Sword currently supports 3 types of modules: Bibles, dictionaries and +commentaries. In order for Sword and BibleTime to be useful these modules must be installed. +

+

+Sword modules can be installed manually or with +Sword Installmgr. +Sword Installmgr is provided as part of the Sword package. The directions for compiling and installing +Sword Installmgr can be found in the section +How to install and use Sword Installmgr +or in the Sword source at /sword/apps/X11/InstallMgr/INSTALL.

+
+

+Choose a Sword directory

+

+Sword currently supports 3 types of modules: Bibles, dictionaries and +commentaries. You have to install the files of the modules their own directory. +You must decide which directory will be your Sword directory. If you installed +the libs and includes in an extra directory use that directory as your Sword +directory (e.g. /usr/local/sword/). If you installed the +library and include files in a common place like +/usr/local/ please select another location for your Sword +directory.

+
+
+

+ +Unpack the downloaded package

+

+First you have to unpack the downloaded package. On the download page of Sword +you can choose if you want to get a Windows® or RAW package. If you have a "Linux® +only" box please get the RAW packages. But if you accidentally get a Windows® +self extracting executable try using WINE to extract the files. Perhaps you have +to change the filename of _INSTALL.1 to +_install.1 to get the setup running. +

+
+
+

+ +Integrating modules

+

+Create the directory mods.d inside of your Sword directory. +Please copy the file [modulename].conf into the +mods.d directory. the .conf file is +normally inside the unpacked module files. Now move the whole dir /modules +which contains your unpacked module data files to the Sword directory. In the +example /usr/local/sword/share is the SWORD directory.

+

Directory Structure looks like this: +

+
+/usr/local/sword/share/ -|- mods.d/ -|- module_1_name.conf
+                         |           |- module_2_name.conf
+                         |
+                         |- texts/rawtext/ -|-module_1_name/files
+                                            |-module_2_name/files
+
+
+
+
+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-user-source.html b/bibletime-doc/docs/en/install/html/inst-user-source.html new file mode 100644 index 0000000..6321468 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-user-source.html @@ -0,0 +1,63 @@ + + +Source + + + + + + + + + + + +

Source

+ +
+

+Source

+

+Source tarballs need to be uncompressed (Archiver or similar). Then try: + +

+export QTDIR=/usr/lib
+export KDEDIR=/usr
+export PATH=$KDEDIR/bin:$PATH
+./configure				# create makefiles
+make					# compile BibleTime
+make install				# install BibleTime
+
+The location QTDIR is the directory contining the Qt™ 2 directory. +The location KDEDIR is the folder containing the /bin directory containing the KDE executables. +The above locations apply to Mandrake™. Your distribution may require different locations. +

+

+Additional information can be found in the sourcecode at +bibletime/INSTALL. +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-user-troubleshooting.html b/bibletime-doc/docs/en/install/html/inst-user-troubleshooting.html new file mode 100644 index 0000000..11dc06f --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-user-troubleshooting.html @@ -0,0 +1,53 @@ + + +Troubleshooting + + + + + + + + + + + +

Troubleshooting

+ +
+

+Troubleshooting

+

+www.bibletime.de has all the +answers. Please look there. :-) +

+

+Don't forget to read the FAQ and the installation instructions on +www.bibletime.de. If you downloaded the sourcecode please do also read the file +README and INSTALL included in the sourcecode package. +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/inst-user.html b/bibletime-doc/docs/en/install/html/inst-user.html new file mode 100644 index 0000000..acfc0f1 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/inst-user.html @@ -0,0 +1,53 @@ + + +Chapter 4. Installation of BibleTime + + + + + + + + + + + +

Installation of BibleTime

+ +
+

+Chapter 4. Installation of BibleTime

+
+

+RPM Installation

+

+If you are installing BibleTime RPM, just open your package manager (rpm, KPackage, or similar) +and install in the normal way. +

+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/installmgr-install.html b/bibletime-doc/docs/en/install/html/installmgr-install.html new file mode 100644 index 0000000..d9101a3 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/installmgr-install.html @@ -0,0 +1,100 @@ + + +Sword Installmgr + + + + + + + + + + + +

Sword Installmgr

+ +
+

+Sword Installmgr

+

To compile Sword Installmgr first Sword must have been compiled. + See the instructions for + Sword. +

+

Find the file libsword.so, Sword probably installed it to + /usr/local/sword/lib unless you customized the installation. +

+

+ In order that Sword Installmgr (and also BibleTime) can find this shared library + open a text editor and add /usr/local/sword/lib to the + end of /etc/ld.so.conf. +

+

+ Now you are ready to compile Sword Installmgr. +

+

+ CD to your Sword source and open the directory + .../sword/apps/X11/InstallMgr. + Now in a shell do: +

+
+	ldconfig
+	./configure
+	make
+	su
+	make install
+	
+

+ Now in a shell as root (su) you can run installmgr by typing + /usr/local/bin/installmgr. +

+

+ If this was successful, there are two options for loading + text modules into Sword. +

+
    +
  • + + Options -> Manage remote sources -- Connect to Crosswire by modem and download + sword documents and modules from the crosswire repository. This is a feature that has not yet been ported to + Linux® and UNIX®. +

  • +
  • + + Options -> Local Path -- If you have unzipped sources, point this to your local + module repository. The local repository may be on a local or networked hard drive, or + the Sword CD mounted on a local or networked CD ROM drive. + All of the available modules will be displayed, and + may now be installed. +

  • +
+

+ Sword CD's can be obtained from the + Crosswire Bible Society +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/installmgr.html b/bibletime-doc/docs/en/install/html/installmgr.html new file mode 100644 index 0000000..dc07129 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/installmgr.html @@ -0,0 +1,98 @@ + + +Chapter 5. How to install and use Sword Installmgr + + + + + + + + + + + +

How to install and use Sword Installmgr

+ +
+

+Chapter 5. How to install and use Sword Installmgr

+

Sword Installmgr is not provided with the BibleTime .rpm. You need to download the +source tarball from the Crosswire Bible Society. +A precompiled copy of Sword Installmgr is included on the Sword CD which can be obtained +from the Crosswire Bible Society +

+
+

+ Requirements for Sword Installmgr

+

+ All of the packages required for Sword Installmgr to compile are included in the major + Linux® distributions. It is also possible to compile Sword Installmgr on most UNIX® + distributions. If you encounter compile errors, please read the messages, they + should lead you to missing packages which you will probably find on your + installation disks.

+

The following table contains the minimum requirements for Sword Installmgr + binaries to run, or for the source version to compile.

+
+

+Table 5.0. + Packages required for Sword Installmgr + +

+ ++++ + + + + + + + + + + + + + + +
PackageLocation
Sword + Use the version provided with your copy of Sword. Must be configured + (in the file ~/sword/Makefile.cfg) with the VCL libraries = yes +
+ GTK + + If you are compiling Sword Installmgr, any version of GTK should work. +
+
+
+ +
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/instmgr-cfg.html b/bibletime-doc/docs/en/install/html/instmgr-cfg.html new file mode 100644 index 0000000..feeb866 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/instmgr-cfg.html @@ -0,0 +1,50 @@ + + +Setting up the Sword configuration file. + + + + + + + + + + + +

Setting up the Sword configuration file.

+ +
+

+Setting up the Sword configuration file.

+

+ Instructions for the Sword configuration file can be found in the section + "The Sword configuration + file" which covers the manual installation of the Sword modules. +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/instmgr-load.html b/bibletime-doc/docs/en/install/html/instmgr-load.html new file mode 100644 index 0000000..66aa000 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/instmgr-load.html @@ -0,0 +1,63 @@ + + +Using Sword Installmgr to load sword modules. + + + + + + + + + + +

Using Sword Installmgr to load sword modules.

+ +
+

+Using Sword Installmgr to load sword modules.

+

+ You must start Sword Installmgr as root for it to be able to load modules. + Start it with these commands: +

+
+	[me@localhost user]$ su
+	Password:
+	[root@localhost user]# /usr/local/bin/installmgr
+	
+

+ You will now see the installmgr window. You will need to use + options>local path to point to your local module repository. +

+

+ Now the available modules will be shown on the left pane and + the installed modules on the right. All you need to do is + select modules in the left pane and click install to make them + available to Sword and BibleTime. +

Sword Installmgr screenshot
+

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/instmgr-rep.html b/bibletime-doc/docs/en/install/html/instmgr-rep.html new file mode 100644 index 0000000..004e1e7 --- /dev/null +++ b/bibletime-doc/docs/en/install/html/instmgr-rep.html @@ -0,0 +1,65 @@ + + +Setting up your repository + + + + + + + + + + + +

Setting up your repository

+ +
+

+Setting up your repository

+

If you have the Sword CD, you can skip this step. The texts are stored on the CD + uncompressed, and are accessed directly from installmgr under the manage remote sources tab. +

+

+ Download modules from Crosswire Bible Society + use the zipped up modules (modulename.zip), + not the windows executable compressed files (modulename.exe). +

+

+ Create a directory for your module repository, $HOME/sword_modules + for example. +

+

+ Open a program that can uncompress zip files. Such as gnozup or archiver. Command line + tools can also be used, to find which ones are installed on your system do a man -k zip +

+

+ Use your unzipping program to extract the module files into $HOME/sword_modules. + All of the files will be placed into the correct subdirectories. If you wish to add modules later + remember to unzip to $HOME/sword_modules. +

+
+
+KDE Logo +
+ + \ No newline at end of file diff --git a/bibletime-doc/docs/en/install/html/instmgr.png b/bibletime-doc/docs/en/install/html/instmgr.png new file mode 100644 index 0000000000000000000000000000000000000000..11c577aa0be0c8a5b3c111edccfa0ccc67171679 GIT binary patch literal 22187 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 H+l2iKQZ-Y~ literal 0 HcmV?d00001 diff --git a/bibletime-doc/docs/en/install/unicode/Makefile.am b/bibletime-doc/docs/en/install/unicode/Makefile.am new file mode 100644 index 0000000..0d69a3b --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/Makefile.am @@ -0,0 +1,31 @@ +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +EXTRA_DIST = index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; diff --git a/bibletime-doc/docs/en/install/unicode/Makefile.in b/bibletime-doc/docs/en/install/unicode/Makefile.in new file mode 100644 index 0000000..3e8922b --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/Makefile.in @@ -0,0 +1,385 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/unicode/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/unicode/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = docs/en/install/unicode + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/en/install/unicode/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +install-data-local: + mkdir -p $(DESTDIR)$(kde_htmldir)/en/bibletime/install/; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime; + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + if test -e $$file; then \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install; \ + chmod a+r $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + else \ + ln -sf ../../../en/bibletime/install/$$file $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + fi; \ + done; + if test -d $(DESTDIR)$(kde_htmldir)/en/bibletime/install/../../common; then \ + ln -sf ../../common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + else \ + ln -sf ../../../en/common $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common;\ + fi; + chmod -R a+r+X $(DESTDIR)$(kde_htmldir)/en/bibletime + +uninstall-local: + for file in index.docbook inst-bin.docbook inst-installmgr.docbook inst-preq.docbook inst-sources.docbook inst-user.docbook; do \ + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/$$file; \ + done; + echo Removing $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + rm -f $(DESTDIR)$(kde_htmldir)/en/bibletime/install/common; + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/en/install/unicode/Makefile + cd $(top_srcdir) && perl admin/am_edit docs/en/install/unicode/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/docs/en/install/unicode/index.docbook b/bibletime-doc/docs/en/install/unicode/index.docbook new file mode 100644 index 0000000..ce75161 --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/index.docbook @@ -0,0 +1,135 @@ + +BibleTime'> + + + + + + + BibleTime'> + Sword'> + Sword Installmgr'> + Crosswire Bible Society'> + + + + + + + + +]> + + + + + + + + + +BibleTime Installation Guide + + + +Joachim +Ansorg + + +Fred + +Saalbach + + +Jeffrey +Hoyt + + + + + + +1999 +2000 +2001 +The team of BibleTime, info@bibletime.de + + + + +The bibletime installation guide is part of BibleTime. + + + +BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA. + + + +10/23/2001 +1.01.00 + + + +&bibletime; is an application to aid in study of the Bible. + + + + +KDE +bibletime +BibleTime +sword +crosswire +help dialog + + + + +&instchap1; +&instchap2; +&instchap3; +&instchap4; +&appa; + + + + + + + + + + + + + + + + + diff --git a/bibletime-doc/docs/en/install/unicode/inst-bin.docbook b/bibletime-doc/docs/en/install/unicode/inst-bin.docbook new file mode 100644 index 0000000..10ea695 --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/inst-bin.docbook @@ -0,0 +1,51 @@ + +&bibletime; Program Files + +Program files are provided in the following formats. + + + &bibletime; Distribution Formats + + + + Format name + Description + + + + + +RPM Packages. + + + +See the sourceforge &bibletime; +home page for the distributions supported. +RPM packages are installed using any package manager or the RPM command line. +RPM Installation instructions are here. + + + + + +Source code. + + + +The source code can be installed on any distribution meeting the installation prerequisites. +The source code should compile on non Intel platforms, and most &UNIX; meeting the prerequisites. +Instructions for installation from sourcecode are here. + + + + + +
+ +Language modules which contain the &bibletime; handbook, Bible Study HowTo, Installation Instructions, +and the Help Dialog are provided seperately in RPM, and as tarball sources. The language modules contain +the documents in both HTML and &XML; Docbook format, so they can be viewed without the main &bibletime; package. +Language modules are installed in the same way as the program modules + +
+ diff --git a/bibletime-doc/docs/en/install/unicode/inst-installmgr.docbook b/bibletime-doc/docs/en/install/unicode/inst-installmgr.docbook new file mode 100644 index 0000000..3d7acd5 --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/inst-installmgr.docbook @@ -0,0 +1,190 @@ + +How to install and use &swordInstmgr; +&swordInstmgr; is not provided with the &bibletime; .rpm. You need to download the +source tarball from the &crosswire;. +A precompiled copy of &swordInstmgr; is included on the &sword; CD which can be obtained +from the &crosswire; + +
+ Requirements for &swordInstmgr; + + + All of the packages required for &swordInstmgr; to compile are included in the major + &Linux; distributions. It is also possible to compile &swordInstmgr; on most &UNIX; + distributions. If you encounter compile errors, please read the messages, they + should lead you to missing packages which you will probably find on your + installation disks. + The following table contains the minimum requirements for &swordInstmgr; + binaries to run, or for the source version to compile. + + + Packages required for &swordInstmgr; + + + + + + Package + Location + + + + + + &sword; + + + Use the version provided with your copy of &sword;. Must be configured + (in the file ~/sword/Makefile.cfg) with the VCL libraries = yes + + + + + GTK + + + If you are compiling &swordInstmgr;, any version of GTK should work. + + + + +
+
+ + +
+ &swordInstmgr; + To compile &swordInstmgr; first &sword; must have been compiled. + See the instructions for + &sword;. + + Find the file libsword.so, &sword; probably installed it to + /usr/local/sword/lib unless you customized the installation. + + + In order that &swordInstmgr; (and also &bibletime;) can find this shared library + open a text editor and add /usr/local/sword/lib to the + end of /etc/ld.so.conf. + + + Now you are ready to compile &swordInstmgr;. + + + CD to your &sword; source and open the directory + .../sword/apps/X11/InstallMgr. + Now in a shell do: + + + ldconfig + ./configure + make + su + make install + + + Now in a shell as root (su) you can run installmgr by typing + /usr/local/bin/installmgr. + + + If this was successful, there are two options for loading + text modules into &sword;. + + + + + Options -> Manage remote sources -- Connect to Crosswire by modem and download + sword documents and modules from the crosswire repository. This is a feature that has not yet been ported to + &Linux; and &UNIX;. + + + + + Options -> Local Path -- If you have unzipped sources, point this to your local + module repository. The local repository may be on a local or networked hard drive, or + the &sword; CD mounted on a local or networked CD ROM drive. + All of the available modules will be displayed, and + may now be installed. + + + + + &sword; CD's can be obtained from the + Crosswire Bible Society + +
+ +
+ Setting up your repository + If you have the &sword; CD, you can skip this step. The texts are stored on the CD + uncompressed, and are accessed directly from installmgr under the manage remote sources tab. + + + Download modules from &crosswire; + use the zipped up modules (modulename.zip), + not the windows executable compressed files (modulename.exe). + + + Create a directory for your module repository, $HOME/sword_modules + for example. + + + Open a program that can uncompress zip files. Such as gnozup or archiver. Command line + tools can also be used, to find which ones are installed on your system do a man -k zip + + + Use your unzipping program to extract the module files into $HOME/sword_modules. + All of the files will be placed into the correct subdirectories. If you wish to add modules later + remember to unzip to $HOME/sword_modules. + +
+ + +
+ Setting up the &sword; configuration file. + + Instructions for the &sword; configuration file can be found in the section + "The &sword; configuration + file" which covers the manual installation of the &sword; modules. + +
+ + +
+ Using &swordInstmgr; to load sword modules. + + You must start &swordInstmgr; as root for it to be able to load modules. + Start it with these commands: + + + [me@localhost user]$ su + Password: + [root@localhost user]# /usr/local/bin/installmgr + + + You will now see the installmgr window. You will need to use + options>local path to point to your local module repository. + + + Now the available modules will be shown on the left pane and + the installed modules on the right. All you need to do is + select modules in the left pane and click install to make them + available to &sword; and &bibletime;. + + + + + + &swordInstmgr; screenshot + + + +
+
+ + + + + + + + diff --git a/bibletime-doc/docs/en/install/unicode/inst-preq.docbook b/bibletime-doc/docs/en/install/unicode/inst-preq.docbook new file mode 100644 index 0000000..4cc1db0 --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/inst-preq.docbook @@ -0,0 +1,59 @@ + +&bibletime; Prerequisites + + +
+ Requirements for &bibletime; 1.1 + + +All of the packages required for &bibletime; to compile are included in the major +&Linux; distributions. It is also possible to compile &bibletime; on most other &UNIX; +distributions. If you encounter compile errors, please read the messages, they +should lead you to missing packages which you will probably find on your +installation disks. + The following table contains the minimum requirements for &bibletime; +binaries to run, or for the source version to compile. + + + + +Packages required for installation of &bibletime; 1.1 + + + + + +Package +Location + + + + + +&Qt; 2.2.x + + + http://www.trolltech.com + + + + +&kde; 2.x (at least the libraries) + + + http://www.kde.org + + + + +&sword; 1.5.3 + + + +ftp://ftp.crosswire/pub/sword/source + + +
+
+
+ diff --git a/bibletime-doc/docs/en/install/unicode/inst-sources.docbook b/bibletime-doc/docs/en/install/unicode/inst-sources.docbook new file mode 100644 index 0000000..6445f19 --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/inst-sources.docbook @@ -0,0 +1,215 @@ +Installing BibleTime Sources + +This chapter describes how sources are compiled. These steps apply for both the +development version and the released version of &bibletime; and &sword;. +
Installation of &sword; and the &sword; +Modules + +&sword; and &sword; modules are the book library for BibleTime. +Please see the page download for further information about downloading BibleTime. + + +Have a look at the requirements page to obtain &sword;. See page links to +obtain &sword;'s modules. + +
Installation of SWORD + + +This page shows &sword; 1.5.1a. For other versions of &sword;, the file names +will be different. + + +First you have to unpack the downloaded .tar.gz file (if you are using the CVS +version, your sources will already be unpacked, so skip this step) to a +temporary directory. Do something like this: +mkdir /tmp +cd /tmp +tar -xzf sword-1.5.1a.tar.gz +cd /tmp/sword-1.5.1a + + + + +(the tar file will have unpacked into a directory named something similar to +sword-1.5.1a) + + +Before you try to compile &sword;, you may need to modify + Makefile.cfg (it is located in the top directory of the +unpacked sources). The customized section of Makefile.cfg +is marked, do not try to change parts of the file outside of the area marked +##### Customizable stuff. Set it how you like it ##### +unless you really know what you are doing. + +For many installations the defaults will work. When the defaults don't work, +these switches may be set. + +Sword Makefile.cfg switches + + + +Switch +Description + + + + +# compiler +If you have gcc leave this alone, otherwise enter the compiler +you will be using. + +# shared library- +Set to 'yes'. this causes the shared library +libsord.so to be generated. An entry must be placed into +the file /etc/ld.so.conf that points to libsword. +/usr/local/sword/lib is typical. The shared +library is necessary for BibleTime to work, but Sword will compile without +errors if you don't do this. Be careful here. + +# VCL library- +Use the default 'no' unless you are using the Sword install +manager, then use 'yes'. +# Debugging options etc... +The defaults should work. + + +# endian, etc. support for other hardware +Use the default if compiling on an Intel. If you have other +hardware, select the correct entry. + +# zLib support +Use the default 'yes' + + +# paths +The defaults are OK for most distributions, don't change them unless you know what you are doing. + + + + + +
+ + +Now start compiling. + +make +su +make install +make configure + + +In the event that make command reports an error on completion, it probably +indicates that you are missing a package. For example: + + +bash-2.03# make +make just-pre nodeps=yes +make[1]: Entering directory `/bible/sword-1.5.1a' +make -C src just-pre +. +. +. +make[1]: Entering directory `/bible/sword-1.5.1a/include' +make[1]: Nothing to be done for `just-targets'. +make[1]: Leaving directory `/bible/sword-1.5.1a/include' +make -C apps/X11/VCL just-targets +make[1]: Entering directory `/bible/sword-1.5.1a/apps/X11/VCL' +gcc -I../../../include/ -D_GNU_SOURCE -I. `gtk-config --cflags` -static -pipe -Wall -Wno-format +-fomit-frame-pointer -ggdb -O0 -m486 -c -o TWinControl.o TWinControl.cpp +/bin/sh: gtk-config: command not found +In file included from TWinControl.cpp:1: +TWinControl.h:6: gtk/gtkwidget.h: No such file or directory +TWinControl.cpp:3: gtk/gtkwidget.h: No such file or directory +In file included from TWinControl.cpp:1: +TWinControl.h:281: syntax error before `*' +TWinControl.h:284: parse error before `*' +TWinControl.cpp:10: parse error before `*' +make[1]: *** [TWinControl.o] Error 1 +make[1]: Leaving directory `/bible/sword-1.5.1a/apps/X11/VCL' +make: *** [apps/X11/VCL/targets] Error 2 +bash-2.03# + + +The italic lines above indicate that a gtk application was missing. A +review of the available packages showed that one of the gtk packages +supplied with SuSE is gtkdev. This turns out to be the application required to +allow make to run to completion without errors. Often missing packages +will be found on your installation disks, or on your distribution's website. +Once make runs to completion without errors, then +make install. If it still doesn't work, edit the +file Makefile.cfg in the top directory of the SWORD sources +and change the line buildvcl := yes to buildvcl +:= no and try again. + +
+ +
+Installation of modules +&sword; currently supports 3 types of modules: Bibles, dictionaries and +commentaries. In order for &sword; and &bibletime; to be useful these modules must be installed. + +&sword; modules can be installed manually or with +&swordInstmgr;. +&swordInstmgr; is provided as part of the &sword; package. The directions for compiling and installing +&swordInstmgr; can be found in the section +How to install and use &swordInstmgr; +or in the &sword; source at /sword/apps/X11/InstallMgr/INSTALL. + +
Choose a &sword; directory +&sword; currently supports 3 types of modules: Bibles, dictionaries and +commentaries. You have to install the files of the modules their own directory. +You must decide which directory will be your &sword; directory. If you installed +the libs and includes in an extra directory use that directory as your &sword; +directory (e.g. /usr/local/sword/). If you installed the +library and include files in a common place like +/usr/local/ please select another location for your &sword; +directory. +
+ + + +
+Unpack the downloaded package + +First you have to unpack the downloaded package. On the download page of &sword; +you can choose if you want to get a &Windows; or RAW package. If you have a "&Linux; +only" box please get the RAW packages. But if you accidentally get a &Windows; +self extracting executable try using WINE to extract the files. Perhaps you have +to change the filename of _INSTALL.1 to +_install.1 to get the setup running. + +
+
+Integrating modules + +Create the directory mods.d inside of your &sword; directory. +Please copy the file [modulename].conf into the +mods.d directory. the .conf file is +normally inside the unpacked module files. Now move the whole dir /modules +which contains your unpacked module data files to the &sword; directory. In the +example /usr/local/sword/share is the SWORD directory. + Directory Structure looks like this: + + +/usr/local/sword/share/ -|- mods.d/ -|- module_1_name.conf + | |- module_2_name.conf + | + |- texts/rawtext/ -|-module_1_name/files + |-module_2_name/files + +
+ +
+
+ + + + +
+ + + + + + diff --git a/bibletime-doc/docs/en/install/unicode/inst-user.docbook b/bibletime-doc/docs/en/install/unicode/inst-user.docbook new file mode 100644 index 0000000..ec8318d --- /dev/null +++ b/bibletime-doc/docs/en/install/unicode/inst-user.docbook @@ -0,0 +1,42 @@ +Installation of &bibletime; +
RPM Installation + +If you are installing &bibletime; RPM, just open your package manager (rpm, &kpackage;, or similar) +and install in the normal way. + +
+
Source + +Source tarballs need to be uncompressed (Archiver or similar). Then try: + + +export QTDIR=/usr/lib +export KDEDIR=/usr +export PATH=$KDEDIR/bin:$PATH +./configure # create makefiles +make # compile BibleTime +make install # install BibleTime + +The location QTDIR is the directory contining the &Qt; 2 directory. +The location KDEDIR is the folder containing the /bin directory containing the &kde; executables. +The above locations apply to &Mandrake;. Your distribution may require different locations. + + +Additional information can be found in the sourcecode at +bibletime/INSTALL. + +
+
Troubleshooting + +www.bibletime.de has all the +answers. Please look there. :-) + + +Don't forget to read the &FAQ; and the installation instructions on +www.bibletime.de. If you downloaded the sourcecode please do also read the file +README and INSTALL included in the sourcecode package. + +
+
+ + diff --git a/bibletime-doc/docs/en/tips b/bibletime-doc/docs/en/tips new file mode 100644 index 0000000..4cca3a3 --- /dev/null +++ b/bibletime-doc/docs/en/tips @@ -0,0 +1,193 @@ + + +This is BibleTime 1.1!
+This version of BibleTime should have reached the state where it could +be called stable, useful and user friendly!
+ +
+ + + +The Bible was written so we could believe in Jesus. (John 20:31) + + + + + +BibleTime 1.1 includes a really useful handbook written by Fred Saalbach. +To read it choose the item "Handbook" in the "Help" menu of BibleTime. + + + + + +No one is allowed by God to add anything to or take anything away from the Word. (Revelation 22:18) + + + + + +The Bible is like a mirror. (James 1:23) + + + + + +BibleTime does include a Bible Study HowTo! +It was written by Bob Harman and is a great help how to study the Bible. + + + + + +The Bible has the power to "comfort the afflicted" and "afflict the comfortable". (Revelation 10:10) + + + + + +You can save, print and copy the whole search result by pressing the right mouse button on the icon of the searched module in the search dialog. + + + + + +The Bible is our only spiritual weapon. (Ephesians 6:17) + + + + + +To get the number of verses in the Bible search for a space in the module. +The search analysis shows you the number of verses of each book. + + + + + +That the Bible is truth. (John 17:17) + + + + + +If you would like to create a set of bookmarks around a specific topic with comments containing what the Lord told you here, it's best to +make bookmarks from your personal commentary. + + + + + +The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15) + + + + + +It's possible to insert the text of bookmarks and references to verses or lexicon entries into the personal commentary editor by dropping them there. + + + + + +By studying the Bible you will have no reason to stand ashamed before God. (2 Timothy 2:15) + + + + + +To lookup the meaning of the original hebrew or greek word in a Bible supporting Strong's numbers, switch them on and +click on the strong number. Now a new window showing the strong number with +it's explanation is shown. If your favourite translation doesn't support Strong's numbers please refer to an alternate translation for the number of the corresponding word. +Make sure you have set the default modules in the optionsdialog. + + + + + +If you want to use a commentary as a topical reference, search it for terms your topic is about. + + + + + +In the beginning was the Word, the Word was with God, and the Word was God. (John 1:1) + + + + + +We will be judged on the last day by the words Jesus spoke. (John 12:48) + + + + + +If you want to find the full set of verses or entries on a area of content, you should use the regular expression "x | y | z" for searching, which is equivalent to "x OR y OR z", e.g. "pray | worship | supplicate". + + + + + +If you are searching a verse you know only fuzzy or in a different translation search for the most probable terms in multiple Bible translations at the same time. + + + + +God's Word can be a lamp to your feet and a light to your path. (Psalm 119:105) + + + + + +If you want to search a word in a foreign module (e.g. greek or hebrew), open a display window and choose a chapter or an entry which contains this word. +Now double click on it and drag the selected word on the foreign module in the main index. +The search dialog will be opened with the word in the edit line. + + + + + +The Word of God will not return to Him without accomplishing its purpose. (Isaiah 55:11) + + + + + +Foreign modules (e.g. greek or hebrew) do often require a special unicode font to read them. +Many of the fonts are available on www.crosswire.org or on the Sword CD. + + + + + +Did you know that the first book ever printed on a printing press was the Bible. (by Johann Gutenberg, in 1492) + + + + + +God has already given to us everything pertaining to life and godliness. (2 Peter 1:3) + + + + + +All important elements of BibleTime's graphical user interface have a tooltip and a "What's this?" help.
+To read the "What's this?" help press the keys SHIFT+F1 and click on the part. + +
+ + + +The Word of God is living, active, and sharper than any two-edged sword. (Hebrews 4:12) + + + + + +You are using a program that has been written for the glory of God.
May He bless you as you study His Word! + +
+ + diff --git a/bibletime-doc/docs/gen_am.dat b/bibletime-doc/docs/gen_am.dat new file mode 100644 index 0000000..4023391 --- /dev/null +++ b/bibletime-doc/docs/gen_am.dat @@ -0,0 +1,26 @@ +#!/bin/bash +# +# gen_am.dat script +# +# (C) 2001 The BibleTime team +# released under the GPL +# +# This script contains some basic variables for the +# BibleTime-doc Makefile system generation + + +# This variable identifies which language's directories +# are to be included in the Makefile structure. +# +# If you want to exclude a language, just delete it +# from the following variable. + +# NOTE: "en" MUST BE THE FIRST LANGUAGE! + +export DOC_LANGUAGES="en de" + +# This variable identifies which parts of the documentation +# are in use. + +export DOC_PARTS="handbook helpdialog howto install" + diff --git a/bibletime-doc/docs/gen_am.sh b/bibletime-doc/docs/gen_am.sh new file mode 100755 index 0000000..caa978d --- /dev/null +++ b/bibletime-doc/docs/gen_am.sh @@ -0,0 +1,223 @@ +#!/bin/bash +# +# gen_am.sh script +# +# (C) 2001 The BibleTime team +# released under the GPL +# +# This script creates the Makefile.am files in the +# bibletime/docs/* directories and subdirectories. + +# change to the dir the script is located in +cd `dirname $0` + +export HEADER=\ +"# this Makefile.am was automatically generated by bibletime/docs/gen_am.sh\n"\ +"# please do not edit this file but rather run the script to update\n\n" + +########################### +# create Makefile.am in /bibletime/docs/ +########################### + +. gen_am.dat + +echo generating Makefile.am +echo -e $HEADER"SUBDIRS = "$DOC_LANGUAGES > Makefile.am + +########################### +# create Makefile.am's in /bibletime/docs/??/ directories +########################### + +for I1 in $DOC_LANGUAGES; do + + echo generating $I1/Makefile.am + ( # output to Makefile.am + echo -e $HEADER + + echo -n "SUBDIRS = " + + for PART in $DOC_PARTS; do + if test -d $I1/$PART; then + echo -n "$PART " + fi + done + + echo; echo + + if test -e $I1/tips; then + echo "EXTRA_DIST = tips" + echo + + echo 'rcdir = $(kde_datadir)/bibletime'; + echo 'rc_DATA = tips'; + fi + ) > $I1/Makefile.am + + ########################### + # create Makefile.am's in /bibletime/docs/LANG/PART directories + ########################### + for PART in $DOC_PARTS; do + + if test -d $I1/$PART; then + + ################################### + #create $PART/Makefile.am + ################################### + + export I2=$I1/$PART + export ENGDIR=../../en + echo generating $I2/Makefile.am + ( # output to Makefile.am + echo -e $HEADER + echo -n "SUBDIRS = " + + if test -d $I2/html; then + echo -n "html " + fi + if test -d $I2/unicode; then + echo -n "unicode " + fi + + echo + echo + if test $I1 = en; then + echo 'pot-files:' + echo ' for f in `ls unicode/*.docbook`; do \' + echo ' potfile=`echo $$f | sed s/\.docbook$$/\.pot/`; \' + echo ' potfile=`echo $$potfile | sed s/unicode//`; \' + echo ' echo "Calling xml2pot $$f > pot/$$potfile"; \' + echo ' xml2pot $$f > pot/$$potfile; \' + echo ' done;' + else + echo 'po-files:' + echo ' for f in `ls '$ENGDIR'/'$PART'/pot/*.pot`; do \' + echo ' pofile=`echo $$f | sed s/\.pot$$/\.po/`; \' + echo ' pofile=`echo $$pofile | sed s/"..\/..\/en\/'$PART'\/pot\/"//`; \' + echo ' if test ! -e po/$$pofile; then touch po/$$pofile; fi; \' + echo ' echo "Calling msgmerge -o po/$$pofile.new po/$$pofile $$f"; \' + echo ' msgmerge -o po/$$pofile.new po/$$pofile $$f; \' + echo ' if diff po/$$pofile po/$$pofile.new > /dev/null; then \' + echo ' rm po/$$pofile.new; \' + echo ' else \' + echo ' mv po/$$pofile.new po/$$pofile; \' + echo ' fi; \' + echo ' done;' + echo + echo + echo 'unicode-files:' + echo ' for f in `ls '$ENGDIR'/'$PART'/unicode/*.docbook`; do \' + echo ' pofile=`echo $$f | sed s/\.docbook$$/\.po/`; \' + echo ' pofile=`echo $$pofile | sed s/"..\/..\/en\/'$PART'\/unicode\/"//`; \' + echo ' newfile=`echo $$f | sed s/"..\/..\/en\/'$PART'\/unicode\/"//`; \' + echo ' echo "Calling po2xml $$f po/$$pofile > unicode/$$newfile"; \' + echo ' po2xml $$f po/$$pofile > unicode/$$newfile; \' + echo ' done;' + fi; + echo 'html-files:' + echo ' if test -e unicode/index.docbook; then \' + echo ' olddir=$$PWD; \' + echo ' cd html;\' + echo ' echo "Validating the XML files..."; \' + echo ' if meinproc ../unicode/index.docbook; then\' + echo ' echo "HTML files created successfully."; \' + echo ' fi; cd $$olddir; \' + echo ' fi;' + echo + ) > $I2/Makefile.am + + ##################################### + #create $PART/html/Makefile.am + ##################################### + #export I2=$I1/$PART/html + + for SECTION in html unicode; do + + I2=$I1/$PART/$SECTION + I2_EN=en/$PART/$SECTION + + if test -d $I2; then + + echo generating $I2/Makefile.am + + ( # output to Makefile.am + echo -e $HEADER + + echo -n "EXTRA_DIST = " + FILES=`ls -d $I2/*.png $I2/*.html $I2/*.docbook 2>/dev/null`; + if test $SECTION = "html"; then + if test $PART = "helpdialog"; then + FILES=`ls -d $I2/*.png $I2/*.html 2>/dev/null`; + else + FILES=`ls -d $I2/*.png 2>/dev/null`; + fi; + fi; + + for I3 in $FILES; do + echo -n `basename $I3`" " + done + echo + + #echo "DISTCLEANFILES = index_cache.gz" + #echo + + TARGET_ROOT='$(DESTDIR)$(kde_htmldir)/'$I1'/bibletime' + TARGET_DIR=$TARGET_ROOT/$PART + + EN_FILES="" + HAS_FILES="NO" + + if test $PART == helpdialog; then + for FILE in `ls -d $I2_EN/*.png $I2_EN/*.html $I2_EN/*.docbook 2>/dev/null`; do + EN_FILES="$EN_FILES `basename $FILE`"; + HAS_FILES="YES" + done + else + for FILE in `ls -d $I2_EN/*.png $I2_EN/*.docbook 2>/dev/null`; do + EN_FILES="$EN_FILES `basename $FILE`"; + HAS_FILES="YES" + done + fi + + + if test $HAS_FILES = YES; then + echo + echo 'install-data-local:' + echo ' mkdir -p '$TARGET_DIR'/;' #mkdir -p creates all directories leaing to $TARGET_DIR + echo ' chmod -R a+r+X '$TARGET_ROOT';' + echo ' for file in '$EN_FILES'; do \' + echo ' if test -e $$file; then \' ## in this directory + echo ' $(INSTALL_DATA) $$file '$TARGET_DIR'; \' + echo ' chmod a+r '$TARGET_DIR'/$$file; \' + echo ' else \' + echo ' ln -sf ../../../en/bibletime/'$PART'/$$file '$TARGET_DIR/'$$file; \' + echo ' fi; \' + echo ' done;' + echo ' if test -d '$TARGET_DIR'/../../common; then \' + echo ' ln -sf ../../common '$TARGET_DIR'/common;\' + echo ' else \' + ############## Use the english css data ################### + echo ' ln -sf ../../../en/common '$TARGET_DIR'/common;\' + echo ' fi;' + echo ' chmod -R a+r+X '$TARGET_ROOT + echo + echo 'uninstall-local:' + echo ' for file in '$EN_FILES'; do \' + echo ' echo Removing '$TARGET_DIR'/$$file; \' + echo ' rm -f '$TARGET_DIR'/$$file; \' + echo ' done;' + echo ' echo Removing '$TARGET_DIR'/common;' + echo ' rm -f '$TARGET_DIR'/common;' + fi; + ) > $I2/Makefile.am + fi # html + + done + + + fi # PART exists? + + done ### PART + +done ### language + + diff --git a/bibletime-doc/docs/ksgmltools-bug-read-me.txt b/bibletime-doc/docs/ksgmltools-bug-read-me.txt new file mode 100644 index 0000000..5a40a7f --- /dev/null +++ b/bibletime-doc/docs/ksgmltools-bug-read-me.txt @@ -0,0 +1,36 @@ +During the creation of these documents I found several problems with the +docbook DTD supplied with Mandrake 8.1 This read me documents the work arounds made. + +Problem + +&XML; parses as XML? + +Solution + +Edited the file /usr/share/apps/ksgmltools2/customization/entities/general.entities +also known as "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.0//EN" + +to read +XML'> + +Also did this with all trademark tags that had no class. Class is required for this tag, see + +DocBook: The Definitive Guide +By Norman Walsh and Leonard Muellner +O'Reilly & Associates, Inc. + +Result + +&XML; parses as XML® + + +Problem +stuff parses as ?quote? + +Used " instead. + +This should be corrected when parses as " + +---------------------- +Fred Saalbach 22 Dec 2001 +---------------------- diff --git a/bibletime-doc/libtool b/bibletime-doc/libtool new file mode 100755 index 0000000..1f56911 --- /dev/null +++ b/bibletime-doc/libtool @@ -0,0 +1,6005 @@ +#! /bin/sh + +# libtool - Provide generalized library-building support services. +# Generated automatically by ltconfig (GNU libtool 1.4a (1.641.2.206mm 2001/04/03 21:47:47)) +# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. +# +# Copyright (C) 1996-2000 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="sed -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags=" CXX" + +### BEGIN LIBTOOL CONFIG +# Libtool was configured as follows, on host ekonomikrisis: +# +# AR="" AR_FLAGS="" LTCC="gcc" CC="gcc" \ +# CFLAGS="-DNDEBUG -O2 " CPPFLAGS="" \ +# MAGIC_CMD="" LD="/usr/bin/ld" LDFLAGS="" LIBS="" \ +# LN_S="ln -s" NM="/usr/bin/nm -B" RANLIB="ranlib" STRIP="strip" \ +# AS="" DLLTOOL="" OBJDUMP="" \ +# objext="" exeext="" reload_flag=" -r" \ +# deplibs_check_method="pass_all" \ +# file_magic_cmd="\$MAGIC_CMD" \ +# admin/ltconfig --cache-file=./config.cache --disable-shared --with-gcc --with-gnu-ld --enable-dlopen --no-verify --build=i686-pc-linux-gnu admin/ltmain.sh i686-pc-linux-gnu +# +# Compiler and other test output produced by ltconfig, useful for +# debugging ltconfig, is in ./config.log if it exists. + +# The version of ltconfig that generated this script. +LTCONFIG_VERSION="1.4a" + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=yes + +# Whether or not to build static libraries. +build_old_libs=yes + +# Whether or not to optimize for fast installation. +fast_install=needless + +# The host system. +host_alias=i686-pc-linux-gnu +host=i686-pc-linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# A language-specific compiler. +CC="gcc" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +# The linker used to build libraries. +LD="/usr/bin/ld" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP=strip + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=73729 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation ? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=yes + +# Whether dlopen of programs is supported. +dlopen_self=yes + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=no + +# Compiler flag to prevent dynamic linking. +link_static_flag="-static" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}.so\$versuffix \${libname}\${release}.so\$major \$libname.so" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}.so\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects="" + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path="" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGISTW]\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern char \\1;/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib /usr/lib" + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | sed 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + +# Symbols that must always be exported. +include_expsyms="" + +### END LIBTOOL CONFIG + +# ltmain.sh - Provide generalized library-building support services. +# NOTE: Changing this file will not affect anything until you rerun ltconfig. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 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 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. + +# Check that we have a working $echo. +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell, and then maybe $echo will work. + exec $SHELL "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat <&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + echo "$modename: not configured to build any kind of library" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +# Global variables. +mode=$default_mode +nonopt= +prev= +prevopt= +run= +show="$echo" +show_help= +execute_dlfiles= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" + +# Parse our command line options once, thoroughly. +while test $# -gt 0 +do + arg="$1" + shift + + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + execute_dlfiles) + execute_dlfiles="$execute_dlfiles $arg" + ;; + tag) + tagname="$arg" + + # Check whether tagname contains only valid characters + case $tagname in + *[!-_A-Za-z0-9,/]*) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then + taglist="$taglist $tagname" + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" + else + echo "$progname: ignoring unknown tag $tagname" 1>&2 + fi + ;; + *) + eval "$prev=\$arg" + ;; + esac + + prev= + prevopt= + continue + fi + + # Have we seen a non-optional argument yet? + case $arg in + --help) + show_help=yes + ;; + + --version) + echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" + exit 0 + ;; + + --config) + sed -n -e '/^### BEGIN LIBTOOL CONFIG/,/^### END LIBTOOL CONFIG/p' < "$0" + # Now print the configurations for the tags. + for tagname in $taglist; do + sed -n -e "/^### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" + done + exit 0 + ;; + + --debug) + echo "$progname: enabling shell trace mode" + set -x + ;; + + --dry-run | -n) + run=: + ;; + + --features) + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + exit 0 + ;; + + --finish) mode="finish" ;; + + --mode) prevopt="--mode" prev=mode ;; + --mode=*) mode="$optarg" ;; + + --quiet | --silent) + show=: + ;; + + --tag) prevopt="--tag" prev=tag ;; + --tag=*) + set tag "$optarg" ${1+"$@"} + shift + prev=tag + ;; + + -dlopen) + prevopt="-dlopen" + prev=execute_dlfiles + ;; + + -*) + $echo "$modename: unrecognized option \`$arg'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + + *) + nonopt="$arg" + break + ;; + esac +done + +if test -n "$prevopt"; then + $echo "$modename: option \`$prevopt' requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 +fi + +if test -z "$show_help"; then + + # Infer the operation mode. + if test -z "$mode"; then + case $nonopt in + *cc | *++ | gcc* | *-gcc*) + mode=link + for arg + do + case $arg in + -c) + mode=compile + break + ;; + esac + done + ;; + *db | *dbx | *strace | *truss) + mode=execute + ;; + *install*|cp|mv) + mode=install + ;; + *rm) + mode=uninstall + ;; + *) + # If we have no mode, but dlfiles were specified, then do execute mode. + test -n "$execute_dlfiles" && mode=execute + + # Just use the default operation mode. + if test -z "$mode"; then + if test -n "$nonopt"; then + $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 + else + $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 + fi + fi + ;; + esac + fi + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$execute_dlfiles" && test "$mode" != execute; then + $echo "$modename: unrecognized option \`-dlopen'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$modename --help --mode=$mode' for more information." + + # These modes are in order of execution frequency so that they run quickly. + case $mode in + # libtool compile mode + compile) + modename="$modename: compile" + # Get the compilation command and the source file. + base_compile= + prev= + lastarg= + srcfile="$nonopt" + suppress_output= + + user_target=no + for arg + do + case $prev in + "") ;; + xcompiler) + # Aesthetically quote the previous argument. + prev= + lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + + case $arg in + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + # Accept any command-line options. + case $arg in + -o) + if test "$user_target" != "no"; then + $echo "$modename: you cannot specify \`-o' more than once" 1>&2 + exit 1 + fi + user_target=next + ;; + + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` + lastarg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + lastarg="$lastarg $arg" + done + IFS="$save_ifs" + lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` + + # Add the arguments to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + case $user_target in + next) + # The next one is the -o target name + user_target=yes + continue + ;; + yes) + # We got the output file + user_target=set + libobj="$arg" + continue + ;; + esac + + # Accept the current argument as the source file. + lastarg="$srcfile" + srcfile="$arg" + + # Aesthetically quote the previous argument. + + # Backslashify any backslashes, double quotes, and dollar signs. + # These are the only characters that are still specially + # interpreted inside of double-quoted scrings. + lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $lastarg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + lastarg="\"$lastarg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + done + + case $user_target in + set) + ;; + no) + # Get the name of the library object. + libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` + ;; + *) + $echo "$modename: you must specify a target with \`-o'" 1>&2 + exit 1 + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + xform='[cCFSfmso]' + case $libobj in + *.ada) xform=ada ;; + *.adb) xform=adb ;; + *.ads) xform=ads ;; + *.asm) xform=asm ;; + *.c++) xform=c++ ;; + *.cc) xform=cc ;; + *.class) xform=class ;; + *.cpp) xform=cpp ;; + *.cxx) xform=cxx ;; + *.f90) xform=f90 ;; + *.for) xform=for ;; + *.java) xform=java ;; + esac + + libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` + + case $libobj in + *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; + *) + $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 + exit 1 + ;; + esac + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base compile + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir= + else + xdir=$xdir/ + fi + lobj=${xdir}$objdir/$objname + + if test -z "$base_compile"; then + $echo "$modename: you must specify a compilation command" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + $run $rm $removelist + trap "$run $rm $removelist; exit 1" 1 2 15 + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2*) + pic_mode=default + ;; + esac + if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + removelist="$removelist $output_obj $lockfile" + trap "$run $rm $removelist; exit 1" 1 2 15 + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $run ln "$0" "$lockfile" 2>/dev/null; do + $show "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + echo "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + echo $srcfile > "$lockfile" + fi + + if test -n "$fix_srcfile_path"; then + eval srcfile=\"$fix_srcfile_path\" + fi + + $run $rm "$libobj" "${libobj}T" + + # Create a libtool object file (analogous to a ".la" file), + # but don't create it if we're doing a dry run. + test -z "$run" && cat > ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "x$output_obj" != "x$lobj"; then + $show "$mv $output_obj $lobj" + if $run $mv $output_obj $lobj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the PIC object to the libtool object file. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed + if test -n "$output_obj" && test "x$output_obj" != "x$obj"; then + $show "$mv $output_obj $obj" + if $run $mv $output_obj $obj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + fi + build_libtool_libs=no + build_old_libs=yes + prefer_static_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test $# -gt 0; do + arg="$1" + base_compile="$base_compile $arg" + shift + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test + ;; + *) qarg=$arg ;; + esac + libtool_args="$libtool_args $qarg" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command="$compile_command @OUTPUT@" + finalize_command="$finalize_command @OUTPUT@" + ;; + esac + + case $prev in + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command="$compile_command @SYMFILE@" + finalize_command="$finalize_command @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + if test ! -f "$arg"; then + $echo "$modename: symbol file \`$arg' does not exist" + exit 1 + fi + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat $save_arg` + do +# moreargs="$moreargs $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + done + else + $echo "$modename: link input file \`$save_arg' does not exist" + exit 1 + fi + arg=$save_arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi + prev= + continue + ;; + xcompiler) + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + xlinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $wl$qarg" + prev= + compile_command="$compile_command $wl$qarg" + finalize_command="$finalize_command $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 + continue + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: not more than one -exported-symbols argument allowed" + exit 1 + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix*) + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + ;; + esac + continue + ;; + + -L*) + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 + exit 1 + fi + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "*) ;; + *) + deplibs="$deplibs -L$dir" + lib_search_path="$lib_search_path $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$dir:"*) ;; + *) dllsearchpath="$dllsearchpath:$dir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "$arg" = "-lc"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # These systems don't actually have c library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + elif test "$arg" = "-lm"; then + case $host in + *-*-cygwin* | *-*-pw32* | *-*-beos*) + # These systems don't actually have math library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody math library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + fi + deplibs="$deplibs $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # The PATH hackery in wrapper scripts is required on Windows + # in order for the loader to find any dlls it needs. + $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 + $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 + fast_install=no + ;; + *) + no_install=yes + ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + continue + ;; + + -static) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Wl,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $wl$flag" + linker_flags="$linker_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + # Some other compiler flag. + -* | +*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + + *.$objext) + # A standard object. + objs="$objs $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs="$deplibs $arg" + old_deplibs="$old_deplibs $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles="$dlfiles $arg" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles="$dlprefiles $arg" + prev= + else + deplibs="$deplibs $arg" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + esac + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + done + + if test -n "$prev"; then + $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base link + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in $compile_command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` + if test "X$output_objdir" = "X$output"; then + output_objdir="$objdir" + else + output_objdir="$output_objdir/$objdir" + fi + # Create the object directory. + if test ! -d $output_objdir; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + status=$? + if test $status -ne 0 && test ! -d $output_objdir; then + exit $status + fi + fi + + # Determine the type of output + case $output in + "") + $echo "$modename: you must specify an output file" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + case "$libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + libs="$libs $deplib" + done + + if test $linkmode = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + uninst_deplibs= # uninstalled libtool libraries + uninst_path= # paths that contain uninstalled libtool libraries + case $linkmode in + lib) + passes="conv link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 + exit 1 + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + for pass in $passes; do + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test $linkmode = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test $pass = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + for deplib in $libs; do + lib= + found=no + case $deplib in + -l*) + if test $linkmode != lib && test $linkmode != prog; then + $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 + continue + fi + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` + for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do + # Search the libtool library + lib="$searchdir/lib${name}.la" + if test -f "$lib"; then + found=yes + break + fi + done + if test "$found" != yes; then + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test $pass = conv && continue + newdependency_libs="$deplib $newdependency_libs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + prog) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test $pass = scan; then + deplibs="$deplib $deplibs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + ;; + *) + $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 + ;; + esac + continue + ;; + -R*) + if test $pass = link; then + dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) lib="$deplib" ;; + *.$libext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + if test "$deplibs_check_method" != pass_all; then + echo + echo "*** Warning: This library needs some functionality provided by $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + echo + echo "*** Warning: Linking the shared library $output against the" + echo "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + continue + ;; + prog) + if test $pass != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac + ;; + *.lo | *.$objext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + elif test $linkmode = prog; then + if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles="$newdlprefiles $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles="$newdlfiles $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac + if test $found = yes || test -f "$lib"; then : + else + $echo "$modename: cannot find the library \`$lib'" 1>&2 + exit 1 + fi + + # Check to see that this really is a libtool archive. + if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + # If the library was installed with an old release of libtool, + # it will not redefine variable installed. + installed=yes + + # Read the .la file + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test $linkmode != prog && test $linkmode != lib; }; then + test -n "$dlopen" && dlfiles="$dlfiles $dlopen" + test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" + fi + + if test $pass = conv; then + # only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + # It is a libtool convenience library, so add in its objects. + convenience="$convenience $ladir/$objdir/$old_library" + old_convenience="$old_convenience $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + elif test $linkmode != prog && test $linkmode != lib; then + $echo "$modename: \`$lib' is not a convenience library" 1>&2 + exit 1 + fi + continue + fi + + # Get the name of the library we link against. + linklib= + for l in $old_library $library_names; do + linklib="$l" + done + if test -z "$linklib"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + + # This library was specified with -dlopen. + if test $pass = dlopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles="$dlprefiles $lib $dependency_libs" + else + newdlfiles="$newdlfiles $lib" + fi + continue + fi + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + abs_ladir="$ladir" + fi + ;; + esac + laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + $echo "$modename: warning: library \`$lib' was moved." 1>&2 + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$libdir" + absdir="$libdir" + fi + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + uninst_path="$uninst_path $abs_ladir" + fi + name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + + # This library was specified with -dlpreopen. + if test $pass = dlpreopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles="$newdlprefiles $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles="$newdlprefiles $dir/$dlname" + else + newdlprefiles="$newdlprefiles $dir/$linklib" + fi + fi + + if test -z "$libdir"; then + # link the convenience library + if test $linkmode = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + if test $linkmode = prog && test $pass != link; then + newlib_search_path="$newlib_search_path $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test + esac + # Need to link against all dependency_libs? + if test $linkalldeplibs = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + continue + fi + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var"; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath " in + *" $dir "*) ;; + *" $absdir "*) ;; + *) temp_rpath="$temp_rpath $dir" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + uninst_deplibs="$uninst_deplibs $lib" + need_relink=yes + fi + # This is a shared library + if test $linkmode = lib && test "$hardcode_into_libs" = all; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + realname="$2" + shift; shift + libname=`eval \\$echo \"$libname_spec\"` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin*) + major=`expr $current - $age` + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + soname=`echo $soroot | sed -e 's/^.*\///'` + newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + $show "extracting exported symbol list from \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$extract_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + $show "generating import library for \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$old_archive_from_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi + + if test $linkmode = prog || test "$mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + $echo "$modename: configuration error: unsupported hardcode properties" + exit 1 + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; + esac + fi + if test $linkmode = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && \ + test "$hardcode_minus_L" != yes && \ + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + fi + fi + fi + + if test $linkmode = prog || test "$mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + add="-l$name" + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + add="-l$name" + fi + + if test $linkmode = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test $linkmode = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + echo "*** Warning: This library needs some functionality provided by $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + convenience="$convenience $dir/$old_library" + old_convenience="$old_convenience $dir/$old_library" + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi + + if test $linkmode = lib; then + if test -n "$dependency_libs" && + { test $hardcode_into_libs != yes || test $build_old_libs = yes || + test $link_static = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath="$xrpath $temp_xrpath";; + esac;; + *) temp_deplibs="$temp_deplibs $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path="$newlib_search_path $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + + if test $link_all_deplibs != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + case $deplib in + -L*) path="$deplib" ;; + *.la) + dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$deplib" && dir="." + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + fi + ;; + esac + if grep "^installed=no" $deplib > /dev/null; then + path="-L$absdir/$objdir" + else + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + if test "$absdir" != "$libdir"; then + $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 + fi + path="-L$absdir" + fi + ;; + *) continue ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi + fi + done + dependency_libs="$newdependency_libs" + if test $pass = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test $pass != dlopen; then + if test $pass != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path="$lib_search_path $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Make sure that $var contains only unique libraries + # and add them in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + case "$deplib" in + -L*) new_libs="$deplib $new_libs" ;; + *) + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done + fi + done + if test $linkmode = prog; then + dlfiles="$newdlfiles" + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 + fi + + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 + fi + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs="$objs$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + eval libname=\"$libname_spec\" + ;; + *) + if test "$module" = no; then + $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + eval libname=\"$libname_spec\" + else + libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 + exit 1 + else + echo + echo "*** Warning: Linking the shared library $output against the non-libtool" + echo "*** objects $objs is not portable!" + libobjs="$libobjs $objs" + fi + fi + + if test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 + fi + + set dummy $rpath + if test $# -gt 2; then + $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + fi + install_libdir="$2" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 + fi + else + + # Parse the version information argument. + IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + IFS="$save_ifs" + + if test -n "$8"; then + $echo "$modename: too many parameters to \`-version-info'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + current="$2" + revision="$3" + age="$4" + + # Check that each of the things are valid numbers. + case $current in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $revision in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $age in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + if test $age -gt $current; then + $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + minor_current=`expr $current + 1` + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current"; + ;; + + irix) + major=`expr $current - $age + 1` + verstring="sgi$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test $loop != 0; do + iface=`expr $revision - $loop` + loop=`expr $loop - 1` + verstring="sgi$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + ;; + + osf) + major=`expr $current - $age` + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test $loop != 0; do + iface=`expr $current - $loop` + loop=`expr $loop - 1` + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring="$verstring:${current}.0" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + major=`expr $current - $age` + versuffix="-$major" + ;; + + *) + $echo "$modename: unknown library version type \`$version_type'" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + verstring="0.0" + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + fi + + if test "$mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`echo "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + removelist="$removelist $p" + ;; + *) ;; + esac + done + if test -n "$removelist"; then + $show "${rm}r $removelist" + $run ${rm}r $removelist + fi + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs="$oldlibs $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + for path in $uninst_path; do + lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` + deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` + dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` + done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + temp_xrpath="$temp_xrpath -R$libdir" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + if test $hardcode_into_libs != yes || test $build_old_libs = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles="$dlfiles $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles="$dlprefiles $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test $build_libtool_need_lc = "yes"; then + deplibs="$deplibs -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behaviour. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $rm conftest.c + cat > conftest.c </dev/null` + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null \ + | grep " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | sed 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ + | sed 10q \ + | egrep "$file_magic_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ + -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | + grep . >/dev/null; then + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + fi + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + echo "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test $allow_undefined = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + if test $hardcode_into_libs = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath="$dep_rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval dep_rpath=\"$hardcode_libdir_flag_spec\" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval library_names=\"$library_names_spec\" + set dummy $library_names + realname="$2" + shift; shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test x$dlname = x; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + for link + do + linknames="$linknames $link" + done + +# # Ensure that we have .o objects for linkers which dislike .lo +# # (e.g. aix) in case we are running --disable-static +# for obj in $libobjs; do +# xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$obj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# if test ! -f $xdir/$oldobj && test "$baseobj" != "$oldobj"; then +# $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" +# $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? +# fi +# done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + eval cmds=\"$export_symbols_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + if test -n "$export_symbols_regex"; then + $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" + $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + $show "$mv \"${export_symbols}T\" \"$export_symbols\"" + $run eval '$mv "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' + fi + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags="$linker_flags $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # The command line is too long to link in one step, link piecewise. + $echo "creating reloadable object files..." + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + delfiles= + last_robj= + k=1 + output=$output_objdir/$save_output-${k}.$objext + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + eval test_cmds=\"$reload_cmds $objlist $last_robj\" + if test "X$objlist" = X || + { len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; }; then + objlist="$objlist $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test $k -eq 1 ; then + # The first file doesn't have a previous command to add. + eval concat_cmds=\"$reload_cmds $objlist $last_robj\" + else + # All subsequent reloadable object files will link in + # the last one created. + eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" + fi + last_robj=$output_objdir/$save_output-${k}.$objext + k=`expr $k + 1` + output=$output_objdir/$save_output-${k}.$objext + objlist=$obj + len=1 + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" + + # Set up a command to remove the reloadale object files + # after they are used. + i=0 + while test $i -lt $k + do + i=`expr $i + 1` + delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" + done + + $echo "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + + # Append the command to remove the reloadable object files + # to the just-reset $cmds. + eval cmds=\"\$cmds~$rm $delfiles\" + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? + exit 0 + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 + fi + + case $output in + *.lo) + if test -n "$objs$old_deplibs"; then + $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 + exit 1 + fi + libobj="$output" + obj=`$echo "X$output" | $Xsed -e "$lo2o"` + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $run $rm $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${obj}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $run eval "echo timestamp > $libobj" || exit $? + exit 0 + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" +# else +# # Just create a symlink. +# $show $rm $libobj +# $run $rm $libobj +# xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$libobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# $show "(cd $xdir && $LN_S $oldobj $baseobj)" +# $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + ;; + + prog) + case $host in + *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; + esac + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 + fi + + if test "$preload" = yes; then + if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && + test "$dlopen_self_static" = unknown; then + $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." + fi + fi + + compile_command="$compile_command $compile_deplibs" + finalize_command="$finalize_command $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$libdir:"*) ;; + *) dllsearchpath="$dllsearchpath:$libdir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + dlsyms= + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + dlsyms="${outputname}S.c" + else + $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 + fi + fi + + if test -n "$dlsyms"; then + case $dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${outputname}.nm" + + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" + + # Parse the name list into a source file. + $show "creating $output_objdir/$dlsyms" + + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ +/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ +/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* Prevent the only kind of declaration conflicts we can make. */ +#define lt_preloaded_symbols some_other_symbol + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + $show "generating symbol list for \`$output'" + + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles="$objs$old_deplibs" + for arg in $progfiles; do + $show "extracting global C symbols from \`$arg'" + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + if test -n "$export_symbols_regex"; then + $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$output.exp" + $run $rm $export_symbols + $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + else + $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' + $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' + $run eval 'mv "$nlist"T "$nlist"' + fi + fi + + for arg in $dlprefiles; do + $show "extracting global C symbols from \`$arg'" + name=`echo "$arg" | sed -e 's%^.*/%%'` + $run eval 'echo ": $name " >> "$nlist"' + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -z "$run"; then + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $mv "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then + : + else + grep -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$dlsyms" + fi + + $echo >> "$output_objdir/$dlsyms" "\ + +#undef lt_preloaded_symbols + +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{\ +" + + sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ + -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ + < "$nlist" >> "$output_objdir/$dlsyms" + + $echo >> "$output_objdir/$dlsyms" "\ + {0, (lt_ptr_t) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + fi + + pic_flag_for_symtable= + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag";; + esac + esac + + # Now compile the dynamic symbol file. + $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" + + # Transform the symbol file into the correct name. + compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + ;; + *) + $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 + exit 1 + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` + fi + + # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G + # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. + # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. + # This does not apply on AIX for ia64, which uses a SysV linker. + case "$host" in + ia64-*-aix5*) ;; + *-*-aix4* | *-*-aix5*) + compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` + finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; + esac + + if test $need_relink = no || test "$build_libtool_libs" != yes; then + # Replace the output file specification. + compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + $show "$link_command" + $run eval "$link_command" + status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $status + fi + + if test -n "$shlibpath_var"; then + # We should set the shlibpath_var + rpath= + for dir in $temp_rpath; do + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) + # Absolute path. + rpath="$rpath$dir:" + ;; + *) + # Relative path: add a thisdir entry. + rpath="$rpath\$thisdir/$dir:" + ;; + esac + done + temp_rpath="$rpath" + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath="$rpath$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $run $rm $output + # Link the executable and exit + $show "$link_command" + $run eval "$link_command" || exit $? + exit 0 + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 + $echo "$modename: \`$output' will be relinked during installation" 1>&2 + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname + + $show "$link_command" + $run eval "$link_command" || exit $? + + # Now create the wrapper script. + $show "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + relink_command="cd `pwd`; $relink_command" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + fi + + # Quote $echo for shipping. + if test "X$echo" = "X$SHELL $0 --fallback-echo"; then + case $0 in + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; + *) qecho="$SHELL `pwd`/$0 --fallback-echo";; + esac + qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` + else + qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` + fi + + # Only actually do things if our run command is non-null. + if test -z "$run"; then + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) output=`echo $output|sed 's,.exe$,,'` ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) exeext=.exe ;; + *) exeext= ;; + esac + $rm $output + trap "$rm $output; exit 1" 1 2 15 + + $echo > $output "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variable: + uninst_deplibs='$uninst_deplibs' +else + # When we are sourced in execute mode, \$file and \$echo are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + echo=\"$qecho\" + file=\"\$0\" + # Make sure echo works. + if test \"X\$1\" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift + elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then + # Yippee, \$echo works! + : + else + # Restart under the correct shell, and then maybe \$echo will work. + exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} + fi + fi\ +" + $echo >> $output "\ + + # Find the directory that this script lives in. + thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` + done + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + echo >> $output "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $mkdir \"\$progdir\" + else + $rm \"\$progdir/\$file\" + fi" + + echo >> $output "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if (eval \$relink_command); then : + else + $rm \"\$progdir/\$file\" + exit 1 + fi + fi + + $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $rm \"\$progdir/\$program\"; + $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $rm \"\$progdir/\$file\" + fi" + else + echo >> $output "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + echo >> $output "\ + + if test -f \"\$progdir/\$program\"; then" + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $echo >> $output "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + + export $shlibpath_var +" + fi + + # fixup the dll searchpath if we need to. + if test -n "$dllsearchpath"; then + $echo >> $output "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + $echo >> $output "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. +" + case $host in + # win32 systems need to use the prog path for dll + # lookup to work + *-*-cygwin* | *-*-pw32*) + $echo >> $output "\ + exec \$progdir/\$program \${1+\"\$@\"} +" + ;; + + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) + $echo >> $output "\ + exec \$progdir\\\\\$program \${1+\"\$@\"} +" + ;; + + *) + $echo >> $output "\ + # Export the path to the program. + PATH=\"\$progdir:\$PATH\" + export PATH + + exec \$program \${1+\"\$@\"} +" + ;; + esac + $echo >> $output "\ + \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" + exit 1 + fi + else + # The program doesn't exist. + \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 + \$echo \"This script is just a wrapper for \$program.\" 1>&2 + echo \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" + chmod +x $output + fi + exit 0 + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$objs$old_deplibs $non_pic_objects" + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + # Add in members from convenience archives. + for xlib in $addlibs; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print | $NL2SP` + done + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + eval cmds=\"$old_archive_from_new_cmds\" + else +# # Ensure that we have .o objects in place in case we decided +# # not to build a shared library, and have fallen back to building +# # static libs even though --disable-static was passed! +# for oldobj in $oldobjs; do +# if test ! -f $oldobj; then +# xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$oldobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` +# obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` +# $show "(cd $xdir && ${LN_S} $obj $baseobj)" +# $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? +# fi +# done + + eval cmds=\"$old_archive_cmds\" + + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the command line is too long to link in one step, link in parts + $echo "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + for obj in $save_oldobjs + do + oldobjs="$objlist $obj" + objlist="$objlist $obj" + eval test_cmds=\"$old_archive_cmds\" + if len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + eval cmds=\"\$concat_cmds~$old_archive_cmds\" + fi + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$generated"; then + $show "${rm}r$generated" + $run ${rm}r$generated + fi + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + $show "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + + # Only create the output if not a dry run. + if test -z "$run"; then + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdependency_libs="$newdependency_libs $libdir/$name" + ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + for lib in $dlfiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlfiles="$newdlfiles $libdir/$name" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlprefiles="$newdlprefiles $libdir/$name" + done + dlprefiles="$newdlprefiles" + fi + $rm $output + # place dlname in correct position for cygwin + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; + esac + $echo > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test $hardcode_into_libs = all && + test "$installed" = no && test $need_relink = yes; then + $echo >> $output "\ +relink_command=\"$relink_command\"" + fi + done + fi + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" + $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? + ;; + esac + exit 0 + ;; + + # libtool install mode + install) + modename="$modename: install" + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then + # Aesthetically quote it. + arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$arg " + arg="$1" + shift + else + install_prog= + arg="$nonopt" + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog$arg" + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + for arg + do + if test -n "$dest"; then + files="$files $dest" + dest="$arg" + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) prev="-f" ;; + -g) prev="-g" ;; + -m) prev="-m" ;; + -o) prev="-o" ;; + -s) + stripme=" -s" + continue + ;; + -*) ;; + + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + prev= + else + dest="$arg" + continue + fi + ;; + esac + + # Aesthetically quote the argument. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog $arg" + done + + if test -z "$install_prog"; then + $echo "$modename: you must specify an install program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -n "$prev"; then + $echo "$modename: the \`$prev' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -z "$files"; then + if test -z "$dest"; then + $echo "$modename: no file or destination specified" 1>&2 + else + $echo "$modename: you must specify a destination" 1>&2 + fi + $echo "$help" 1>&2 + exit 1 + fi + + # Strip any trailing slash from the destination. + dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` + test "X$destdir" = "X$dest" && destdir=. + destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` + + # Not a directory, so check to see that there is only one file specified. + set dummy $files + if test $# -gt 2; then + $echo "$modename: \`$dest' is not a directory" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs="$staticlibs $file" + ;; + + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + library_names= + old_library= + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs="$current_libdirs $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs="$future_libdirs $libdir" ;; + esac + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ + test "X$dir" = "X$file/" && dir= + dir="$dir$objdir" + + if test "$hardcode_into_libs" = all && test -n "$relink_command"; then + $echo "$modename: warning: relinking \`$file'" 1>&2 + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + continue + fi + fi + + # See the names of the shared library. + set dummy $library_names + if test -n "$2"; then + realname="$2" + shift + shift + + srcname="$realname" + test "$hardcode_into_libs" = all && test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + $show "$install_prog $dir/$srcname $destdir/$realname" + $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? + if test -n "$stripme" && test -n "$striplib"; then + $show "$striplib $destdir/$realname" + $run eval "$striplib $destdir/$realname" || exit $? + fi + + if test $# -gt 0; then + # Delete the old symlinks, and create new ones. + for linkname + do + if test "$linkname" != "$realname"; then + $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + fi + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + eval cmds=\"$postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Install the pseudo-library for information purposes. + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + instname="$dir/$name"i + $show "$install_prog $instname $destdir/$name" + $run eval "$install_prog $instname $destdir/$name" || exit $? + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + + # Install the libtool object if requested. + if test -n "$destfile"; then + $show "$install_prog $file $destfile" + $run eval "$install_prog $file $destfile" || exit $? + fi + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` + + $show "$install_prog $staticobj $staticdest" + $run eval "$install_prog \$staticobj \$staticdest" || exit $? + fi + exit 0 + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + uninst_deplibs= + relink_command= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Check the variables that should have been set. + if test -z "$uninst_deplibs"; then + $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 + exit 1 + fi + + finalize=yes + for lib in $uninst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + # If there is no directory component, then add one. + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + fi + libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 + finalize=no + fi + done + + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + if test "$finalize" = yes && test -z "$run"; then + tmpdir="/tmp" + test -n "$TMPDIR" && tmpdir="$TMPDIR" + tmpdir="$tmpdir/libtool-$$" + if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : + else + $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 + continue + fi + file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` + + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" + continue + fi + file="$outputname" + else + $echo "$modename: warning: cannot relink \`$file'" 1>&2 + fi + else + # Install the binary that we compiled earlier. + file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + + # remove .exe since cygwin /usr/bin/install will append another + # one anyways + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + destfile=`echo $destfile | sed -e 's,.exe$,,'` + ;; + esac + ;; + esac + + $show "$install_prog$stripme $file $destfile" + $run eval "$install_prog\$stripme \$file \$destfile" || exit $? + test -n "$outputname" && ${rm}r "$tmpdir" + ;; + esac + done + + for file in $staticlibs; do + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + + $show "$install_prog $file $oldlib" + $run eval "$install_prog \$file \$oldlib" || exit $? + + if test -n "$stripme" && test -n "$striplib"; then + $show "$old_striplib $oldlib" + $run eval "$old_striplib $oldlib" || exit $? + fi + + # Do each command in the postinstall commands. + eval cmds=\"$old_postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$future_libdirs"; then + $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 + fi + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + test -n "$run" && current_libdirs=" -n$current_libdirs" + exec $SHELL $0 --finish$current_libdirs + exit 1 + fi + + exit 0 + ;; + + # libtool finish mode + finish) + modename="$modename: finish" + libdirs="$nonopt" + admincmds= + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for dir + do + libdirs="$libdirs $dir" + done + + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + eval cmds=\"$finish_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || admincmds="$admincmds + $cmd" + done + IFS="$save_ifs" + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $run eval "$cmds" || admincmds="$admincmds + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + exit 0 + + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + echo " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + echo " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + echo " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + echo "See any operating system documentation about shared libraries for" + echo "more information, such as the ld(1) and ld.so(8) manual pages." + echo "----------------------------------------------------------------------" + exit 0 + ;; + + # libtool execute mode + execute) + modename="$modename: execute" + + # The first argument is the command name. + cmd="$nonopt" + if test -z "$cmd"; then + $echo "$modename: you must specify a COMMAND" 1>&2 + $echo "$help" + exit 1 + fi + + # Handle -dlopen flags immediately. + for file in $execute_dlfiles; do + if test ! -f "$file"; then + $echo "$modename: \`$file' is not a file" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + dir= + case $file in + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Read the libtool library. + dlname= + library_names= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" + continue + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + + if test -f "$dir/$objdir/$dlname"; then + dir="$dir/$objdir" + else + $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 + exit 1 + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + ;; + + *) + $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -*) ;; + *) + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` + args="$args \"$file\"" + done + + if test -z "$run"; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved enviroment variables + if test "${save_LC_ALL+set}" = set; then + LC_ALL="$save_LC_ALL"; export LC_ALL + fi + if test "${save_LANG+set}" = set; then + LANG="$save_LANG"; export LANG + fi + + # Now actually exec the command. + eval "exec \$cmd$args" + + $echo "$modename: cannot exec \$cmd$args" + exit 1 + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi + $echo "$cmd$args" + exit 0 + fi + ;; + + # libtool clean and uninstall mode + clean | uninstall) + modename="$modename: $mode" + rm="$nonopt" + files= + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -*) rm="$rm $arg" ;; + *) files="$files $arg" ;; + esac + done + + if test -z "$rm"; then + $echo "$modename: you must specify an RM program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + rmdirs= + + for file in $files; do + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + if test "X$dir" = "X$file"; then + dir=. + objdir="$objdir" + else + objdir="$dir/$objdir" + fi + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + test $mode = uninstall && objdir="$dir" + + # Remember objdir for removal later, being careful to avoid duplicates + if test $mode = clean; then + case " $rmdirs " in + *" $objdir "*) ;; + *) rmdirs="$rmdirs $objdir" ;; + esac + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + . $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles="$rmfiles $objdir/$n" + done + test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" + test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" + + if test $mode = uninstall; then + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + eval cmds=\"$postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + eval cmds=\"$old_postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + # FIXME: should reinstall the best remaining shared library. + fi + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + + # Read the .lo file + . $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" \ + && test "$pic_object" != none; then + rmfiles="$rmfiles $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" \ + && test "$non_pic_object" != none; then + rmfiles="$rmfiles $dir/$non_pic_object" + fi + fi + ;; + + *) + # Do a test to see if this is a libtool program. + if test $mode = clean && + (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + relink_command= + . $dir/$file + + rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles="$rmfiles $objdir/lt-$name" + fi + fi + ;; + esac + $show "$rm $rmfiles" + $run $rm $rmfiles + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + $show "rmdir $dir" + $run rmdir $dir >/dev/null 2>&1 + fi + done + + exit 0 + ;; + + "") + $echo "$modename: you must specify a MODE" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 + ;; + esac + + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 +fi # test -z "$show_help" + +# We need to display help for each of the modes. +case $mode in +"") $echo \ +"Usage: $modename [OPTION]... [MODE-ARG]... + +Provide generalized library-building support services. + + --config show all configuration variables + --debug enable verbose shell tracing +-n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --finish same as \`--mode=finish' + --help display this help message and exit + --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] + --quiet same as \`--silent' + --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + --version print version information + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for +a more detailed description of MODE." + exit 0 + ;; + +clean) + $echo \ +"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + +compile) + $echo \ +"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -static always build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + +execute) + $echo \ +"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + +finish) + $echo \ +"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + +install) + $echo \ +"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + +link) + $echo \ +"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -static do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + +uninstall) + $echo \ +"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + +*) + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; +esac + +echo +$echo "Try \`$modename --help' for more information about other modes." + +exit 0 + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +### END LIBTOOL TAG CONFIG: disable-shared + +### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: +### BEGIN LIBTOOL TAG CONFIG: CXX +# Libtool was configured as follows, on host ekonomikrisis: +# +# AR="" AR_FLAGS="" LTCC="gcc" CC="c++" \ +# CFLAGS="-DNDEBUG -O2 -fno-exceptions -fno-check-new" CPPFLAGS="" \ +# MAGIC_CMD="" LD="/usr/bin/ld" LDFLAGS="" LIBS="" \ +# LN_S="ln -s" NM="/usr/bin/nm -B" RANLIB="ranlib" STRIP="strip" \ +# AS="" DLLTOOL="" OBJDUMP="" \ +# objext="" exeext="" reload_flag=" -r" \ +# deplibs_check_method="pass_all" \ +# file_magic_cmd="\$MAGIC_CMD" \ +# admin/ltconfig -o libtool --cache-file=./config.cache --disable-shared --with-gcc --with-gnu-ld --enable-dlopen --build=i686-pc-linux-gnu --add-tag=CXX admin/ltcf-cxx.sh i686-pc-linux-gnu +# +# Compiler and other test output produced by ltconfig, useful for +# debugging ltconfig, is in ./config.log if it exists. + +# The version of ltconfig that generated this script. +LTCONFIG_VERSION="1.4a" + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to build static libraries. +build_old_libs=yes + +# Whether or not to optimize for fast installation. +fast_install=needless + +# The host system. +host_alias=i686-pc-linux-gnu +host=i686-pc-linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# A language-specific compiler. +CC="c++" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +# The linker used to build libraries. +LD="/usr/bin/ld" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP=strip + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=73729 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation ? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=yes + +# Whether dlopen of programs is supported. +dlopen_self=yes + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=no + +# Compiler flag to prevent dynamic linking. +link_static_flag="-static" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}.so\$versuffix \${libname}\${release}.so\$major \$libname.so" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}.so\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects="/usr/lib/crti.o /usr/lib/gcc-lib/i386-linux/2.95.4/crtbeginS.o" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects="/usr/lib/gcc-lib/i386-linux/2.95.4/crtendS.o /usr/lib/crtn.o" + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="-lstdc++ -lm -lgcc -lc -lgcc" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path="-L/usr/lib/gcc-lib/i386-linux/2.95.4" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGISTW]\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern char \\1;/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib /usr/lib" + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | sed 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + +# Symbols that must always be exported. +include_expsyms="" + +### END LIBTOOL TAG CONFIG: CXX + diff --git a/bibletime-doc/po/Makefile.am b/bibletime-doc/po/Makefile.am new file mode 100644 index 0000000..6845461 --- /dev/null +++ b/bibletime-doc/po/Makefile.am @@ -0,0 +1,72 @@ +############################################# +# Only contain the pofiles that are finished. +POFILES = de.po +############################################# +#POFILES = de.po fr.po nl.po it.po cs.po sk.po no.po +############################################# + +PACKAGE=bibletime +##EXTRA_DIST = $POFILES + +GMOFILES = $(POFILES:.po=.gmo) + +localedir = $(DESTDIR)$(kde_locale) +MAINTAINERCLEANFILES = $(GMOFILES) + +GMSGFMT = @GMSGFMT@ +MSGFMT = @MSGFMT@ +XGETTEXT = @XGETTEXT@ +EXTRA_DIST = bibletime.pot $(POFILES) $(GMOFILES) + +all: all-yes +install-data-local: install-yes + +SUFFIXES = .po .gmo + +.po.mo: + $(MSGFMT) -o $@ $< + +.po.gmo: + file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ + && rm -f $$file && $(GMSGFMT) -o $$file $< + +all-yes: $(GMOFILES) +all-no: + +install-yes: all + @catalogs='$(GMOFILES)'; \ + for cat in $$catalogs; do \ + destdir=$(localedir); \ + lang=`echo $$cat | sed 's/\.gmo//'`; \ + name=$(PACKAGE).mo \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + $(mkinstalldirs) $$dir; \ + $(INSTALL_DATA) $$cat $$dir/$$name; \ + echo "installing $$cat as $$dir/$$name"; \ + done + +install-no: + +uninstall-local: + @catalogs='$(GMOFILES)'; \ + for cat in $$catalogs; do \ + destdir=$(localedir); \ + lang=`echo $$cat | sed 's/\.gmo//'`; \ + name=$(PACKAGE).mo; \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + rm -f $$cat $$dir/$$name; \ + echo "removing $$dir/$$name" ; \ + done + +merge: + @catalogs='$(POFILES)'; \ + for cat in $$catalogs; do \ + name=$(PACKAGE).pot ; \ + echo $$cat $$name; \ + msgmerge $$cat $$name > $$cat.new ; \ + if diff $$cat $$cat.new; then \ + rm $$cat.new; \ + else \ + mv $$cat.new $$cat ; \ + fi; \ + done diff --git a/bibletime-doc/po/Makefile.in b/bibletime-doc/po/Makefile.in new file mode 100644 index 0000000..e949383 --- /dev/null +++ b/bibletime-doc/po/Makefile.in @@ -0,0 +1,435 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.1.1.1 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +############################################# +# Only contain the pofiles that are finished. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +POFILES = de.po +############################################# +#POFILES = de.po fr.po nl.po it.po cs.po sk.po no.po +############################################# + +PACKAGE = bibletime + +GMOFILES = $(POFILES:.po=.gmo) + +localedir = $(DESTDIR)$(kde_locale) +MAINTAINERCLEANFILES = $(GMOFILES) + +GMSGFMT = @GMSGFMT@ +MSGFMT = @MSGFMT@ +XGETTEXT = @XGETTEXT@ +EXTRA_DIST = bibletime.pot $(POFILES) $(GMOFILES) + +SUFFIXES = .po .gmo +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_CLEAN_FILES = +CFLAGS = @CFLAGS@ +COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=pl.po sk.po de.gmo it.gmo sk.gmo hu.po it.po no.gmo no.po da.po cs.po fr.gmo fr.po de.po nl.gmo cs.gmo nl.po + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .gmo .po +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu po/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu po/Makefile + cd $(top_srcdir) && perl admin/am_edit po/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = po + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu po/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-data-local +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-local +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +all: all-yes +install-data-local: install-yes + +.po.mo: + $(MSGFMT) -o $@ $< + +.po.gmo: + file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ + && rm -f $$file && $(GMSGFMT) -o $$file $< + +all-yes: $(GMOFILES) +all-no: + +install-yes: all + @catalogs='$(GMOFILES)'; \ + for cat in $$catalogs; do \ + destdir=$(localedir); \ + lang=`echo $$cat | sed 's/\.gmo//'`; \ + name=$(PACKAGE).mo \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + $(mkinstalldirs) $$dir; \ + $(INSTALL_DATA) $$cat $$dir/$$name; \ + echo "installing $$cat as $$dir/$$name"; \ + done + +install-no: + +uninstall-local: + @catalogs='$(GMOFILES)'; \ + for cat in $$catalogs; do \ + destdir=$(localedir); \ + lang=`echo $$cat | sed 's/\.gmo//'`; \ + name=$(PACKAGE).mo; \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + rm -f $$cat $$dir/$$name; \ + echo "removing $$dir/$$name" ; \ + done + +merge: + @catalogs='$(POFILES)'; \ + for cat in $$catalogs; do \ + name=$(PACKAGE).pot ; \ + echo $$cat $$name; \ + msgmerge $$cat $$name > $$cat.new ; \ + if diff $$cat $$cat.new; then \ + rm $$cat.new; \ + else \ + mv $$cat.new $$cat ; \ + fi; \ + done + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu po/Makefile + cd $(top_srcdir) && perl admin/am_edit po/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime-doc/po/bibletime.pot b/bibletime-doc/po/bibletime.pot new file mode 100644 index 0000000..8263ff2 --- /dev/null +++ b/bibletime-doc/po/bibletime.pot @@ -0,0 +1,2704 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8-bit\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:315 +msgid "Strong's Numbers" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +msgid "Hebrew Cantillation" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +msgid "Enable debug messages" +msgstr "" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "" + +#: bibletime/main.cpp:121 +msgid "(c)1999-2002, The BibleTime Team" +msgstr "" + +#: bibletime/main.cpp:122 +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" + +#: bibletime/main.cpp:130 +msgid "Project coordinator" +msgstr "" + +#: bibletime/main.cpp:131 +msgid "Frontend, backend" +msgstr "" + +#: bibletime/main.cpp:132 +msgid "Searchdialog" +msgstr "" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "" + +#: bibletime/main.cpp:155 +msgid "Translation into Russian" +msgstr "" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "" + +#: bibletime/main.cpp:157 +msgid "Translation into Spanish" +msgstr "" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "" + +#: bibletime/main.cpp:185 +msgid "Starting BibleTime" +msgstr "" + +#: bibletime/bibletime_init.cpp:59 +msgid "Creating BibleTime's GUI" +msgstr "" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "" + +#: bibletime/bibletime_init.cpp:167 +msgid "&Save profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:172 +msgid "&Load profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:177 +msgid "&Configure profiles" +msgstr "" + +#: bibletime/bibletime_init.cpp:183 +msgid "&Fullscreen mode" +msgstr "" + +#: bibletime/bibletime_init.cpp:202 +msgid "&Handbook" +msgstr "" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +msgid "&Bible Study Howto" +msgstr "" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +msgid "Line style:" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:192 +msgid "Print queue" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:84 +msgid "Backward" +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +msgid "Language" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +msgid "Location" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +msgid "yes" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +msgid "Next entry" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +msgid "Previous entry" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +msgid "Next book" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +msgid "Previous book" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +msgid "Next chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +msgid "Previous chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +msgid "Next verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +msgid "Previous verse" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +msgid "Display options" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +msgid "Show versenumbers" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +msgid "Show Strong's Numbers" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +msgid "Save changes to module?" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +msgid "Book window" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +msgid "Toggle tree" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +msgid "module not set" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "Save Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +msgid "BibleTime Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +msgid "Search Text :" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +msgid "Search Type :" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +msgid "Search Scope:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +msgid "Appending keys to the printing queue ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +msgid "Copying search result to clipboard..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +msgid "Saving the search result ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +msgid "Saving the search result..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +msgid "Create new profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:122 +msgid "Please enter the name of the new profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Rename profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Please enter the new name of the profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:170 +msgid "Startup" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "Choose fonts" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +msgid "The quick brown fox jumps over the lazy dog" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:245 +msgid "Choose colors" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:262 +msgid "Highlighted verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:267 +msgid "Hyperlinks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +msgid "Profiles" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:302 +msgid "Manage your profiles" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +msgid "Delete selected profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:322 +msgid "Rename selected profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +msgid "Bible windows" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:381 +msgid "Commentary windows" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:394 +msgid "Lexicon windows" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:408 +msgid "Book windows" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +msgid "Specify a language for biblical booknames" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "Default modules" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +msgid "Default Commentary" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:522 +msgid "Default Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:530 +msgid "Default Hebrew Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:538 +msgid "Default Greek Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:546 +msgid "Default Hebrew Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:553 +msgid "Default Greek Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +msgid "Show verse numbers" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit profiles" +msgstr "" + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +msgid "Load a new profile" +msgstr "" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +msgid "Toggle fullscreen mode" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +msgid "BibleTime's Bible study HowTo" +msgstr "" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +msgid "Show daily tips at startup" +msgstr "" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Jump to the next verse" +msgstr "" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Jump to the previous verse" +msgstr "" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +msgid "Show the next chapter" +msgstr "" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +msgid "Show the previous chapter" +msgstr "" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "Show the next book" +msgstr "" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +msgid "Show the previous book" +msgstr "" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +msgid "Choose the modules to search in" +msgstr "" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +msgid "Search for this text" +msgstr "" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +msgid "Use custom scope" +msgstr "" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +msgid "Graphical Search Analysis" +msgstr "" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +msgid "Show start-up logo" +msgstr "" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +msgid "Keyboard accelerators used by all display windows" +msgstr "" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Preview print job" +msgstr "" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +msgid "List of print styles" +msgstr "" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +msgid "Delete the selected style" +msgstr "" + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +msgid "Edit the selected style" +msgstr "" + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "" + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search for text in one or more modules." +msgstr "" + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +msgid "Toggle the main index view." +msgstr "" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +msgid "Toggle Strong's numbers in the modules." +msgstr "" + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +msgid "Tile the open display windows." +msgstr "" + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +msgid "Automatically tile the display windows." +msgstr "" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +msgid "Cascade the open display windows." +msgstr "" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +msgid "Automatically cascade the opened display windows." +msgstr "" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +msgid "Edit profiles..." +msgstr "" + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "" + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +msgid "Show the \"about\" dialog of KDE 2." +msgstr "" + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "" + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "" + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +msgid "Import bookmarks from a file." +msgstr "" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "" + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "" + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "" + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +msgid "Save new personal comments." +msgstr "" + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "" + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +msgid "Toggle bold formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +msgid "Toggle italic formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +msgid "Toggle underlined formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "" + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "" + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "" + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +msgid "Save the displayed chapter as an HTML file." +msgstr "" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "" + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +msgid "Add the selected module to the list on the right." +msgstr "" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +msgid "Remove the selected module from the list on the right side." +msgstr "" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "" + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "" + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +msgid "Activate this to use a case sensitive search." +msgstr "" + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "" + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "" + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "" + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "" + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "" + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "" + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +msgid "Activate this to see the BibleTime logo on startup." +msgstr "" + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +msgid "Select an action and change the key binding for the action." +msgstr "" + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "" + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +msgid "Set the keyboard accelerators used in all display windows" +msgstr "" + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +msgid "Set keyboard accelerators used in Bible windows" +msgstr "" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +msgid "Closes this dialog without doing anything else." +msgstr "" + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "" + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +msgid "This combo box contains the available print styles." +msgstr "" + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "" + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +msgid "Move the selected item up one item." +msgstr "" + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +msgid "Move the selected item down one item." +msgstr "" + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "" + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +msgid "The size of the border on the left side of the paper." +msgstr "" + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +msgid "The size of the border on the right side of the paper." +msgstr "" + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +msgid "The size of the border on the top of the paper." +msgstr "" + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +msgid "The size of the border on the bottom of the paper." +msgstr "" + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "" + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "" + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" diff --git a/bibletime-doc/po/cs.gmo b/bibletime-doc/po/cs.gmo new file mode 100644 index 0000000000000000000000000000000000000000..7f963ea3287edddbaaa059c6528eed7ff6376861 GIT binary patch literal 25846 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 m, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: bibletime-1.0\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2001-06-11 11:02GMT+1\n" +"Last-Translator: Michal Rovnaník \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.8\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "Poznámky" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "Strongova čísla" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +#, fuzzy +msgid "Hebrew Cantillation" +msgstr "Orientace" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Povolit ladicí zprávy" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Nástroj pro studium Bible pro KDE 2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, The BibleTime Team" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"BibleTime je snadno použitelný, ale mocný nástroj pro studium Bible pro " +"prostředí KDE 2.\n" +"\n" +"Hledáme nové programátory, překladatele a autory příručky.\n" +"Pokud se chcete připojit, napište e-mail na adresu info@bibletime.de" + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Koordinátor projektu, uživatelské rozhraní, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Uživatelské rozhraní, backend, různé" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Hledání" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Příručka" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Překlad do češtiny" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Překlad do dánštiny" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Překlad do holandštiny" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Překlad do francouzštiny" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Překlad do maďarštiny" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Překlad do italštiny" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Překlad do norštiny" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Překlad do polštiny" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Překlad do portugalštiny" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Překlad do maďarštiny" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Překlad do slovenštiny" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Překlad do dánštiny" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Návod, jak studovat Bibli" + +#: bibletime/main.cpp:185 +#, fuzzy +msgid "Starting BibleTime" +msgstr "O aplikaci BibleTime" + +#: bibletime/bibletime_init.cpp:59 +#, fuzzy +msgid "Creating BibleTime's GUI" +msgstr "Ukončit BibleTime" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Vyprázdnit tiskovou frontu" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Reset hlavního seznamu" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Hledat v modulu (-ech)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Odstranit zvolenou (-é) položku (-y)" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "&Hlavní seznam" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "&Kaskádovat" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "&Vydláždit" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Automaticky kaskádovat" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&utomaticky dláždit" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "&Zavřít vše" + +#: bibletime/bibletime_init.cpp:167 +#, fuzzy +msgid "&Save profile" +msgstr "Vytvořit novou složku" + +#: bibletime/bibletime_init.cpp:172 +#, fuzzy +msgid "&Load profile" +msgstr "Vytvořit novou složku" + +#: bibletime/bibletime_init.cpp:177 +#, fuzzy +msgid "&Configure profiles" +msgstr "Nastavení barev pro BibleTime" + +#: bibletime/bibletime_init.cpp:183 +#, fuzzy +msgid "&Fullscreen mode" +msgstr "Aktuální modul:" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Příručka" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Návod, jak studovat Bibli" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "&Tip dne" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "editor stylů" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Jméno stylu:" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Zvolte část stylu:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Hlavička" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Popis" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Text modulu" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Povolit tuto část" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Popředí:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Pozadí:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Zvolte písmo" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Náhled písma" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Použít rámeček" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Síla čáry (v bodech):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Barva rámečku:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Jméno stylu:" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Jméno:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "neznámé jméno" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Styly" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Okraje (v milimetrech)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "&Horní" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "&Levý" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "&Pravý" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Seznam prvků stylu:" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Tiskárna" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Zvolte styl" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Tisknutelné záznamy:" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Modul" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "Od" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "Do" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Styl" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Pozadí" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "Ok" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Nemohu najít stránku %1!" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | HTML soubory\n" +" *.* | Všechny soubory (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Uložit text jako HTML stránku ..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +"*.txt | Textové soubory (*.txt)\n" +"*.* | Všechny soubory (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Uložit stránku jako obyčejný text ..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Zvolte písmo:" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Zvolte velikost písma" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Tučné" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Podtržené" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Zarovnat do bloku" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "neznámý" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Záložka na" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +#, fuzzy +msgid "Language" +msgstr "Seznam jazyků" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Odemykací klíč" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "není nastaveno" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Verze" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Bible" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Komentáře" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Slovníky" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Kapitola" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Hlavní seznam" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Vytvořit novou složku" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Změnit tuto složku" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Změnit tuto záložku" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Import záložek" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Export záložek" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Tisk záložek" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Hledat ve vybraných modulech" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Odemknout tento modul" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "O tomto modulu" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Popis záložky - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Sem prosím vložte popis:" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Změna popisu záložky - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Změňte prosím popis položky!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Změna složky - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Změňte prosím jméno skupiny!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +#, fuzzy +msgid "Location" +msgstr "Kapitola" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Zapisovatelný" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +#, fuzzy +msgid "yes" +msgstr "Styly" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Vložte jméno složky - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Vložte prosím jméno složky!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - Odemknutí modulu" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Vložte klíč k odemknutí modulu!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Import záložek ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Při importování záložek došlo k chybě!
Formát záložek importovaného " +"souboru je novější
než verze formátu záložek této verze BibleTime!" +"
Import záložek nemusí proběhnout korektně!
Chcete pokračovat?" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Import záložek" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Export záložek ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Tato funkce zruší nastavení hlavního seznamu!
Dojde k obnovení " +"původních skupin a smazání všech ostatních položek!
Ujistěte se, že " +"nepřijdete o důležité záložky!
Chcete pokračovat?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - Reset hlavního seznamu" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Slovník" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Záznam" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Text záznamu" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Záznam s textem" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Vybraný text" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Záznam jako obyčejný text" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Záznam jako HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Vyhledat vybraný text ve slovníku" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Kopírovat..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Přidat do tiskové fronty..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Uložit..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +#, fuzzy +msgid "Next entry" +msgstr "Text záznamu" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +#, fuzzy +msgid "Previous entry" +msgstr "Předchozí záznam" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Bible" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "Verš" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "Text verše" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "Verš s textem" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "Kapitolu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "Kapitolu jako obyčejný text" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "Kapitolu jako HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +#, fuzzy +msgid "Next book" +msgstr "Další kniha" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +#, fuzzy +msgid "Previous book" +msgstr "Předchozí kniha" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Další kapitola" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +#, fuzzy +msgid "Previous chapter" +msgstr "Předchozí kapitola" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +#, fuzzy +msgid "Next verse" +msgstr "Text verše" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +#, fuzzy +msgid "Previous verse" +msgstr "Předchozí verš" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Vybrat další moduly" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "Žádný modul" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Okno prohlížeče" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Zobrazit Strongova čísla" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Zobrazit poznámky" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Zobrazit Strongova čísla" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Synchronizace..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Změna záznamu..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Komentář" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Hledání v modulech" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Bible" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +#, fuzzy +msgid "Toggle tree" +msgstr "Aktuální modul:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Moduly:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Nalezené záznamy:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "není nastavený modul" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Vlastnosti hledání" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Více slov" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Přesné hledání" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Regulární výraz" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Rozlišovat velikost" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Rozsah hledání" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Postup hledání" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Aktuální modul:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Celkem:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Hledat" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Přerušit" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Volba modulů" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Zvolte moduly k prohledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Hledaný text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Vložte hledaný text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Výsledek hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "Výsledek Vašeho hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Analýza hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Grafická analýza Vašeho hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +#, fuzzy +msgid "Save Search Analysis" +msgstr "Analýza hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +#, fuzzy +msgid "BibleTime Search Analysis" +msgstr "Analýza hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Hledaný text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Hledaný text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Rozsah hledání" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Bez omezení" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Poslední výsledek" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Použít rozsah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Zvolte požadovaný rozsah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Upravit rozsahy" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Stará Smlouva" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "Mojžíš/Pentateuch/Tóra" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "Spisy" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Proroci" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Nová Smlouva" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Evangelia" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Epištoly/Dopisy" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Pavlovy epištoly" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Zadejte požadovaný rozsah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "Výsledek rozboru rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Jméno rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Vložte prosím jméno pro nový rozsah" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Moduly" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Výsledek hledání" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Výsledek hledání s textem" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Přidat do tiskové fronty..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +#, fuzzy +msgid "Copying search result to clipboard..." +msgstr "Kopírovat do schránky" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Uložit výsledek hledání ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Uložit výsledek hledání ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "Odkaz" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "Odkaz s textem" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | Textové soubory\n" +" *.* | Všechny soubory (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Uložit klíč ..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Uložit výsledek hledání ..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Nastavení" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +#, fuzzy +msgid "Create new profile" +msgstr "Vytvořit novou složku" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#, fuzzy +msgid "Please enter the name of the new profile" +msgstr "Vložte prosím jméno složky!" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Rename profile" +msgstr "Odstranit vybrané položky" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Please enter the new name of the profile" +msgstr "Vložte prosím jméno složky!" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Zobrazovat logo" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Zobrazovat tip dne" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Zobrazovat logo" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Zvolte písmo" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +#, fuzzy +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Žluťoučký kůň úpěl ďábelské ódy" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Barvy" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Volba modulů" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Pozadí" + +#: bibletime/frontend/coptionsdialog.cpp:262 +#, fuzzy +msgid "Highlighted verse" +msgstr "Zvýrazněný verš" + +#: bibletime/frontend/coptionsdialog.cpp:267 +#, fuzzy +msgid "Hyperlinks" +msgstr "Tisknout" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "Strongova čísla" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Změna záznamu..." + +#: bibletime/frontend/coptionsdialog.cpp:302 +#, fuzzy +msgid "Manage your profiles" +msgstr "Nastavení barev pro BibleTime" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Smazání vybraných položek." + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Odstranit vybrané položky" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Zkratky" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Bible" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Komentář" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Slovník" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Bible" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Obecné" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +#, fuzzy +msgid "Use down arrow to scroll to next verse" +msgstr "Použít šipku dolů pro skok na další verš" + +#: bibletime/frontend/coptionsdialog.cpp:461 +#, fuzzy +msgid "Specify a language for biblical booknames" +msgstr "Jazyk pro jména knih" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Jazyk pro jména knih" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Angličtina" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Použité moduly" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Komentáře" + +#: bibletime/frontend/coptionsdialog.cpp:522 +#, fuzzy +msgid "Default Lexicon" +msgstr "Slovníky" + +#: bibletime/frontend/coptionsdialog.cpp:530 +#, fuzzy +msgid "Default Hebrew Strong's Lexicon" +msgstr "Slovníky" + +#: bibletime/frontend/coptionsdialog.cpp:538 +#, fuzzy +msgid "Default Greek Strong's Lexicon" +msgstr "Slovníky" + +#: bibletime/frontend/coptionsdialog.cpp:546 +#, fuzzy +msgid "Default Hebrew Morphological Lexicon" +msgstr "Slovníky" + +#: bibletime/frontend/coptionsdialog.cpp:553 +#, fuzzy +msgid "Default Greek Morphological Lexicon" +msgstr "Slovníky" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Zobrazit Strongova čísla" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "Tisk..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Ukončit tisk" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Hlavní seznam" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "&Okno" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Vyčištění tiskové fronty" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "Otevřít dialog pro tisk" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "Ukončit BibleTime" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Hledání v modulech" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Odstranit vybrané položky" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Zobrazit hlavní seznam" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Zobrazit nástrojovou lištu" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Zobrazit Strongova čísla" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Uspořádat okna" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Automaticky uspořádávat okna" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Kaskádovat okna" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Automaticky kaskádovat okna" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Zavřít všechna okna" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +#, fuzzy +msgid "Edit profiles" +msgstr "Změna záznamu..." + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +#, fuzzy +msgid "Load a new profile" +msgstr "Vytvořit novou složku" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +#, fuzzy +msgid "Toggle fullscreen mode" +msgstr "Aktuální modul:" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Upravit nástrojovou lištu" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "Příručka k BibleTime" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Návod, jak studovat Bibli" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "Přepnutí do režimu \"Co je to?\"" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Poslat chybové hlášení" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "Zobrazit tip dne" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "O aplikaci BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "Informace o prostředí KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "Hlavní seznam" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Přidat záložku do tiskové fronty" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "Pracovní oblast" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Další záznam" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Předchozí záznam" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +#, fuzzy +msgid "Jump to the next verse" +msgstr "Další verš" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +#, fuzzy +msgid "Jump to the previous verse" +msgstr "Předchozí verš" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Další kapitola" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Předchozí kapitola" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +#, fuzzy +msgid "Show the next book" +msgstr "Další kniha" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Předchozí kniha" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Seznam knih" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Seznam kapitol" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Seznam veršů" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Seznam záznamů" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Listovat seznamem" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Upravit tento záznam" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Uložit tento komentář" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Smazat tento komentář" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Komentář platí až do" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Tučné" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Skloněné" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Podtržené" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Písmo" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Barva" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Velikost písma" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Synchronizovat s Biblickými okny" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Uložit jako HTML" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "Kopírovat do schránky" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Zvolte moduly k prohledání" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Přidat vybraný modul do seznamu" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Odebrat vybraný modul ze seznamu" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Seznam modulů pro hledání" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Hledaný text" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Hledat víceslovný výraz" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Přesné hledání" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Hledat pomocí GNU regulárních výrazů" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Rozlišovat VELKÁ a malá písmena" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Výsledek posledního hledání" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Použít vlastní rozsah" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Přidat nový rozsah" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Zrušit tento rozsah hledání" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Úprava nebo vytvoření vlastního rozsahu" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Vyberte rozsah hledání ze seznamu" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Vložte vlastní rozsah hledání" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Rozbor výsledku" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Zavřít toto dialogové okno" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Použité moduly" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Nalezené záznamy" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Náhled" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +#, fuzzy +msgid "Graphical Search Analysis" +msgstr "Grafická analýza" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Zobrazit tip dne" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Seznam jazyků" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Zobrazovat logo" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Nastavení klávesových zkratek" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Zvolte oblast aplikace" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Zvolte písmo" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Barva pozadí" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Barva vybraného verše" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +#, fuzzy +msgid "Keyboard accelerators used by all display windows" +msgstr "Toto je barva pozadí okna prohlížeče." + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Tisknout" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +#, fuzzy +msgid "Preview print job" +msgstr "Aplikace pro náhled:" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "Otevření nápovědy" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Seznam tisků" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Přesunout nahoru" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Přesunout dolů" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Smazat položku" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Vložit zlom strany" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Okraje stránky" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Levý okraj" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Pravý okraj" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "Horní okraj" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Dolní okraj" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Seznam tisků" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Smazání vybraných položek." + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Smazání vybraných položek." + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Vytvořit nový styl tisku" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +#, fuzzy +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Vymazání tiskové fronty programu BibleTime. Všechny položky budou odstraněny " +"ze seznamu, tlačítko tisku bude zablokováno." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +#, fuzzy +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"Otevření dialogu pro tisk z programu BibleTime, kde můžete upravovat " +"tiskovou frontu a nastavovat jednotlivým položkám styl tisku." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Ukončení BibleTime a uložení nastavení." + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +#, fuzzy +msgid "Open the search dialog to search for text in one or more modules." +msgstr "" +"Otevření dialogového okna pro hledání textu v jednom nebo více modulech." + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +#, fuzzy +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Odstranit vybranou položku z hlavního seznamu.
Pokud odstraníte složku, " +"budou zrušen i její obsah." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +#, fuzzy +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Reset hlavního seznamu
Všechny záložky a složky budou smazány a budou " +"obnoveny původní složky." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "Hlavní seznam" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "Přepínač mezi zobrazením nebo skrytím Strongových čísel v modulech." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "Zavře všechna otevřená okna." + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "Automaticky uspořádávat okna" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "Zavře všechna otevřená okna." + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +#, fuzzy +msgid "Automatically cascade the opened display windows." +msgstr "Automaticky kaskádovat okna" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Zavře všechna otevřená okna." + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +#, fuzzy +msgid "Edit profiles..." +msgstr "Změna záznamu..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "Otevře dialogové okno, ve kterém můžete měnit většinu nastavení." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "Otevře nápovědu k programu BibleTime." + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "Otevře nápovědu k programu BibleTime." + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +#, fuzzy +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"Přepnutí ukazatele myši do módu \"Co je toto?\".
Všechny důležité " +"prvky programu BibleTime nabízejí tuto nápovědu." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Pošle chybové hlášení vývojářům programu BibleTime!" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Zobrazení tipu dne.
Tipy obsahují důležité biblické citace a užitečné " +"tipy pro používání programu BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Zobrazí detailní informace o programu BibleTime." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +#, fuzzy +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Zobrazí obecnou informaci o prostředí KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Toto je hlavní seznam.
Umožňuje spravovat nainstalované moduly, pracovat " +"se záložkami, otevírat okna prohlížečů apod." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +#, fuzzy +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Vytvoření nové složky v hlavním seznamu.
Pokud jste pravé tlačítko myši " +"stiskli nad složkou, bude nová složka její pod-složkou.
Jinak se vytvoří " +"nová hlavní složka." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Změní vlastnosti vybrané složky." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Změní vlastnosti vybrané záložky." + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +#, fuzzy +msgid "Import bookmarks from a file." +msgstr "Naimportuje záložky ze souboru." + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Vyexportuje záložky do souboru, takže Vy
nebo jiní uživatelé si je budou " +"moci později naimportovat." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +#, fuzzy +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Tímto přidáte tuto záložku do tiskové fronty programu BibleTime. Vytištěn " +"bude odkaz, popis a text odkazu." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "Otevře malé dialogové okno, ve kterém můžete odemknout vybraný modul." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "Otevře okno s informací o vybraném modulu." + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +#, fuzzy +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" +"Tato oblast je pracovní plochou programu BibleTime.
Všechna okna " +"prohlížečů budou zobrazena na tomto místě." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "Zobrazí se další záznam v modulu." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "Zobrazí se předchozí záznam v modulu." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +#, fuzzy +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"Pokud prohlížíte text Bible, označí se následující verš.
Při práci s " +"komentářem se zobrazí další záznam." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +#, fuzzy +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"Pokud prohlížíte text Bible, označí se předchozí verš.
Při práci s " +"komentářem se zobrazí předchozí záznam." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "Zobrazí následující kapitolu modulu. Bude vybrán první verš." + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "Zobrazí předchozí kapitolu modulu. Bude vybrán první verš." + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "Zobrazí následující knihu modulu, první kapitolu, první verš." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "Zobrazí předchozí knihu modulu, první kapitolu, první verš." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "Tento seznam obsahuje knihy dostupné v tomto modulu." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "Tento seznam obsahuje kapitoly dostupné v této knize." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "Tento seznam obsahuje verše dostupné v této kapitole." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Tento seznam obsahuje záznamy v tomto modulu." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Toto tlačítko umožnuje jednoduše procházet položkami seznamu. Stiskněte " +"tlačítko a pohybem myši vyberte požadovanou položku." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" +"Přepínání mezi módy \"čtení-zápis\" a \"pouze čtení\" u zapisovatelných " +"modulů." + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +#, fuzzy +msgid "Save new personal comments." +msgstr "Uložení osobního komentáře." + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Smazání textu a odstranění záznamu z modulu." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "Přepínání mezi tučným a ne-tučným písmem." + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "Přepínání mezi kurzívou a ne-kurzívou." + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +#, fuzzy +msgid "Toggle underlined formatting of the selected text." +msgstr "Přepínání mezi podtrženým a ne-podtrženým písmem." + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Nastavení jiného písma pro vybraný text." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Nastavení jiné barvy pro vybraný text." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Nastavení jiné velikosti písma pro vybraný text." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" +"Synchronizovat zobrazený komentář podle verše v aktivním biblickém okně." + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +#, fuzzy +msgid "Save the displayed chapter as an HTML file." +msgstr "Uložit zobrazenou kapitolu jako HTML soubor." + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Vybrat celý text." + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Kopírovat zobrazený text do schránky." + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +#, fuzzy +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Zvolte moduly, které chcete prohledat.
Pomocí tlačítek na pravé straně " +"můžete přidávat/odebírat moduly do/ze seznamu." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Přidání vybraného modulu do seznamu." + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Odstranění vybraného modulu ze seznamu." + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "Seznam modulů pro hledání." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +#, fuzzy +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "Text, který sem napíšete, bude hledán ve všech modulech." + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +#, fuzzy +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Tato volba slouží pro hledání více slov.
Každé zadané slovo bude hledáno " +"samostatně." + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +#, fuzzy +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Tato volba slouží pro hledání fráze.
Zadaný text bude hledán jako celek." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Tato volba slouží pro hledání pomocí standardních GNU regulárních výrazů." +"
Bližší popis regulárních výrazů naleznete v příručce." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +#, fuzzy +msgid "Activate this to use a case sensitive search." +msgstr "Zapněte, pokud chcete při hledání rozlišovat VELKÁ a malá písmena." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "Vyberte, pokud chcete hledat v celém modulu (celých modulech)." + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +#, fuzzy +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "Vyberte, pokud chcete jako rozsah použít výsledek posledního hledání." + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Vytvoření nového rozsahu hledání." + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +#, fuzzy +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "Použít vlastní rozsah hledání.
Existuje standardní balíček rozsahů." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Tímto tlačítkem smažete vybraný rozsah hledání." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Vyberte rozsah hledání ze seznamu." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Zadejte vlastní rozsah hledání.
Pro oddělení čísla kapitoly od čísla " +"verše použijte dvojtečku \":\", pro oddělení spodní a horní hranice použijte " +"pomlčku \"-\" (např. Genesis - Exodus 3:4),
pro oddělení několika bloků " +"použijte středník \";\" (např. Genesis;Matouš)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Tento seznam obsahuje výsledek rozboru Vámi zadaného rozsahu. Tento výsledek " +"bude použit pro hledání." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Zavření tohoto okna a uložení změn." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Seznam prohledávaných modulů.
Kliknutím na modul zobrazíte výsledek " +"hledání." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Zde je seznam veršů nalezených ve vybraném modulu." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "Zde vidíte náhled nalezeného verše." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Grafická analýza výsledku hledání.
Sloupce zobrazují počet nalezených " +"výskytů pro každou knihu nebo komentář." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "Zapněte, pokud máte zájem o zobrazení tipu při spuštění BibleTime." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "Jazyky, ve kterých si můžete nechat zobrazovat názvy knih." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +#, fuzzy +msgid "Activate this to see the BibleTime logo on startup." +msgstr "Zapněte, pokud máte zájem o zobrazení tipu při spuštění BibleTime." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +#, fuzzy +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "Vyberte, pokud chcete používat šipku dolů pro skok na další verš." + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +#, fuzzy +msgid "Select an action and change the key binding for the action." +msgstr "Vyberte akci a změňte pro ni klávesovou zkratku." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +#, fuzzy +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" +"Zde vyberte, pro jaký účel bude písmo použito a upravte jeho nastavení v " +"nabídce." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "Toto je barva pozadí okna prohlížeče." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "Toto je barva vybraného verše v okně prohlížeče." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "Toto je barva pozadí okna prohlížeče." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "Nastavení klávesových zkratek" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "Nastavení klávesových zkratek" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "Nastavení klávesových zkratek" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Spustí tisk.
Položky v seznamu budou vytištěny podle přiřazených stylů." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Tisk proběhne do dočasného souboru a otevře se prohlížeč postscriptu pro " +"zobrazení náhledu tisku." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +#, fuzzy +msgid "Closes this dialog without doing anything else." +msgstr "Zavření tohoto okna bez následků pro položky nebo tiskárny." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "Otevření nápovědy pro BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +#, fuzzy +msgid "This combo box contains the available print styles." +msgstr "Toto je seznam dostupných tiskových stylů." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Tento seznam obsahuje tiskové úlohy." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Přesunutí položky o jednu pozici dolů." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Přesunutí položky o jednu pozici nahoru." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Smazání vybraných položek." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +#, fuzzy +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Vložení tzv. stránkového zlomu.
Tiskárna začne tisknout na další stranu." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "Tato skupina obsahuje velikosti okrajů papíru (v milimetrech)." + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "Velikost levého okraje papíru." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "Velikost pravého okraje papíru." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "Velikost horního okraje papíru." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "Velikost spodního okraje papíru." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Seznam dostupných stylů tisku.
Tlačítkem \"Nový styl\" si můžete vytvořit " +"svůj vlastní styl." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Odstranění vybraného stylu ze seznamu." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Změna vlastností vybraného stylu." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "Vytvoření nového stylu.
Nový styl bude přidán do seznamu." + +#~ msgid "Save verse with text as ..." +#~ msgstr "Uložit verš s textem jako ..." + +#~ msgid "The bible window" +#~ msgstr "Bible" + +#~ msgid "The commentary window" +#~ msgstr "Komentář" + +#~ msgid "The lexicon window" +#~ msgstr "Slovník" + +#~ msgid "The list of printers" +#~ msgstr "Seznam tiskáren" + +#, fuzzy +#~ msgid "Print to a file" +#~ msgstr "Tisknout do souboru" + +#~ msgid "Browse for the file" +#~ msgstr "Hledat soubor" + +#, fuzzy +#~ msgid "Number of copies" +#~ msgstr "&Počet kopií" + +#~ msgid "Paper type" +#~ msgstr "Typ papíru" + +#~ msgid "Paper size" +#~ msgstr "Velikost papíru" + +#~ msgid "This is the Bible display window" +#~ msgstr "Toto je okno prohlížeče Bible." + +#~ msgid "This is the commentary display window." +#~ msgstr "Toto je okno prohlížeče komentáře." + +#~ msgid "This is the lexicon display window." +#~ msgstr "Toto je okno prohlížeče slovníku." + +#~ msgid "" +#~ "This is the list of available printers of your system.
Please select " +#~ "the printer you want to use for printing." +#~ msgstr "" +#~ "Tento seznam obsahuje dostupné tiskárny.
Vyberte tiskárnu, kterou " +#~ "chcete použít." + +#, fuzzy +#~ msgid "Print to a postscript file on disk." +#~ msgstr "Vytiskne do souboru ve formátu PostScript." + +#, fuzzy +#~ msgid "Browse for the file you want to print to." +#~ msgstr "Výběr souboru, do kterého chcete tisknout." + +#, fuzzy +#~ msgid "The number of copies for printing." +#~ msgstr "Kolik se má vytisknout kopií." + +#, fuzzy +#~ msgid "Choose the orientation of the paper." +#~ msgstr "Vyberte orientaci tisku." + +#, fuzzy +#~ msgid "Print on the paper using \"Portrait\" orientation." +#~ msgstr "Tisknout jako \"portrét\"." + +#, fuzzy +#~ msgid "Print on the paper using \"Landscape\" orientation." +#~ msgstr "Tisknout jako \"krajinu\"." + +#~ msgid "The type of the paper which is used for printing." +#~ msgstr "Typ papíru." + +#, fuzzy +#~ msgid "The size of the paper used." +#~ msgstr "Velikost papíru." + +#~ msgid "Search result for \"%1\" in module \"%2\"\n" +#~ msgstr "Výsledek hledání \"%1\" v modulu \"%2\"\n" + +#~ msgid "Printdialog" +#~ msgstr "Tisk" + +#~ msgid "The general options for printing" +#~ msgstr "Obecné nastavení pro tisk" + +#~ msgid "Available printers:" +#~ msgstr "Dostupné tiskárny:" + +#~ msgid "Host" +#~ msgstr "Hostitel" + +#~ msgid "Comment" +#~ msgstr "Komentář" + +#~ msgid "Print to file:" +#~ msgstr "Tisk do souboru:" + +#~ msgid "&Number of copies" +#~ msgstr "&Počet kopií" + +#~ msgid "Por&trait" +#~ msgstr "Por&trét" + +#~ msgid "L&andscape" +#~ msgstr "&Krajina" + +#~ msgid "Paper t&ype" +#~ msgstr "&Typ papíru" + +#~ msgid "Size: 8888mm x 8888mm" +#~ msgstr "Velikost: 8888mm x 8888mm" + +#~ msgid "Preview application:" +#~ msgstr "Aplikace pro náhled:" + +#~ msgid "*.ps | Postscript files" +#~ msgstr "*.ps | Postscriptové soubory" + +#~ msgid "A4" +#~ msgstr "A4" + +#~ msgid "A5" +#~ msgstr "A5" + +#~ msgid "Letter" +#~ msgstr "Letter" + +#~ msgid "Legal" +#~ msgstr "Legal" + +#~ msgid "Executive" +#~ msgstr "Executive" + +#~ msgid "Layout specific settings" +#~ msgstr "Zvláštní nastavení" + +#~ msgid "Entries" +#~ msgstr "Záznamy" + +#~ msgid "Management of BibleTime's printing queue" +#~ msgstr "Správa tiskové fronty pro BibleTime" + +#~ msgid "Size: %1mm x %2mm" +#~ msgstr "Velikost: %1mm x %2mm" + +#~ msgid "Useful tips for BibleTime" +#~ msgstr "Užitečné tipy pro BibleTime" + +#~ msgid "Run on startup" +#~ msgstr "Spustit při startu" + +#, fuzzy +#~ msgid "Language:" +#~ msgstr "Seznam jazyků" + +#, fuzzy +#~ msgid "Foonotes:" +#~ msgstr "Poznámky" + +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Strongova čísla: %1
" + +#~ msgid "Unlock key:" +#~ msgstr "Odemykací klíč:" + +#~ msgid "Version:" +#~ msgstr "Verze:" + +#, fuzzy +#~ msgid "Not necessary" +#~ msgstr "Není nutný!" + +#~ msgid "Datapath" +#~ msgstr "Cesta k datům" + +#~ msgid "" +#~ "The file does already exist!
Do you want to overwrite it?" +#~ msgstr "Soubor již existuje!
Chcete jej přepsat?
" + +#~ msgid "BibleTime - Save file as ..." +#~ msgstr "BibleTime - Uložit soubor jako ..." + +#~ msgid "Printing %1" +#~ msgstr "Tisk %1" + +#, fuzzy +#~ msgid "Startup options" +#~ msgstr "Tisknout" + +#, fuzzy +#~ msgid "SWORD options" +#~ msgstr "Tisknout" + +#, fuzzy +#~ msgid "Configure BibleTime's key bindings" +#~ msgstr "Nastavení klávesových zkratek" + +#, fuzzy +#~ msgid "Display windows" +#~ msgstr "Okno prohlížeče" + +#, fuzzy +#~ msgid "General settings for display windows" +#~ msgstr "Zavře všechna otevřená okna." + +#, fuzzy +#~ msgid "Colors used in display windows" +#~ msgstr "Zavře všechna otevřená okna." + +#~ msgid "Choose fonts for BibleTime" +#~ msgstr "Výběr písem pro BibleTime" + +#~ msgid "Choose the area of application and set the font for it" +#~ msgstr "Zvolte oblast a nastavte pro ni písmo" + +#, fuzzy +#~ msgid "Accelerators used by all windows" +#~ msgstr "Zavřít všechna okna" + +#, fuzzy +#~ msgid "Accelerators for bible windows" +#~ msgstr "Bible" + +#, fuzzy +#~ msgid "Accelerators for commentary windows" +#~ msgstr "Komentář" + +#, fuzzy +#~ msgid "Accelerators for lexicon windows" +#~ msgstr "Slovník" + +#, fuzzy +#~ msgid "Initializing keyboard accelerators" +#~ msgstr "Nastavení klávesových zkratek" + +#~ msgid "
%1

" +#~ msgstr "
%1

" + +#~ msgid "Display window" +#~ msgstr "Okno prohlížeče" + +#, fuzzy +#~ msgid "Display window Unicode" +#~ msgstr "Okno prohlížeče" + +#, fuzzy +#~ msgid "" +#~ "* | Text files\n" +#~ " *.* | All files (*.*)" +#~ msgstr "" +#~ "*.txt | Textové soubory\n" +#~ " *.* | Všechny soubory (*.*)" + +#~ msgid "Show a daily tip" +#~ msgstr "Zobrazovat tip dne" + +#~ msgid "List of modules" +#~ msgstr "Seznam modulů" + +#~ msgid "Show a preview" +#~ msgstr "Zobrazit náhled" + +#~ msgid "Copies" +#~ msgstr "Kopie" + +#~ msgid "List of styles" +#~ msgstr "Seznam stylů" + +#~ msgid "Delete the chosen printing style" +#~ msgstr "Smazat vybraný styl tisku" + +#~ msgid "Edit the chosen printing style" +#~ msgstr "Upravit vybraný styl tisku" + +#~ msgid "Show or hide the main index depending on current state." +#~ msgstr "Přepínač mezi zobrazením nebo skrytím hlavního seznamu." + +#~ msgid "Show or hide the main toolbar depending on current state." +#~ msgstr "Přepínač mezi zobrazením nebo skrytím hlavní nástrojové lišty." + +#~ msgid "" +#~ "Show or hide the footnotes in the modules deoending on current state." +#~ msgstr "Přepínač mezi zobrazením nebo skrytím poznámek v modulech." + +#~ msgid "Arrange the opened display windows in a tile pattern." +#~ msgstr "Uspořádá otevřená okna přehledně jako dlaždice." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a tile pattern if " +#~ "it's necessary." +#~ msgstr "" +#~ "Otevřená okna budou automaticky uspořádávána jako dlaždice, pokud je to " +#~ "potřeba." + +#~ msgid "Arrange the open display windows in a cascade pattern." +#~ msgstr "Uspořádá otevřená okna do kaskády." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a cascade pattern " +#~ "if it's necessary." +#~ msgstr "" +#~ "Otevřená okna budou automaticky uspořádávána do kaskády, pokud je to " +#~ "potřeba." + +#~ msgid "Open a dialog where you can edit the toolbar of BibleTime." +#~ msgstr "Otevře dialogové okno, ve kterém můžete upravit nástrojovou lištu." + +#~ msgid "Activate this to see a startup logo on each startup of BibleTime." +#~ msgstr "Zapněte, pokud máte zájem o zobrazení loga při spuštění BibleTime." + +#~ msgid "This list contains the modules using foreign fonts." +#~ msgstr "Tento seznam obsahuje moduly používající cizokrajná písma." + +#~ msgid "&Show footnotes" +#~ msgstr "&Poznámky pod čarou" + +#~ msgid "S&how Strong's numbers" +#~ msgstr "&Strongova čísla" + +#, fuzzy +#~ msgid "Frontend" +#~ msgstr "Písmo:" + +#~ msgid "handbook" +#~ msgstr "příručka" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Logo Martina Luthera" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponzor www.bibletime.de" + +#~ msgid "backend" +#~ msgstr "backend" + +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Vedoucí projektu SWORD.\n" +#~ "Pomoc s API SWORDu!" + +#, fuzzy +#~ msgid "Use down arrow to scroll to next verse." +#~ msgstr "Použít šipku dolů pro skok na další verš." + +#~ msgid "Module fonts" +#~ msgstr "Písma modulů" + +#~ msgid "Configure the fonts used for modules" +#~ msgstr "Nastavení písem pro moduly" + +#~ msgid "Result with text" +#~ msgstr "Výsledek s textem" + +#~ msgid "Left" +#~ msgstr "Zarovnání vlevo" + +#~ msgid "Center" +#~ msgstr "Zarovnání na střed" + +#~ msgid "Right" +#~ msgstr "Zarovnání vpravo" + +#~ msgid "&Bottom" +#~ msgstr "&Spodní" + +#~ msgid "Select all" +#~ msgstr "Vybrat vše" + +#~ msgid "Configure BibleTime's general options" +#~ msgstr "Obecná nastavení pro BibleTime" + +#~ msgid "" +#~ "
Missing tips!


Your installation " +#~ "is missing the daily tips.\t\tPlease make sure all files of BibleTime are" +#~ "\t\tinstalled and that the permissions of $KDEDIR are correct!

\t" +#~ "\tIf you can't solve this problem please contact the team of BibleTime at" +#~ "\t\tinfo@bibletime.de!" +#~ msgstr "" +#~ "
Tipy nenalezeny!


Ve Vaší " +#~ "instalaci chybějí tipy dne.\t\tPřesvědčte se, že všechny soubory pro " +#~ "BibleTime jsou\t\tnainstalovány a že práva k adresáři $KDEDIR jsou " +#~ "správně!

\t\tPokud se Vám nedaří tento problém vyřešit, " +#~ "kontaktujte nás prosím na adrese\t\tinfo@bibletime.de!" + +#~ msgid "Foonotes: %1
" +#~ msgstr "Poznámky: %1
" + +#~ msgid "BibleTime - Help window" +#~ msgstr "BibleTime - Nápověda" + +#~ msgid "Translation into Brazilian Portoguese" +#~ msgstr "Překlad do brazilské portugalštiny" diff --git a/bibletime-doc/po/da.po b/bibletime-doc/po/da.po new file mode 100644 index 0000000..31e59a5 --- /dev/null +++ b/bibletime-doc/po/da.po @@ -0,0 +1,2129 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2001-06-10 20:57+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: ENCODING\n" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/bibletime_init.cpp:72 +msgid "Clear printing queue" +msgstr "" + +#: bibletime/bibletime_init.cpp:87 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:92 +msgid "Search in module(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:97 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:312 +msgid "Remove selected item(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:102 +msgid "&Show footnotes" +msgstr "" + +#: bibletime/bibletime_init.cpp:107 +msgid "S&how Strong's numbers" +msgstr "" + +#: bibletime/bibletime_init.cpp:116 +msgid "&Show main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:128 +msgid "&Cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:133 +msgid "&Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:138 +msgid "&Auto cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:143 +msgid "A&uto Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:148 +msgid "&Close all" +msgstr "" + +#: bibletime/bibletime_init.cpp:169 +msgid "&Daily tip" +msgstr "" + +#: bibletime/main.cpp:70 +msgid "Enable debug messages." +msgstr "" + +#: bibletime/main.cpp:78 +msgid "Bible study tool for KDE 2" +msgstr "" + +#: bibletime/main.cpp:80 +msgid "(c)1999-2001, The BibleTime Team" +msgstr "" + +#: bibletime/main.cpp:81 +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for new developers, translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" + +#: bibletime/main.cpp:87 +msgid "Project coordinator, frontend, backend" +msgstr "" + +#: bibletime/main.cpp:88 +msgid "Frontend, backend, misc things" +msgstr "" + +#: bibletime/main.cpp:91 +msgid "Handbook" +msgstr "" + +#: bibletime/main.cpp:94 +msgid "Translation into Hungarian" +msgstr "" + +#: bibletime/main.cpp:95 bibletime/main.cpp:104 +msgid "Translation into Italian" +msgstr "" + +#: bibletime/main.cpp:96 +msgid "Translation into Polish" +msgstr "" + +#: bibletime/main.cpp:97 +msgid "Translation into Danish" +msgstr "" + +#: bibletime/main.cpp:98 +msgid "Translation into Norwegian" +msgstr "" + +#: bibletime/main.cpp:99 +msgid "Translation into Brazilian Portoguese" +msgstr "" + +#: bibletime/main.cpp:100 +msgid "Translation into Dutch" +msgstr "" + +#: bibletime/main.cpp:101 +msgid "Translation into French" +msgstr "" + +#: bibletime/main.cpp:102 +msgid "Translation into Czech" +msgstr "" + +#: bibletime/main.cpp:103 bibletime/main.cpp:105 +msgid "Translation into Portoguese" +msgstr "" + +#: bibletime/main.cpp:106 +msgid "Translation into Slovak" +msgstr "" + +#: bibletime/main.cpp:109 +msgid "Bible study HowTo" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:56 +#: bibletime/main.cpp:110 +msgid "Optionsdialog" +msgstr "" + +#: bibletime/main.cpp:111 +msgid "handbook" +msgstr "" + +#: bibletime/main.cpp:112 +msgid "Martin Luther startup logo" +msgstr "" + +#: bibletime/main.cpp:113 +msgid "Sponsor of www.bibletime.de" +msgstr "" + +#: bibletime/main.cpp:114 +msgid "backend" +msgstr "" + +#: bibletime/main.cpp:115 +msgid "" +"Leader of the SWORD project.\n" +"Lots of help with the SWORD API!" +msgstr "" + +#: bibletime/bibletime.cpp:175 bibletime/bibletime.cpp:190 +#: bibletime/bibletime_slots.cpp:98 bibletime/bibletime_slots.cpp:107 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:95 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:297 +msgid "Display window" +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Printing..." +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Abort printing" +msgstr "" + +#: bibletime/bibletime_slots.cpp:313 +#, c-format, ycp-format +msgid "Printing %1" +msgstr "" + +#: bibletime/printing/cstylelist.cpp:46 +msgid "Name:" +msgstr "" + +#: bibletime/printing/cprinter.cpp:310 bibletime/printing/cprinter.cpp:341 +#: bibletime/printing/cprinter.cpp:519 bibletime/printing/cprinter.cpp:527 +#: bibletime/printing/cprinterdialog.cpp:616 +#: bibletime/printing/cstyleeditordialog.cpp:182 +#: bibletime/printing/cstylelist.cpp:130 +msgid "Standard" +msgstr "" + +#: bibletime/printing/cstyle.cpp:42 +msgid "unknown name" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +#: bibletime/printing/cprintitemlist.cpp:48 +msgid "Module" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:49 +msgid "From" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:50 +msgid "To" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:51 +msgid "Style" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:43 +msgid "style editor" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:67 +msgid "Name of style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +msgid "Choose the part of the style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:77 +#: bibletime/printing/cstyleeditordialog.cpp:281 +msgid "Header" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:593 +#: bibletime/printing/cstyleeditordialog.cpp:78 +#: bibletime/printing/cstyleeditordialog.cpp:285 +msgid "Description" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:79 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Module text" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:85 +msgid "Enable this part" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:468 +#: bibletime/printing/cstyleeditordialog.cpp:96 +msgid "Left" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:470 +#: bibletime/printing/cstyleeditordialog.cpp:97 +msgid "Center" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:472 +#: bibletime/printing/cstyleeditordialog.cpp:98 +msgid "Right" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:109 +msgid "Foreground:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:120 +msgid "Background:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:131 +msgid "Choose font" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:134 +msgid "Font preview" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:148 +msgid "Use frame" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:158 +msgid "Line thickness (in point):" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:166 +msgid "Frame color:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:64 +msgid "Printdialog" +msgstr "" + +#: bibletime/dummy.h:123 bibletime/printing/cprinterdialog.cpp:65 +#: bibletime/tooltipdef.h:123 +msgid "Preview" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "General" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "The general options for printing" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:92 +msgid "Available printers:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:97 +msgid "Printer" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:98 +msgid "Host" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:99 +msgid "Comment" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:106 +msgid "Print to file:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +#: bibletime/printing/cprinterdialog.cpp:120 +msgid "Search" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:141 +msgid "&Number of copies" +msgstr "" + +#: bibletime/dummy.h:153 bibletime/printing/cprinterdialog.cpp:149 +#: bibletime/tooltipdef.h:153 +msgid "Orientation" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:153 +msgid "Por&trait" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:157 +msgid "L&andscape" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:173 +msgid "Paper t&ype" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:177 +msgid "Size: 8888mm x 8888mm" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:196 +msgid "Preview application:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:292 +msgid "*.ps | Postscript files" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:335 +msgid "A4" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:336 +msgid "A5" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:337 +msgid "Letter" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:338 +msgid "Legal" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:339 +msgid "Executive" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:370 +msgid "Layout specific settings" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:373 +msgid "Margins (in millimeter)" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:381 +msgid "&Top" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:382 +msgid "&Bottom" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:383 +msgid "&Left" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:384 +msgid "&Right" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:433 +msgid "List of style items:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Entries" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Management of BibleTime's printing queue" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:481 +msgid "Choose a style" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:493 +msgid "Entries which should be printed:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:540 +#, c-format, ycp-format +msgid "Size: %1mm x %2mm" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:63 +msgid "Synchronize..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:68 +msgid "Edit entry..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:78 +msgid "Commentary window" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:81 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:66 +msgid "Entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:82 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:67 +msgid "Text of entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:83 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:88 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:68 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:73 +msgid "Entry with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:75 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:70 +msgid "Selected text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:91 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:76 +msgid "Entry as plain text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:92 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:77 +msgid "Entry as HTML" +msgstr "" + +#: bibletime/dummy.h:95 bibletime/frontend/presenters/cbiblepresenter.cpp:86 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:94 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:79 +#: bibletime/tooltipdef.h:95 +msgid "Select all" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:87 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:95 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:80 +msgid "Lookup selected text in lexicon" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:89 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:97 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:82 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:401 +msgid "Copy..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:90 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:98 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:83 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:402 +msgid "Add to printing queue..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:91 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:403 +msgid "Save..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:67 +msgid "Bible window" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:70 +msgid "Verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:71 +msgid "Text of verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:72 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:78 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:82 +msgid "Verse with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:73 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:79 +msgid "Chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:83 +msgid "Chapter as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:84 +msgid "Chapter as HTML" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "Save verse with text as ..." +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +msgid "Select additional modules" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:51 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:121 +msgid "NONE" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:63 +msgid "Lexicon window" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Accelerators" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Configure BibleTime's key bindings" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:86 +msgid "Choose fonts for BibleTime" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:90 +msgid "Choose the area of application and set the font for it" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:101 +msgid "The quick brown fox jumped over the lazy dog" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Module fonts" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Configure the fonts used for modules" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Configure BibleTime's colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:141 +msgid "Background" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:158 +msgid "Highlighted Verse" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +msgid "Configure BibleTime's general options" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:170 +msgid "Show tip of the day" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:187 +msgid "Language for booknames" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:192 +msgid "English" +msgstr "" + +#: bibletime/dummy.h:130 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:211 +#: bibletime/tooltipdef.h:130 +msgid "Show startuplogo" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:172 +msgid "module not set" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Search Dialog" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Interrupt" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:94 +msgid "Choose modules" +msgstr "" + +#: bibletime/dummy.h:99 bibletime/frontend/searchdialog/csearchdialog.cpp:94 +#: bibletime/tooltipdef.h:99 +msgid "Choose the modules for the search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Search Text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Enter the text to search for" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "Search Result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "The result of your search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Graphical analysis of your search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialoganalysis.cpp:316 +#, ycp-format +msgid "
%1

" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:57 +msgid "Search properties" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:75 +msgid "Multiple Words" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:83 +msgid "Exact Search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:90 +msgid "Regular Expression" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:103 +msgid "Case Sensitive" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:107 +msgid "Search scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:111 +msgid "Search progress" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:116 +msgid "Current module:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:117 +msgid "Overall:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +msgid "Search result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:203 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:240 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:273 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:318 +#, ycp-format +msgid "Search result for \"%1\" in module \"%2\"\n" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +msgid "Save search result ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:391 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:398 +msgid "Key" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:392 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:395 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:399 +msgid "Key with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "Save key ..." +msgstr "" + +#: bibletime/dummy.h:110 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:110 +msgid "No scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:216 +msgid "Choose custom range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:217 +msgid "Define range text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:218 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Range name" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Please enter a name for the new range" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:68 +msgid "Useful tips for BibleTime" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:100 +msgid "Run on startup" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:120 +msgid "" +"
Missing tips!


Your installation is " +"missing the daily tips.\t\tPlease make sure all files of BibleTime are\t" +"\tinstalled and that the permissions of $KDEDIR are correct!

\t\tIf " +"you can't solve this problem please contact the team of BibleTime at\t\tinfo@bibletime.de!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:198 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "Save text as HTML page ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +msgid "Save text as plain text ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:453 +msgid "Choose a font:" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:457 +msgid "Choose font size" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:461 +msgid "Bold" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:465 +msgid "Underlined" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:474 +msgid "Justify" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:182 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:193 +msgid "unknown" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:220 +msgid "Bookmark to" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +#, ycp-format +msgid "Foonotes: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:247 +#, ycp-format +msgid "Strong's numbers: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "Unlock key:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "not set" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:251 +msgid "Version:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:253 +msgid "Font:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:170 +msgid "Bibles" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:173 +msgid "Commentaries" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:176 +msgid "Lexicons" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:284 +msgid "Caption" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:292 +msgid "Main index" +msgstr "" + +#: bibletime/dummy.h:51 bibletime/frontend/groupmanager/cgroupmanager.cpp:293 +#: bibletime/tooltipdef.h:51 +msgid "Create a new folder" +msgstr "" + +#: bibletime/dummy.h:52 bibletime/frontend/groupmanager/cgroupmanager.cpp:296 +#: bibletime/tooltipdef.h:52 +msgid "Change this folder" +msgstr "" + +#: bibletime/dummy.h:53 bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +#: bibletime/tooltipdef.h:53 +msgid "Change this bookmark" +msgstr "" + +#: bibletime/dummy.h:54 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:54 +msgid "Import bookmarks" +msgstr "" + +#: bibletime/dummy.h:55 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:55 +msgid "Export bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:309 +msgid "Print bookmark" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:315 +msgid "Search in selected module(s)" +msgstr "" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:318 +#: bibletime/tooltipdef.h:57 +msgid "Unlock this module" +msgstr "" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:321 +#: bibletime/tooltipdef.h:58 +msgid "About this module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Please enter here the description:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Change bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Please change the description of the item!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Change folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Please change the name of the group!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:563 +msgid "Not necessary!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:575 +msgid "Datapath" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:577 +msgid "Version" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:579 +msgid "Unlock key" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:581 +msgid "Writable" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:589 +msgid "Footnotes" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:591 +msgid "Strong's numbers" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Enter name of folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Please enter the name of the folder!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "BibleTime - Unlock module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "Enter the key to unlock the module!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1178 +msgid "Import bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1186 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1189 +msgid "Import of bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1203 +msgid "Export bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "BibleTime - Reset main index" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "" +"The file does already exist!
Do you want to overwrite it?
" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "BibleTime - Save file as ..." +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:35 bibletime/frontend/chtmldialog.cpp:43 +msgid "BibleTime - Help window" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit toolbar" +msgstr "" + +#: bibletime/dummy.h:41 bibletime/tooltipdef.h:41 +msgid "BibleTime's handbook" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Enter \"What's this?\" mode" +msgstr "" + +#: bibletime/dummy.h:43 bibletime/tooltipdef.h:43 +msgid "Send bugreport" +msgstr "" + +#: bibletime/dummy.h:44 bibletime/tooltipdef.h:44 +msgid "Show a daily tip" +msgstr "" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "About BibleTime" +msgstr "" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "About KDE" +msgstr "" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +msgid "The main index" +msgstr "" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "Add bookmark to printing queue" +msgstr "" + +#: bibletime/dummy.h:61 bibletime/tooltipdef.h:61 +msgid "The working area" +msgstr "" + +#: bibletime/dummy.h:63 bibletime/tooltipdef.h:63 +msgid "The bible window" +msgstr "" + +#: bibletime/dummy.h:64 bibletime/tooltipdef.h:64 +msgid "The commentary window" +msgstr "" + +#: bibletime/dummy.h:65 bibletime/tooltipdef.h:65 +msgid "The lexicon window" +msgstr "" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "Show the next entry" +msgstr "" + +#: bibletime/dummy.h:68 bibletime/tooltipdef.h:68 +msgid "Show the previous entry" +msgstr "" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Jump to next verse" +msgstr "" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Jump to previous verse" +msgstr "" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Show next chapter" +msgstr "" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Show previous chapter" +msgstr "" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +msgid "Show next book" +msgstr "" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +msgid "Show previous book" +msgstr "" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "List of books" +msgstr "" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +msgid "List of chapters" +msgstr "" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of verses" +msgstr "" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of entries" +msgstr "" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "Scroll through the list" +msgstr "" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "Edit this entry" +msgstr "" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Save this comment" +msgstr "" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Delete this comment" +msgstr "" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Comment up to" +msgstr "" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Set bold" +msgstr "" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Set italic" +msgstr "" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set underlined" +msgstr "" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set font" +msgstr "" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set the color" +msgstr "" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set the fontsize" +msgstr "" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Synchronize with Bible windows" +msgstr "" + +#: bibletime/dummy.h:94 bibletime/tooltipdef.h:94 +msgid "Save as HTML" +msgstr "" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Copy to clipboard" +msgstr "" + +#: bibletime/dummy.h:100 bibletime/tooltipdef.h:100 +msgid "Add the selected module to the list" +msgstr "" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +msgid "Remove the selected module from the list" +msgstr "" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "List of modules used for the search" +msgstr "" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "Search this text" +msgstr "" + +#: bibletime/dummy.h:105 bibletime/tooltipdef.h:105 +msgid "Search multiple words" +msgstr "" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +msgid "Exact match" +msgstr "" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search with GNU regular expressions" +msgstr "" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Search case sensitive" +msgstr "" + +#: bibletime/dummy.h:111 bibletime/tooltipdef.h:111 +msgid "Last search result" +msgstr "" + +#: bibletime/dummy.h:112 bibletime/tooltipdef.h:112 +msgid "Use own scope" +msgstr "" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Add a new scope" +msgstr "" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +msgid "Delete this search scope" +msgstr "" + +#: bibletime/dummy.h:115 bibletime/dummy.h:297 bibletime/tooltipdef.h:115 +#: bibletime/whatsthisdef.h:123 +msgid "Edit and define your search scopes" +msgstr "" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Choose a search scope from the list" +msgstr "" + +#: bibletime/dummy.h:117 bibletime/tooltipdef.h:117 +msgid "Enter your own search scope" +msgstr "" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Parsed result" +msgstr "" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Close this dialog" +msgstr "" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Used modules" +msgstr "" + +#: bibletime/dummy.h:122 bibletime/tooltipdef.h:122 +msgid "Items found" +msgstr "" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Graphical analysis" +msgstr "" + +#: bibletime/dummy.h:128 bibletime/tooltipdef.h:128 +msgid "Show daily tip" +msgstr "" + +#: bibletime/dummy.h:129 bibletime/tooltipdef.h:129 +msgid "List of languages" +msgstr "" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +msgid "Set keyboard accelerators" +msgstr "" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Choose the area of application" +msgstr "" + +#: bibletime/dummy.h:136 bibletime/dummy.h:317 bibletime/tooltipdef.h:136 +#: bibletime/whatsthisdef.h:143 +msgid "Choose a font" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "List of modules" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "Color of the background" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "Color of the highlighted verse" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "Start printing" +msgstr "" + +#: bibletime/dummy.h:145 bibletime/tooltipdef.h:145 +msgid "Show a preview" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Open help" +msgstr "" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "The list of printers" +msgstr "" + +#: bibletime/dummy.h:150 bibletime/tooltipdef.h:150 +msgid "Print into a file" +msgstr "" + +#: bibletime/dummy.h:151 bibletime/tooltipdef.h:151 +msgid "Browse for the file" +msgstr "" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Copies" +msgstr "" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Paper type" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Paper size" +msgstr "" + +#: bibletime/dummy.h:159 bibletime/tooltipdef.h:159 +msgid "Styles" +msgstr "" + +#: bibletime/dummy.h:160 bibletime/tooltipdef.h:160 +msgid "List of print items" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Move item up" +msgstr "" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Move item down" +msgstr "" + +#: bibletime/dummy.h:163 bibletime/tooltipdef.h:163 +msgid "Delete items" +msgstr "" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Insert a page break" +msgstr "" + +#: bibletime/dummy.h:166 bibletime/tooltipdef.h:166 +msgid "Page borders" +msgstr "" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "Left border" +msgstr "" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Right border" +msgstr "" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Upper border" +msgstr "" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Lower border" +msgstr "" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "List of styles" +msgstr "" + +#: bibletime/dummy.h:172 bibletime/tooltipdef.h:172 +msgid "Delete the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Edit the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Create a new printing style" +msgstr "" + +#: bibletime/dummy.h:202 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the printing queue of BibleTime. All items will be removed from the " +"list, the print button will be disabled." +msgstr "" + +#: bibletime/dummy.h:203 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printerdialog of BibleTime where you can edit the printing queue " +"and assign styles to the items." +msgstr "" + +#: bibletime/dummy.h:204 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "" + +#: bibletime/dummy.h:206 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search text in one or more modules." +msgstr "" + +#: bibletime/dummy.h:207 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder the " +"subitems of it will be removed, too." +msgstr "" + +#: bibletime/dummy.h:208 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:36 +msgid "Show or hide the main index depending on current state." +msgstr "" + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:37 +msgid "Show or hide the main toolbar depending on current state." +msgstr "" + +#: bibletime/dummy.h:212 bibletime/whatsthisdef.h:38 +msgid "Show or hide the footnotes in the modules deoending on current state." +msgstr "" + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:39 +msgid "" +"Show or hide Strong's numbers in the modules depending on current state." +msgstr "" + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:41 +msgid "Arrange the opened display windows in a tile pattern." +msgstr "" + +#: bibletime/dummy.h:216 bibletime/whatsthisdef.h:42 +msgid "" +"The open display windows will automatically arranged in a tile pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:43 +msgid "Arrange the open display windows in a cascade pattern." +msgstr "" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:44 +msgid "" +"The open display windows will automatically arranged in a cascade pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "" + +#: bibletime/dummy.h:221 bibletime/whatsthisdef.h:47 +msgid "Open a dialog where you can edit the toolbar of BibleTime." +msgstr "" + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:48 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:50 +msgid "Open KDE's helpbrowser with BibleTime's handbook." +msgstr "" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:51 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help." +msgstr "" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:52 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "" + +#: bibletime/dummy.h:227 bibletime/whatsthisdef.h:53 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:54 +msgid "Show detailed information about BibleTime." +msgstr "" + +#: bibletime/dummy.h:229 bibletime/whatsthisdef.h:55 +msgid "Show the general about dialog of KDE 2." +msgstr "" + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:59 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:60 +msgid "" +"Create a new folder in the main index.
If you pressed the right mouse " +"button on a folder the new folder will be a sub-item of it.
Otherwise you " +"will create a toplevel folder." +msgstr "" + +#: bibletime/dummy.h:235 bibletime/whatsthisdef.h:61 +msgid "Change the properties of the selected folder." +msgstr "" + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:62 +msgid "Change the properties of the selected bookmark." +msgstr "" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:63 +msgid "Import bookmark from a file." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:64 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:65 +msgid "" +"Use this to add this bookmark to BibleTime's printing queue. The key, the " +"description and the text of the key will be used for printing." +msgstr "" + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:66 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:67 +msgid "Open a dialog to show information about the selected module." +msgstr "" + +#: bibletime/dummy.h:244 bibletime/whatsthisdef.h:70 +msgid "" +"This area contains is the working place of Bibletime.
All display windows " +"are opened in this place." +msgstr "" + +#: bibletime/dummy.h:246 bibletime/whatsthisdef.h:72 +msgid "This is the Bible display window" +msgstr "" + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:73 +msgid "This is the commentary display window." +msgstr "" + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:74 +msgid "This is the lexicon display window." +msgstr "" + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:76 +msgid "The next entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:77 +msgid "The previous entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:78 +msgid "" +"If you view the text of a Bible the next verse will be highlighted.
If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:79 +msgid "" +"If you view the text of a Bible the previous verse will be highlighted. If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:80 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:81 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" + +#: bibletime/dummy.h:256 bibletime/whatsthisdef.h:82 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" + +#: bibletime/dummy.h:257 bibletime/whatsthisdef.h:83 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:84 +msgid "This list contains the books which are available in this module." +msgstr "" + +#: bibletime/dummy.h:259 bibletime/whatsthisdef.h:85 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:86 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:87 +msgid "This list contains the entries of the current module." +msgstr "" + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:88 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:89 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:90 +msgid "Save the personal comment." +msgstr "" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:91 +msgid "Clear the text and delete the entry from the module." +msgstr "" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:92 +msgid "Switch between bold and non-bold formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:93 +msgid "Switch between italic and non-italic formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:94 +msgid "" +"Switch between underlined and non-undelined formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:95 +msgid "Choose a new font for the selected text." +msgstr "" + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:96 +msgid "Choose a new color for the selected text." +msgstr "" + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:97 +msgid "Choose a new fontsize for the selected text." +msgstr "" + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:99 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:102 +msgid "Save the displayed chapter as a HTML file." +msgstr "" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:103 +msgid "Select all text." +msgstr "" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:104 +msgid "Copy the displayed text to the clipboard." +msgstr "" + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:107 +msgid "" +"Choose the modules which will be used for the search.
Use the two button " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" + +#: bibletime/dummy.h:282 bibletime/whatsthisdef.h:108 +msgid "Add the selected module to the list on the left." +msgstr "" + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:109 +msgid "Remove the selected module from the list on the left side." +msgstr "" + +#: bibletime/dummy.h:284 bibletime/whatsthisdef.h:110 +msgid "The list of modules used for the search." +msgstr "" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:112 +msgid "The text entered in this edit box will be searched in all modules." +msgstr "" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:113 +msgid "" +"Select this to search for multiple words.
Each word in the edit line is " +"searched as a single word." +msgstr "" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:114 +msgid "" +"Select this to search for exactly the same text you entered in the edit line." +msgstr "" + +#: bibletime/dummy.h:289 bibletime/whatsthisdef.h:115 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" + +#: bibletime/dummy.h:290 bibletime/whatsthisdef.h:116 +msgid "Activate this to use case sensitive search." +msgstr "" + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:118 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:119 +msgid "" +"Select this if you want to use the last search result of each module as " +"search scope." +msgstr "" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:120 +msgid "Create a new search scope." +msgstr "" + +#: bibletime/dummy.h:295 bibletime/whatsthisdef.h:121 +msgid "" +"Use an own scope for the search.
A standard set of search scopes exists." +msgstr "" + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:122 +msgid "Use this button to delete the chosen search scope." +msgstr "" + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:124 +msgid "Choose a search scope from the combo box" +msgstr "" + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:125 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:126 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" + +#: bibletime/dummy.h:301 bibletime/whatsthisdef.h:127 +msgid "Close this dialog and save the changes." +msgstr "" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:129 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:130 +msgid "This contains the items found in the selected module." +msgstr "" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:131 +msgid "This text box shows a preview of the chosen item." +msgstr "" + +#: bibletime/dummy.h:307 bibletime/whatsthisdef.h:133 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:136 +msgid "Activate this box to see a daily tip on startup." +msgstr "" + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:137 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" + +#: bibletime/dummy.h:312 bibletime/whatsthisdef.h:138 +msgid "Activate this to see a startup logo on each startup of BibleTime." +msgstr "" + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:141 +msgid "Select a action and change the key binding for the action." +msgstr "" + +#: bibletime/dummy.h:316 bibletime/whatsthisdef.h:142 +msgid "" +"Select in this box how the font is used and change the font in the font " +"chooser." +msgstr "" + +#: bibletime/dummy.h:319 bibletime/whatsthisdef.h:145 +msgid "This list contains the modules using foreign fonts." +msgstr "" + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:147 +msgid "This is the background color used in display windows." +msgstr "" + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:148 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" + +#: bibletime/dummy.h:325 bibletime/whatsthisdef.h:151 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:152 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:153 +msgid "" +"Closes this dialog without doing anything with the items or the printer." +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:154 +msgid "Open the online help of BibleTime." +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:156 +msgid "" +"This is the list of available printers of your system.
Please select the " +"printer you want to use for printing." +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:157 +msgid "Print into a postscript file on disk." +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:158 +msgid "Browse for the file you want to print into." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:159 +msgid "The number of copies used for printing." +msgstr "" + +#: bibletime/dummy.h:334 bibletime/whatsthisdef.h:160 +msgid "Choose the orientation of the used paper." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:161 +msgid "Print on the paper using \"Portrait\" as orientation." +msgstr "" + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:162 +msgid "Print on the paper using \"Landscape\" as orientation." +msgstr "" + +#: bibletime/dummy.h:337 bibletime/whatsthisdef.h:163 +msgid "The type of the paper which is used for printing." +msgstr "" + +#: bibletime/dummy.h:338 bibletime/whatsthisdef.h:164 +msgid "The size of the used paper." +msgstr "" + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:166 +msgid "This combo box contains the available printing styles." +msgstr "" + +#: bibletime/dummy.h:341 bibletime/whatsthisdef.h:167 +msgid "This is the list which contains the available print items." +msgstr "" + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:168 +msgid "Move the selected item one item above." +msgstr "" + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:169 +msgid "Move the selected item one item below." +msgstr "" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:170 +msgid "Delete the selected items." +msgstr "" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:171 +msgid "Inserts a page break into the list.
The printer will start new page." +msgstr "" + +#: bibletime/dummy.h:347 bibletime/whatsthisdef.h:173 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" + +#: bibletime/dummy.h:348 bibletime/whatsthisdef.h:174 +msgid "The size of the border on the left side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:175 +msgid "The size of the border on the right side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:176 +msgid "The size of the border on the top of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:177 +msgid "The size of the border on the bottom of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:178 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" + +#: bibletime/dummy.h:353 bibletime/whatsthisdef.h:179 +msgid "Remove the selected printing style from the list." +msgstr "" + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:180 +msgid "Change the properties of the selected printing style." +msgstr "" + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:181 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" diff --git a/bibletime-doc/po/de.gmo b/bibletime-doc/po/de.gmo new file mode 100644 index 0000000000000000000000000000000000000000..afdcb5a55e521adffbd2374c699bb0768a1d36a4 GIT binary patch literal 64481 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 E2Q?!xYybcN literal 0 HcmV?d00001 diff --git a/bibletime-doc/po/de.po b/bibletime-doc/po/de.po new file mode 100644 index 0000000..816058e --- /dev/null +++ b/bibletime-doc/po/de.po @@ -0,0 +1,2974 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: BibleTime 1.0\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2002-04-05 14:17GMT\n" +"Last-Translator: Martin Gruner \n" +"Language-Team: Deutsch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.5\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "Fußnoten" + +#: bibletime/backend/cswordbackend.cpp:315 +msgid "Strong's Numbers" +msgstr "Strongnummern" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "Überschriften" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "Morphologische Tags" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "Wurzeln" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "Hebräische Vokalzeichen" + +#: bibletime/backend/cswordbackend.cpp:325 +msgid "Hebrew Cantillation" +msgstr "Hebräische Kantillationszeichen" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "Griechische Akzente" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "Textvarianten" + +#: bibletime/main.cpp:110 +msgid "Enable debug messages" +msgstr "Fehlermeldungen aktivieren" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" +"Ignoriere das Startprofil, das nach dem letzten Start von BibleTime " +"gespeichert wurde." + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Bibelstudien Werkzeug für KDE 2" + +#: bibletime/main.cpp:121 +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2002, Das BibleTime Team" + +#: bibletime/main.cpp:122 +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"BibleTime ist ein einfach zu benutzendes und gleichzeitig mächtiges " +"Bibelstudien Werkzeug für KDE 2.\n" +"\n" +"Wir suchen nach Übersetzern und Handbuch Autoren.\n" +"Wenn Sie uns helfen möchten schicken Sie eine eMail an info@bibletime.de." + +#: bibletime/main.cpp:130 +msgid "Project coordinator" +msgstr "Projekt Koordinator" + +#: bibletime/main.cpp:131 +msgid "Frontend, backend" +msgstr "Oberfläche, Backend" + +#: bibletime/main.cpp:132 +msgid "Searchdialog" +msgstr "Suchdialog" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "Icons, Startlogo, Banner" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Handbuch" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Übersetzung ins Tschechische" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Übersetzung ins Dänische" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Übersetzung ins Holländische" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Übersetzung ins Französische" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Übersetzung ins Ungarische" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Übersetzung ins Italienische" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Übersetzung ins Norwegische" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Übersetzung ins Polnische" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Übersetzung ins Portugiesische" + +#: bibletime/main.cpp:155 +msgid "Translation into Russian" +msgstr "Übersetzung ins Russische" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Übersetzung ins Slovakische" + +#: bibletime/main.cpp:157 +msgid "Translation into Spanish" +msgstr "Übersetzung ins Spanische" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Anleitung zum Bibelstudium" + +#: bibletime/main.cpp:185 +msgid "Starting BibleTime" +msgstr "BibleTime startet" + +#: bibletime/bibletime_init.cpp:59 +msgid "Creating BibleTime's GUI" +msgstr "Erstelle BibleTimes Oberfläche" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "Initialisiere Menü- und Werkzeugleisten" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Leere die Druckschlange" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Hauptgruppe zurücksetzen" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Suche in Modul(en)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Entferne ausgewählte Einträge" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "&Zeige Hauptgruppe" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "&Staffeln" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "&Kacheln" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Automatisch Staffeln" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&utomatisch Kacheln" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "&Schließe alle" + +#: bibletime/bibletime_init.cpp:167 +msgid "&Save profile" +msgstr "Profil &speichern" + +#: bibletime/bibletime_init.cpp:172 +msgid "&Load profile" +msgstr "Profil &laden" + +#: bibletime/bibletime_init.cpp:177 +msgid "&Configure profiles" +msgstr "P&rofile verwalten" + +#: bibletime/bibletime_init.cpp:183 +msgid "&Fullscreen mode" +msgstr "&Vollbildmodus" + +#: bibletime/bibletime_init.cpp:202 +msgid "&Handbook" +msgstr "&Handbuch" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "&Installation" + +#: bibletime/bibletime_init.cpp:214 +msgid "&Bible Study Howto" +msgstr "&Anleitung zum Bibelstudium" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "&Täglicher Tipp" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "Initialisiere Sword" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "Initialisiere Drucksystem" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "Stileditor" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Name des Stiles:" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Wählen sie einen Teil des Stils:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Kopf" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Beschreibung" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Modultext" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Diesen Teil aktivieren" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Vordergrund:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Hintergrund:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Schrift wählen" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Schriftvorschau" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Rahmen benutzen" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Liniendicke (in Punkten):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Rahmenfarbe:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +msgid "Line style:" +msgstr "Linienstil:" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Name:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "Farbiger Stil für größere Textabschnitte" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "Schwarz-Weiß Stil für größere Textabschnitte" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "Unbekannter Name" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Stile" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Ränder (in Millimetern)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "&Oben" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "&Links" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "&Rechts" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Liste der Stile:" + +#: bibletime/printing/cprintdialogpages.cpp:192 +msgid "Print queue" +msgstr "Druckschlange" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Wählen Sie einen Stil" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Einträge die gedruckt werden sollen:" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Modul" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "Von" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "Bis" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Stil" + +#: bibletime/frontend/chtmldialog.cpp:84 +msgid "Backward" +msgstr "Rückwärts" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "Vorwärts" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "Ok" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Konnte die Seite %1 nicht finden!" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | HTML Dateien\n" +"*.* | Alle Dateien (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Text als HTML abspeichern ..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +"*.txt | Text Datei (*.txt)\n" +"*.* | Alle Dateien (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Als reinen Text abspeichern ..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Wählen Sie eine Schriftart:" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Schriftgröße wählen" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Fett" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Unterstrichen" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Blocksatz" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "Unbekannt" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Lesezeichen zu" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +msgid "Language" +msgstr "Sprache" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Schlüssel" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "nicht gesetzt" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Version" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Bibeln" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "Bücher" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Kommentare" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Lexika" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Titel" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Hauptgruppe" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Erzeuge einen neuen Ordner" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Ändere diesen Ordner" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Ändere dieses Lesezeichen" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Importiere Lesezeichen" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Exportiere Lesezeichen" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Drucke Lesezeichen" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Durchsuche gewählte Module" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Dieses Modul entschlüsseln" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "Über dieses Modul" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Lesezeichenbeschreibung - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Bitte geben Sie hier die Beschreibung ein:" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Ändern der Lesezeichenbeschreibung - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Bitte ändern Sie die Beschreibung des Eintrags!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Ordner Ändern - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Bitte ändern Sie den Namen der Gruppe!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +msgid "Location" +msgstr "Ort" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Schreibbar" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +msgid "yes" +msgstr "Ja" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "Kodierung" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "Unicode" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "iso8859-1" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "Eigenschaften" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Ordnernamen eingeben - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Bitte geben Sie den Namen des Ordners ein!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - Modul freischalten" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Geben Sie den Schlüssel ein, um das Modul freizuschalten!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Importiere Lesezeichen ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Ein Problem trat während dem Import der Lesezeichen auf!
Das " +"Lesezeichenformat der importierten Datei ist neuer als die Formatversion " +"dieser Version von BibleTime!
Das Importieren der Lesezeichen könnte " +"nicht ordnungsgemäß funktionieren!
Möchten Sie fortfahren?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Import von Lesezeichen" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Exportiere Lesezeichen ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Diese Funktion setzt die Hauptgruppe zurück!
Dies erzeugt die " +"ursprünglichen Ordner erneut und löscht alle anderen Einträge!
Stellen " +"Sie sicher,dass keine wichtigen Lesezeichen gelöscht werden!
Möchten Sie " +"fortfahren?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - Hauptgruppe zurücksetzen" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Lexikonfenster" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Eintrag" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Text des Eintrages" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Eintrag mit Text" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Ausgewählter Text" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Eintrag als normalen Text" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Eintrag als HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Gewählten Text in Lexikon nachschlagen" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Kopiere..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Füge zur Druckschlange hinzu..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Speichern..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +msgid "Next entry" +msgstr "Nächster Eintrag" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +msgid "Previous entry" +msgstr "Vorheriger Eintrag" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Bibelfenster" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "Vers" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "Text des Verses" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "Vers mit Text" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "Kapitel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "Kapitel als normalen Text" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "Kapitel als HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +msgid "Next book" +msgstr "Nächtes Buch" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +msgid "Previous book" +msgstr "Vorheriges Buch" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +msgid "Next chapter" +msgstr "Nächstes Kapitel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +msgid "Previous chapter" +msgstr "Vorheriges Kapitel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +msgid "Next verse" +msgstr "Nächster Vers" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +msgid "Previous verse" +msgstr "Vorheriger Vers" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Wähle zusätzliche Module aus" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "NICHTS" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +msgid "Display options" +msgstr "Anzeigeeinstellungen" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "Zeilenumbrüche benutzen" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +msgid "Show versenumbers" +msgstr "Versnummern anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "Überschriften anzeigen" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Fußnoten anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +msgid "Show Strong's Numbers" +msgstr "Strongs Nummern anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "Morphologische Tags anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "Wurzeln anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "Hebräische Vokalzeichen anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "Hebräische Kantillationszeichen anzeigen" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "Griechische Akzente anzeigen" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "Benutze alternative Textvarianten" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Synchronisieren..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Eintrag bearbeiten..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Kommentarfenster" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" +"Der Text wurde noch nicht im Modul gesichert. Solle die Änderungen nun " +"gesichert werden?" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "Synchronisation umschalten" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +msgid "Save changes to module?" +msgstr "Änderungen im Modul abspeichern?" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "Baumstruktur umschalten..." + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +msgid "Book window" +msgstr "Buchfenster" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +msgid "Toggle tree" +msgstr "Baumstruktur umschalten" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Module:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Gefundene Einträge:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +msgid "module not set" +msgstr "Modul nicht gesetzt" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Sucheinstellungen" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Mehere Wörter" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Genaue Suche" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Regulärer Ausdruck" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Unterscheidung von GROß / klein" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Suchbereich" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Suchfortschritt" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Aktuelles Modul:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Insgesamt:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Suchdialog" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Suche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Abbrechen" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Module auswählen" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Wählen Sie die Module für die Suche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Suche Text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Geben sie den zu suchenden Text ein" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Suchergebnis" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "Das Ergebnis ihrer Suche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Suchanalyse" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Grafische Analyse ihrer Suche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "HTML Dateien" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "Save Search Analysis" +msgstr "Suchanalyse speichern" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +msgid "BibleTime Search Analysis" +msgstr "BibleTimes Suchanalyse" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +msgid "Search Text :" +msgstr "Suche Text::" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +msgid "Search Type :" +msgstr "Art der Suche:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +msgid "Search Scope:" +msgstr "Suchbereich:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "Buch" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "Gesamte Treffer" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "Erzeugt von" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Kein Suchbereich" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Letztes Suchergebnis" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Suchbereich benutzen" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Eigenen Suchbereich auswählen" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Bereich bearbeiten" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Altes Testament" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "Mose/Pentateuch/Torah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "Geschichte" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Propheten" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Neues Testament" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Evangelien" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Briefe/Episteln" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Paulus' Briefe" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Bereichsbezeichnung wählen" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "Bereichsergebnis" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Bereichsname" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Bitte geben Sie den Namen des neuen Bereiches ein" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Module" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Suchergebnis" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Suchergebnis mit Text" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +msgid "Appending keys to the printing queue ..." +msgstr "Füge Stellen zur Druckschlange hinzu ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +msgid "Copying search result to clipboard..." +msgstr "Kopiere Suchergebnis in die Zwischenablage..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +msgid "Saving the search result ..." +msgstr "Speichern des Suchergebnisses ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +msgid "Saving the search result..." +msgstr "Speichern des Suchergebnisses..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "Schlüssel" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "Schlüssel mit Text" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | Textdateien\n" +" *.* | Alle Dateien (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Speichere Schlüssel ..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" +"Wählen Sie die Module, die für die Suche benutzt werden sollen. Der Baum auf " +"der linken Seite enthält alle verfügbaren Module, der Baum auf der rechten " +"die für die Suche benutzten Module. Benutzen Sie die beiden Knöpfe mit den " +"Pfeilen, um Module von der rechten Seite zu entfernen oder dort hinzuzufügen." + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "Die Datei existiert bereits!" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "Möchten Sie die Datei überschreiben?" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "Die Datei konnte leider nicht gesichert werden!" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "Bitte überprüfen Sie die Rechte usw.!" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Speichere Suchergebnis ..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Optionendialog" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +msgid "Create new profile" +msgstr "Neues Profil anlegen" + +#: bibletime/frontend/coptionsdialog.cpp:122 +msgid "Please enter the name of the new profile" +msgstr "Bitte geben Sie den Namen des neuen Profils ein" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Rename profile" +msgstr "Profil umbenennen" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Please enter the new name of the profile" +msgstr "Bitte geben Sie den neuen Namen des Profils ein" + +#: bibletime/frontend/coptionsdialog.cpp:170 +msgid "Startup" +msgstr "Start" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Zeige Tipp des Tages" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Zeige Startlogo" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "Stelle Fenster im Arbeitsbereich wieder her" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "Choose fonts" +msgstr "Schriften wählen" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" +"Die Schriften, die Sie hier auswählen können werden für die Anzeigefenster " +"benutzt. Benutzen Sie die Aufklapliste weiter unten, um den " +"Anwendungsbereich auszuwählen. Anschließend wählen Sie eine Schriftart aus. " +"Bitte stellen Sie sicher, dass der Zeichensatz \"iso10646-1\" in der " +"ausgewählten Unicode-Schriftart zur Verfügung steht!" + +#: bibletime/frontend/coptionsdialog.cpp:225 +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Franz jagt im komplett verwahrlosten Taxi quer durch Bayern" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Farben" + +#: bibletime/frontend/coptionsdialog.cpp:245 +msgid "Choose colors" +msgstr "Farben wählen" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" +"Wählen Sie Farben, um das Aussehen der Anzeigefenster ihren eigenen " +"Vorstellungen anzupassen. Einige Einstellungen wie \"Worte Jesu\" werden nur " +"auf Texte angewendet, die dies unterstützen." + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "Text" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Hintergrund" + +#: bibletime/frontend/coptionsdialog.cpp:262 +msgid "Highlighted verse" +msgstr "Hervorgehobener Vers" + +#: bibletime/frontend/coptionsdialog.cpp:267 +msgid "Hyperlinks" +msgstr "Querverweise" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "Strongs Nummern" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "Morphologische Tags" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "Worte Jesu" + +#: bibletime/frontend/coptionsdialog.cpp:297 +msgid "Profiles" +msgstr "Profile" + +#: bibletime/frontend/coptionsdialog.cpp:302 +msgid "Manage your profiles" +msgstr "Verwalten Sie ihre Profile" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" +"Profile definieren das Aussehen des Arbeitsbereiches, zum Beispiel welche " +"Fenster offen sind und welche Texte in diesen angezeigt werden sollen. " +"Vergessen Sie nicht, dass neue Profile nur funktionieren, wenn etwas in " +"ihnen gespeichert wurde." + +#: bibletime/frontend/coptionsdialog.cpp:318 +msgid "Delete selected profile" +msgstr "Gewähltes Profil löschen" + +#: bibletime/frontend/coptionsdialog.cpp:322 +msgid "Rename selected profile" +msgstr "Gewähltes Profil umbenennen" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Tastenkombinationen" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "Anwendungsweit" + +#: bibletime/frontend/coptionsdialog.cpp:368 +msgid "Bible windows" +msgstr "Bibelfenster" + +#: bibletime/frontend/coptionsdialog.cpp:381 +msgid "Commentary windows" +msgstr "Kommentarfenster" + +#: bibletime/frontend/coptionsdialog.cpp:394 +msgid "Lexicon windows" +msgstr "Lexikonfenster" + +#: bibletime/frontend/coptionsdialog.cpp:408 +msgid "Book windows" +msgstr "Buchfenster" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "Sword" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Allgemein" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "Benutzen von Cachedateien für Lexikoneinträge" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" +"BibleTime kann einen Eintragscache für Lexika anlegen, was das Öffnen großer " +"Lexikonmodule sehr beschleunigt. Diese Dateien können jedoch etwas " +"Plattenplatz verbrauchen (normalerweise nicht viel), sie liegen in $KDEHOME/" +"share/apps/bibletime/cache." + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "Scrollverhalten" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" +"Die nach unten gerichteten Pfeile springt normalerweise zum nächsten " +"Vers. Schalten Sie diese Box aus, wenn Sie zum vorherigen Eintrag " +"springen möchten." + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "Benutzen des nach-unten Pfeils für den nächsten Vers" + +#: bibletime/frontend/coptionsdialog.cpp:461 +msgid "Specify a language for biblical booknames" +msgstr "Geben Sie eine Sprache für die Buchnamen der Bibel an" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" +"Sword hat eine Anzahl von Übersetzungen verfügbar, die zur " +"Internationalisierung der Buchnamen benutzt werden können. Sie können die zu " +"benutzende Übersetzung auswählen. Falls Sie eine neue Übersetzung anlegen " +"möchten, schauen Sie auf http://www.crosswire.org/sword/develop nach " +"Einzelheiten." + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Sprache für Buchnamen" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Englisch" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "Default modules" +msgstr "Standardmodule" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" +"Standardmodule werden benutzt, wenn kein Modul angegeben wurde. Dies kann z." +"B. mit Querverweisen in Bibeln oder Lexika auftreten." + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "Standard-Bibel" + +#: bibletime/frontend/coptionsdialog.cpp:513 +msgid "Default Commentary" +msgstr "Standard-Kommentar" + +#: bibletime/frontend/coptionsdialog.cpp:522 +msgid "Default Lexicon" +msgstr "Standard-Lexikon" + +#: bibletime/frontend/coptionsdialog.cpp:530 +msgid "Default Hebrew Strong's Lexicon" +msgstr "Standardlexikon für hebräische Strongnummern" + +#: bibletime/frontend/coptionsdialog.cpp:538 +msgid "Default Greek Strong's Lexicon" +msgstr "Standardlexikon für griechische Strongnummern" + +#: bibletime/frontend/coptionsdialog.cpp:546 +msgid "Default Hebrew Morphological Lexicon" +msgstr "Standardlexikon für hebräische Morphologie" + +#: bibletime/frontend/coptionsdialog.cpp:553 +msgid "Default Greek Morphological Lexicon" +msgstr "Standardlexikon für griechische Morphologie" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "Filtereinstellungen" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" +"Filter beeinflussen die Textanzeige in den Anzeigefenstern. Hier können Sie " +"Standardeinstellungen für verschiedene Filter festlegen. Sie können die " +"Einstellungen auch in den Anzeigefenstern verändern." + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "Zeilenumbruch nach jedem Vers" + +#: bibletime/frontend/coptionsdialog.cpp:648 +msgid "Show verse numbers" +msgstr "Zeige Versnummern" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "Benutze Textvarianten" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "Drucke..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Drucken abbrechen" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Hauptgruppe" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "&Fenster" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" +"Das ist BibleTime 1.1!
\n" +"Diese Version von BibleTime sollte einen Status erreicht haben, in dem man " +"es als stabil, nützlich und benutzerfreundlich ansehen kann!\n" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" +"Die Bibel wurde geschrieben, damit wir an Jesus glauben. (Johannes 20,31)\n" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" +"BibleTime 1.1 enthält ein wirklich nützliches Handbuch, dass von Fred " +"Saalbach geschrieben wurde.\n" +"Um es zu lesen, wählen Sie den Eintrag \"Handbuch\" aus dem \"Hilfe\" Menü " +"von BibleTime aus.\n" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" +"Es ist niemandem von Gott erlaubt, etwas zum Wort hinzuzufügen oder etwas " +"davon wegzunehmen. (Offenbarung 22,18)\n" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "Die Bibel ist wie ein Spiegel. (Jakobus 1,23)\n" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" +"BibleTime enthält eine Anleitung zum Bibelstudium!\n" +"Sie wurde von Bob Harman geschrieben und ist eine große Hilfe um zu lernen " +"die Bibel zu studieren.\n" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" +"Die Bibel kann die Bequemen plagen und die Geplagten trösten. (Offenbarung " +"10,10)\n" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" +"Sie können ein komplettes Suchergebnis abspeichern, drucken oder kopieren, " +"indem Sie mit der rechten Maustaste auf das Symbol des durchsuchten Modules " +"im Suchdialog klicken.\n" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "Die Bibel ist unsere einzige geistliche Waffe. (Epheser 6,17)\n" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" +"Um die Anzahl der Verse in der Bibel zu bekommen suchen sie nach einem " +"Leerzeichen in dem Modul.\n" +"Die Suchanalyse zeigt ihnen die Anzahl der Verse in jedem Buch.\n" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "Die Bibel ist Wahrheit. (Johannes 17,17)\n" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" +"Wenn Sie Lesezeichen zu einem bestimmten Thema anlegen möchten mit " +"Kommentaren über das, was der Herr ihnen gesagt hat, dann \n" +"erzeugen Sie am besten Lesezeichen von ihrem persönlichen Kommentar.\n" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" +"Die Heilige Schrift schenkt uns Weisheit, die zur Errettung führt. (2 " +"Timotheus 3,15)\n" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" +"Es ist möglich den Text von Lesezeichen oder von Versreferenzen in den " +"persönlichen Kommentar einzufügen, indem man sie in den Editor zieht.\n" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" +"Aufgrund des Bibelstudiums werden Sie vor Gott nicht beschämt dastehen " +"müssen. (2 Timotheus 2,15)\n" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" +"Um die Bedeutung eines ursprünglich hebräischen oder griechischen Wortes in " +"einer Bibel mit Strongnummern nachzuschlagen, schalten Sie einfach die " +"Strongnummern an, und klicken sie darauf.\n" +"Jetzt wird ein Fenster mit der Erklärung zu dieser Strongnummer angezeigt.\n" +"Wenn Ihre Lieblingsübersetzung keine Strongnummern hat,dann benutzen Sie " +"bitte eine andere Übersetzung, um die Nummer für das entsprechende Wort " +"herauszufinden.\n" +"Stellen Sie sicher, dass Sie die Standardmodule im Optionendialog " +"eingestellt haben.\n" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" +"Wenn Sie einen Kommentar als theamtische Referenz benutzen möchten, " +"durchsuchen Sie ihn nach Begriffen, von denen ihr Thema handelt.\n" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" +"Im Anfang war das Wort, und das Wort war bei Gott, und Gott war das Wort. " +"(Johannes 1,1)\n" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" +"Wir werden am letzten Tag durch die Worte, die Jesu gesprochen hat, " +"gerichtet. (Johannes 12,48)\n" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" +"Wenn Sie alle Verse oder Einträge über ein bestimmtes Themengebiet finden " +"möchten, dann sollten sie den regulären Ausdruck \"x | y | z\" zum Suchen " +"benutzen. Dieser ist identisch zu \"x ODER y ODER z\", also z.B. \"beten | " +"preisen | flehen\".\n" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" +"Wenn Sie einen Vers suchen, den sie nur ungenau oder in einer anderen " +"Sprache kennen, dann suchen Sie nach den Schlüsselbegriffen in mehreren " +"Bibelübersetzungen zur selben Zeit.\n" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" +"Dein Wort ist eine Leuchte für mein Leben, es gibt mir Licht für jeden " +"nächsten Schritt.. (Psalm 119,105)\n" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" +"Wenn Sie ein Wort in einem ausländischen Modul (z.B. griechisch oder " +"hebräisch) suchen möchten, öffnen Sie ein Anzeigefenster und wählen Sie ein " +"Kapitel oder einen Eintrag, in welchem das Wort enthalten ist.\n" +"Nun klicken Sie doppelt auf das Wort und ziehen Sie das ausgewählte Wort auf " +"das gewünschte Modul in der Hauptgruppe.\n" +"Der Suchdialog wird nun mit dem Wort in der Eingabezeile geöffnet.\n" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" +"Das Wort Gottes wird nicht unverrichteter Dinge zu ihm zurückkehren, sondern " +"es bewirkt, wozu Gott es gesandt hat. (Jesaja 55,11)\n" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" +"Ausländische Module (z.B. griechisch oder hebräisch) erfordern oftmals eine " +"speziellen Unicode-Schriftart um sie zu lesen.\n" +"Viele der Schriften sind verfügbar auf www.crosswire.org oder auf der Sword " +"CD.\n" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" +"Wussten Sie, dass das erste in einer Druckerpresse gedruckte Buch die Bibel " +"war? (von Johannes Gutenberg im Jahre 1492)\n" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" +"Gott in seiner Macht hat uns alles geschenkt, was wir zu einem Leben in " +"wahrer Frömmigkeit brauchen. (1 Petrus 1,3)\n" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" +"Alle wichtigen Elemente von BibleTimes Benutzerschnittstelle haben einen " +"Tooltip und eine \"What's this?\" Hilfe.
\n" +"Um die \"What's this?\" Hilfe zu lesen, drücken Sie die Tasten Umschalt+F1 " +"und klicken auf den gewünschten Teil.\n" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" +"Das Wort Gottes ist lebendig, wirksam und schärfer als das schärfste " +"beidseitig geschliffene Schwert. (Hebräer 4,12)\n" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" +"Sie benutzen ein Programm, welches zur Ehre Gottes geschrieben wurde." +"
Möge Er Sie segnen, wenn Sie sein Wort studieren!\n" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Druckschlange leeren" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "Den Druckdialog öffnen" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "BibleTime schließen" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Suche in Modulen" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Entferne ausgewählte Einträge" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Hauptgruppe zeigen" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Werkzeugleiste zeigen" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Strongs Nummern anzeigen" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Fenster kacheln" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Fenster automatisch kacheln" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Fenster staffeln" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Fenster automatisch staffeln" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Alle Fenster schließen" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "Aktuelles Profil speichern" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit profiles" +msgstr "Profile bearbeiten" + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +msgid "Load a new profile" +msgstr "Ein neues Profil laden" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +msgid "Toggle fullscreen mode" +msgstr "Vollbildmodus umschalten" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Werkzeugleiste bearbeiten" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "BibleTimes Handbuch" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "BibleTimes Installationsdokumentation" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +msgid "BibleTime's Bible study HowTo" +msgstr "BibleTimes Anleitung zum Bibelstudium" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "In den \"Was ist das?\" Modus wechseln" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Fehlerbericht schicken" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +msgid "Show daily tips at startup" +msgstr "Zeige täglichen Tipp beim Start" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "Über BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "Über KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "Die Hauptgruppe" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Lesezeichen zur Druckschlange hinzufügen" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "Der Arbeitsbereich" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Zeige den nächsten Eintrag" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Zeige den vorherigen Eintrag" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Jump to the next verse" +msgstr "Zum nächsten Vers springen" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Jump to the previous verse" +msgstr "Zum vorherigen Vers springen" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +msgid "Show the next chapter" +msgstr "Nächstes Kapitel anzeigen" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +msgid "Show the previous chapter" +msgstr "Vorheriges Kapitel anzeigen" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "Show the next book" +msgstr "Nächstes Buch anzeigen" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +msgid "Show the previous book" +msgstr "Vorheriges Buch anzeigen" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Liste der Bücher" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Liste der Kapitel" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Liste der Verse" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Liste der Einträge" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Durch die Liste bewegen" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Bearbeite diesen Eintrag" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Diesen Kommentar speichern" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Diesen Kommentar löschen" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Kommentieren bis zu" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Fett" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Kursiv" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Unterstrichen" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Setze Schriftart" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Farbe setzen" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Schriftgröße setzen" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Synchronisiere mit Bibelfenstern" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Als HTML speichern" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "In Zwischenablage kopieren" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +msgid "Choose the modules to search in" +msgstr "Wählen Sie die Module für die Suche" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Füge das gewählte Modul zur Liste hinzu" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Entferne das gewählte Modul von der Liste" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Liste der für die Suche verwendeten Module" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +msgid "Search for this text" +msgstr "Nach diesem Text suchen" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Suche mehrere Wörter" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Genaue Suche" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Suche mit GNU Regulären Ausdrücken" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Suche mit GROß / klein Unterscheidung" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Letztes Suchergebnis" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +msgid "Use custom scope" +msgstr "Eigenen Bereich benutzen" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Füge einen neuen Bereich hinzu" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Lösche diesen Suchbereich" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Bearbeiten und definieren Sie ihre Suchbereiche" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Wählen Sie einen Suchbereich aus der Liste" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Geben Sie ihren eigenen Suchbereich ein" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Aufgelöstes Ergebnis" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Schließe diesen Dialog" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Benutzte Module" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Gefundene Einträge" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Vorschau" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +msgid "Graphical Search Analysis" +msgstr "Grafische Suchanalyse" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Zeige täglichen Tipp" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Liste der Sprachen" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +msgid "Show start-up logo" +msgstr "Startlogo anzeigen" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "Stelle die Fenster des Arbeitsbereiches beim Start wieder her" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "Benutzen von Cachedateien für Lexikoneinträge" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "Die Standardbibel, die im Arbeitsbereich verwendet wird." + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "Der Standardkommentar, der im Arbeitsbereich verwendet wird." + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "Das Standardlexikon, das im Arbeitsbereich verwendet wird." + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" +"Das Standardlexikon für Hebräisch, das im Arbeitsbereich verwendet wird." + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" +"Das Standardlexikon für Griechisch, das im Arbeitsbereich verwendet wird." + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" +"Das Standardlexikon für hebräische Morphologie, das im Arbeitsbereich " +"verwendet wird." + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" +"Das Standardlexikon für griechische Morphologie, das im Arbeitsbereich " +"verwendet wird." + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Tastenkombinationen setzen" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Wählen Sie den Anwendungsbereich" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Wählen Sie eine Schriftart" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Farbe des Hintergrundes" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Farbe des hervorgehobenen Verses" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +msgid "Keyboard accelerators used by all display windows" +msgstr "Tastenkombinationen, die von allen Anzeigefenstern benutzt werden" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "Tastenkombinationen, die von Bibelfenstern benutzt werden" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "Tastenkombinationen, die von Kommentarfenstern benutzt werden" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "Tastenkombinationen, die von Lexikonfenstern benutzt werden" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Drucken starten" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Preview print job" +msgstr "Druckvorschau anzeigen" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "Hilfe öffnen" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Liste der Druckeinträge" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Eintrag nach oben bewegen" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Eintrag nach unten bewegen" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Einträge löschen" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Einen Seitenumbruch einfügen" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Seitenränder" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Linker Rand" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Rechter Rand" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "Oberer Rand" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Unterer Rand" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +msgid "List of print styles" +msgstr "Liste der Druckstile" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +msgid "Delete the selected style" +msgstr "Lösche den gewählten Stil" + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +msgid "Edit the selected style" +msgstr "Bearbeite den gewählten Stil" + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Erzeuge einen neuen Druckstil" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Leere die Druckschlange von BibleTime. Alle Einträge werden aus der Liste " +"entfernt und der Drucken Knopf wird deaktiviert." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"Öffne den Druckdialog von BibleTime. Hier können Sie die Druckschlange " +"bearbeiten und Sie können den Einträgen Stile zuweisen." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Schließe BibleTime und speichere die Einstellungen." + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search for text in one or more modules." +msgstr "" +"Öffne den Suchdialog von BibleTime, um in einem oder mehreren Modulen zu " +"suchen." + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Die ausgewählten Einträge aus dem Hauptindex löschen.
Wenn Sie einen " +"Ordner löschen, werden Untereinträge ebenfalls gelöscht." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Setze die Hauptgruppe zurück.
Alle Lesezeichen und Ordner werden gelöscht " +"und die anfänglichen Ordner werden wiederhergestellt." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +msgid "Toggle the main index view." +msgstr "Zeige/Verstecke die Hauptgruppe." + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "Ansicht der Werkzeugleiste umschalten." + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "Fußnoten in den Modulen umschalten." + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +msgid "Toggle Strong's numbers in the modules." +msgstr "Strongs Nummern in den Modulen umschalten." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +msgid "Tile the open display windows." +msgstr "Kacheln der geöffneten Anzeigefenster." + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +msgid "Automatically tile the display windows." +msgstr "Anzeigefenster automatisch kacheln." + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +msgid "Cascade the open display windows." +msgstr "Staffeln der offenen Anzeigefenster." + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +msgid "Automatically cascade the opened display windows." +msgstr "Geöffnete Anzeigefenster automatisch staffeln." + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Schließe alle geöffneten Anzeigefenster." + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +msgid "Edit profiles..." +msgstr "Profile bearbeiten..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "Öffnet BibleTimes Werkzeugleisteneditor." + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" +"Öffnet BibleTimes Optionendialog, in dem Sie die meisten Einstellungen " +"setzen können." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "" +"Dies öffnet BibleTimes Handbuch im KDE Hilfeprogramm.
Das Handbuch " +"erklärt, wie man BibleTime am besten benutzt." + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" +"Öffne BibleTimes Installationsanweisungen im KDE Hilfeprogramm.
Die " +"Installationsanweisungen erläutern, wie man BibleTime und die Textmodule " +"richtig installiert." + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "" +"Öffne die mit BibleTime mitgelieferte Anleitung zum Biblestudium im " +"Hilfeprogramm von KDE.
Dieses HowTo ist eine Einführung in effektives " +"Bibelstudium." + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"Wechsle in den \"Was ist das?\" Modus.
Alle wichtigen Elemente der " +"Oberfläche von BibleTime bieten eine \"Was ist das?\" Hilfe an." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Schicke einen Problembericht an die Entwickler von BibleTime!" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Zeige einen täglichen Tipp.
Die Tipps enthalten wichtige Biblezitate und " +"hilfreiche Benutzungshinweise für BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Zeige detailierte Informationen über BibleTime an." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Zeige den \"Über\" Dialog von KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Dies ist die Hauptgruppe von BibleTime.
Benutzen Sie sie, um die " +"installierten Module zu verwalten, um mit Lesezeichen zu arbeiten, um " +"Anzeigefenster zu öffnen usw." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Erzeuge einen neuen Ordner in der Hauptgruppe.
Wenn Sie die rechte " +"Maustaste über einem Ordner gedrückt haben wird der neue Ordner dessen " +"Untereintrag.
Ansonsten erzeugen Sie einen Ordner auf oberster Ebene." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Ändern Sie die Eigenschaften des gewählten Ordners." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Ändern Sie die Eigenschaften des gewählten Lesezeichens." + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +msgid "Import bookmarks from a file." +msgstr "Importiere Lesezeichen aus einer Datei." + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Exportiere Lesezeichen,
damit Sie oder andere Benutzer diese später " +"importieren können." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Benutzen Sie dies, um dieses Lesezeichen zu BibleTimes Druckschlange " +"hinzuzufügen. Der Schlüssel, die Beschreibung und der Text des Schlüssels " +"werden zum Drucken benutzt." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" +"Öffnet einen Dialog in dem Sie das gewählte Modul entschlüsseln können." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "Öffnet einen Dialog der Informationen über das gewählte Modul anzeigt." + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" +"Dieser Bereich ist der Arbeitsplatz in BibleTime.
Alle Anzeigefenster " +"werden in diesem Bereich geöffnet." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "Der nächste Eintrag des Modules wird angezeigt." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "Der vorherige Eintrag des Moduls wird angezeigt." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"In Bibeln wird der nächste Vers hervorgehoben.
In Kommentaren wird der " +"nächste Eintrag angezeigt." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"In Bibeln wird der vorherige Eintrag angezeigt. In Kommentaren wird der " +"vorherige Antrag angezeigt." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" +"Zeige das nächste Kapitel des Modules an. Der Vers wird auf \"1\" gesetzt." + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" +"Zeige das voherige Kapitel des Modules an. Der Vers wird auf \"1\" gesetzt." + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" +"Zeige das nächste Buch des Modules. Das Kapitel und der Vers werden auf \"1" +"\" gesetzt." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" +"Zeige das vorherige Buch des Modules. Das Kapitel und der Vers werden auf " +"\"1\" gesetzt." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "Diese Liste enthält die Bücher, die in diesem Modul vorhanden sind." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "Diese Liste enthält die Kapitel, die im aktuellen Buch vorhanden sind." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" +"Diese Liste enthält die Verse, die im aktuellen Kapitel vorhanden sind." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Diese Liste enthält die Einträge des aktuellen Modules." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Dieser Knopf ist nützlich, um sich durch die Einträge der Liste zu bewegen. " +"Drücken Sie den Knopf und bewegen Sie die Maus um den Eintrag zu erhöhen " +"oder zu erniedrigen." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" +"Wechsle zwischen dem Lesen-Schreiben und dem Nur-Lesen Modus schreibbarer " +"Module hin und her." + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +msgid "Save new personal comments." +msgstr "Sichere den Persönlichen Kommentar." + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Lösche den Text und entferne den Eintrag aus dem Modul." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +msgid "Toggle bold formatting of the selected text." +msgstr "" +"Wechsle zwischen fetter und nicht-fetter Formatierung des gewählten Textes." + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +msgid "Toggle italic formatting of the selected text." +msgstr "" +"Wechsle zwischen kursiver und nicht-kursiver Formatierung des gewählten " +"Textes." + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +msgid "Toggle underlined formatting of the selected text." +msgstr "" +"Wechsle zwischen unterstrichener und nicht-unterstrichener Formatierung des " +"gewählten Textes." + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Wähle eine neue Schriftart für den gewählten Text." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Wählen Sie eine neue Farbe für den gewählten Text." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Wähle eine neue Schriftgröße für den gewählten Text." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" +"Synchronisiere den angezeigten Vers dieses Moduls mit dem aktiven " +"Bibelfenster." + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +msgid "Save the displayed chapter as an HTML file." +msgstr "Sichere das angezeigte Kapitel als HTML Datei." + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Den gesamten Text auswählen." + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Kopiere den angezeigten Text in die Zwischenablage." + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Wählen Sie die Module, die für die Suche benutzt werden.
Benutzen Sie die " +"beiden Knöpfe auf der rechten Seite, um die Module zur Liste der benutzten " +"hinzuzufügen oder daraus zu entfernen." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +msgid "Add the selected module to the list on the right." +msgstr "Füge das gewählte Modul zur Liste auf der rechten Seite hinzu." + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +msgid "Remove the selected module from the list on the right side." +msgstr "Entferne das gewählte Modul von der Liste auf der rechten Seite." + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "Die Liste der für die Suche benutzten Module." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "" +"Der in dieser Eingabebox eingegebene Text wird in allen Modulen gesucht." + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Wählen Sie dies aus um nach mehreren Wörtern zu suchen.
Jedes Wort in " +"der Eingabezeile wird als ein einzelnes Wort gesucht." + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Wählen Sie dies aus um nach genau dem Text zu suchen, den Sie in der " +"Eingabezeile eingegeben haben." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Wählen Sie dies aus um unter Benutzung von GNU regulären Ausdrücken zu " +"suchen.
Lesen Sie das Handbuch für eine Erklärung wie sie zu benutzen " +"sind." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +msgid "Activate this to use a case sensitive search." +msgstr "" +"Aktivieren Sie dies, um mit Unterscheidung zwischen GROß und klein zu suchen." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" +"Wählen Sie dies aus, wenn Sie in allen Bereiche der gewählten Module suchen " +"möchten." + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" +"Wählen Sie dies aus, um das letzte Suchergebniss jedes Moduls als " +"Suchbereich zu benutzen." + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Erzeuge einen neuen Suchbereich." + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" +"Benutze einen eigenen Suchbereich für die Suche.
Es existieren bereits " +"Standard-Suchbereiche." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Benutzen Sie diesen Knopf um den gewählten Suchbereich zu löschen." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Wählen Sie einen Suchbereich aus der Auswahlbox." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Geben Sie ihren eigenen Suchbereich ein.
Um einen Bereich zu definieren " +"benutzen sie \"-\" (z.B. 1. Mose-2. Mose),
um verschiedene Bereiche zu " +"trennen benutzen Sie das Semikolon (z.B. 1. Mose;Matthäus)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Diese Liste enthält die aufgelösten Suchbereiche ihres eingegeben Bereiches. " +"Dieses Ergebnis wird für die Suche benutzt." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Schließe diesen Dialog und sichere die Änderungen." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Liste der für die Suche benutzten Module.
Klicken Sie auf ein Modul um " +"das Suchergebnis auf der rechten Seite zu sehen." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Dies enthält die innerhalb des gewählten Moduls gefundenen Einträge." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "Diese Textbox zeigt eine Vorschau des gewählten Eintrags." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Grafische Analyse ihres Suchergebnisses.
Die Balken zeigen die Anzahl von " +"gefundenen Einträgen innerhalb jedes Buches einer Bibel oder eines " +"Kommentars." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "Aktivieren Sie diese Box um einen täglichen Tipp beim Start zu sehen." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" +"Enthält die Sprachen, die für die Internationalen Buchnamen benutzt werden " +"können." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +msgid "Activate this to see the BibleTime logo on startup." +msgstr "Aktivieren Sie dies, um das BibleTime Logo beim Start zu sehen." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" +"Benutzen Sie dies, um den nach-unten Knopf zu benutzen um zum nächsten Vers " +"zu springen" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" +"Sichere die Fenster des Arbeitsbereiches wenn BibleTime geschloßen " +"wird
und stelle diese beim nächsten Start wieder her." + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" +"Aktivieren Sie dies, um BibleTime die Indexdateien für die Lexikoneinträge " +"anlegen zu lassen. Dies beschleunigt das öffnen von Lexika ziemlich, aber es " +"verbraucht mehr Speicherplatz. Empfohlen." + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" +"Die voreingestelle Bibel wird benutzt, wenn ein Verweis auf eine " +"Bibelstelle geklickt wurde." + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" +"Der voreingestelle Kommentar wird benutzt, wenn ein Verweis auf einen " +"Kommentar angeklickt wurde." + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" +"Das voreingestelle Lexikon wird benutzt, wenn ein Verweis auf ein Lexikon " +"angeklickt wurde." + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" +"Das voreingestellte Lexikon für Hebräisch wird benutzt, wenn ein Verweis auf " +"ein Hebräisch-Lexikon angeklickt wurde." + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" +"Das voreingestellte Lexikon für Griechisch wird benutzt, wenn ein Verweis " +"auf ein Griechisch-Lexikon angeklickt wurde." + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" +"Das voreingestellte Lexikon für hebräische Morphologie wird benutzt, wenn " +"ein Verweis auf ein morphologisches Tag in Hebräisch angeklickt wurde." + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" +"Das voreingestellte Lexikon für griechische Morphologie wird benutzt, wenn " +"ein Verweis auf ein morphologisches Tag in Griechisch angeklickt wurde." + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +msgid "Select an action and change the key binding for the action." +msgstr "Wählen Sie eine Aktion aus und ändern Sie die Tastenkombination dafür." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" +"Wählen Sie in dieser Box wie die Schrift benutzt wird, und ändern Sie die " +"Schrift in der Schriftauswahl." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "" +"Dies ist die Hintergrundfarbe, die in den Anzeigefenstern benutzt wird." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "Dies ist die Farbe des hervorgehobenen Textes in den Anzeigefenstern." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +msgid "Set the keyboard accelerators used in all display windows" +msgstr "" +"Setzen Sie die Tastenkombinationen, die von allen Anzeigefenstern benutzt " +"werden." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +msgid "Set keyboard accelerators used in Bible windows" +msgstr "" +"Setzen Sie die Tastenkombinationen, die von Bibelfenstern benutzt werden." + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "" +"Setzen Sie die Tastenkombinationen, die von Kommentarfenstern benutzt werden." + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "" +"Setzen Sie die Tastenkombinationen, die von Lexikonfenstern benutzt werden." + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Starte den Druckprozeß.
Die Eintäge der Liste werden unter Benutzung der " +"Druckstile gedruckt." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Drucke in eine temporäre Datei und öffne einen Postscriptbetrachter um das " +"Druckergebnis im Vorraus zu betrachten." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +msgid "Closes this dialog without doing anything else." +msgstr "Schließe den Dialog ohne irgendetwas zu tun." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "Öffne die Hilfe von BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +msgid "This combo box contains the available print styles." +msgstr "Diese Auswahlbox enthält die vorhandenen Druckstile." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Dies ist die Liste, die die vorhanden Druckeinträge enthält." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +msgid "Move the selected item up one item." +msgstr "Bewege den ausgewählten Eintrag eine Position höher." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +msgid "Move the selected item down one item." +msgstr "Bewege den ausgewählten Eintrag eine Position niedriger." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Lösche den ausgewählten Eintrag." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Füge einen Seitenumbruch in die Liste ein.
Der Drucker wird an dieser " +"Stelle eine neue Seite beginnen." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" +"Diese Gruppe enthält die Seitenränder der Seite gemessen in Millimeter." + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +msgid "The size of the border on the left side of the paper." +msgstr "Die Größe des linken Seitemrandes." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +msgid "The size of the border on the right side of the paper." +msgstr "Die Größe des rechten Seitenrandes." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +msgid "The size of the border on the top of the paper." +msgstr "Die Größe des oberen Seitenrandes." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +msgid "The size of the border on the bottom of the paper." +msgstr "Die Größe des unteren Seitenrandes." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Diese Liste enthält die vorhandenen Druckstile.
Erzeugen Sie ihren " +"eigenen unter Benutzung des \"Neuer Stil\" Knopfes." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Entferne den gewählten Druckstil aus der Liste." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Ändere die Einstellungen des gewählten Druckstiles." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" +"Erstelle einen neuen Druckstil.
Der neue Stil wird zur Liste hinzugefügt." diff --git a/bibletime-doc/po/fr.gmo b/bibletime-doc/po/fr.gmo new file mode 100644 index 0000000000000000000000000000000000000000..c22bc6a2b56427a37bfc370326ed508a57afd402 GIT binary patch literal 27196 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 N5pXG$izA&J{{!B3lNbO1 literal 0 HcmV?d00001 diff --git a/bibletime-doc/po/fr.po b/bibletime-doc/po/fr.po new file mode 100644 index 0000000..be77113 --- /dev/null +++ b/bibletime-doc/po/fr.po @@ -0,0 +1,3271 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2002-03-29 14:17GMT\n" +"Last-Translator: Mathias BAVAY \n" +"Language-Team: français \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.5\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "notes" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "numéros de strong" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +#, fuzzy +msgid "Hebrew Cantillation" +msgstr "Orientation" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Messages de debuguage" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Outil d'étude de la Bible pour KDE 2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, l'équipe BibleTime" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"BibleTime est un outil convivial mais puissant d'étude de la Bible pour KDE " +"2 \n" +"\n" +"Nous recherchons des développeurs, traducteurs et rédacteurs de " +"documentation.\n" +"Si vous voulez vous joindre à nous, envoyer un courrier électronique à " +"info@bibletime.de." + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Coordinateur du projet, frontend, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Frontend, backend, choses diverses" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Dialogue de recherche" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Manuel" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Traduction en tchèque" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Traduction en danois" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Traduction en néerlandais" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Traduction en français" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Traduction en hongrois" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Traduction en italien" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Traduction en norvégien" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Traduction en polonais" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Traduction en portugais" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Traduction en hongrois" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Traduction en slovaque" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Traduction en danois" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Bible study HowTo" + +#: bibletime/main.cpp:185 +#, fuzzy +msgid "Starting BibleTime" +msgstr "À propos de BibleTime" + +#: bibletime/bibletime_init.cpp:59 +#, fuzzy +msgid "Creating BibleTime's GUI" +msgstr "Configurer les couleurs de BibleTime" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Vider la file d'impression" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Réinitialiser l'index principal" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Recherche dans le(s) module(s)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Supprimer items sélectionnés" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "Afficher index &principal" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "C&ascade" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "Mosaïque" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Auto cascade" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&uto mosaïque" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "Tout fermer" + +#: bibletime/bibletime_init.cpp:167 +msgid "&Save profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:172 +msgid "&Load profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:177 +msgid "&Configure profiles" +msgstr "" + +#: bibletime/bibletime_init.cpp:183 +msgid "&Fullscreen mode" +msgstr "" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Manuel" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Bible study HowTo" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "Astuce &journalière" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "éditeur de style" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Nom du style" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Choisir la partie couverte par le style" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "En-tête" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Description" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Texte du module" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Activer cette partie" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Premier plan :" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Arrière plan :" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Choisir la police" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Visualisation de la police" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Utiliser les cadres" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Épaisseur de la ligne (en point) :" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Couleur du cadre" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Nom du style" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Nom :" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "inconnu" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Styles" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Marges (en millimètres)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "&Haut" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "&Gauche" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "&Droite" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Liste des styles d'items :" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Imprimante" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Choisir un style" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Entrées à imprimer :" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Module" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "De" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "À" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Style" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Arrière plan" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "Ok" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Page %1 introuvable !" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | fichiers HTML\n" +" *.* | tous les fichiers (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Enregistrer le texte en tant que page HTML ..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +"*.txt | fichier texte (*.txt)\n" +"*.* | tous les fichiers (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Enregistrer le texte en tant que texte seul ..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Choisir une police :" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Choisir une taille de police" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Gras" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Souligné" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Justifié" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "inconnu" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Signet : " + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +#, fuzzy +msgid "Language" +msgstr "Liste des langues" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Clef de déverrouillage" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "non activé" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Version" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Bibles" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Commentaires" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Lexiques" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Titres" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Index principal" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Créer un nouveau dossier" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Renommer ce dossier" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Renommer ce signet" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Importer des signets" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Exporter les signets" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Imprimer les signets" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Rechercher dans les modules sélectionnés" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Déverrouiller ce module" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "À propos de ce module" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Description des signets - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Entrer ici la description :" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Changer la description du signet - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Changer la description de l'item !" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Renommer le dossier - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Changer le nom du groupe !" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +#, fuzzy +msgid "Location" +msgstr "Titres" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Modifiable" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +#, fuzzy +msgid "yes" +msgstr "Styles" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Entrer le nom du dossier - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Entrer le nom du dossier !" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - déverrouiller le module" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Entrer la clef pour déverrouiller le module !" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Import des signets ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Un problème est survenu lors de l'import des signets !
Le format des " +"signets importés est plus récent que
celui des signets de cette version " +"de BibleTime !
L'import des signets pourrait ne pas fonctionner " +"correctement !
Voulez-vous poursuivre ?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Import des signets" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Export des signets ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Cette fonction va réinitialiser l'index principal !
Ceci va recréer " +"lesgroupes d'origine et supprimer tout les autres items !
Assurez vous " +"que des signets importants ne vont pas être supprimés !
Voulez-vous " +"poursuivre ?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - réinitialisation de l'index principal" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Fenêtre du lexique" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Entrée" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Texte de l'entrée" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Entrée avec du texte" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Sélectionner du texte" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Entrée en tant que texte seul" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Entrée en tant qu'HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Rechercher la sélection dans le lexique" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Copie..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Ajouter à la file d'impression..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Sauvegarde..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +#, fuzzy +msgid "Next entry" +msgstr "Texte de l'entrée" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +#, fuzzy +msgid "Previous entry" +msgstr "Afficher l'entrée précédente" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Fenêtre de Bible" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "Verset" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "Texte du verset" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "Verset avec du texte" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "Chapitre" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "Chapitre en tant que texte seul" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "Chapitre en tant qu'HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +#, fuzzy +msgid "Next book" +msgstr "Afficher le livre suivant" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +#, fuzzy +msgid "Previous book" +msgstr "Afficher le livre précédent" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Afficher le chapitre suivant" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +#, fuzzy +msgid "Previous chapter" +msgstr "Afficher le chapitre précédent" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +#, fuzzy +msgid "Next verse" +msgstr "Texte du verset" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +#, fuzzy +msgid "Previous verse" +msgstr "Aller au verset précédent" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Sélectionner des modules additionnels" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "RIEN" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Fenêtre d'affichage" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Afficher les numéros de strong" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Afficher les notes" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Afficher les numéros de strong" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Synchronisation..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Éditer l'entrée..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Fenêtre de commentaires" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Rechercher dans les modules" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Fenêtre de Bible" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +msgid "Toggle tree" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Modules :" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Entrées trouvées" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "module non activé" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Propriétés de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Mots multiples" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Recherche exacte" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Expression régulière" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Préserver la case" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Étendue de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Progression de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Module courant :" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Totalité :" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Dialogue de recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Rechercher" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Interrompre" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Choisir les modules" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Choisir les modules pour la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Rechercher le texte" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Entrer le texte à rechercher" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Résultats de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "Le résultat de votre recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Analyse de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Analyse graphique de vos résultats de recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +#, fuzzy +msgid "Save Search Analysis" +msgstr "Analyse de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +#, fuzzy +msgid "BibleTime Search Analysis" +msgstr "Analyse de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Rechercher le texte" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Rechercher le texte" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Étendue de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Pas de limites" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Dernier résultat" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Limiter l'étendue" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Choisir une plage personnalisée" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Éditer les plages" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Ancien Testament" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "Histoire" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Prophètes" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Nouveau Testament" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Cantiques" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Lettres/épîtres" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Épîtres de Paul" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Définir l'étendue de la plage" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Nom de la plage" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Entrer un nom pour cette nouvelle plage de recherche" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Modules" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Résultats de la recherche" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Résultats de la recherche avec texte" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Ajouter à la file d'impression..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +#, fuzzy +msgid "Copying search result to clipboard..." +msgstr "Copier dans le presse-papier" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Enregistrer le résultat de la recherche ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Enregistrer le résultat de la recherche ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "Clef" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "Clef avec texte" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | fichiers texte\n" +" *.* | tous les fichiers (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Enregistrer la clef ..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Enregistrer le résultat de la recherche ..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Dialogue d'options" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +#, fuzzy +msgid "Create new profile" +msgstr "Créer un nouveau dossier" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#, fuzzy +msgid "Please enter the name of the new profile" +msgstr "Entrer le nom du dossier !" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Rename profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Please enter the new name of the profile" +msgstr "Entrer le nom du dossier !" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Afficher le logo au démarrage" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Afficher l'astuce du jour" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Afficher le logo au démarrage" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Choisir la police" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +#, fuzzy +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Une bibliothèque, c'est le carrefour de tous les rêves de l'humanité." + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Couleurs" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Choisir les modules" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Arrière plan" + +#: bibletime/frontend/coptionsdialog.cpp:262 +#, fuzzy +msgid "Highlighted verse" +msgstr "Verset surligné" + +#: bibletime/frontend/coptionsdialog.cpp:267 +msgid "Hyperlinks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "numéros de strong" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Impression dans le fichier :" + +#: bibletime/frontend/coptionsdialog.cpp:302 +msgid "Manage your profiles" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Supprime l'item sélectionné." + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Supprimer les items sélectionnés" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Raccourcis" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Fenêtre de Bible" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Fenêtre de commentaires" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Fenêtre du lexique" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Fenêtres en mosaïque" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Général" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +#, fuzzy +msgid "Specify a language for biblical booknames" +msgstr "Langue des noms de livres" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Langue des noms de livres" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Anglais" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Modules utilisés" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Commentaires" + +#: bibletime/frontend/coptionsdialog.cpp:522 +#, fuzzy +msgid "Default Lexicon" +msgstr "Lexiques" + +#: bibletime/frontend/coptionsdialog.cpp:530 +msgid "Default Hebrew Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:538 +msgid "Default Greek Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:546 +msgid "Default Hebrew Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:553 +msgid "Default Greek Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Afficher les numéros de strong" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "Impression..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Annuler l'impression" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Index " + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "Fe&nêtre" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Effacer la file d'impression" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "Ouvrir le dialogue d'impression" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "Fermer BibleTime" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Rechercher dans les modules" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Supprimer les items sélectionnés" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Afficher l'index principal" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Afficher la barre d'outils" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Afficher les numéros de strong" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Fenêtres en mosaïque" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Fenêtres en mosaïque automatiquement" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Fenêtres en cascade" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Fenêtres en cascade automatiquement" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Fermer toutes les fenêtres" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +#, fuzzy +msgid "Edit profiles" +msgstr "Éditer les plages" + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +#, fuzzy +msgid "Load a new profile" +msgstr "Ajouter une nouvelle plage" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +msgid "Toggle fullscreen mode" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Éditer la barre d'outils" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "Manuel de BibleTime" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Bible study HowTo" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "Entrer en mode \"Qu'est ce que c'est ?\"" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Envoyer un rapport de bug" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "Afficher les astuces quotidiennes" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "À propos de BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "À propos de KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "L'index principal" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Ajouter les signets à la file d'impression" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "L'aire de travail" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Afficher l'entrée suivante" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Afficher l'entrée précédente" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +#, fuzzy +msgid "Jump to the next verse" +msgstr "Aller au verset suivant" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +#, fuzzy +msgid "Jump to the previous verse" +msgstr "Aller au verset précédent" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Afficher le chapitre suivant" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Afficher le chapitre précédent" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +#, fuzzy +msgid "Show the next book" +msgstr "Afficher le livre suivant" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Afficher le livre précédent" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Liste des livres" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Liste des chapitres" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Liste des versets" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Liste des entrées" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Faire défiler la liste" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Éditer cette entrée" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Sauver ce commentaire" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Effacer ce commentaire" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Commenter jusqu'à" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Mettre en gras" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Mettre en italique" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Souligner" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Choisir la police" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Choisir la couleur" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Choisir la taille de police" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Synchroniser avec la fenêtre de Bible" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Sauver en HTML" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "Copier dans le presse-papier" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Choisir les modules pour la recherche" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Ajouter le module sélectionné à la liste" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Supprimer le module sélectionné de la liste" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Liste des modules utilisés pour la recherche" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Rechercher ce texte" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Rechercher des mots multiples" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Correspondance exacte" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Rechercher avec des expressions régulières GNU" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Rechercher en respectant la case" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Dernier résultat de recherche" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Limitation personnalisée" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Ajouter une nouvelle plage" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Effacer cette plage de recherche" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Édition et définition de vos plages de recherche" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Choisir une plage dans la liste" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Entrez votre propre plage de recherche" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Analyse des résultats" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Fermer ce dialogue" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Modules utilisés" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Items trouvés" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Previsualisation" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +#, fuzzy +msgid "Graphical Search Analysis" +msgstr "Analyse graphique" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Afficher les astuces quotidiennes" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Liste des langues" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Afficher le logo au démarrage" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Définir les raccourcis claviers" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Choisir l'élément de l'interface" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Choisir une police" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Couleur de l'arrière plan" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Couleur des versets surlignés" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +#, fuzzy +msgid "Keyboard accelerators used by all display windows" +msgstr "Ceci est la couleur de fond des fenêtres d'affichage." + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Démarrage de l'impression" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +#, fuzzy +msgid "Preview print job" +msgstr "Application de prévisualisation :" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "Ouvrir l'aide" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Liste des items à imprimer" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Déplacer l'item vers le haut" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Déplacer l'item vers le bas" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Effacer l'item" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Insérer un saut de page" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Bords de la page" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Bord gauche" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Bord droit" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "Bord supérieur" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Bord inférieur" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Liste des items à imprimer" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Supprime l'item sélectionné." + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Supprime l'item sélectionné." + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Créer un nouveau style d'impression" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +#, fuzzy +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Vide la file d'impression de BibleTime. Tout les items vont être enlevés de " +"la liste, le bouton d'impression va être désactivé." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +#, fuzzy +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"Ouvre le dialogue d'impression de BibleTime ou vous pouvez éditer la file " +"d'impression et assigner des styles aux items." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Ferme BibleTime et enregistre la configuration." + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +#, fuzzy +msgid "Open the search dialog to search for text in one or more modules." +msgstr "" +"Ouvre le dialogue de recherche pour chercher un texte dans un ou plusieurs " +"modules." + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +#, fuzzy +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Supprime les items sélectionnés de l'index principal.
Si vous supprimez " +"une dossier, les sous-items vont être supprimés eux aussi." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +#, fuzzy +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Réinitialise l'index principal
Tout les signets et dossiers vont être " +"supprimés et les dossiers par défaut restaurés." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "L'index principal" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "Affiche ou masque les numéros de strong selon l'état actuel." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "Ferme toutes les fenêtres d'affichage ouvertes." + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "Fenêtres en mosaïque automatiquement" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "Ferme toutes les fenêtres d'affichage ouvertes." + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +#, fuzzy +msgid "Automatically cascade the opened display windows." +msgstr "Fenêtres en cascade automatiquement" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Ferme toutes les fenêtres d'affichage ouvertes." + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +#, fuzzy +msgid "Edit profiles..." +msgstr "Éditer l'entrée..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" +"Ouvre le dialogue d'options de BibleTime où vous pouvez définir la pluspart " +"de vos préférences." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "Ouvre le navigateur de manuels de KDE sur le manuel de BibleTime." + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +#, fuzzy +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"Bascule en mode \"Qu'est ce que c'est ?\".
Tout les éléments " +"importants de l'interface de BibleTime possèdent une aide \"Qu'est ce que " +"c'est ?\"." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Envoie un rapport de bug à l'équipe de BibleTime !" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Affiche une astuce quotidienne.
Celle-ci contient des citations " +"importantes de la Bible et des astuces pratiques pour l'utilisation de " +"BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Affiche des information détaillées à propos de BibleTime." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +#, fuzzy +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Affiche la boite de dialogue \"à propos\" générale pour KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Ceci est l'index principal de BibleTime.
Utilisez le pour gérer les " +"modules installés, pour utiliser les signets, pour ouvrir des fenêtres " +"d'affichage etc..." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +#, fuzzy +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Crée un nouveau dossier dans l'index principal.
Si vous avez pressé le " +"bouton droit de la souris sur un dossier, le nouveau en sera un sous-dossier." +"
Autrement, vous créerez un dossier au sommet de la hiérarchie." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Change les propriétés du dossier sélectionné." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Change les propriétés du signet sélectionné." + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +#, fuzzy +msgid "Import bookmarks from a file." +msgstr "Importe des signets depuis un fichier" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Export les signets vers un fichier afin que vous ou les " +"autres
utilisateurs puissent les importer plus tard." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +#, fuzzy +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Utilisez ceci pour ajouter ce signet à la file d'impression de BibleTime. Sa " +"clef, sa description et son texte seront utilisés pour l'impression." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" +"Ouvre une boite de dialogue permettant de déverrouiller le module " +"sélectionné." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "" +"Ouvre une boite de dialogue montrant les informations à propos du module " +"sélectionné." + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +#, fuzzy +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" +"Cette partie de l'interface de BibleTime est l'aire de travail.
Toutes " +"les fenêtres d'affichage sont ouvertes à cet endroit." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "L'entrée suivante du module sera affichée." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "L'entrée précédente du module sera affichée." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +#, fuzzy +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"Si vous affichez un texte de la Bible, le verset suivant sera souligné." +"
Si vous lisez un commentaire, l'entrée suivante sera affichée." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +#, fuzzy +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"Si vous affichez un texte de la Bible, le verset précédent sera souligné." +"
Si vous lisez un commentaire, l'entrée précédente sera affichée." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" +"Affiche le chapitre suivant de ce module. Le verset sera initialisé à \"1\"." + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" +"Affiche le chapitre précédent de ce module. Le verset sera initialisé à \"1" +"\"." + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" +"Affiche le livre suivant de ce module. Le chapitre et le verset seront " +"initialisés à \"1\"." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" +"Affiche le livre précédent dans ce module. Le chapitre et le verset seront " +"initialisés à \"1\"." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "Cette liste contient les livres disponibles dans ce module." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "Cette liste contient les chapitres disponibles dans le livre courant." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "Cette liste contient les versets disponibles dans le chapitre courant." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Cette liste contient les entrées du module courant." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Ce bouton sert à faire défiler les entrées contenues dans la liste. Pressez " +"ce bouton et déplacez la souris pour augmenter ou réduire les items." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" +"Bascule entre les modes lecture/écriture et lecture seule pour les modules " +"modifiables." + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +#, fuzzy +msgid "Save new personal comments." +msgstr "Enregistre le commentaire personnel." + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Efface le texte et supprime l'entrée du module." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "Bascule entre caractères gras et normaux pour le texte sélectionné." + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "" +"Bascule entre caractères italiques et normaux pour le texte sélectionné." + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +#, fuzzy +msgid "Toggle underlined formatting of the selected text." +msgstr "" +"Bascule entre caractères soulignés et normaux pour le texte sélectionné." + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Choisir une police de caractère pour le texte sélectionné." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Choisir une couleur pour le texte sélectionné." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Choisir une taille de caractères pour le texte sélectionné." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" +"Synchronise le verset affiché par ce module avec la fenêtre de bible active." + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +#, fuzzy +msgid "Save the displayed chapter as an HTML file." +msgstr "Sauvegarde le chapitre affiché en tant que fichier HTML." + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Sélectionne tout le texte." + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Copie le texte affiché dans le presse-papier." + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +#, fuzzy +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Choisir les modules dans lesquels la recherche se fera.
Les deux boutons " +"sur le côté droit servent à ajouter ou supprimer des modules de la liste de " +"ceux qui seront utilisés." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Ajoute le module sélectionné à la liste de gauche." + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Supprime le module sélectionné de la liste de droite." + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "La liste des modules utilisés pour la recherche." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +#, fuzzy +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "" +"Le texte entré dans cette boite de saisie sera recherché dans tout les " +"modules." + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +#, fuzzy +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Activer ceci pour faire une recherche pour des mots multiples.
Chaque mot " +"dans la ligne d'édition sera recherché indépendamment des autres." + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +#, fuzzy +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Activer ceci pour rechercher exactement le texte que vous avez entré dans la " +"ligne d'édition." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Sélectionner ceci pour lancer une recherche à l'aide des expressions " +"régulières GNU.
Lire le manuel pour une explication quant à leur usage." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +#, fuzzy +msgid "Activate this to use a case sensitive search." +msgstr "" +"Activer ceci pour que la recherche soit case-sensitive (c'est à dire " +"respecte majuscules/minuscules)." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" +"Sélectionner ceci si vous souhaitez rechercher dans l'ensemble du ou des " +"modules." + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +#, fuzzy +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" +"Sélectionnez ceci si vous souhaitez utiliser le dernier résultat de " +"recherche comme plage de recherche." + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Crée une nouvelle plage de recherche" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +#, fuzzy +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" +"Utiliser votre propre plage de recherche.
Un jeu standard de plage de " +"recherche existe." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Utilisez ce bouton pour supprimer la plage de recherche choisie." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Choisir une plage de recherche depuis la liste déroulante." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Entrez votre propre plage de recherche.
Pour définir une plage, utilisez " +"\"-\" (i.e Genèse- Exode),
pour séparer différentes plages ou clef, " +"utilisez le point-virgule (ie Genèse;Mathieu)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Cette liste contient l'analyse des résultats de votre plage de recherche. Ce " +"résultat sera utilisé pour la recherche." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Ferme ce dialogue et enregistre les modifications." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Liste des modules utilisés pour la recherche.
Cliquer sur un module pour " +"voir les résultats sur le côté droit." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Ceci contient les items trouvés dans les modules sélectionnés." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "Cette boite de texte affiche un aperçu des items choisis." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Analyse graphique des résultats de votre recherche.
Les barres montrent " +"le nombre d'items trouvés dans chaque livre de la Bible ou dans les " +"commentaires." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "Activer cette boite pour afficher une astuce au démarrage." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" +"Contient les langues qui peuvent être utilisés pour les noms de livres." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +#, fuzzy +msgid "Activate this to see the BibleTime logo on startup." +msgstr "Activer cette boite pour afficher une astuce au démarrage." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +#, fuzzy +msgid "Select an action and change the key binding for the action." +msgstr "Sélectionner une action et changer le raccourci clavier pour celle-ci." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +#, fuzzy +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" +"Sélectionner dans cette boite comment la police est utilisée et change celle-" +"ci dans le sélecteur de polices." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "Ceci est la couleur de fond des fenêtres d'affichage." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" +"Ceci est la couleur des versets surlignés dans les fenêtres d'affichage." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "Ceci est la couleur de fond des fenêtres d'affichage." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "Définir les raccourcis claviers" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "Définir les raccourcis claviers" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "Définir les raccourcis claviers" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Lance l'impression.
Les items de la liste vont être imprimés suivant les " +"style assignés." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Imprime dans un fichier temporaire et ouvre un visualiseur de Postscript " +"pour prévisualiser le résultat de l'impression." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +#, fuzzy +msgid "Closes this dialog without doing anything else." +msgstr "" +"Ferme cette boite de dialogue sans rien faire aux items ou à l'imprimante." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "Ouvre l'aide en ligne de BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +#, fuzzy +msgid "This combo box contains the available print styles." +msgstr "Cette liste déroulante contient les styles d'impression disponibles." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Ceci est la liste contenant les items retenus pour l'impression." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Déplace l'item sélectionné en dessous." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Déplace l'item sélectionné en dessus." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Supprime l'item sélectionné." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +#, fuzzy +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Insert un saut de page dans la liste.
L'imprimante commencera une " +"nouvelle page." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "Cette boite contient les marges de la page mesurées en millimètres." + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "Taille de la marge gauche du papier." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "Taille de la marge droite du papier." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "Taille de la marge au sommet du papier." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "Taille de la marge en bas du papier." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Cette liste contient les styles d'impression disponibles.
Créez le votre " +"à l'aide du bouton \"Nouveau style\"." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Supprime le style d'impression sélectionné de la liste." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Change les propriétés du style d'impression sélectionné." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" +"Crée un nouveau style d'impression.
Ce nouveau style va être ajouté à la " +"liste." + +#~ msgid "&Show footnotes" +#~ msgstr "A&fficher notes" + +#~ msgid "S&how Strong's numbers" +#~ msgstr "Afficher numéros de &Strong" + +#~ msgid "Translation into Brazilian Portoguese" +#~ msgstr "Traduction en portugais brésilien" + +#~ msgid "handbook" +#~ msgstr "manuel" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Logo de démarrage \"Martin Luther\"" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponsor de www.bibletime.de" + +#~ msgid "backend" +#~ msgstr "backend" + +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Leader du projet SWORD.\n" +#~ "Beaucoup d'aide grâce à l'API SWORD !" + +#~ msgid "Printing %1" +#~ msgstr "Impression de %1" + +#~ msgid "Left" +#~ msgstr "Gauche" + +#~ msgid "Center" +#~ msgstr "Centré" + +#~ msgid "Right" +#~ msgstr "Droit" + +#~ msgid "Printdialog" +#~ msgstr "Dialogue d'impression" + +#~ msgid "The general options for printing" +#~ msgstr "Les options générale pour l'impression" + +#~ msgid "Available printers:" +#~ msgstr "Imprimantes disponibles :" + +#~ msgid "Host" +#~ msgstr "Hôte" + +#~ msgid "Comment" +#~ msgstr "Commentaire" + +#~ msgid "&Number of copies" +#~ msgstr "&Nombre de copies" + +#~ msgid "Por&trait" +#~ msgstr "Por&trait" + +#~ msgid "L&andscape" +#~ msgstr "P&aysage" + +#~ msgid "Paper t&ype" +#~ msgstr "T&ype de papier" + +#~ msgid "Size: 8888mm x 8888mm" +#~ msgstr "Taille : 8888mm x 8888mm" + +#~ msgid "*.ps | Postscript files" +#~ msgstr "*.ps | fichiers Postscript" + +#~ msgid "A4" +#~ msgstr "A4" + +#~ msgid "A5" +#~ msgstr "A5" + +#~ msgid "Letter" +#~ msgstr "Letter" + +#~ msgid "Legal" +#~ msgstr "Legal" + +#~ msgid "Executive" +#~ msgstr "Executive" + +#~ msgid "Layout specific settings" +#~ msgstr "Options de mise en page" + +#~ msgid "&Bottom" +#~ msgstr "&Bas" + +#~ msgid "Entries" +#~ msgstr "Entrées" + +#~ msgid "Management of BibleTime's printing queue" +#~ msgstr "Gestion de la file d'impression de BibleTime" + +#~ msgid "Size: %1mm x %2mm" +#~ msgstr "Taille : %1mm x %2mm" + +#~ msgid "Select all" +#~ msgstr "Tout sélectionner" + +#~ msgid "Save verse with text as ..." +#~ msgstr "Sauver le verset et son texte sous..." + +#~ msgid "Configure BibleTime's key bindings" +#~ msgstr "Configurer les raccourcis clavier de BibleTime" + +#~ msgid "Choose fonts for BibleTime" +#~ msgstr "Choisir les polices pour BibleTime" + +#~ msgid "Choose the area of application and set the font for it" +#~ msgstr "Choisir l'élément de l'interface et les polices à y utiliser" + +#~ msgid "Module fonts" +#~ msgstr "Polices des modules" + +#~ msgid "Configure the fonts used for modules" +#~ msgstr "Configurer les polices utilisées pour les modules" + +#~ msgid "Configure BibleTime's general options" +#~ msgstr "Configurer les options générales de BibleTime" + +#~ msgid "
%1

" +#~ msgstr "
%1

" + +#~ msgid "Result with text" +#~ msgstr "Résultats avec texte" + +#~ msgid "Search result for \"%1\" in module \"%2\"\n" +#~ msgstr "Résultats de la recherche pour \"%1\" dans le module \"%2\"\n" + +#~ msgid "Useful tips for BibleTime" +#~ msgstr "Astuces pour BibleTime" + +#~ msgid "Run on startup" +#~ msgstr "Lancer au démarrage" + +#~ msgid "" +#~ "
Missing tips!


Your installation " +#~ "is missing the daily tips.\t\tPlease make sure all files of BibleTime are" +#~ "\t\tinstalled and that the permissions of $KDEDIR are correct!

\t" +#~ "\tIf you can't solve this problem please contact the team of BibleTime at" +#~ "\t\tinfo@bibletime.de!" +#~ msgstr "" +#~ "
Astuces Manquantes !


Il manque " +#~ "les astuces quotidiennes à votre installation.\t\tPrière de vérifier que " +#~ "tous les fichiers de BibleTime sont\t\tinstallés et que les permissions " +#~ "de $KDEDIR sont correctes !

\t\tSi vous ne parvenez pas à résoudre " +#~ "ce problème, prière de contacter l'équipe de BibleTime à\t\tinfo@bibletime.de !" + +#~ msgid "Foonotes: %1
" +#~ msgstr "Notes : %1
" + +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Numéro de Strong : %1
" + +#~ msgid "Unlock key:" +#~ msgstr "Clef de déverrouillage :" + +#~ msgid "Version:" +#~ msgstr "Version :" + +#~ msgid "Font:" +#~ msgstr "Police :" + +#~ msgid "Not necessary!" +#~ msgstr "Non nécessaire !" + +#~ msgid "Datapath" +#~ msgstr "Emplacement" + +#~ msgid "" +#~ "The file does already exist!
Do you want to overwrite it?" +#~ msgstr "" +#~ "Le fichier existe déjà !
Voulez-vous écrire dessus ?
" + +#~ msgid "BibleTime - Save file as ..." +#~ msgstr "BibleTime - Sauver le fichier sous ..." + +#~ msgid "BibleTime - Help window" +#~ msgstr "BibleTime - Fenêtre d'aide" + +#~ msgid "Show a daily tip" +#~ msgstr "Afficher l'astuce quotidienne" + +#~ msgid "The bible window" +#~ msgstr "La fenêtre de Bible" + +#~ msgid "The commentary window" +#~ msgstr "La fenêtre de commentaires" + +#~ msgid "The lexicon window" +#~ msgstr "La fenêtre de lexique" + +#~ msgid "List of modules" +#~ msgstr "Liste des modules" + +#~ msgid "Show a preview" +#~ msgstr "Afficher une prévisualisation" + +#~ msgid "The list of printers" +#~ msgstr "La liste des imprimantes" + +#~ msgid "Print into a file" +#~ msgstr "Imprimer dans un fichier" + +#~ msgid "Browse for the file" +#~ msgstr "Sélection d'un fichier" + +#~ msgid "Copies" +#~ msgstr "Copies" + +#~ msgid "Paper type" +#~ msgstr "Type de papier" + +#~ msgid "Paper size" +#~ msgstr "Taille du papier" + +#~ msgid "List of styles" +#~ msgstr "Liste des styles" + +#~ msgid "Delete the chosen printing style" +#~ msgstr "Supprimer le style d'impression choisit" + +#~ msgid "Edit the chosen printing style" +#~ msgstr "Éditer le style d'impression choisit" + +#~ msgid "Show or hide the main index depending on current state." +#~ msgstr "Affiche ou masque l'index principal selon l'état actuel." + +#~ msgid "Show or hide the main toolbar depending on current state." +#~ msgstr "Affiche ou masque la barre d'outils principale selon l'état actuel." + +#~ msgid "" +#~ "Show or hide the footnotes in the modules deoending on current state." +#~ msgstr "Affiche ou masque les notes du module selon l'état actuel." + +#~ msgid "Arrange the opened display windows in a tile pattern." +#~ msgstr "Range les fenêtres d'affichage ouvertes en mosaïque." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a tile pattern if " +#~ "it's necessary." +#~ msgstr "" +#~ "Les fenêtres d'affichage ouvertes seront arrangées automatiquement en " +#~ "mosaïque si cela est nécessaire." + +#~ msgid "Arrange the open display windows in a cascade pattern." +#~ msgstr "Range les fenêtres d'affichage en cascade." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a cascade pattern " +#~ "if it's necessary." +#~ msgstr "" +#~ "Les fenêtres d'affichage seront automatiquement arrangées en cascade si " +#~ "cela est nécessaire." + +#~ msgid "Open a dialog where you can edit the toolbar of BibleTime." +#~ msgstr "" +#~ "Ouvre un dialogue où vous pouvez éditer la barre d'outils de BibleTime." + +#~ msgid "This is the Bible display window" +#~ msgstr "Ceci est la fenêtre d'affichage de la Bible." + +#~ msgid "This is the commentary display window." +#~ msgstr "Ceci est la fenêtre d'affichage des commentaires." + +#~ msgid "This is the lexicon display window." +#~ msgstr "Ceci est la fenêtre d'affichage du lexique." + +#~ msgid "Activate this to see a startup logo on each startup of BibleTime." +#~ msgstr "Activer ceci pour voir un logo à chaque démarrage de BibleTime." + +#~ msgid "This list contains the modules using foreign fonts." +#~ msgstr "" +#~ "Cette liste contient les modules utilisant un encodage de caractère " +#~ "étranger." + +#~ msgid "" +#~ "This is the list of available printers of your system.
Please select " +#~ "the printer you want to use for printing." +#~ msgstr "" +#~ "Ceci est la liste des imprimantes disponibles sur votre système." +#~ "
Sélectionner celle que vous voulez utiliser pour l'impression." + +#~ msgid "Print into a postscript file on disk." +#~ msgstr "Imprime dans un fichier Postscript sur le disque." + +#~ msgid "Browse for the file you want to print into." +#~ msgstr "Sélectionner le fichier dans lequel vous souhaitez imprimer." + +#~ msgid "The number of copies used for printing." +#~ msgstr "Nombre d'exemplaires de l'impression." + +#~ msgid "Choose the orientation of the used paper." +#~ msgstr "Choisir l'orientation du papier utilisé." + +#~ msgid "Print on the paper using \"Portrait\" as orientation." +#~ msgstr "Imprime sur papier en orientation \"Portrait\"." + +#~ msgid "Print on the paper using \"Landscape\" as orientation." +#~ msgstr "Imprime sur papier en orientation \"Paysage\"." + +#~ msgid "The type of the paper which is used for printing." +#~ msgstr "Type de papier utilisé pour l'impression." + +#~ msgid "The size of the used paper." +#~ msgstr "Taille du papier utilisé pour l'impression." diff --git a/bibletime-doc/po/hu.po b/bibletime-doc/po/hu.po new file mode 100644 index 0000000..31e59a5 --- /dev/null +++ b/bibletime-doc/po/hu.po @@ -0,0 +1,2129 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2001-06-10 20:57+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: ENCODING\n" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/bibletime_init.cpp:72 +msgid "Clear printing queue" +msgstr "" + +#: bibletime/bibletime_init.cpp:87 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:92 +msgid "Search in module(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:97 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:312 +msgid "Remove selected item(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:102 +msgid "&Show footnotes" +msgstr "" + +#: bibletime/bibletime_init.cpp:107 +msgid "S&how Strong's numbers" +msgstr "" + +#: bibletime/bibletime_init.cpp:116 +msgid "&Show main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:128 +msgid "&Cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:133 +msgid "&Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:138 +msgid "&Auto cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:143 +msgid "A&uto Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:148 +msgid "&Close all" +msgstr "" + +#: bibletime/bibletime_init.cpp:169 +msgid "&Daily tip" +msgstr "" + +#: bibletime/main.cpp:70 +msgid "Enable debug messages." +msgstr "" + +#: bibletime/main.cpp:78 +msgid "Bible study tool for KDE 2" +msgstr "" + +#: bibletime/main.cpp:80 +msgid "(c)1999-2001, The BibleTime Team" +msgstr "" + +#: bibletime/main.cpp:81 +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for new developers, translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" + +#: bibletime/main.cpp:87 +msgid "Project coordinator, frontend, backend" +msgstr "" + +#: bibletime/main.cpp:88 +msgid "Frontend, backend, misc things" +msgstr "" + +#: bibletime/main.cpp:91 +msgid "Handbook" +msgstr "" + +#: bibletime/main.cpp:94 +msgid "Translation into Hungarian" +msgstr "" + +#: bibletime/main.cpp:95 bibletime/main.cpp:104 +msgid "Translation into Italian" +msgstr "" + +#: bibletime/main.cpp:96 +msgid "Translation into Polish" +msgstr "" + +#: bibletime/main.cpp:97 +msgid "Translation into Danish" +msgstr "" + +#: bibletime/main.cpp:98 +msgid "Translation into Norwegian" +msgstr "" + +#: bibletime/main.cpp:99 +msgid "Translation into Brazilian Portoguese" +msgstr "" + +#: bibletime/main.cpp:100 +msgid "Translation into Dutch" +msgstr "" + +#: bibletime/main.cpp:101 +msgid "Translation into French" +msgstr "" + +#: bibletime/main.cpp:102 +msgid "Translation into Czech" +msgstr "" + +#: bibletime/main.cpp:103 bibletime/main.cpp:105 +msgid "Translation into Portoguese" +msgstr "" + +#: bibletime/main.cpp:106 +msgid "Translation into Slovak" +msgstr "" + +#: bibletime/main.cpp:109 +msgid "Bible study HowTo" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:56 +#: bibletime/main.cpp:110 +msgid "Optionsdialog" +msgstr "" + +#: bibletime/main.cpp:111 +msgid "handbook" +msgstr "" + +#: bibletime/main.cpp:112 +msgid "Martin Luther startup logo" +msgstr "" + +#: bibletime/main.cpp:113 +msgid "Sponsor of www.bibletime.de" +msgstr "" + +#: bibletime/main.cpp:114 +msgid "backend" +msgstr "" + +#: bibletime/main.cpp:115 +msgid "" +"Leader of the SWORD project.\n" +"Lots of help with the SWORD API!" +msgstr "" + +#: bibletime/bibletime.cpp:175 bibletime/bibletime.cpp:190 +#: bibletime/bibletime_slots.cpp:98 bibletime/bibletime_slots.cpp:107 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:95 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:297 +msgid "Display window" +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Printing..." +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Abort printing" +msgstr "" + +#: bibletime/bibletime_slots.cpp:313 +#, c-format, ycp-format +msgid "Printing %1" +msgstr "" + +#: bibletime/printing/cstylelist.cpp:46 +msgid "Name:" +msgstr "" + +#: bibletime/printing/cprinter.cpp:310 bibletime/printing/cprinter.cpp:341 +#: bibletime/printing/cprinter.cpp:519 bibletime/printing/cprinter.cpp:527 +#: bibletime/printing/cprinterdialog.cpp:616 +#: bibletime/printing/cstyleeditordialog.cpp:182 +#: bibletime/printing/cstylelist.cpp:130 +msgid "Standard" +msgstr "" + +#: bibletime/printing/cstyle.cpp:42 +msgid "unknown name" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +#: bibletime/printing/cprintitemlist.cpp:48 +msgid "Module" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:49 +msgid "From" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:50 +msgid "To" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:51 +msgid "Style" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:43 +msgid "style editor" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:67 +msgid "Name of style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +msgid "Choose the part of the style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:77 +#: bibletime/printing/cstyleeditordialog.cpp:281 +msgid "Header" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:593 +#: bibletime/printing/cstyleeditordialog.cpp:78 +#: bibletime/printing/cstyleeditordialog.cpp:285 +msgid "Description" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:79 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Module text" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:85 +msgid "Enable this part" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:468 +#: bibletime/printing/cstyleeditordialog.cpp:96 +msgid "Left" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:470 +#: bibletime/printing/cstyleeditordialog.cpp:97 +msgid "Center" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:472 +#: bibletime/printing/cstyleeditordialog.cpp:98 +msgid "Right" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:109 +msgid "Foreground:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:120 +msgid "Background:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:131 +msgid "Choose font" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:134 +msgid "Font preview" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:148 +msgid "Use frame" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:158 +msgid "Line thickness (in point):" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:166 +msgid "Frame color:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:64 +msgid "Printdialog" +msgstr "" + +#: bibletime/dummy.h:123 bibletime/printing/cprinterdialog.cpp:65 +#: bibletime/tooltipdef.h:123 +msgid "Preview" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "General" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "The general options for printing" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:92 +msgid "Available printers:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:97 +msgid "Printer" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:98 +msgid "Host" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:99 +msgid "Comment" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:106 +msgid "Print to file:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +#: bibletime/printing/cprinterdialog.cpp:120 +msgid "Search" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:141 +msgid "&Number of copies" +msgstr "" + +#: bibletime/dummy.h:153 bibletime/printing/cprinterdialog.cpp:149 +#: bibletime/tooltipdef.h:153 +msgid "Orientation" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:153 +msgid "Por&trait" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:157 +msgid "L&andscape" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:173 +msgid "Paper t&ype" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:177 +msgid "Size: 8888mm x 8888mm" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:196 +msgid "Preview application:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:292 +msgid "*.ps | Postscript files" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:335 +msgid "A4" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:336 +msgid "A5" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:337 +msgid "Letter" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:338 +msgid "Legal" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:339 +msgid "Executive" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:370 +msgid "Layout specific settings" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:373 +msgid "Margins (in millimeter)" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:381 +msgid "&Top" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:382 +msgid "&Bottom" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:383 +msgid "&Left" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:384 +msgid "&Right" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:433 +msgid "List of style items:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Entries" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Management of BibleTime's printing queue" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:481 +msgid "Choose a style" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:493 +msgid "Entries which should be printed:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:540 +#, c-format, ycp-format +msgid "Size: %1mm x %2mm" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:63 +msgid "Synchronize..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:68 +msgid "Edit entry..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:78 +msgid "Commentary window" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:81 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:66 +msgid "Entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:82 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:67 +msgid "Text of entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:83 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:88 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:68 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:73 +msgid "Entry with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:75 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:70 +msgid "Selected text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:91 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:76 +msgid "Entry as plain text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:92 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:77 +msgid "Entry as HTML" +msgstr "" + +#: bibletime/dummy.h:95 bibletime/frontend/presenters/cbiblepresenter.cpp:86 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:94 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:79 +#: bibletime/tooltipdef.h:95 +msgid "Select all" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:87 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:95 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:80 +msgid "Lookup selected text in lexicon" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:89 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:97 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:82 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:401 +msgid "Copy..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:90 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:98 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:83 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:402 +msgid "Add to printing queue..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:91 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:403 +msgid "Save..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:67 +msgid "Bible window" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:70 +msgid "Verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:71 +msgid "Text of verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:72 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:78 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:82 +msgid "Verse with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:73 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:79 +msgid "Chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:83 +msgid "Chapter as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:84 +msgid "Chapter as HTML" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "Save verse with text as ..." +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +msgid "Select additional modules" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:51 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:121 +msgid "NONE" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:63 +msgid "Lexicon window" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Accelerators" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Configure BibleTime's key bindings" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:86 +msgid "Choose fonts for BibleTime" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:90 +msgid "Choose the area of application and set the font for it" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:101 +msgid "The quick brown fox jumped over the lazy dog" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Module fonts" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Configure the fonts used for modules" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Configure BibleTime's colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:141 +msgid "Background" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:158 +msgid "Highlighted Verse" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +msgid "Configure BibleTime's general options" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:170 +msgid "Show tip of the day" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:187 +msgid "Language for booknames" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:192 +msgid "English" +msgstr "" + +#: bibletime/dummy.h:130 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:211 +#: bibletime/tooltipdef.h:130 +msgid "Show startuplogo" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:172 +msgid "module not set" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Search Dialog" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Interrupt" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:94 +msgid "Choose modules" +msgstr "" + +#: bibletime/dummy.h:99 bibletime/frontend/searchdialog/csearchdialog.cpp:94 +#: bibletime/tooltipdef.h:99 +msgid "Choose the modules for the search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Search Text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Enter the text to search for" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "Search Result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "The result of your search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Graphical analysis of your search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialoganalysis.cpp:316 +#, ycp-format +msgid "
%1

" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:57 +msgid "Search properties" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:75 +msgid "Multiple Words" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:83 +msgid "Exact Search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:90 +msgid "Regular Expression" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:103 +msgid "Case Sensitive" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:107 +msgid "Search scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:111 +msgid "Search progress" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:116 +msgid "Current module:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:117 +msgid "Overall:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +msgid "Search result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:203 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:240 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:273 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:318 +#, ycp-format +msgid "Search result for \"%1\" in module \"%2\"\n" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +msgid "Save search result ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:391 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:398 +msgid "Key" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:392 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:395 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:399 +msgid "Key with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "Save key ..." +msgstr "" + +#: bibletime/dummy.h:110 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:110 +msgid "No scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:216 +msgid "Choose custom range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:217 +msgid "Define range text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:218 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Range name" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Please enter a name for the new range" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:68 +msgid "Useful tips for BibleTime" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:100 +msgid "Run on startup" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:120 +msgid "" +"
Missing tips!


Your installation is " +"missing the daily tips.\t\tPlease make sure all files of BibleTime are\t" +"\tinstalled and that the permissions of $KDEDIR are correct!

\t\tIf " +"you can't solve this problem please contact the team of BibleTime at\t\tinfo@bibletime.de!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:198 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "Save text as HTML page ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +msgid "Save text as plain text ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:453 +msgid "Choose a font:" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:457 +msgid "Choose font size" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:461 +msgid "Bold" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:465 +msgid "Underlined" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:474 +msgid "Justify" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:182 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:193 +msgid "unknown" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:220 +msgid "Bookmark to" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +#, ycp-format +msgid "Foonotes: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:247 +#, ycp-format +msgid "Strong's numbers: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "Unlock key:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "not set" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:251 +msgid "Version:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:253 +msgid "Font:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:170 +msgid "Bibles" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:173 +msgid "Commentaries" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:176 +msgid "Lexicons" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:284 +msgid "Caption" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:292 +msgid "Main index" +msgstr "" + +#: bibletime/dummy.h:51 bibletime/frontend/groupmanager/cgroupmanager.cpp:293 +#: bibletime/tooltipdef.h:51 +msgid "Create a new folder" +msgstr "" + +#: bibletime/dummy.h:52 bibletime/frontend/groupmanager/cgroupmanager.cpp:296 +#: bibletime/tooltipdef.h:52 +msgid "Change this folder" +msgstr "" + +#: bibletime/dummy.h:53 bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +#: bibletime/tooltipdef.h:53 +msgid "Change this bookmark" +msgstr "" + +#: bibletime/dummy.h:54 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:54 +msgid "Import bookmarks" +msgstr "" + +#: bibletime/dummy.h:55 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:55 +msgid "Export bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:309 +msgid "Print bookmark" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:315 +msgid "Search in selected module(s)" +msgstr "" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:318 +#: bibletime/tooltipdef.h:57 +msgid "Unlock this module" +msgstr "" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:321 +#: bibletime/tooltipdef.h:58 +msgid "About this module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Please enter here the description:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Change bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Please change the description of the item!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Change folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Please change the name of the group!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:563 +msgid "Not necessary!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:575 +msgid "Datapath" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:577 +msgid "Version" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:579 +msgid "Unlock key" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:581 +msgid "Writable" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:589 +msgid "Footnotes" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:591 +msgid "Strong's numbers" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Enter name of folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Please enter the name of the folder!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "BibleTime - Unlock module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "Enter the key to unlock the module!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1178 +msgid "Import bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1186 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1189 +msgid "Import of bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1203 +msgid "Export bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "BibleTime - Reset main index" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "" +"The file does already exist!
Do you want to overwrite it?
" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "BibleTime - Save file as ..." +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:35 bibletime/frontend/chtmldialog.cpp:43 +msgid "BibleTime - Help window" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit toolbar" +msgstr "" + +#: bibletime/dummy.h:41 bibletime/tooltipdef.h:41 +msgid "BibleTime's handbook" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Enter \"What's this?\" mode" +msgstr "" + +#: bibletime/dummy.h:43 bibletime/tooltipdef.h:43 +msgid "Send bugreport" +msgstr "" + +#: bibletime/dummy.h:44 bibletime/tooltipdef.h:44 +msgid "Show a daily tip" +msgstr "" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "About BibleTime" +msgstr "" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "About KDE" +msgstr "" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +msgid "The main index" +msgstr "" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "Add bookmark to printing queue" +msgstr "" + +#: bibletime/dummy.h:61 bibletime/tooltipdef.h:61 +msgid "The working area" +msgstr "" + +#: bibletime/dummy.h:63 bibletime/tooltipdef.h:63 +msgid "The bible window" +msgstr "" + +#: bibletime/dummy.h:64 bibletime/tooltipdef.h:64 +msgid "The commentary window" +msgstr "" + +#: bibletime/dummy.h:65 bibletime/tooltipdef.h:65 +msgid "The lexicon window" +msgstr "" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "Show the next entry" +msgstr "" + +#: bibletime/dummy.h:68 bibletime/tooltipdef.h:68 +msgid "Show the previous entry" +msgstr "" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Jump to next verse" +msgstr "" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Jump to previous verse" +msgstr "" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Show next chapter" +msgstr "" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Show previous chapter" +msgstr "" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +msgid "Show next book" +msgstr "" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +msgid "Show previous book" +msgstr "" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "List of books" +msgstr "" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +msgid "List of chapters" +msgstr "" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of verses" +msgstr "" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of entries" +msgstr "" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "Scroll through the list" +msgstr "" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "Edit this entry" +msgstr "" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Save this comment" +msgstr "" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Delete this comment" +msgstr "" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Comment up to" +msgstr "" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Set bold" +msgstr "" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Set italic" +msgstr "" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set underlined" +msgstr "" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set font" +msgstr "" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set the color" +msgstr "" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set the fontsize" +msgstr "" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Synchronize with Bible windows" +msgstr "" + +#: bibletime/dummy.h:94 bibletime/tooltipdef.h:94 +msgid "Save as HTML" +msgstr "" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Copy to clipboard" +msgstr "" + +#: bibletime/dummy.h:100 bibletime/tooltipdef.h:100 +msgid "Add the selected module to the list" +msgstr "" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +msgid "Remove the selected module from the list" +msgstr "" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "List of modules used for the search" +msgstr "" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "Search this text" +msgstr "" + +#: bibletime/dummy.h:105 bibletime/tooltipdef.h:105 +msgid "Search multiple words" +msgstr "" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +msgid "Exact match" +msgstr "" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search with GNU regular expressions" +msgstr "" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Search case sensitive" +msgstr "" + +#: bibletime/dummy.h:111 bibletime/tooltipdef.h:111 +msgid "Last search result" +msgstr "" + +#: bibletime/dummy.h:112 bibletime/tooltipdef.h:112 +msgid "Use own scope" +msgstr "" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Add a new scope" +msgstr "" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +msgid "Delete this search scope" +msgstr "" + +#: bibletime/dummy.h:115 bibletime/dummy.h:297 bibletime/tooltipdef.h:115 +#: bibletime/whatsthisdef.h:123 +msgid "Edit and define your search scopes" +msgstr "" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Choose a search scope from the list" +msgstr "" + +#: bibletime/dummy.h:117 bibletime/tooltipdef.h:117 +msgid "Enter your own search scope" +msgstr "" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Parsed result" +msgstr "" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Close this dialog" +msgstr "" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Used modules" +msgstr "" + +#: bibletime/dummy.h:122 bibletime/tooltipdef.h:122 +msgid "Items found" +msgstr "" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Graphical analysis" +msgstr "" + +#: bibletime/dummy.h:128 bibletime/tooltipdef.h:128 +msgid "Show daily tip" +msgstr "" + +#: bibletime/dummy.h:129 bibletime/tooltipdef.h:129 +msgid "List of languages" +msgstr "" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +msgid "Set keyboard accelerators" +msgstr "" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Choose the area of application" +msgstr "" + +#: bibletime/dummy.h:136 bibletime/dummy.h:317 bibletime/tooltipdef.h:136 +#: bibletime/whatsthisdef.h:143 +msgid "Choose a font" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "List of modules" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "Color of the background" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "Color of the highlighted verse" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "Start printing" +msgstr "" + +#: bibletime/dummy.h:145 bibletime/tooltipdef.h:145 +msgid "Show a preview" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Open help" +msgstr "" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "The list of printers" +msgstr "" + +#: bibletime/dummy.h:150 bibletime/tooltipdef.h:150 +msgid "Print into a file" +msgstr "" + +#: bibletime/dummy.h:151 bibletime/tooltipdef.h:151 +msgid "Browse for the file" +msgstr "" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Copies" +msgstr "" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Paper type" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Paper size" +msgstr "" + +#: bibletime/dummy.h:159 bibletime/tooltipdef.h:159 +msgid "Styles" +msgstr "" + +#: bibletime/dummy.h:160 bibletime/tooltipdef.h:160 +msgid "List of print items" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Move item up" +msgstr "" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Move item down" +msgstr "" + +#: bibletime/dummy.h:163 bibletime/tooltipdef.h:163 +msgid "Delete items" +msgstr "" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Insert a page break" +msgstr "" + +#: bibletime/dummy.h:166 bibletime/tooltipdef.h:166 +msgid "Page borders" +msgstr "" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "Left border" +msgstr "" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Right border" +msgstr "" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Upper border" +msgstr "" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Lower border" +msgstr "" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "List of styles" +msgstr "" + +#: bibletime/dummy.h:172 bibletime/tooltipdef.h:172 +msgid "Delete the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Edit the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Create a new printing style" +msgstr "" + +#: bibletime/dummy.h:202 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the printing queue of BibleTime. All items will be removed from the " +"list, the print button will be disabled." +msgstr "" + +#: bibletime/dummy.h:203 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printerdialog of BibleTime where you can edit the printing queue " +"and assign styles to the items." +msgstr "" + +#: bibletime/dummy.h:204 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "" + +#: bibletime/dummy.h:206 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search text in one or more modules." +msgstr "" + +#: bibletime/dummy.h:207 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder the " +"subitems of it will be removed, too." +msgstr "" + +#: bibletime/dummy.h:208 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:36 +msgid "Show or hide the main index depending on current state." +msgstr "" + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:37 +msgid "Show or hide the main toolbar depending on current state." +msgstr "" + +#: bibletime/dummy.h:212 bibletime/whatsthisdef.h:38 +msgid "Show or hide the footnotes in the modules deoending on current state." +msgstr "" + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:39 +msgid "" +"Show or hide Strong's numbers in the modules depending on current state." +msgstr "" + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:41 +msgid "Arrange the opened display windows in a tile pattern." +msgstr "" + +#: bibletime/dummy.h:216 bibletime/whatsthisdef.h:42 +msgid "" +"The open display windows will automatically arranged in a tile pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:43 +msgid "Arrange the open display windows in a cascade pattern." +msgstr "" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:44 +msgid "" +"The open display windows will automatically arranged in a cascade pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "" + +#: bibletime/dummy.h:221 bibletime/whatsthisdef.h:47 +msgid "Open a dialog where you can edit the toolbar of BibleTime." +msgstr "" + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:48 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:50 +msgid "Open KDE's helpbrowser with BibleTime's handbook." +msgstr "" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:51 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help." +msgstr "" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:52 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "" + +#: bibletime/dummy.h:227 bibletime/whatsthisdef.h:53 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:54 +msgid "Show detailed information about BibleTime." +msgstr "" + +#: bibletime/dummy.h:229 bibletime/whatsthisdef.h:55 +msgid "Show the general about dialog of KDE 2." +msgstr "" + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:59 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:60 +msgid "" +"Create a new folder in the main index.
If you pressed the right mouse " +"button on a folder the new folder will be a sub-item of it.
Otherwise you " +"will create a toplevel folder." +msgstr "" + +#: bibletime/dummy.h:235 bibletime/whatsthisdef.h:61 +msgid "Change the properties of the selected folder." +msgstr "" + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:62 +msgid "Change the properties of the selected bookmark." +msgstr "" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:63 +msgid "Import bookmark from a file." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:64 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:65 +msgid "" +"Use this to add this bookmark to BibleTime's printing queue. The key, the " +"description and the text of the key will be used for printing." +msgstr "" + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:66 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:67 +msgid "Open a dialog to show information about the selected module." +msgstr "" + +#: bibletime/dummy.h:244 bibletime/whatsthisdef.h:70 +msgid "" +"This area contains is the working place of Bibletime.
All display windows " +"are opened in this place." +msgstr "" + +#: bibletime/dummy.h:246 bibletime/whatsthisdef.h:72 +msgid "This is the Bible display window" +msgstr "" + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:73 +msgid "This is the commentary display window." +msgstr "" + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:74 +msgid "This is the lexicon display window." +msgstr "" + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:76 +msgid "The next entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:77 +msgid "The previous entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:78 +msgid "" +"If you view the text of a Bible the next verse will be highlighted.
If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:79 +msgid "" +"If you view the text of a Bible the previous verse will be highlighted. If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:80 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:81 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" + +#: bibletime/dummy.h:256 bibletime/whatsthisdef.h:82 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" + +#: bibletime/dummy.h:257 bibletime/whatsthisdef.h:83 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:84 +msgid "This list contains the books which are available in this module." +msgstr "" + +#: bibletime/dummy.h:259 bibletime/whatsthisdef.h:85 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:86 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:87 +msgid "This list contains the entries of the current module." +msgstr "" + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:88 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:89 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:90 +msgid "Save the personal comment." +msgstr "" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:91 +msgid "Clear the text and delete the entry from the module." +msgstr "" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:92 +msgid "Switch between bold and non-bold formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:93 +msgid "Switch between italic and non-italic formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:94 +msgid "" +"Switch between underlined and non-undelined formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:95 +msgid "Choose a new font for the selected text." +msgstr "" + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:96 +msgid "Choose a new color for the selected text." +msgstr "" + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:97 +msgid "Choose a new fontsize for the selected text." +msgstr "" + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:99 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:102 +msgid "Save the displayed chapter as a HTML file." +msgstr "" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:103 +msgid "Select all text." +msgstr "" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:104 +msgid "Copy the displayed text to the clipboard." +msgstr "" + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:107 +msgid "" +"Choose the modules which will be used for the search.
Use the two button " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" + +#: bibletime/dummy.h:282 bibletime/whatsthisdef.h:108 +msgid "Add the selected module to the list on the left." +msgstr "" + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:109 +msgid "Remove the selected module from the list on the left side." +msgstr "" + +#: bibletime/dummy.h:284 bibletime/whatsthisdef.h:110 +msgid "The list of modules used for the search." +msgstr "" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:112 +msgid "The text entered in this edit box will be searched in all modules." +msgstr "" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:113 +msgid "" +"Select this to search for multiple words.
Each word in the edit line is " +"searched as a single word." +msgstr "" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:114 +msgid "" +"Select this to search for exactly the same text you entered in the edit line." +msgstr "" + +#: bibletime/dummy.h:289 bibletime/whatsthisdef.h:115 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" + +#: bibletime/dummy.h:290 bibletime/whatsthisdef.h:116 +msgid "Activate this to use case sensitive search." +msgstr "" + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:118 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:119 +msgid "" +"Select this if you want to use the last search result of each module as " +"search scope." +msgstr "" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:120 +msgid "Create a new search scope." +msgstr "" + +#: bibletime/dummy.h:295 bibletime/whatsthisdef.h:121 +msgid "" +"Use an own scope for the search.
A standard set of search scopes exists." +msgstr "" + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:122 +msgid "Use this button to delete the chosen search scope." +msgstr "" + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:124 +msgid "Choose a search scope from the combo box" +msgstr "" + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:125 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:126 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" + +#: bibletime/dummy.h:301 bibletime/whatsthisdef.h:127 +msgid "Close this dialog and save the changes." +msgstr "" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:129 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:130 +msgid "This contains the items found in the selected module." +msgstr "" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:131 +msgid "This text box shows a preview of the chosen item." +msgstr "" + +#: bibletime/dummy.h:307 bibletime/whatsthisdef.h:133 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:136 +msgid "Activate this box to see a daily tip on startup." +msgstr "" + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:137 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" + +#: bibletime/dummy.h:312 bibletime/whatsthisdef.h:138 +msgid "Activate this to see a startup logo on each startup of BibleTime." +msgstr "" + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:141 +msgid "Select a action and change the key binding for the action." +msgstr "" + +#: bibletime/dummy.h:316 bibletime/whatsthisdef.h:142 +msgid "" +"Select in this box how the font is used and change the font in the font " +"chooser." +msgstr "" + +#: bibletime/dummy.h:319 bibletime/whatsthisdef.h:145 +msgid "This list contains the modules using foreign fonts." +msgstr "" + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:147 +msgid "This is the background color used in display windows." +msgstr "" + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:148 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" + +#: bibletime/dummy.h:325 bibletime/whatsthisdef.h:151 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:152 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:153 +msgid "" +"Closes this dialog without doing anything with the items or the printer." +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:154 +msgid "Open the online help of BibleTime." +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:156 +msgid "" +"This is the list of available printers of your system.
Please select the " +"printer you want to use for printing." +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:157 +msgid "Print into a postscript file on disk." +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:158 +msgid "Browse for the file you want to print into." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:159 +msgid "The number of copies used for printing." +msgstr "" + +#: bibletime/dummy.h:334 bibletime/whatsthisdef.h:160 +msgid "Choose the orientation of the used paper." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:161 +msgid "Print on the paper using \"Portrait\" as orientation." +msgstr "" + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:162 +msgid "Print on the paper using \"Landscape\" as orientation." +msgstr "" + +#: bibletime/dummy.h:337 bibletime/whatsthisdef.h:163 +msgid "The type of the paper which is used for printing." +msgstr "" + +#: bibletime/dummy.h:338 bibletime/whatsthisdef.h:164 +msgid "The size of the used paper." +msgstr "" + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:166 +msgid "This combo box contains the available printing styles." +msgstr "" + +#: bibletime/dummy.h:341 bibletime/whatsthisdef.h:167 +msgid "This is the list which contains the available print items." +msgstr "" + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:168 +msgid "Move the selected item one item above." +msgstr "" + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:169 +msgid "Move the selected item one item below." +msgstr "" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:170 +msgid "Delete the selected items." +msgstr "" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:171 +msgid "Inserts a page break into the list.
The printer will start new page." +msgstr "" + +#: bibletime/dummy.h:347 bibletime/whatsthisdef.h:173 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" + +#: bibletime/dummy.h:348 bibletime/whatsthisdef.h:174 +msgid "The size of the border on the left side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:175 +msgid "The size of the border on the right side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:176 +msgid "The size of the border on the top of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:177 +msgid "The size of the border on the bottom of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:178 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" + +#: bibletime/dummy.h:353 bibletime/whatsthisdef.h:179 +msgid "Remove the selected printing style from the list." +msgstr "" + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:180 +msgid "Change the properties of the selected printing style." +msgstr "" + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:181 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" diff --git a/bibletime-doc/po/it.gmo b/bibletime-doc/po/it.gmo new file mode 100644 index 0000000000000000000000000000000000000000..5b21f8d25fe1f29e4725e127239eea1cf6aad5a8 GIT binary patch literal 26187 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 L87dQds}}rUL{hLV literal 0 HcmV?d00001 diff --git a/bibletime-doc/po/it.po b/bibletime-doc/po/it.po new file mode 100644 index 0000000..9849d48 --- /dev/null +++ b/bibletime-doc/po/it.po @@ -0,0 +1,3375 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2001-05-08 23:33CEST\n" +"Last-Translator: Silvio Bacchetta \n" +"Language-Team: italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.8\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "note a piè di pagina" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "Numeri di Strong" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +#, fuzzy +msgid "Hebrew Cantillation" +msgstr "Disposizione" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Abilita messaggi di debug" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Strumento per lo studio della Bibbia per KDE 2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, The BibleTime Team" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"Bibletime è uno strumento per KDE 2 potente ma di facile utilizzo per lo " +"studio della Bibbia.\n" +"\n" +"Stiamo cercando nuovi sviluppatori, traduttori e autori di manuali.\n" +"Se desideri unirti a noi manda una e-mail in inglese o in tedesco a " +"info@bibletime.de" + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Coordinatore del progetto, frontend, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Frontend, backend, varie" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Finestra di ricerca" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Manuale" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Traduzione in ceco" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Traduzione in danese" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Traduzione in olandese" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Traduzione in francese" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Traduzione in ungherese" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Traduzione in italiano" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Traduzione in norvegese" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Traduzione in polacco" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Traduzione in portoghese" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Traduzione in ungherese" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Traduzione in slovacco" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Traduzione in danese" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Bible study HowTo" + +#: bibletime/main.cpp:185 +#, fuzzy +msgid "Starting BibleTime" +msgstr "Informazioni su BibleTime" + +#: bibletime/bibletime_init.cpp:59 +#, fuzzy +msgid "Creating BibleTime's GUI" +msgstr "Chiudi BibleTime" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Pulisci la coda di stampa" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Azzera l'indice principale" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Cerca nel modulo(i)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Rimuovi oggetto(i) selezionato" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "Mo&stra l'indice principale" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "Sovrapponi (&C)" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "Affianca (&T)" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "Sovrapposizione &automatica" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "Affiancamento a&utomatico" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "&Chiudi tutto" + +#: bibletime/bibletime_init.cpp:167 +#, fuzzy +msgid "&Save profile" +msgstr "Crea una nuova cartella" + +#: bibletime/bibletime_init.cpp:172 +#, fuzzy +msgid "&Load profile" +msgstr "Crea una nuova cartella" + +#: bibletime/bibletime_init.cpp:177 +#, fuzzy +msgid "&Configure profiles" +msgstr "Configura i colori di BibleTime" + +#: bibletime/bibletime_init.cpp:183 +#, fuzzy +msgid "&Fullscreen mode" +msgstr "Modulo corrente:" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Manuale" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Bible study HowTo" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "Suggerimento del giorno (&d)" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "editor degli stili" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Nome dello stile:" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Scegli la parte dello stile:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Intestazione" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Descrizione" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Testo del modulo" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Abilita questa parte" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Primo piano:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Sfondo:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Scegli il font" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Anteprima del font" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Usa cornice" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Spessore della linea (in punti):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Colore della cornice:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Nome dello stile:" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Nome:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "nome sconosciuto" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Stili" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Margini (in millimetri)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "Superiore (&T)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "Sinistro (&L)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "Destro (&R)" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Lista degli stili:" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Stampante" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Scegli uno stile" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Voci da stampare:" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Modulo" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "Da" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "A" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Stile" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Sfondo" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Impossibile trovare la pagina %1!" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | File HTML\n" +" *.* | Tutti i file (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Salva il testo come pagina HTML..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +".txt | file di testo (*.txt)\n" +"*.* | Tutti i file (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Salva come testo semplice..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Scegli un font:" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Scegli la dimensione del font" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Grassetto" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Sottolineato" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Giustifica" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "sconosciuto" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Aggiungi come segnalibro a" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +#, fuzzy +msgid "Language" +msgstr "Lista delle lingue" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Chiave di sblocco" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "non impostato" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Versione" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Bibbie" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Commentari" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Lessici" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Acquisizione" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Indice principale" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Crea una nuova cartella" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Cambia questa cartella" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Cambia questo segnalibro" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Importa segnalibri" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Esporta segnalibri" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Stampa segnalibro" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Cerca nei moduli selezionati" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Sblocca questo modulo" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "Informazioni su questo modulo" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Descrizione del segnalibro - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Inserisci la descrizione:" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Cambia la descrizione del segnalibro - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Per favore, modifica la descrizione dell'oggetto!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Cambia cartella - Bibletime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Per favore, cambia il nome del gruppo!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +#, fuzzy +msgid "Location" +msgstr "Acquisizione" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Scrivibile" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +#, fuzzy +msgid "yes" +msgstr "Stili" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Inserisci il nome della cartella - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Per favore, inserisci il nome della cartella!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - Sblocca modulo" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Inserisci la chiave per sbloccare il modulo!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Importa segnalibri..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Si è verificato un problema nell'importazione dei segnalibri!
Il " +"formato dei segnalibri del file importato è più recente
del formato di " +"file di questa versione di BibleTime!
L'importazione dei segnalibri " +"potrebbe non funzionare correttamente!
Vuoi continuare?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Importazione dei segnalibri" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Esportazione dei segnalibri..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Questa funzione azzererà l'indice principale!
Questo creerà di nuovo " +"i gruppi originali e cancellerà tutti gli altri elementi!
Assicurati che " +"non siano cancellati segnalibri importanti!
Vuoi continuare?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - Azzera l'indice principale" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Finestra dei lessici" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Voce" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Testo della voce" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Voce con testo" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Testo selezionato" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Voce come testo semplice" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Voce come HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Cerca il testo selezionato nel lessico" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Copia..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Aggiungi alla coda di stampa..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Salva..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +#, fuzzy +msgid "Next entry" +msgstr "Testo della voce" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +#, fuzzy +msgid "Previous entry" +msgstr "Mostra la voce precedente" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Finestra della Bibbia" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "Versetto" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "Testo del versetto" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "Versetto con testo" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "Capitolo" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "Capitolo come testo semplice" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "Capitolo come HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +#, fuzzy +msgid "Next book" +msgstr "Mostra il libro successivo" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +#, fuzzy +msgid "Previous book" +msgstr "Mostra il libro precedente" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Mostra il capitolo successivo" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +#, fuzzy +msgid "Previous chapter" +msgstr "Mostra il capitolo precedente" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +#, fuzzy +msgid "Next verse" +msgstr "Testo del versetto" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +#, fuzzy +msgid "Previous verse" +msgstr "Salta al versetto precedente" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Seleziona moduli addizionali" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "NESSUNO" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Mostra finestra" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Mostra numeri di Strong" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Mostra note a pié di pagina" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Mostra numeri di Strong" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Sincronizza" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Modifica voce..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Finestra del commentario" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Cerca nei moduli" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Finestra della Bibbia" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +#, fuzzy +msgid "Toggle tree" +msgstr "Modulo corrente:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Moduli:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Voci trovate:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "modulo non impostato" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Opzioni di ricerca" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Parole multiple" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Frase esatta" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Espressione regolare" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Maiuscole/minuscole" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Limiti di ricerca" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Ricerca in corso" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Modulo corrente:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Globale:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Finestra di ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Cerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Interrotta" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Scegli moduli" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Scegli i moduli per la ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Testo da cercare" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Inserisci il testo da cercare" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Risultati della ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "I risultati della tua ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Analisi della ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Analisi grafica dei risultati della tua ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +#, fuzzy +msgid "Save Search Analysis" +msgstr "Analisi della ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +#, fuzzy +msgid "BibleTime Search Analysis" +msgstr "Analisi della ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Testo da cercare" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Testo da cercare" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Limiti di ricerca" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Nessun limite" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Ultimo risultato" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Usa limiti" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Scegli la portata su misura" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Modifica la portata" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Vecchio testamento" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "Mosè/Pentateuco/Torah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "Storia" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Profeti" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Nuovo testamento" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Vangeli" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Lettere/Epistole" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Lettere di San Paolo" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Definisci il testo della portata" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "Risultati dell'analisi dell'intervallo" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Nome dell'intervallo" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Per favore, inserisci un nome per il nuovo intervallo" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Moduli" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Risultati della ricerca" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Risultati della ricerca con testo" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Aggiungi alla coda di stampa..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +#, fuzzy +msgid "Copying search result to clipboard..." +msgstr "Copia negli appunti" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Salva i risultati della ricerca..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Salva i risultati della ricerca..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "Chiave" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "Chiave con testo" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | File di testo\n" +" *.* | Tutti i file (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Salva chiave..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Salva i risultati della ricerca..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Finestra opzioni" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +#, fuzzy +msgid "Create new profile" +msgstr "Crea una nuova cartella" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#, fuzzy +msgid "Please enter the name of the new profile" +msgstr "Per favore, inserisci il nome della cartella!" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Rename profile" +msgstr "Rimuovi gli elementi selezionati" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Please enter the new name of the profile" +msgstr "Per favore, inserisci il nome della cartella!" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Mostra logo iniziale" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Mostra il suggerimento del giorno" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Mostra logo iniziale" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Scegli il font" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +#, fuzzy +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Ma la volpe col suo balzo ha raggiunto il quieto Fido" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Colori" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Scegli moduli" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Sfondo" + +#: bibletime/frontend/coptionsdialog.cpp:262 +#, fuzzy +msgid "Highlighted verse" +msgstr "Versetto selezionato" + +#: bibletime/frontend/coptionsdialog.cpp:267 +#, fuzzy +msgid "Hyperlinks" +msgstr "Avvia stampa" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "Numeri di Strong" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Modifica voce..." + +#: bibletime/frontend/coptionsdialog.cpp:302 +#, fuzzy +msgid "Manage your profiles" +msgstr "Configura i colori di BibleTime" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Elimina gli elementi selezionati." + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Rimuovi gli elementi selezionati" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Scorciatoie" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Finestra della Bibbia" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Finestra del commentario" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Finestra dei lessici" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Finestra della Bibbia" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Generale" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +#, fuzzy +msgid "Specify a language for biblical booknames" +msgstr "Lingua per i nomi dei libri" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Lingua per i nomi dei libri" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Inglese" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Moduli utilizzati" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Commentari" + +#: bibletime/frontend/coptionsdialog.cpp:522 +#, fuzzy +msgid "Default Lexicon" +msgstr "Lessici" + +#: bibletime/frontend/coptionsdialog.cpp:530 +#, fuzzy +msgid "Default Hebrew Strong's Lexicon" +msgstr "Lessici" + +#: bibletime/frontend/coptionsdialog.cpp:538 +#, fuzzy +msgid "Default Greek Strong's Lexicon" +msgstr "Lessici" + +#: bibletime/frontend/coptionsdialog.cpp:546 +#, fuzzy +msgid "Default Hebrew Morphological Lexicon" +msgstr "Lessici" + +#: bibletime/frontend/coptionsdialog.cpp:553 +#, fuzzy +msgid "Default Greek Morphological Lexicon" +msgstr "Lessici" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Mostra numeri di Strong" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "In stampa..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Annulla stampa" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "Indice principale (&M)" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Pulisci la coda di stampa" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "Apri la finestra di stampa" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "Chiudi BibleTime" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Cerca nei moduli" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Rimuovi gli elementi selezionati" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Mostra indice principale" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Mostra barra degli strumenti" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Mostra numeri di Strong" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Affianca finestre" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Affianca finestre automaticamente" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Sovrapponi finestre" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Sovrapponi finestre automaticamente" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Chiudi tutte le finestre" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +#, fuzzy +msgid "Edit profiles" +msgstr "Modifica voce..." + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +#, fuzzy +msgid "Load a new profile" +msgstr "Crea una nuova cartella" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +#, fuzzy +msgid "Toggle fullscreen mode" +msgstr "Modulo corrente:" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Modifica barra degli strumenti" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "Manuale di Bibletime" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Bible study HowTo" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "Modalità \"Cos'è questo?\"" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Invia bug report" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "Mostra suggerimento giornaliero" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "Informazioni su BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "Informazioni su KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "L'indice principale" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Aggiungi segnalibri alla coda di stampa" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "L'area di lavoro" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Mostra la voce successiva" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Mostra la voce precedente" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +#, fuzzy +msgid "Jump to the next verse" +msgstr "Salta al versetto successivo" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +#, fuzzy +msgid "Jump to the previous verse" +msgstr "Salta al versetto precedente" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Mostra il capitolo successivo" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Mostra il capitolo precedente" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +#, fuzzy +msgid "Show the next book" +msgstr "Mostra il libro successivo" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Mostra il libro precedente" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Lista dei libri" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Lista dei capitoli" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Lista dei versetti" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Lista delle voci" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Scorri attraverso la lista" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Modifica questa voce" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Salva questo commento" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Cancella questo commento" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Commenta fino a" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Imposta grassetto" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Imposta corsivo" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Imposta sottolineato" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Imposta font" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Imposta colore" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Imposta dimensione del font" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Sincronizza con le finestre della Bibbia" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Salva come HTML" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "Copia negli appunti" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Scegli i moduli per la ricerca" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Aggiungi il modulo selezionato alla lista" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Rimuovi il modulo selezionato dalla lista" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Lista dei moduli usati nella ricerca" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Cerca questo testo" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Cerca parole multiple" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Corrispondenza esatta" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Cerca usando le espressioni regolari GNU" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Cerca con maiuscole/minuscole" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Risultato dell'ultima ricerca" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Usa i propri limiti" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Aggiungi un nuovo limite" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Elimina questo limite di ricerca" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Modifica e definisci i tuoi limiti di ricerca" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Scegli un limite di ricerca dalla lista" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Inserisci il tuo limite di ricerca" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Risultati analizzati" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Chiudi questa finestra" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Moduli utilizzati" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Elementi trovati" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Anteprima" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +#, fuzzy +msgid "Graphical Search Analysis" +msgstr "Analisi grafica" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Mostra suggerimento giornaliero" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Lista delle lingue" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Mostra logo iniziale" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Imposta le scorciatoie da tastiera" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Scegli l'area di applicazione" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Scegli un font" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Colore dello sfondo" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Colore del versetto selezionato" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +#, fuzzy +msgid "Keyboard accelerators used by all display windows" +msgstr "Questo è il colore di sfondo usato nelle finestre di visualizzazione." + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Avvia stampa" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +#, fuzzy +msgid "Preview print job" +msgstr "Applicazione per l'anteprima:" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "Apri la guida" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Lista degli elementi stampati" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Sposta l'elemento in su" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Sposta l'elemento in giù" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Elimina elementi" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Inserisci un salto pagina" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Bordi della pagina" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Bordo sinistro" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Bordo destro" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "Bordo superiore" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Bordo inferiore" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Lista degli elementi stampati" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Elimina gli elementi selezionati." + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Elimina gli elementi selezionati." + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Crea un nuovo stile di stampa" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +#, fuzzy +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Pulisci la coda di stampa di BibleTime. Tutti gli elementi saranno rimossi " +"dalla lista, il pulsante di stampa sarà disabilitato." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +#, fuzzy +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"Apri la finestra di stampa di BibleTime, dove puoi modificare la coda di " +"stampa e assegnare stili agli elementi." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Chiudi Bibletime e salva le impostazioni." + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +#, fuzzy +msgid "Open the search dialog to search for text in one or more modules." +msgstr "Apri la finestra di ricerca per cercare in uno o più moduli." + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +#, fuzzy +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Rimuovi gli elementi selezionati dall'indice principale.
Se rimuovi una " +"cartella ne saranno rimossi anche gli elementi contenuti." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +#, fuzzy +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Azzera l'indice principale
Tutti i segnalibri e le cartelle saranno " +"eliminate e le cartelle di default saranno ripristinate." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "L'indice principale" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "" +"Mostra o nascondi i numeri di Strong nei moduli a seconda dello stato " +"corrente." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "Chiudi tutte le finestre aperte." + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "Affianca finestre automaticamente" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "Chiudi tutte le finestre aperte." + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +#, fuzzy +msgid "Automatically cascade the opened display windows." +msgstr "Sovrapponi finestre automaticamente" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Chiudi tutte le finestre aperte." + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +#, fuzzy +msgid "Edit profiles..." +msgstr "Modifica voce..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" +"Apre la finestra delle opzioni di BibleTime dove puoi impostare la maggior " +"parte delle preferenze." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "Apre la guida in linea di KDE con il manuale di BibleTime." + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "Apre la guida in linea di KDE con il manuale di BibleTime." + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +#, fuzzy +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"Commuta alla modalità \"Cos'è questo?\".
Tutti gli elementi " +"importanti della GUI di BibleTime hanno un aiuto \"Cos'è questo?\"." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Invia un bug report agli sviluppatori di BibleTime!" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Mostra un suggerimento giornaliero.
I suggerimenti contengono importanti " +"citazioni bibliche e consigli utili per l'uso di BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Mostra informazioni dettagliate su BibleTime." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +#, fuzzy +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Mostra la finestra informativa generale di KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Questo è l'indice principale di BibleTime.
Usalo per gestire i moduli " +"installati, per lavorare con i segnalibri, per aprire finestre ecc..." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +#, fuzzy +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Crea una nuova cartella nell'indice principale.
Se premi il tasto destro " +"del mouse su una cartella la nuova cartella sarà una sotto-cartella di " +"questa.
Altrimenti creerai una cartella al livello principale." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Modifica le proprietà della cartella selezionata." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Modifica le proprietà del segnalibro selezionato." + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +#, fuzzy +msgid "Import bookmarks from a file." +msgstr "Importa i segnalibri da un file." + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Esporta i segnalibri in un file così che altri
utenti possano importarli " +"successivamente." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +#, fuzzy +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Usa questo per aggiungere questo segnalibro alla coda di stampa di " +"bibleTime. La chiave, la descrizione e il testo della chiave saranno usati " +"per la stampa." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "Apre un piccola finestra dove potete sbloccare il modulo selezionato." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "Apre una finestra per mostrare informazioni sul modulo selezionato." + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +#, fuzzy +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" +"Il contenuto di quest'area è il posto di lavoro di BibleTime.
Tutte le " +"finestre di visualizzazione sono aperte in questo posto." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +#, fuzzy +msgid "The next entry of the module will be shown." +msgstr "Sarà mostrata la voce successiva di questo modulo." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "Sarà mostrata la voce precedente di questo modulo." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +#, fuzzy +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"Se visualizzi il testo di una Bibbia il versetto successivo sarà evidenziato." +"
Se stai leggendo un commentario la voce successiva sarà visualizzata." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +#, fuzzy +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"Se visualizzi il testo di una Bibbia il versetto precedente sarà " +"evidenziato. Se stai leggendo un commentario la voce precedente sarà " +"visualizzata." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" +"Mostra il capitolo successivo del modulo. Il versetto sarà posto a \"1\"" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" +"Mostra il capitolo precedente del modulo. Il versetto sarà posto a \"1\"" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" +"Mostra il libro successivo del modulo. Il capitolo e il versetto saranno " +"posti a \"1\"." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" +"Mostra il libro precedente del modulo. Il capitolo e il versetto saranno " +"posti a \"1\"." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +#, fuzzy +msgid "This list contains the books which are available in this module." +msgstr "Questa lista contiene i libri disponibili in questo modulo." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "Questa lista contiente i capitoli disponibili nel libro corrente." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "Questa lista contiente i versetti disponibili nel capitolo corrente." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Questa lista contiente le voci del modulo corrente." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Questo bottone è utile per scorrere attraverso le voci della lista. Premi il " +"bottone e muovi il mouse per aumentare o decrementare l'elemento." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +#, fuzzy +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" +"Commuta tra i modi lettura/scrittura e solo lettura dei moduli scrivibili." + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +#, fuzzy +msgid "Save new personal comments." +msgstr "Salva i commenti personali." + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Pulisci il testo ed elimina la voce dal modulo." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "" +"Commuta tra la formattazione in grassetto e in non-grassetto del testo " +"selezionato." + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "" +"Commuta tra la formattazione in corsivo e in non-corsivo del testo " +"selezionato." + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +#, fuzzy +msgid "Toggle underlined formatting of the selected text." +msgstr "" +"Commuta tra la formattazione in sottolineato e in non-sottolineato del testo " +"selezionato." + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Scegli un nuovo font per il testo selezionato." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Scegli un nuovo colore per il testo selezionato." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Scegli una nuova dimensione del font per il testo selezionato." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" +"Sincronizza i versetti visualizzati di questo modulo con la finestra della " +"Bibbia attiva." + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +#, fuzzy +msgid "Save the displayed chapter as an HTML file." +msgstr "Salva il capitolo visualizzato come file HTML." + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Seleziona tutto il testo." + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Copia il testo visualizzato negl appunti." + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +#, fuzzy +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Scegli i moduli che saranno usati per la ricerca.
Usa i due bottoni sul " +"lato desto per aggiungere o eliminare moduli dalla lista di quelli " +"utilizzati." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Aggiungi i moduli selezionati alla lista sulla sinistra." + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Rimuovi i moduli selezionati dalla lista sulla sinistra." + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "La lista dei moduli usati per la ricerca." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +#, fuzzy +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "Il testo inserito in questa casella sarà cercato in tutti i moduli." + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +#, fuzzy +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Seleziona questo per ricercare parole multiple.
Ogni parola verrà " +"ricercata come singola." + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +#, fuzzy +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Seleziona questo per ricercare esattamente lo stesso testo presente nella " +"riga di inserimento." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Seleziona questo per cercare usando le espressioni regolari standard GNU." +"
Leggi il manuale per una spiegazione su come usarle." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +#, fuzzy +msgid "Activate this to use a case sensitive search." +msgstr "" +"Attiva questo per effettuare una ricerca che distingua maiuscole e minuscole." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +#, fuzzy +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "Seleziona questo se vuoi cercare in tutte le parti del modulo(i)." + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +#, fuzzy +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" +"Seleziona questo se vuoi usare il risultato dell'ultima ricerca come limite " +"di ricerca." + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Crea un nuovo limite di ricerca." + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +#, fuzzy +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" +"Usa un proprio limite per la ricerca.
Esiste un set standard di limiti di " +"ricerca." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Usa questo bottone per eliminare il limite scelto." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Scegli un limite di ricerca dal combo box." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Inserisci i tuoi limiti di ricerca.
Per definire un intervallo usa \"-" +"\" (p.es. Genesi-Esodo),
per separare intervalli o chiavi differenti usa " +"il punto e virgola (p.es. Genesi;Matteo)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Questa lista contiene il risultato analizzato dei limiti impostati. Questo " +"risultato sarà usato per la ricerca." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Chiudi questa finestra e salva i cambiamenti." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Lista dei moduli usati per la ricerca.
Clicca su un modulo per vedere i " +"risultati della ricerca sulla destra." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Questo contiene gli oggetti trovati nel modulo selezionato." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "" +"Questo finestra di testo mostra un'anteprima dell'elemento selezionato." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Analisi grafica dei risultati della ricerca.
La barra mostra il numero di " +"elementi trovati in ciascun libro della Bibbia o del commentario." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "" +"Attiva questa casella per vedere un suggerimento giornaliero all'avvio." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" +"Contiene le lingue che possono essere usate per i nomi internazionali dei " +"libri." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +#, fuzzy +msgid "Activate this to see the BibleTime logo on startup." +msgstr "" +"Attiva questa casella per vedere un suggerimento giornaliero all'avvio." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +#, fuzzy +msgid "Select an action and change the key binding for the action." +msgstr "Seleziona un'azione e cambia la combinazione di tasti per questa." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +#, fuzzy +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" +"Seleziona in questa casella come il font è usato e modifica il font nel " +"selettore dei font." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "Questo è il colore di sfondo usato nelle finestre di visualizzazione." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" +"Questo è il colore dei versetti evidenziati, usato nelle finestre di " +"visualizzazione." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "Questo è il colore di sfondo usato nelle finestre di visualizzazione." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "Imposta le scorciatoie da tastiera" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "Imposta le scorciatoie da tastiera" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "Imposta le scorciatoie da tastiera" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Avvia il processo di stampa.
Gli elementi della lista saranno stampati " +"usando gli stili assegnati." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Stampa in un file temporaneo e apre un visualizzatore postscript per " +"un'anteprima dei risultati di stampa." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +#, fuzzy +msgid "Closes this dialog without doing anything else." +msgstr "" +"Chiude questa finestra senza fare nulla con gli elementi o la stampante." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "Apre la guida in linea di BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +#, fuzzy +msgid "This combo box contains the available print styles." +msgstr "Questa casella contiene gli stili di stampa disponibili." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Questa è la lista che contiene gli elementi di stampa disponibili." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Muove l'elemento selezionato in giù di una posizione." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Muove l'elemento selezionato in su di una posizione." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Elimina gli elementi selezionati." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +#, fuzzy +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Inserisce un salto pagina nella lista.
La stampante inizierà su una nuova " +"pagina." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "Questo gruppo contiene i bordi della pagina misurati in millimetri." + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "La dimensione del bordo sul lato sinistro del foglio di carta." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "La dimensione del bordo sul lato destro del foglio di carta." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "La dimensione del bordo sul lato superiore del foglio di carta." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "La dimensione del bordo sul lato inferiore del foglio di carta." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Questa lista contiene gli stili di stampa disponibili.
Crea il tuo stile " +"usando il bottone \"Nuovo stile\"." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Rimuovi lo stile di stampa selezionato dalla lista." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Cambia le proprietà dello stile di stampa selezionato." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" +"Crea un nuovo stile di stampa.
Il nuovo stile sarà aggiunto alla lista." + +#, fuzzy +#~ msgid "Save verse with text as ..." +#~ msgstr "Salva versetto con testo come..." + +#~ msgid "The bible window" +#~ msgstr "La finestra della Bibbia" + +#~ msgid "The commentary window" +#~ msgstr "La finestra del commentario" + +#~ msgid "The lexicon window" +#~ msgstr "La finestra del lessico" + +#~ msgid "The list of printers" +#~ msgstr "Lista delle stampanti" + +#, fuzzy +#~ msgid "Print to a file" +#~ msgstr "Stampa su file" + +#~ msgid "Browse for the file" +#~ msgstr "Cerca il file" + +#, fuzzy +#~ msgid "Number of copies" +#~ msgstr "&Numero di copie" + +#~ msgid "Paper type" +#~ msgstr "Tipo di carta" + +#~ msgid "Paper size" +#~ msgstr "Dimensioni della carta" + +#~ msgid "This is the Bible display window" +#~ msgstr "Questa è la finestra di visualizzazione della Bibbia." + +#~ msgid "This is the commentary display window." +#~ msgstr "Questa è la finestra di visualizzazione del commentario." + +#~ msgid "This is the lexicon display window." +#~ msgstr "Questa è la finestra di visualizzazione del lessico." + +#~ msgid "" +#~ "This is the list of available printers of your system.
Please select " +#~ "the printer you want to use for printing." +#~ msgstr "" +#~ "Questa è la lista delle stampanti disponibili sul vostro sistema.
Per " +#~ "favore, seleziona la la stampante che vuoi usare per la stampa." + +#, fuzzy +#~ msgid "Print to a postscript file on disk." +#~ msgstr "Stampa in un file postscript su disco." + +#, fuzzy +#~ msgid "Browse for the file you want to print to." +#~ msgstr "Cerca il file in cui vuoi stampare." + +#, fuzzy +#~ msgid "The number of copies for printing." +#~ msgstr "Il numero di copie usate per la stampa." + +#, fuzzy +#~ msgid "Choose the orientation of the paper." +#~ msgstr "Scegli l'orientamento della carta usata." + +#, fuzzy +#~ msgid "Print on the paper using \"Portrait\" orientation." +#~ msgstr "Stampa su carta con orientamento verticale." + +#, fuzzy +#~ msgid "Print on the paper using \"Landscape\" orientation." +#~ msgstr "Stampa su carta con orientamento orizzontale." + +#~ msgid "The type of the paper which is used for printing." +#~ msgstr "Il tipo di carta usato per la stampa." + +#, fuzzy +#~ msgid "The size of the paper used." +#~ msgstr "Le dimensioni della carta usata." + +#~ msgid "Search result for \"%1\" in module \"%2\"\n" +#~ msgstr "Risultati della ricerca per \"%1\" nel modulo \"%2\"\n" + +#~ msgid "Printdialog" +#~ msgstr "Finestra di stampa" + +#~ msgid "The general options for printing" +#~ msgstr "Opzioni generali di stampa" + +#~ msgid "Available printers:" +#~ msgstr "Stampanti disponibili:" + +#~ msgid "Host" +#~ msgstr "Host" + +#~ msgid "Comment" +#~ msgstr "Commento" + +#~ msgid "Print to file:" +#~ msgstr "Stampa su file:" + +#~ msgid "&Number of copies" +#~ msgstr "&Numero di copie" + +#~ msgid "Por&trait" +#~ msgstr "Ver&ticale" + +#~ msgid "L&andscape" +#~ msgstr "Orizzont&ale" + +#~ msgid "Paper t&ype" +#~ msgstr "Tipo di car&ta" + +#~ msgid "Size: 8888mm x 8888mm" +#~ msgstr "Dimensioni: 8888mm x 8888mm" + +#~ msgid "Preview application:" +#~ msgstr "Applicazione per l'anteprima:" + +#~ msgid "*.ps | Postscript files" +#~ msgstr "*.ps | file Postscript" + +#~ msgid "A4" +#~ msgstr "A4" + +#~ msgid "A5" +#~ msgstr "A5" + +#~ msgid "Letter" +#~ msgstr "Lettera" + +#~ msgid "Legal" +#~ msgstr "Legale" + +#~ msgid "Executive" +#~ msgstr "Executive" + +#~ msgid "Layout specific settings" +#~ msgstr "Opzioni specifiche di impaginazione" + +#~ msgid "Entries" +#~ msgstr "Voci" + +#~ msgid "Management of BibleTime's printing queue" +#~ msgstr "Gestione della coda di stampa di BibleTime" + +#~ msgid "Size: %1mm x %2mm" +#~ msgstr "Dimensioni: %1mm x %2mm" + +#~ msgid "Useful tips for BibleTime" +#~ msgstr "Consigli utili per BibleTime" + +#~ msgid "Run on startup" +#~ msgstr "Esegui all'avvio" + +#, fuzzy +#~ msgid "Language:" +#~ msgstr "Lista delle lingue" + +#, fuzzy +#~ msgid "Foonotes:" +#~ msgstr "note a piè di pagina" + +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Numero di strong: %1
" + +#, fuzzy +#~ msgid "Unlock key:" +#~ msgstr "Chiave di sblocco" + +#, fuzzy +#~ msgid "Version:" +#~ msgstr "Versione" + +#, fuzzy +#~ msgid "Not necessary" +#~ msgstr "Non necessario!" + +#~ msgid "Datapath" +#~ msgstr "Percorso dati" + +#~ msgid "" +#~ "The file does already exist!
Do you want to overwrite it?" +#~ msgstr "Il file esiste già!
Vuoi sovrascriverlo?
" + +#~ msgid "BibleTime - Save file as ..." +#~ msgstr "BibleTime - Salva file come..." + +#~ msgid "Printing %1" +#~ msgstr "Stampo %1" + +#, fuzzy +#~ msgid "Startup options" +#~ msgstr "Avvia stampa" + +#, fuzzy +#~ msgid "SWORD options" +#~ msgstr "Avvia stampa" + +#, fuzzy +#~ msgid "Configure BibleTime's key bindings" +#~ msgstr "Configura le combinazioni di tasti di BibleTime" + +#, fuzzy +#~ msgid "Display windows" +#~ msgstr "Mostra finestra" + +#, fuzzy +#~ msgid "General settings for display windows" +#~ msgstr "Chiudi tutte le finestre aperte." + +#, fuzzy +#~ msgid "Colors used in display windows" +#~ msgstr "Chiudi tutte le finestre aperte." + +#~ msgid "Choose fonts for BibleTime" +#~ msgstr "Scegli i font di BibleTime" + +#~ msgid "Choose the area of application and set the font for it" +#~ msgstr "Scegli l'area di applicazione e imposta il font relativo" + +#, fuzzy +#~ msgid "Accelerators used by all windows" +#~ msgstr "Chiudi tutte le finestre" + +#, fuzzy +#~ msgid "Accelerators for bible windows" +#~ msgstr "La finestra della Bibbia" + +#, fuzzy +#~ msgid "Accelerators for commentary windows" +#~ msgstr "La finestra del commentario" + +#, fuzzy +#~ msgid "Accelerators for lexicon windows" +#~ msgstr "La finestra del lessico" + +#, fuzzy +#~ msgid "Initializing keyboard accelerators" +#~ msgstr "Imposta le scorciatoie da tastiera" + +#~ msgid "
%1

" +#~ msgstr "
%1

" + +#~ msgid "Display window" +#~ msgstr "Mostra finestra" + +#, fuzzy +#~ msgid "Display window Unicode" +#~ msgstr "Mostra finestra" + +#, fuzzy +#~ msgid "" +#~ "* | Text files\n" +#~ " *.* | All files (*.*)" +#~ msgstr "" +#~ "*.txt | File di testo\n" +#~ " *.* | Tutti i file (*.*)" + +#~ msgid "Show a daily tip" +#~ msgstr "Mostra un suggerimento giornaliero" + +#~ msgid "List of modules" +#~ msgstr "Lista dei moduli" + +#~ msgid "Show a preview" +#~ msgstr "Mostra anteprima" + +#~ msgid "Copies" +#~ msgstr "Copie" + +#~ msgid "List of styles" +#~ msgstr "Lista degli stili" + +#~ msgid "Delete the chosen printing style" +#~ msgstr "Elimina lo stile di stampa scelto" + +#~ msgid "Edit the chosen printing style" +#~ msgstr "Modifica lo stile di stampa scelto" + +#~ msgid "Show or hide the main index depending on current state." +#~ msgstr "" +#~ "Mostra o nascondi l'indice principale a seconda dello stato corrente." + +#~ msgid "Show or hide the main toolbar depending on current state." +#~ msgstr "" +#~ "Mostra o nascondi la barra deli strumenti principale a seconda dello " +#~ "stato corrente." + +#~ msgid "" +#~ "Show or hide the footnotes in the modules deoending on current state." +#~ msgstr "" +#~ "Mostra o nascondi le note a pié di pagina nei moduli a seconda dello " +#~ "stato corrente." + +#~ msgid "Arrange the opened display windows in a tile pattern." +#~ msgstr "Dispondi le finestre aperte in modo affiancato." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a tile pattern if " +#~ "it's necessary." +#~ msgstr "" +#~ "Le finestre aperte saranno automaticamente disposte in modo affiancato se " +#~ "necessario." + +#~ msgid "Arrange the open display windows in a cascade pattern." +#~ msgstr "Disponi le finestre aperte in modo sovrapposto." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a cascade pattern " +#~ "if it's necessary." +#~ msgstr "" +#~ "Le finestre aperte saranno automaticamente disposte in modo sovrapposto " +#~ "se necessario." + +#~ msgid "Open a dialog where you can edit the toolbar of BibleTime." +#~ msgstr "" +#~ "Apre una finestra dove puoi modificare la barra degli strumenti di " +#~ "BibleTime." + +#~ msgid "Activate this to see a startup logo on each startup of BibleTime." +#~ msgstr "Attiva questa casella per vedere un logo all'avvio di BibleTime." + +#~ msgid "This list contains the modules using foreign fonts." +#~ msgstr "Questa lista contiene i moduli che usano font stranieri." + +#~ msgid "&Show footnotes" +#~ msgstr "Mo&stra note a pié di pagina." + +#~ msgid "S&how Strong's numbers" +#~ msgstr "Mostra numeri di Strong (&h)" + +#~ msgid "handbook" +#~ msgstr "manuale" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Logo iniziale di Martin Lutero" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponsor di www.bibletime.de" + +#~ msgid "backend" +#~ msgstr "backend" + +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Leader del progetto SWORD.\n" +#~ "Di notevole aiuto con le API di SWORD!" + +#~ msgid "Module fonts" +#~ msgstr "Font dei moduli" + +#~ msgid "Configure the fonts used for modules" +#~ msgstr "Configura i font usati per i moduli" + +#~ msgid "Result with text" +#~ msgstr "Risultati con testo" + +#~ msgid "Left" +#~ msgstr "Sinistra" + +#~ msgid "Center" +#~ msgstr "Centro" + +#~ msgid "Right" +#~ msgstr "Destra" + +#~ msgid "&Bottom" +#~ msgstr "Inferiore (&B)" + +#~ msgid "Select all" +#~ msgstr "Seleziona tutto" + +#~ msgid "Configure BibleTime's general options" +#~ msgstr "Configura le opzioni generali di BibleTime" + +#~ msgid "" +#~ "
Missing tips!


Your installation " +#~ "is missing the daily tips.\t\tPlease make sure all files of BibleTime are" +#~ "\t\tinstalled and that the permissions of $KDEDIR are correct!

\t" +#~ "\tIf you can't solve this problem please contact the team of BibleTime at" +#~ "\t\tinfo@bibletime.de!" +#~ msgstr "" +#~ "
Mancano i suggerimenti!


La " +#~ "vostra installazione non comprende i suggerimenti del giorno.\t\tPer " +#~ "favore, assicuratevi che tutti i file di BibleTime siano\t\tinstallati e " +#~ "che i permessi di $KDEDIR siano corretti!

\t\tSe non riuscite a " +#~ "risolvere questo problema, contattate il team di BibleTime a\t\tinfo@bibletime.de!" + +#~ msgid "Foonotes: %1
" +#~ msgstr "Note a pié di pagina: %1
" + +#~ msgid "BibleTime - Help window" +#~ msgstr "BibleTime - Finestra di aiuto" + +#~ msgid "Translation into Brazilian Portoguese" +#~ msgstr "Traduzione in portoghese brasiliano" + +#~ msgid "%1 (%2)

%3" +#~ msgstr "%1 (%2)

%3" + +#~ msgid "Print..." +#~ msgstr "Stampa..." diff --git a/bibletime-doc/po/nl.gmo b/bibletime-doc/po/nl.gmo new file mode 100644 index 0000000000000000000000000000000000000000..62394ec7ff4f8916f16ebda3f26f44d97ae85111 GIT binary patch literal 2945 zcmZvdO>7%Q6vqeJ0!>SSLQBi%P^kOq)Cnyu?gvTie32%O61N2|XuSJkuf3izv$Jth z34!2R3GpSt1&I>~#DOCc5`qirg)2hhLtH>e9073w@qfGPBs3m*_BZop=FOWoZ=QeL zz4dK@asu@M)VFRDq6F^Tf)C2RtwP)m?gwuJ4}k+&za2l^A>o!|nv4fL|{ARBk! zU68*F-Uq&s$v*)fME^7J9`M^t{yWI}{swn~+o6>A*$Z<20C+2S0%W^RgSUVqAnTt5 zd43Jt1!@pK@ghEao>xI$|2lXt_%6u%eG0OkufV&(>mcj@0o)7z0`mNSvi=@S=KgVz z_br3_z~{66N;du`ct7MHXZ^3i?dbmm@_ByC_!oE?rG` zS(4n2+-gWgQ3^>}*|C9kfv(FJVv0$WDe`R4ae>idTr1w#HG(KvFD9TA3url@E;^Qa z7EV~zCh3{b*rJ#uO;&|sN@>4lOiN4=++)SXKqtz)mZm6@hvAKm!RAMbV%GRE??fw3 z%&{t1npw%+qNpSmMSh?{Qy24@2@BLV%Qz2((X;HZ5#IwBS*BDc}Ki#Vy*5Gim6 zvYl+ma~B=VRMr<&t8^49J~?LK9!ggUYc`3?N(WItdF=X4pRlC+$){pnS2j?3^A6Ka zg?$I+jO|jr@6fyn`&u<`tTXi(4%xiVVrZ6COI+e`;R_Ur%O&}NGgid9rA=2$%_H;H zG~wg?w4c9BHiD0ea(=WlGdejgFOM%QPFLmz<}1~F$x`CMd|5dv%Hcv`IA1uKFPxTz zq2kHHu>vHRm|s8)v6l6DL;1p~{O~C`^mwswa&opha8X4r-}64=NHU7nR*Ls^8;`AgM_{F(K693@L+^W)kxKHg1Ho~Z?H;F)|H_V8R$ z&Wx!Vg|aaCCNQ+!$Lwhld1IH-?d8CX(gh8`~dr1<*snkwc1UYCmW> zO0!GMce^pY@SHiN+BcZZqBO@)nqrV+MwfgWx7ZJvHDtR%6M0P5@tBf?L-6qpIVZW8 z^roIO)Pj+Wei?^T4xSP}btGS;Bz9>v!Yf0%MZ(xLR>qN|&Eh$NO(AkvpE0j&e!v93g#zAW>_aK6LxyR@lI}h&F HxEk>v#MsmA literal 0 HcmV?d00001 diff --git a/bibletime-doc/po/nl.po b/bibletime-doc/po/nl.po new file mode 100644 index 0000000..7318da3 --- /dev/null +++ b/bibletime-doc/po/nl.po @@ -0,0 +1,2972 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2001-05-25 13:04GMT\n" +"Last-Translator: Joachim Ansorg \n" +"Language-Team: Deutsch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.1\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +#, fuzzy +msgid "Footnotes" +msgstr "&Toon voetnoten" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "Toon &Strong nummering" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +msgid "Hebrew Cantillation" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Debug boodschappen aan" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Bijbelstudie programma voor KDE 2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, Het BibleTime Team" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"BibleTime is een makkelijk te gebruiken, maar krachtig bijbelstudie " +"programma voor KDE 2.\n" +"\n" +"We zoeken nieuwe ontwikkelaars, vertalers en schrijvers van het handboek.\n" +"Als u wilt meedoen, stuur dan een eMail aan info@bibletime.de." + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Project coordinator, frontend, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Frontend, backend, allerlei" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Zoeken" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Handboek" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Vertaling in het Tsjechisch" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Vertaling in het Deens" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Vertaling in het Nederlands" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Vertaling in het Frans" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Vertaling in het Hongaars" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Vertaling in het Italiaans" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Vertaling in het Noors" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Vertaling in het Pools" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Vertaling in het Portugees" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Vertaling in het Hongaars" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Vertaling in het Slowaaks" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Vertaling in het Deens" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Bijbelstudie HowTo" + +#: bibletime/main.cpp:185 +msgid "Starting BibleTime" +msgstr "" + +#: bibletime/bibletime_init.cpp:59 +msgid "Creating BibleTime's GUI" +msgstr "" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Schoon printer wachtrij" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Reset hoofdindex" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Zoek in module(s)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "&Toon hoofd index" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "&Overlappen" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "&Ordenen" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Automatisch overlappen" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&utomatisch ordenen" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "&Sluit alle" + +#: bibletime/bibletime_init.cpp:167 +msgid "&Save profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:172 +msgid "&Load profile" +msgstr "" + +#: bibletime/bibletime_init.cpp:177 +msgid "&Configure profiles" +msgstr "" + +#: bibletime/bibletime_init.cpp:183 +msgid "&Fullscreen mode" +msgstr "" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Handboek" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Bijbelstudie HowTo" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "&Dagelijkse tip" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "stijl editor" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Naam van de stijl:" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Kies het deel van de stijl:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Koptekst" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Omschrijving" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Module tekst" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Dit deel aanzetten" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Voorgrond:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Achtergrond:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Kies lettertype" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Lettertype voorbeeld" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Gebruik frame" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Lijndikte (in punten):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Frame kleur:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Naam van de stijl:" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standaard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Naam:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "onbekende naam" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:55 +#, fuzzy +msgid "&Left" +msgstr "Links" + +#: bibletime/printing/cprintdialogpages.cpp:55 +#, fuzzy +msgid "&Right" +msgstr "Rechts" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Printer" + +#: bibletime/printing/cprintdialogpages.cpp:203 +#, fuzzy +msgid "Choose a style" +msgstr "Kies het deel van de stijl:" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +#, fuzzy +msgid "Module" +msgstr "Module tekst" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Achtergrond:" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:501 +#, fuzzy +msgid "Choose a font:" +msgstr "Kies lettertype" + +#: bibletime/frontend/chtmlwidget.cpp:505 +#, fuzzy +msgid "Choose font size" +msgstr "Kies lettertype" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +#, fuzzy +msgid "unknown" +msgstr "onbekende naam" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +msgid "Language" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +#, fuzzy +msgid "Commentaries" +msgstr "Commentaar" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +#, fuzzy +msgid "Main index" +msgstr "&Hoofd index" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +#, fuzzy +msgid "Search in selected module(s)" +msgstr "Zoek in module(s)" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +msgid "Location" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +msgid "yes" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +#, fuzzy +msgid "BibleTime - Reset main index" +msgstr "Reset hoofdindex" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +#, fuzzy +msgid "Add to printing queue..." +msgstr "Schoon printer wachtrij" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +msgid "Next entry" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +msgid "Previous entry" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +#, fuzzy +msgid "Bible window" +msgstr "Toon venster" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +#, fuzzy +msgid "Chapter" +msgstr "Centreer" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +msgid "Next book" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +msgid "Previous book" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Centreer" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +msgid "Previous chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +msgid "Next verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +msgid "Previous verse" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +#, fuzzy +msgid "Select additional modules" +msgstr "Zoek in module(s)" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Toon venster" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Toon &Strong nummering" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +#, fuzzy +msgid "Show footnotes" +msgstr "&Toon voetnoten" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Toon &Strong nummering" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Zoek in module(s)" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Toon venster" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +msgid "Toggle tree" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +#, fuzzy +msgid "Modules:" +msgstr "Module tekst" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "Module tekst" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +#, fuzzy +msgid "Exact Search" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +#, fuzzy +msgid "Search scope" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +#, fuzzy +msgid "Search Dialog" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +#, fuzzy +msgid "Choose modules" +msgstr "Kies lettertype" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#, fuzzy +msgid "Choose the modules for the search" +msgstr "Kies het deel van de stijl:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +#, fuzzy +msgid "Search Text" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +#, fuzzy +msgid "Search Result" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "Save Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +msgid "BibleTime Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +#, fuzzy +msgid "Choose custom range" +msgstr "Kies lettertype" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +#, fuzzy +msgid "Modules" +msgstr "Module tekst" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +#, fuzzy +msgid "Search result" +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Schoon printer wachtrij" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +msgid "Copying search result to clipboard..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Zoeken" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Optiesdialoog" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +msgid "Create new profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:122 +msgid "Please enter the name of the new profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Rename profile" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/frontend/coptionsdialog.cpp:146 +msgid "Please enter the new name of the profile" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Maarten Luther opstart logo" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:184 +#, fuzzy +msgid "Show startuplogo" +msgstr "Maarten Luther opstart logo" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Kies lettertype" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +msgid "The quick brown fox jumps over the lazy dog" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Kies lettertype" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +#, fuzzy +msgid "Background" +msgstr "Achtergrond:" + +#: bibletime/frontend/coptionsdialog.cpp:262 +msgid "Highlighted verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:267 +#, fuzzy +msgid "Hyperlinks" +msgstr "Schoon printer wachtrij" + +#: bibletime/frontend/coptionsdialog.cpp:277 +#, fuzzy +msgid "Strong's numbers" +msgstr "Toon &Strong nummering" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Print naar bestand:" + +#: bibletime/frontend/coptionsdialog.cpp:302 +msgid "Manage your profiles" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Toon venster" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Commentaar" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Toon venster" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Toon venster" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Algemeen" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +msgid "Specify a language for biblical booknames" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Zoek in module(s)" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Commentaar" + +#: bibletime/frontend/coptionsdialog.cpp:522 +msgid "Default Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:530 +msgid "Default Hebrew Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:538 +msgid "Default Greek Strong's Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:546 +msgid "Default Hebrew Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:553 +msgid "Default Greek Morphological Lexicon" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Toon &Strong nummering" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +#, fuzzy +msgid "Printing..." +msgstr "Afdrukdialoog" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Hoofd index" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +#, fuzzy +msgid "Clear the printing queue" +msgstr "Schoon printer wachtrij" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +#, fuzzy +msgid "Open the printerdialog" +msgstr "Optiesdialoog" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +#, fuzzy +msgid "Search in modules" +msgstr "Zoek in module(s)" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +#, fuzzy +msgid "Remove selected items" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +#, fuzzy +msgid "Show main index" +msgstr "&Toon hoofd index" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +#, fuzzy +msgid "Show Strong's numbers" +msgstr "Toon &Strong nummering" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +#, fuzzy +msgid "Tile windows" +msgstr "Toon venster" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +#, fuzzy +msgid "Cascade windows" +msgstr "Toon venster" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +#, fuzzy +msgid "Close all windows" +msgstr "&Sluit alle" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit profiles" +msgstr "" + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +msgid "Load a new profile" +msgstr "" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +msgid "Toggle fullscreen mode" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Bijbelstudie HowTo" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "&Dagelijkse tip" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +#, fuzzy +msgid "The main index" +msgstr "Reset hoofdindex" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +#, fuzzy +msgid "Add bookmark to printing queue" +msgstr "Schoon printer wachtrij" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Jump to the next verse" +msgstr "" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Jump to the previous verse" +msgstr "" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Centreer" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Lettertype voorbeeld" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "Show the next book" +msgstr "" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Lettertype voorbeeld" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +#, fuzzy +msgid "Comment up to" +msgstr "Commentaar" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +#, fuzzy +msgid "Set font" +msgstr "Kies lettertype" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +#, fuzzy +msgid "Remove the selected module from the list" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Zoeken" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +#, fuzzy +msgid "Search multiple words" +msgstr "Zoek in module(s)" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Kies lettertype" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +#, fuzzy +msgid "Choose a search scope from the list" +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +#, fuzzy +msgid "Close this dialog" +msgstr "Optiesdialoog" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Afdrukvoorbeeld" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +msgid "Graphical Search Analysis" +msgstr "" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +#, fuzzy +msgid "Show daily tip" +msgstr "&Dagelijkse tip" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Maarten Luther opstart logo" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +#, fuzzy +msgid "Choose the area of application" +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +#, fuzzy +msgid "Choose a font" +msgstr "Kies lettertype" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +msgid "Keyboard accelerators used by all display windows" +msgstr "" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +#, fuzzy +msgid "Start printing" +msgstr "Schoon printer wachtrij" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Preview print job" +msgstr "" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +#, fuzzy +msgid "Delete items" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Naam van de stijl:" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "" + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search for text in one or more modules." +msgstr "" + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "Reset hoofdindex" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "Toon &Strong nummering" + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "&Sluit alle" + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "&Sluit alle" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "&Sluit alle" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +msgid "Automatically cascade the opened display windows." +msgstr "" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +msgid "Edit profiles..." +msgstr "" + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "" + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +msgid "Show the \"about\" dialog of KDE 2." +msgstr "" + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +#, fuzzy +msgid "Change the properties of the selected folder." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "" + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +msgid "Import bookmarks from a file." +msgstr "" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "" + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "" + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "" + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +msgid "Save new personal comments." +msgstr "" + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "" + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +msgid "Toggle underlined formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "" + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "" + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "" + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +msgid "Save the displayed chapter as an HTML file." +msgstr "" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "" + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "" + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "" + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +msgid "Activate this to use a case sensitive search." +msgstr "" + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "" + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "" + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "" + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "" + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "" + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "" + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +msgid "Activate this to see the BibleTime logo on startup." +msgstr "" + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +msgid "Select an action and change the key binding for the action." +msgstr "" + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "" + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "&Sluit alle" + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "&Sluit alle" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "&Sluit alle" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "&Sluit alle" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +msgid "Closes this dialog without doing anything else." +msgstr "" + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "" + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +msgid "This combo box contains the available print styles." +msgstr "" + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "" + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +#, fuzzy +msgid "Delete the selected items." +msgstr "Verwijder geselecteerde item(s)" + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "Kies het deel van de stijl:" + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "" + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "" + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" + +#, fuzzy +#~ msgid "The bible window" +#~ msgstr "Toon venster" + +#, fuzzy +#~ msgid "Print to a file" +#~ msgstr "Print naar bestand:" + +#, fuzzy +#~ msgid "The number of copies for printing." +#~ msgstr "De algemene opties voor afdrukken" + +#, fuzzy +#~ msgid "Choose the orientation of the paper." +#~ msgstr "Kies het deel van de stijl:" + +#~ msgid "Printdialog" +#~ msgstr "Afdrukdialoog" + +#~ msgid "The general options for printing" +#~ msgstr "De algemene opties voor afdrukken" + +#~ msgid "Available printers:" +#~ msgstr "Beschikbare printers:" + +#~ msgid "Host" +#~ msgstr "Computernaam" + +#~ msgid "Comment" +#~ msgstr "Commentaar" + +#~ msgid "Print to file:" +#~ msgstr "Print naar bestand:" + +#, fuzzy +#~ msgid "L&andscape" +#~ msgstr "&Overlappen" + +#, fuzzy +#~ msgid "Letter" +#~ msgstr "Centreer" + +#, fuzzy +#~ msgid "Foonotes:" +#~ msgstr "&Toon voetnoten" + +#, fuzzy +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Toon &Strong nummering" + +#, fuzzy +#~ msgid "Printing %1" +#~ msgstr "Afdrukdialoog" + +#, fuzzy +#~ msgid "Startup options" +#~ msgstr "Schoon printer wachtrij" + +#, fuzzy +#~ msgid "SWORD options" +#~ msgstr "Schoon printer wachtrij" + +#, fuzzy +#~ msgid "Display windows" +#~ msgstr "Toon venster" + +#, fuzzy +#~ msgid "Colors used in display windows" +#~ msgstr "&Sluit alle" + +#, fuzzy +#~ msgid "Accelerators used by all windows" +#~ msgstr "&Sluit alle" + +#, fuzzy +#~ msgid "Accelerators for bible windows" +#~ msgstr "Toon venster" + +#~ msgid "Display window" +#~ msgstr "Toon venster" + +#, fuzzy +#~ msgid "Display window Unicode" +#~ msgstr "Toon venster" + +#, fuzzy +#~ msgid "Show a daily tip" +#~ msgstr "&Dagelijkse tip" + +#~ msgid "&Show footnotes" +#~ msgstr "&Toon voetnoten" + +#~ msgid "S&how Strong's numbers" +#~ msgstr "Toon &Strong nummering" + +#~ msgid "handbook" +#~ msgstr "handboek" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Maarten Luther opstart logo" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponsor van www.bibletime.de" + +#~ msgid "backend" +#~ msgstr "backend" + +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Leider van het SWORD project.\n" +#~ "Heel veel hulp van de SWORD API!" + +#, fuzzy +#~ msgid "Module fonts" +#~ msgstr "Module tekst" + +#~ msgid "Left" +#~ msgstr "Links" + +#~ msgid "Center" +#~ msgstr "Centreer" + +#~ msgid "Right" +#~ msgstr "Rechts" + +#, fuzzy +#~ msgid "Select all" +#~ msgstr "&Sluit alle" + +#~ msgid "Translation into Brazilian Portoguese" +#~ msgstr "Vertaling in Braziliaans Portugees" diff --git a/bibletime-doc/po/no.gmo b/bibletime-doc/po/no.gmo new file mode 100644 index 0000000000000000000000000000000000000000..dd1658617814dab9cfefd540058f3a32bfd24b00 GIT binary patch literal 25876 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 literal 0 HcmV?d00001 diff --git a/bibletime-doc/po/no.po b/bibletime-doc/po/no.po new file mode 100644 index 0000000..1cf425b --- /dev/null +++ b/bibletime-doc/po/no.po @@ -0,0 +1,3359 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2001-06-17 20:56CET\n" +"Last-Translator: Espen Knut Trydal \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"<<<<<<< no.poPO-Revision-Date: 2001-06-17 20:56CET\n" +"=======POT-Creation-Date: 2001-06-17 09:52+0200\n" +">>>>>>> 1.21Language-Team: Norsk Bokmål <->\n" +"X-Generator: KBabel 0.8\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "Fotnoter" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "Strongs nummer" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +#, fuzzy +msgid "Hebrew Cantillation" +msgstr "Orientering" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Slå på feilmeldinger." + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Bibelstudie verktøy for KDE 2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, BibleTime Teamet" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"BibleTime er et lett forståelig og kraftig Bibelstudie verktøy for KDE 2.\n" +"\n" +"Vi er på jakt etter nye utviklere, oversettere og forfattere til håndboken.\n" +"Hvis du er interessert i å bli med så send en eMail til info@bibletime.de." + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Prosjekt koordinator, frontend, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Frontend, backend, forskjellige ting" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Søkedialog" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Håndbok" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Oversettelse til tsjekkisk" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Oversettelse til dansk" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Oversettelse til nederlandsk" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Oversettelse til fransk" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Oversettelse til ungarsk" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Oversettelse til italiensk" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Oversettelse til norsk" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Oversettelse til polsk" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Oversettelse til portugisisk" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Oversettelse til ungarsk" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Oversettelse til slovakisk" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Oversettelse til dansk" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Bibelstudie HowTo" + +#: bibletime/main.cpp:185 +#, fuzzy +msgid "Starting BibleTime" +msgstr "Om BibleTime" + +#: bibletime/bibletime_init.cpp:59 +#, fuzzy +msgid "Creating BibleTime's GUI" +msgstr "Lukk BibleTime" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Tøm utskriftskø" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Tilbakestill hovedindeks" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Søk i modul(er)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Fjern valgte element(er)" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "&Vis hovedindeks" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "&Overlapp" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "&Flislegg" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Automatisk overlapp" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&utomatisk flislegg" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "&Lukk alle" + +#: bibletime/bibletime_init.cpp:167 +#, fuzzy +msgid "&Save profile" +msgstr "Opprett en ny katalog" + +#: bibletime/bibletime_init.cpp:172 +#, fuzzy +msgid "&Load profile" +msgstr "Opprett en ny katalog" + +#: bibletime/bibletime_init.cpp:177 +#, fuzzy +msgid "&Configure profiles" +msgstr "Konfigurer BibleTimes farger" + +#: bibletime/bibletime_init.cpp:183 +#, fuzzy +msgid "&Fullscreen mode" +msgstr "Gjeldende modul:" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Håndbok" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Bibelstudie HowTo" + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "&Dagens tips" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "stil redigerer" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Stilens navn:" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Velg del av stilen:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Hode" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Beskrivelse" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Modultekst" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Slå på denne delen" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Forgrunn:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Bakgrunn:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Velg skrifttype" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Forhåndsvisning av skrifttype" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Bruk ramme" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Tykkelse på linje (i punkt):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Farge på ramme:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Stilens navn:" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Standard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Navn:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "ukjent navn" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Stiler" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Marginer (i millimeter)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "&Topp" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "&Venstre" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "&Høyre" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Liste av stil elementer:" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Skriver" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Velg en stil" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Oppføringer som skal skrives ut:" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Modul" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "Fra" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "Til" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Stil" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Bakgrunn" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "Ok" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Finner ikke siden %1!" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | HTML filer\n" +" *.* | Alle filer (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Lagre tekst som HTML ..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +"*.txt | Tekst fil (*.txt)\n" +"*.* | Alle filer (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Lagre tekst som ren tekst ..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Velg en skrifttype:" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Velg skriftstørrelse" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Fet" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Understreket" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Juster" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "ukjent" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Bokmerke til" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +#, fuzzy +msgid "Language" +msgstr "Språkliste" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Nøkkel" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "ikke satt" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Versjon" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Bibler" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Kommentarer" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Leksikon" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Billedtekst" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Hovedindeks" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Opprett en ny katalog" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Forandre denne mappen" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Forandre dette bokmerket" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Importer bokmerker" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Eksporter bokmerker" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Skriv ut bokmerke" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Søk i valgte modul(er)" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Lås opp denne modulen" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "Om denne modulen" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Beskrivelse av bokmerket - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Skriv inn beskrivelsen her:" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Forandre bokmerke beskrivelsen - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Forandre beskrivelsen til elementet!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Forandre mappe - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Forandre navnet på gruppen!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +#, fuzzy +msgid "Location" +msgstr "Billedtekst" + +# Should this be "writeable"? +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Skrivbar" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +#, fuzzy +msgid "yes" +msgstr "Stiler" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Skriv navnet til mappen - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Skriv navnet på mappen!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - Lås opp modul" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Skriv inn nøkkelen for å låse opp modulen!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Importer bokmerker ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Et problem oppstod mens bokmerkene ble importert!
Bokmerkeformatet på " +"den importerte filen er nyere
enn versjonen på bokmerkeformatet for denne " +"versjonen av BibleTime!
Importeringen av bokmerket kan muligens ikke " +"virke korrekt!
Vil du fortsette?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Import av bokmerker" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Eksporter bokmerker ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Denne funksjonen vil tilbakestille hovedindekset!
Dette vil lage på " +"nytt de originale gruppene og slette alle andre elementer!
Vær sikker på " +"at ingen viktigebokmerker vil bli slettet!
Vil du fortsette?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - Tilbakestill hovedindeks" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Leksikon vindu" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Oppføring" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Tekst i oppføring" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Oppføring med tekst" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Valgt tekst" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Oppføring som ren tekst" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Oppføring som HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Slå opp valgte tekst i leksikon" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Kopier..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Legg til i utskriftskø..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Lagre..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +#, fuzzy +msgid "Next entry" +msgstr "Tekst i oppføring" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +#, fuzzy +msgid "Previous entry" +msgstr "Vis den forrige oppføringen" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Bibelvindu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "Vers" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "Tekst i vers" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "Vers med tekst" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "Kapittel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "Kapittel som ren tekst" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "Kapittel som HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +#, fuzzy +msgid "Next book" +msgstr "Vis neste bok" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +#, fuzzy +msgid "Previous book" +msgstr "Vis forrige bok" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Vis neste kapittel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +#, fuzzy +msgid "Previous chapter" +msgstr "Vis forrige kapittel" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +#, fuzzy +msgid "Next verse" +msgstr "Tekst i vers" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +#, fuzzy +msgid "Previous verse" +msgstr "Hopp til det forrige verset" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Velg en til modul" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "INGEN" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Visnings vindu" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Vis Strongs nummer" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Vis fotnoter" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Vis Strongs nummer" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Synkroniser..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Rediger oppføring..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Kommentarvindu" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Søk i moduler" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Bibelvindu" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +#, fuzzy +msgid "Toggle tree" +msgstr "Gjeldende modul:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Moduler:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Oppføringer funnet:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "modul ikke satt" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Søke alternativer" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Flere ord" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Eksakt søk" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Regulært utrykk" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Forskjell på store og små bokstaver" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Områdesøk" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Søk i fremgang" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Gjeldende modul:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Samlet:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Søkedialog" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Søk" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Avbryt" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Velg moduler" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Velg modulene for søket" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Søketekst" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Skriv inn teksten det skal søkes etter" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Søkeresultat" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "Resultatet av søket" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Søkeanalyse" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Grafisk analyse av søkeresultatet" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +#, fuzzy +msgid "Save Search Analysis" +msgstr "Søkeanalyse" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +#, fuzzy +msgid "BibleTime Search Analysis" +msgstr "Søkeanalyse" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Søketekst" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Søketekst" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Områdesøk" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Intet områdesøk" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Siste resultat" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Bruk områdesøk" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Velg egendefinert område" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Rediger grenser" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Det Gamle Testamentet" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "Moses/Pentateuch/Tora" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "Historie" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Profeter" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Det Nye Testamentet" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Evangeliene" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Brev/Epistlene" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Paulus' brev" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Definer tekstområde" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "Tekstområde som vil gjelde" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Område navn" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Skriv inn et navn for det nye området" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Moduler" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Søkeresultat" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Søkeresultat med tekst" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Legg til i utskriftskø..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +#, fuzzy +msgid "Copying search result to clipboard..." +msgstr "Kopier til utklippstavle" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Lagre søkeresultat ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Lagre søkeresultat ..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "Nøkkel" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "Nøkkel med tekst" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | Tekst filer\n" +" *.* | Alle filer (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Lagre nøkkel ..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Lagre søkeresultat ..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Alternativdialog" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +#, fuzzy +msgid "Create new profile" +msgstr "Opprett en ny katalog" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#, fuzzy +msgid "Please enter the name of the new profile" +msgstr "Skriv navnet på mappen!" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Rename profile" +msgstr "Fjern valgte elementer" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Please enter the new name of the profile" +msgstr "Skriv navnet på mappen!" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Vis oppstartslogo" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Vis dagens tips" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Vis oppstartslogo" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Velg skrifttype" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +#, fuzzy +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Den raske brune reven hoppet over den late hunden" + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Farger" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Velg moduler" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Bakgrunn" + +#: bibletime/frontend/coptionsdialog.cpp:262 +#, fuzzy +msgid "Highlighted verse" +msgstr "Gjeldende vers" + +#: bibletime/frontend/coptionsdialog.cpp:267 +#, fuzzy +msgid "Hyperlinks" +msgstr "Start utskrift" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "Strongs nummer" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Rediger oppføring..." + +#: bibletime/frontend/coptionsdialog.cpp:302 +#, fuzzy +msgid "Manage your profiles" +msgstr "Konfigurer BibleTimes farger" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Slett det valgte elementet." + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Fjern valgte elementer" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Hurtigtaster" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Bibelvindu" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Kommentarvindu" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Leksikon vindu" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Bibelvindu" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Generelt" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +#, fuzzy +msgid "Specify a language for biblical booknames" +msgstr "Språk for navn på bøkene" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Språk for navn på bøkene" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Engelsk" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Brukte moduler" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Kommentarer" + +#: bibletime/frontend/coptionsdialog.cpp:522 +#, fuzzy +msgid "Default Lexicon" +msgstr "Leksikon" + +#: bibletime/frontend/coptionsdialog.cpp:530 +#, fuzzy +msgid "Default Hebrew Strong's Lexicon" +msgstr "Leksikon" + +#: bibletime/frontend/coptionsdialog.cpp:538 +#, fuzzy +msgid "Default Greek Strong's Lexicon" +msgstr "Leksikon" + +#: bibletime/frontend/coptionsdialog.cpp:546 +#, fuzzy +msgid "Default Hebrew Morphological Lexicon" +msgstr "Leksikon" + +#: bibletime/frontend/coptionsdialog.cpp:553 +#, fuzzy +msgid "Default Greek Morphological Lexicon" +msgstr "Leksikon" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Vis Strongs nummer" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "Skriver ut..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Avbryt utskrift" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Hovedindeks" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "&Vindu" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Tøm utskriftskøen" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "�ne utskriftsdialogen" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "Lukk BibleTime" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Søk i moduler" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Fjern valgte elementer" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Vis hovedindeks" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Vis verktøylinje" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Vis Strongs nummer" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Flislegg vinduer" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Automatisk flislegg vinduer" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Overlapp vinduer" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Automatisk overlapp vinduer" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Lukk alle vinduer" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +#, fuzzy +msgid "Edit profiles" +msgstr "Rediger oppføring..." + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +#, fuzzy +msgid "Load a new profile" +msgstr "Opprett en ny katalog" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +#, fuzzy +msgid "Toggle fullscreen mode" +msgstr "Gjeldende modul:" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Rediger verktøylinjen" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "BibleTime's håndbok" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Bibelstudie HowTo" + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "Gå inn i \"Hva er dette?\" modus" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Send feilmelding" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "Vis dagens tips" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "Om BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "Om KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "Hovedindekset" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Legg til et bokmerke til utskriftskøen" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "Arbeidsområdet" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Vis den neste oppføringen" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Vis den forrige oppføringen" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +#, fuzzy +msgid "Jump to the next verse" +msgstr "Hopp til det neste verset" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +#, fuzzy +msgid "Jump to the previous verse" +msgstr "Hopp til det forrige verset" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Vis neste kapittel" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Vis forrige kapittel" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +#, fuzzy +msgid "Show the next book" +msgstr "Vis neste bok" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Vis forrige bok" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Bokliste" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Kapittelliste" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Verseliste" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Oppføringsliste" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Bla igjennom listen" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Rediger denne oppføringen" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Lagre denne kommentaren" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Slett denne kommentaren" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Kommenter opp til" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Sett som fet" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Sett som kursiv" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Sett som understreket" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Velg skrifttype" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Velg farge" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Velg skriftstørrelse" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Synkroniser med Bibelvinduene" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Lagre som HTML" + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "Kopier til utklippstavle" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Velg modulene for søket" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Lagre den valgte modulen til listen" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Slett den valgte modulen fra listen" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Liste av moduler brukt i søket" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Søk etter denne teksten" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Søk med flere ord" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Eksakt treff" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Søk med GNU regulære utrykk" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Søk med forskjell på store og små bokstaver" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Forrige søkeresultat" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Bruk eget søkeområde" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Legg til et nytt søkeområde" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Slett dette søkeområdet" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Rediger og definer dine søkeområder" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Velg et søkeområde fra listen" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Skriv inn ditt eget søkeområde" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Tolket resultat" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Lukk denne dialogen" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Brukte moduler" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Elementer funnet" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Forhåndsvis" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +#, fuzzy +msgid "Graphical Search Analysis" +msgstr "Grafisk analyse" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Vis dagens tips" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Språkliste" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Vis oppstartslogo" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Definer hurtigtaster" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Velg området av programmet" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Velg en skrifttype" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Bakgrunnsfarge" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Farge på det gjeldende verset" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +#, fuzzy +msgid "Keyboard accelerators used by all display windows" +msgstr "Dette er bakgrunnsfargen som blir brukt i visnings vinduene." + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Start utskrift" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +#, fuzzy +msgid "Preview print job" +msgstr "Forhåndsvis med:" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "�ne hjelp" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Liste av utskriftselementer" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Flytt element opp" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Flytt element ned" + +# Should it be item instead of items? +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Slett element" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Sett inn sideskift" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Rammer" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Venstre ramme" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Høyre ramme" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "�re ramme" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Nedre ramme" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Liste av utskriftselementer" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Slett det valgte elementet." + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Slett det valgte elementet." + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Lag en ny utskrftsstil" + +# Is it necessary to include that the print button +# will be disabled? +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +#, fuzzy +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Slett utskriftskøen til BibleTime. Alle elementer vil bli fjernet fra " +"listen, og utskriftsknappen vil bli slått av." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +#, fuzzy +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"�ne utskriftsdialogen til BibleTime hvor du kan redigere utskriftskøen og " +"velge stil for elementene." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Lukk BibleTime og lagre innstillingene." + +# Should "search text" be just "search" or +# "search after text"? +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +#, fuzzy +msgid "Open the search dialog to search for text in one or more modules." +msgstr "�ne søkedialogen for å søke etter tekst i en eller flere moduler." + +# Should the comma in ", too" be erased? +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +#, fuzzy +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Fjern de valgte elementene fra hovedindekset.
Hvis du fjerner en mappe " +"vil underelementene bli fjernet også." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +#, fuzzy +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Tilbakestill hovedindekset
Alle bokmerker og mapper vil bli slettet og " +"standard mapper vil bli gjenopprettet." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "Hovedindekset" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +# Look at comment :209 +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "Vis eller skjul Strongs nummer avhengig av nåværende tilstand." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "Lukk alle åpne vinduer" + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "Automatisk flislegg vinduer" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "Lukk alle åpne vinduer" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +#, fuzzy +msgid "Automatically cascade the opened display windows." +msgstr "Automatisk overlapp vinduer" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Lukk alle åpne vinduer" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +#, fuzzy +msgid "Edit profiles..." +msgstr "Rediger oppføring..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" +"�ne BibleTImes alternativdialog der du kan sette de fleste innstillingene." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "�ne KDEs hjelpebehandler med BibleTimes håndbok." + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "�ne KDEs hjelpebehandler med BibleTimes håndbok." + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +#, fuzzy +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"GÃ¥ inn i\"Hva er dette?\" modus.
Alle viktige elementer i " +"BibleTimes GUI tilbyr en \"Hva er dette?\" hjelp." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Send en feilmelding til utviklerene av BibleTime!" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Vis dagens tips.
Tipsene inneholder viktige Bibel-sitater og hjelpsomme " +"brukstips for BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Vis detaljert informasjon om BibleTime." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +#, fuzzy +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Vis den generelle om dialogen til KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Dette er hovedindekset til BibleTIme.
Bruk den til å behandle de " +"installerte modulene, til å arbeide med bokmerker, til å åpne vinduer etc." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +#, fuzzy +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Lag en ny mappe i hovedindekset.
Hvis du trykket på den høyre mus knappen " +"på en mappe vil den nye mappen bli underordnet den.
Hvis ikke vil du lage " +"en mappe under toppnivået." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Endre på egenskapene til den valgte mappen." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Endre på egenskapene til det valgte bokmerket. " + +# Should this be bookmarks? +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +#, fuzzy +msgid "Import bookmarks from a file." +msgstr "Importer bokmerke fra en fil." + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Eksporter bokmerker til en fil så du eller andre
brukere kan importere " +"dem senere." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +#, fuzzy +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Bruk denne til å legge dette bokmerket til i BibleTimes utskriftskø. " +"Nøkkelen, beskrivelsen og teksten til nøkkelen vil bli brukt i utskriften." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "�ne en liten dialog hvor du kan låse opp den valgte modulen." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "�ne en dialog som viser informasjon om den valgte modulen." + +# Grammar error? "This area contains is ..." +# I think either "contains" or (which I would +# prefer) "is". And here BibleTime is with a non- +# capital T. +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +#, fuzzy +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "Dette området er arbeidsområdet til BibleTime." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "Den neste oppføringen i modulen vil bli vist." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "Den forrige oppføringen i modulen vil bli vist." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +#, fuzzy +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"Hvis du ser på teksten til en Bibel vil det neste verset bli gjeldende." +"
Hvis du leser en kommentar vil den neste oppføringen bli vist." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +#, fuzzy +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"Hvis du ser på teksten til en Bibel vil det forrige verset bli gjeldende." +"
Hvis du leser en kommentar vil den forrige oppføringen bli vist." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" +"Vis det neste kapittelet til modulen. Det gjeldende verset vil bli satt til " +"\"1\"." + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" +"Vis det forrige kapittelet til modulen. Det gjeldende verset vil bli satt " +"til \"1\"." + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" +"Vis den neste boken i denne modulen. Det gjeldende kapittelet og verset vil " +"bli satt til \"1\"." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" +"Vis den forrige boken i denne modulen. Det gjeldende kapittelet og verset " +"vil bli satt til \"1\"." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "Denne listen inneholder bøkene som er tilgjengelige i denne modulen." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" +"Denne listen inneholder kapittelene som er tilgjengelige i den gjeldende " +"boken." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" +"Denne listen inneholder versene som er tilgjengelige i det gjeldende " +"kapittelet." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Denne listen inneholder oppføringene til den gjeldende modulen." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Denne knappen blar igjennom oppføringene i listen. Trykk på knappen og flytt " +"musen for å øke eller minske elementet." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "Velg lese-skrive modus eller bare lese modus for skrivbare moduler." + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +#, fuzzy +msgid "Save new personal comments." +msgstr "Lagre den personlige kommentaren." + +# Should "text" be "text window"? +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Tøm tekstvinduet og slett oppføringen fra modulen." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "Velg mellom fet eller ikke-fet formatering av den valgte teksten." + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "" +"Velg mellom kursiv eller ikke-kursiv formatering av den valgte teksten." + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +#, fuzzy +msgid "Toggle underlined formatting of the selected text." +msgstr "" +"Velg mellom understreket eller ikke-understreket formatering av den valgte " +"teksten." + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Velg en ny skrifttype for den valgte teksten." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Velg en ny farge for den valgte teksten." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Velg en ny skriftstørrelse for den valgte teksten." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" +"Synkroniser det viste verset for denne modulen med det aktive Bibel-vinduet." + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +#, fuzzy +msgid "Save the displayed chapter as an HTML file." +msgstr "Lagre det viste kapittelet som en HTML fil." + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Merk all tekst." + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Kopier den viste teksten til utklippstavlen." + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +#, fuzzy +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Velg modulene som skal bli brukt i søket.
Bruk de to knappene på høyre " +"side til å legge til eller slette modulene til listen av de som skal brukes." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Legg den valgte modulen til i listen til venstre." + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Slett den valgte modulen fra listen på venstre side." + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "Liste av moduler som skal brukes i søket." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +#, fuzzy +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "" +"Teksten som er skrevet inn i denne boksen vil bli søkt etter i alle moduler." + +# In the previous comment you used "edit box". +# Here it is "edit line". Shouldn't the same be used? +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +#, fuzzy +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Velg dette for å søke etter flere ord.
Hvert ord i denne boksen blir søkt " +"etter som om det var et enkelt ord." + +# edit line or box? +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +#, fuzzy +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Velg dette for å søke etter den eksakt samme teksten som du skrev inn i " +"søkeboksen." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Velg dette for å søke med å bruke standard GNU regulære utrykk.
Les " +"håndboken for å få en forklaring på hvordan å bruke dette." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +#, fuzzy +msgid "Activate this to use a case sensitive search." +msgstr "Aktiver dette for å søke med forskjell på STORE og små bokstaver." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "Velg dette hvis du vil søke gjennom alle delene av modulen(e)." + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +#, fuzzy +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" +"Velg dette hvis du vil bruke det siste søkeresultatet fra hver modul som " +"søkeområde." + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Lag et nytt søkeområde." + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +#, fuzzy +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" +"Bruk et eget søkeområde for søket.
Et standard sett av søkeområder " +"eksisterer." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Bruk denne knappen til å slette det valgte søkeområdet." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Velg et søkeområde fra kombo-boksen." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Skriv inn ditt eget søkeområde.
For å definere et område bruk \"-\" (f." +"eks. 1. Mosebok-2. Mosebok),
for å skille forskjellige områder eller " +"nøkler bruk semikolon (f.eks. 1. Mosebok;Matteus)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Denne listen inneholder de tolkede resultatene av søkeområdet som du skrev " +"inn. Dette resultatet vil bli brukt i søket." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Lukk denne dialogen og lagre endringene." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Liste av moduler som skal brukes i dette søket.
Trykk på en modul for å " +"se søkeresultatet på høyre side." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Denne inneholder elementene som er funnet i den valgte modulen." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "Denne tekstboksen forhåndsviser det valgte elementet." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Grafisk analyse av søkeresultatet.
Søylene viser antall elementer funnet " +"i hver bok av Bibelen eller kommentaren." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "Aktiver denne boksen for å se dagens tips ved oppstart." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "Inneholder språkene som kan bli brukt som internasjonale boknavn." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +#, fuzzy +msgid "Activate this to see the BibleTime logo on startup." +msgstr "Aktiver denne boksen for å se dagens tips ved oppstart." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +#, fuzzy +msgid "Select an action and change the key binding for the action." +msgstr "Velg en hendelse og endre på hurtigtastene for denne hendelsen." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +#, fuzzy +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "" +"Velg i denne boksen hvordan skrifttypen er brukt og forandre skrifttypen i " +"skrift velgeren." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "Dette er bakgrunnsfargen som blir brukt i visnings vinduene." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "Dette er fargen på det gjeldende verset i visnings vinduene." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "Dette er bakgrunnsfargen som blir brukt i visnings vinduene." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "Definer hurtigtaster" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "Definer hurtigtaster" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "Definer hurtigtaster" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Start utskrfts prosessen.
Elementene i denne listen vil bli skrevet ut " +"ved bruk av de tilordnede stilene." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Skriv ut til en midlertidig fil og åpne en postscript-fremviser til å " +"forhåndsvise utskrifts resultatet." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +#, fuzzy +msgid "Closes this dialog without doing anything else." +msgstr "" +"Lukker denne dialogen uten å gjøre noenting med verken elementene eller " +"skriveren." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "�ner hjelpefunksjonen til BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +#, fuzzy +msgid "This combo box contains the available print styles." +msgstr "Denne kombo-boksen inneholder de tilgjengelige utskriftsstilene." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Dette er listen som inneholder de tilgjengelige utskrifts elementene." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Flytt det valgte elementet ett element lavere." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Flytt det valgte elementet ett element høyere." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Slett det valgte elementet." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +#, fuzzy +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Sett inn et sideskift i listen.
Skriveren vil begynne på en ny side." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "Denne gruppen inneholder rammene på siden målt i millimeter." + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "Størrelsen på rammen på venstre side på papirarket." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "Størrelsen på rammen på høyre side på papirarket." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "Størrelsen på rammen på toppen av papirarket." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "Størrelsen på rammen på bunnen av papirarket." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Denne listen inneholder de tilgjengelige utskriftsstilene.
Lag dine egne " +"ved å bruke \"Ny stil\" knappen." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Fjern den valgte utskriftsstilen fra listen." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Endre på egenskapene til den valgte utskriftsstilen." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "Lag en ny utskriftsstil.
Den nye stilen vil bli lagt til i listen." + +#~ msgid "Save verse with text as ..." +#~ msgstr "Lagre vers med tekst som ..." + +#~ msgid "The bible window" +#~ msgstr "Bibelvinduet" + +#~ msgid "The commentary window" +#~ msgstr "Kommentarvinduet" + +#~ msgid "The lexicon window" +#~ msgstr "Leksikonvinduet" + +#~ msgid "The list of printers" +#~ msgstr "Liste av skrivere" + +#, fuzzy +#~ msgid "Print to a file" +#~ msgstr "Skriv til fil" + +#~ msgid "Browse for the file" +#~ msgstr "Bla igjennom etter filen" + +#, fuzzy +#~ msgid "Number of copies" +#~ msgstr "&Antall kopier" + +#~ msgid "Paper type" +#~ msgstr "Papirtype" + +#~ msgid "Paper size" +#~ msgstr "Papirstørrelse" + +#~ msgid "This is the Bible display window" +#~ msgstr "Dette er Bibel visnings vinduet." + +#~ msgid "This is the commentary display window." +#~ msgstr "Dette er kommentar visnings vinduet." + +#~ msgid "This is the lexicon display window." +#~ msgstr "Dette er leksikon visnings vinduet." + +#~ msgid "" +#~ "This is the list of available printers of your system.
Please select " +#~ "the printer you want to use for printing." +#~ msgstr "" +#~ "Dette er listen av tilgjengelige skrivere til systemet ditt.
Velg den " +#~ "skriveren du vil bruke til utskrift." + +#, fuzzy +#~ msgid "Print to a postscript file on disk." +#~ msgstr "Skriv til en postscript-fil til disk." + +#, fuzzy +#~ msgid "Browse for the file you want to print to." +#~ msgstr "Bla igjennom etter filen du vil skrive til." + +#, fuzzy +#~ msgid "The number of copies for printing." +#~ msgstr "Antall kopier av utskrift." + +#, fuzzy +#~ msgid "Choose the orientation of the paper." +#~ msgstr "Velg orienteringen til papiret." + +#, fuzzy +#~ msgid "Print on the paper using \"Portrait\" orientation." +#~ msgstr "Skriv ut på papir ved å bruke \"Portrett\" som orientering." + +#, fuzzy +#~ msgid "Print on the paper using \"Landscape\" orientation." +#~ msgstr "Skriv ut på papir ved å bruke \"Landskap\" som orientering." + +#~ msgid "The type of the paper which is used for printing." +#~ msgstr "Type papir som blir brukt ved utskrift." + +#, fuzzy +#~ msgid "The size of the paper used." +#~ msgstr "Størrelsen på det brukte papiret." + +#~ msgid "Search result for \"%1\" in module \"%2\"\n" +#~ msgstr "Søk i resultat for \"%1\" i modul \"%2\"\n" + +#~ msgid "Printdialog" +#~ msgstr "Utskriftsdialog" + +#~ msgid "The general options for printing" +#~ msgstr "De generelle alternativene for utskrift" + +#~ msgid "Available printers:" +#~ msgstr "Tilgjengelige skrivere:" + +#~ msgid "Host" +#~ msgstr "Vert" + +#~ msgid "Comment" +#~ msgstr "Kommentar" + +#~ msgid "Print to file:" +#~ msgstr "Skriv til fil:" + +#~ msgid "&Number of copies" +#~ msgstr "&Antall kopier" + +#~ msgid "Por&trait" +#~ msgstr "Por&trett" + +#~ msgid "L&andscape" +#~ msgstr "L&andskap" + +#~ msgid "Paper t&ype" +#~ msgstr "Papirt&ype" + +#~ msgid "Size: 8888mm x 8888mm" +#~ msgstr "Størrelse: 8888mm x 8888mm" + +#~ msgid "Preview application:" +#~ msgstr "Forhåndsvis med:" + +#~ msgid "*.ps | Postscript files" +#~ msgstr "*.ps | Postscript filer" + +#~ msgid "A4" +#~ msgstr "A4" + +#~ msgid "A5" +#~ msgstr "A5" + +#~ msgid "Letter" +#~ msgstr "Letter" + +#~ msgid "Legal" +#~ msgstr "Legal" + +#~ msgid "Executive" +#~ msgstr "Executive" + +#~ msgid "Layout specific settings" +#~ msgstr "Utseende spesifikke instillinger" + +#~ msgid "Entries" +#~ msgstr "Oppføringer" + +#~ msgid "Management of BibleTime's printing queue" +#~ msgstr "Administrering av BibleTimes utskriftskø" + +#~ msgid "Size: %1mm x %2mm" +#~ msgstr "Størrelse: %1mm x %2mm" + +#~ msgid "Useful tips for BibleTime" +#~ msgstr "Nyttige tips for BibleTime" + +#~ msgid "Run on startup" +#~ msgstr "Kjør ved oppstart" + +#, fuzzy +#~ msgid "Language:" +#~ msgstr "Språkliste" + +#, fuzzy +#~ msgid "Foonotes:" +#~ msgstr "Fotnoter" + +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Strongs nummer: %1
" + +#~ msgid "Unlock key:" +#~ msgstr "Nøkkel:" + +#~ msgid "Version:" +#~ msgstr "Versjon:" + +#, fuzzy +#~ msgid "Not necessary" +#~ msgstr "Ikke nødvendig!" + +#~ msgid "Datapath" +#~ msgstr "Datasti" + +#~ msgid "" +#~ "The file does already exist!
Do you want to overwrite it?" +#~ msgstr "" +#~ "Filen eksisterer allerede!
Vil du overskrive den?
" + +#~ msgid "BibleTime - Save file as ..." +#~ msgstr "BibleTime - Lagre fil som ..." + +#~ msgid "Printing %1" +#~ msgstr "Skriver ut %1" + +#, fuzzy +#~ msgid "Startup options" +#~ msgstr "Start utskrift" + +#, fuzzy +#~ msgid "SWORD options" +#~ msgstr "Start utskrift" + +#, fuzzy +#~ msgid "Configure BibleTime's key bindings" +#~ msgstr "Konfigurer BibleTimes hurtigtaster" + +#, fuzzy +#~ msgid "Display windows" +#~ msgstr "Visnings vindu" + +#, fuzzy +#~ msgid "General settings for display windows" +#~ msgstr "Lukk alle åpne vinduer" + +#, fuzzy +#~ msgid "Colors used in display windows" +#~ msgstr "Lukk alle åpne vinduer" + +#~ msgid "Choose fonts for BibleTime" +#~ msgstr "Velg skrifttyper for BibleTime" + +#~ msgid "Choose the area of application and set the font for it" +#~ msgstr "Velg en del av applikasjonen og velg skrifttypen for denne" + +#, fuzzy +#~ msgid "Accelerators used by all windows" +#~ msgstr "Lukk alle vinduer" + +#, fuzzy +#~ msgid "Accelerators for bible windows" +#~ msgstr "Bibelvinduet" + +#, fuzzy +#~ msgid "Accelerators for commentary windows" +#~ msgstr "Kommentarvinduet" + +#, fuzzy +#~ msgid "Accelerators for lexicon windows" +#~ msgstr "Leksikonvinduet" + +#, fuzzy +#~ msgid "Initializing keyboard accelerators" +#~ msgstr "Definer hurtigtaster" + +#~ msgid "

%1

" +#~ msgstr "
%1

" + +#~ msgid "Display window" +#~ msgstr "Visnings vindu" + +#, fuzzy +#~ msgid "Display window Unicode" +#~ msgstr "Visnings vindu" + +#, fuzzy +#~ msgid "" +#~ "* | Text files\n" +#~ " *.* | All files (*.*)" +#~ msgstr "" +#~ "*.txt | Tekst filer\n" +#~ " *.* | Alle filer (*.*)" + +#~ msgid "Show a daily tip" +#~ msgstr "Vis dagens tips" + +#~ msgid "List of modules" +#~ msgstr "Modulliste" + +#~ msgid "Show a preview" +#~ msgstr "Forhåndsvis" + +#~ msgid "Copies" +#~ msgstr "Kopier" + +#~ msgid "List of styles" +#~ msgstr "Stilliste" + +#~ msgid "Delete the chosen printing style" +#~ msgstr "Slett den valgte utskriftsstilen" + +#~ msgid "Edit the chosen printing style" +#~ msgstr "Rediger den valgte utskriftsstilen" + +# Should "..depending on the current state" +# be removed? +#~ msgid "Show or hide the main index depending on current state." +#~ msgstr "Vis eller skjul hovedindekset avhengig av nåværende tilstand." + +# Look at comment :209 +#~ msgid "Show or hide the main toolbar depending on current state." +#~ msgstr "Vis eller skjul hovedverktøylinjen avhengig av nåværende tilstand." + +# Look at comment :209 +#~ msgid "" +#~ "Show or hide the footnotes in the modules deoending on current state." +#~ msgstr "Vis eller skjul fotnotene avhengig av nåværende tilstand." + +#~ msgid "Arrange the opened display windows in a tile pattern." +#~ msgstr "Flislegg de åpnede vinduene." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a tile pattern if " +#~ "it's necessary." +#~ msgstr "De åpnede vinduene vil automatisk bli flislagt hvis nødvendig." + +#~ msgid "Arrange the open display windows in a cascade pattern." +#~ msgstr "Overlapp de åpnede vinduene." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a cascade pattern " +#~ "if it's necessary." +#~ msgstr "" +#~ "De åpnede vinduene vil automatisk overlappe hverandre hvis nødvendig." + +#~ msgid "Open a dialog where you can edit the toolbar of BibleTime." +#~ msgstr "�ne en dialog der du kan redigere verktøylinjen til BibleTime." + +#~ msgid "Activate this to see a startup logo on each startup of BibleTime." +#~ msgstr "" +#~ "Aktiver dette for å se en oppstartslogo ved hver oppstart av BibleTime." + +#~ msgid "This list contains the modules using foreign fonts." +#~ msgstr "" +#~ "Denne listen inneholder modulene som bruker utenlandske skrifttyper." + +#~ msgid "&Show footnotes" +#~ msgstr "&Vis fotnoter" + +#~ msgid "S&how Strong's numbers" +#~ msgstr "V&is Strongs nummer" + +#, fuzzy +#~ msgid "Frontend" +#~ msgstr "Skrifttype:" + +#~ msgid "handbook" +#~ msgstr "håndbok" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Martin Luther oppstartslogo" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponsoren til www.bibletime.de" + +#~ msgid "backend" +#~ msgstr "backend" + +# In my opinion this is a little unclear, +# has he given or recieved help? (ok, +# it is not so difficult to imagine but you get +# my point?) +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Lederen av SWORD prosjektet\n" +#~ "Mye hjelp med SWORD APIen!" + +#~ msgid "Module fonts" +#~ msgstr "Skrifttype for modulene" + +#~ msgid "Configure the fonts used for modules" +#~ msgstr "Konfigurer skrifttypene som skal brukes for modulene" + +#~ msgid "Result with text" +#~ msgstr "Resultat med tekst" + +#~ msgid "Left" +#~ msgstr "Venstre" + +#~ msgid "Center" +#~ msgstr "Sentrert" + +#~ msgid "Right" +#~ msgstr "Høyre" + +#~ msgid "&Bottom" +#~ msgstr "&Bunn" + +#~ msgid "Select all" +#~ msgstr "Velg alt" + +#~ msgid "Configure BibleTime's general options" +#~ msgstr "Konfigurer BibleTimes generelle alternativer" + +#~ msgid "" +#~ "
Missing tips!


Your installation " +#~ "is missing the daily tips.\t\tPlease make sure all files of BibleTime are" +#~ "\t\tinstalled and that the permissions of $KDEDIR are correct!

\t" +#~ "\tIf you can't solve this problem please contact the team of BibleTime at" +#~ "\t\t
info@bibletime.de!" +#~ msgstr "" +#~ "
Tipsene mangler!


Installasjonen " +#~ "din mangler tipsdatabasen.\t\tForsikre deg om at alle filene til " +#~ "BibleTime er\t\tinstallert og at tilgangen til $KDEDIR er korrekt!

" +#~ "\t\tHvis du ikke klarer å løse problemet så kan du kontakte BibleTime " +#~ "teamet på\t\tinfo@bibletime.de!" + +#~ msgid "Foonotes: %1
" +#~ msgstr "Fotnoter: %1
" + +#~ msgid "BibleTime - Help window" +#~ msgstr "BibleTime - Hjelpevindu" diff --git a/bibletime-doc/po/pl.po b/bibletime-doc/po/pl.po new file mode 100644 index 0000000..31e59a5 --- /dev/null +++ b/bibletime-doc/po/pl.po @@ -0,0 +1,2129 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2001-06-10 20:57+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: ENCODING\n" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/bibletime_init.cpp:72 +msgid "Clear printing queue" +msgstr "" + +#: bibletime/bibletime_init.cpp:87 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:92 +msgid "Search in module(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:97 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:312 +msgid "Remove selected item(s)" +msgstr "" + +#: bibletime/bibletime_init.cpp:102 +msgid "&Show footnotes" +msgstr "" + +#: bibletime/bibletime_init.cpp:107 +msgid "S&how Strong's numbers" +msgstr "" + +#: bibletime/bibletime_init.cpp:116 +msgid "&Show main index" +msgstr "" + +#: bibletime/bibletime_init.cpp:128 +msgid "&Cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:133 +msgid "&Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:138 +msgid "&Auto cascade" +msgstr "" + +#: bibletime/bibletime_init.cpp:143 +msgid "A&uto Tile" +msgstr "" + +#: bibletime/bibletime_init.cpp:148 +msgid "&Close all" +msgstr "" + +#: bibletime/bibletime_init.cpp:169 +msgid "&Daily tip" +msgstr "" + +#: bibletime/main.cpp:70 +msgid "Enable debug messages." +msgstr "" + +#: bibletime/main.cpp:78 +msgid "Bible study tool for KDE 2" +msgstr "" + +#: bibletime/main.cpp:80 +msgid "(c)1999-2001, The BibleTime Team" +msgstr "" + +#: bibletime/main.cpp:81 +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for new developers, translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" + +#: bibletime/main.cpp:87 +msgid "Project coordinator, frontend, backend" +msgstr "" + +#: bibletime/main.cpp:88 +msgid "Frontend, backend, misc things" +msgstr "" + +#: bibletime/main.cpp:91 +msgid "Handbook" +msgstr "" + +#: bibletime/main.cpp:94 +msgid "Translation into Hungarian" +msgstr "" + +#: bibletime/main.cpp:95 bibletime/main.cpp:104 +msgid "Translation into Italian" +msgstr "" + +#: bibletime/main.cpp:96 +msgid "Translation into Polish" +msgstr "" + +#: bibletime/main.cpp:97 +msgid "Translation into Danish" +msgstr "" + +#: bibletime/main.cpp:98 +msgid "Translation into Norwegian" +msgstr "" + +#: bibletime/main.cpp:99 +msgid "Translation into Brazilian Portoguese" +msgstr "" + +#: bibletime/main.cpp:100 +msgid "Translation into Dutch" +msgstr "" + +#: bibletime/main.cpp:101 +msgid "Translation into French" +msgstr "" + +#: bibletime/main.cpp:102 +msgid "Translation into Czech" +msgstr "" + +#: bibletime/main.cpp:103 bibletime/main.cpp:105 +msgid "Translation into Portoguese" +msgstr "" + +#: bibletime/main.cpp:106 +msgid "Translation into Slovak" +msgstr "" + +#: bibletime/main.cpp:109 +msgid "Bible study HowTo" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:56 +#: bibletime/main.cpp:110 +msgid "Optionsdialog" +msgstr "" + +#: bibletime/main.cpp:111 +msgid "handbook" +msgstr "" + +#: bibletime/main.cpp:112 +msgid "Martin Luther startup logo" +msgstr "" + +#: bibletime/main.cpp:113 +msgid "Sponsor of www.bibletime.de" +msgstr "" + +#: bibletime/main.cpp:114 +msgid "backend" +msgstr "" + +#: bibletime/main.cpp:115 +msgid "" +"Leader of the SWORD project.\n" +"Lots of help with the SWORD API!" +msgstr "" + +#: bibletime/bibletime.cpp:175 bibletime/bibletime.cpp:190 +#: bibletime/bibletime_slots.cpp:98 bibletime/bibletime_slots.cpp:107 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:95 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:297 +msgid "Display window" +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Printing..." +msgstr "" + +#: bibletime/bibletime_slots.cpp:288 +msgid "Abort printing" +msgstr "" + +#: bibletime/bibletime_slots.cpp:313 +#, c-format, ycp-format +msgid "Printing %1" +msgstr "" + +#: bibletime/printing/cstylelist.cpp:46 +msgid "Name:" +msgstr "" + +#: bibletime/printing/cprinter.cpp:310 bibletime/printing/cprinter.cpp:341 +#: bibletime/printing/cprinter.cpp:519 bibletime/printing/cprinter.cpp:527 +#: bibletime/printing/cprinterdialog.cpp:616 +#: bibletime/printing/cstyleeditordialog.cpp:182 +#: bibletime/printing/cstylelist.cpp:130 +msgid "Standard" +msgstr "" + +#: bibletime/printing/cstyle.cpp:42 +msgid "unknown name" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +#: bibletime/printing/cprintitemlist.cpp:48 +msgid "Module" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:49 +msgid "From" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:50 +msgid "To" +msgstr "" + +#: bibletime/printing/cprintitemlist.cpp:51 +msgid "Style" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:43 +msgid "style editor" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:67 +msgid "Name of style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +msgid "Choose the part of the style:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:77 +#: bibletime/printing/cstyleeditordialog.cpp:281 +msgid "Header" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:593 +#: bibletime/printing/cstyleeditordialog.cpp:78 +#: bibletime/printing/cstyleeditordialog.cpp:285 +msgid "Description" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:79 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Module text" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:85 +msgid "Enable this part" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:468 +#: bibletime/printing/cstyleeditordialog.cpp:96 +msgid "Left" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:470 +#: bibletime/printing/cstyleeditordialog.cpp:97 +msgid "Center" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:472 +#: bibletime/printing/cstyleeditordialog.cpp:98 +msgid "Right" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:109 +msgid "Foreground:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:120 +msgid "Background:" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:131 +msgid "Choose font" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:134 +msgid "Font preview" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:148 +msgid "Use frame" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:158 +msgid "Line thickness (in point):" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:166 +msgid "Frame color:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:64 +msgid "Printdialog" +msgstr "" + +#: bibletime/dummy.h:123 bibletime/printing/cprinterdialog.cpp:65 +#: bibletime/tooltipdef.h:123 +msgid "Preview" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "General" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:89 +msgid "The general options for printing" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:92 +msgid "Available printers:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:97 +msgid "Printer" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:98 +msgid "Host" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:99 +msgid "Comment" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:106 +msgid "Print to file:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +#: bibletime/printing/cprinterdialog.cpp:120 +msgid "Search" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:141 +msgid "&Number of copies" +msgstr "" + +#: bibletime/dummy.h:153 bibletime/printing/cprinterdialog.cpp:149 +#: bibletime/tooltipdef.h:153 +msgid "Orientation" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:153 +msgid "Por&trait" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:157 +msgid "L&andscape" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:173 +msgid "Paper t&ype" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:177 +msgid "Size: 8888mm x 8888mm" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:196 +msgid "Preview application:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:292 +msgid "*.ps | Postscript files" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:335 +msgid "A4" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:336 +msgid "A5" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:337 +msgid "Letter" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:338 +msgid "Legal" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:339 +msgid "Executive" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:370 +msgid "Layout specific settings" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:373 +msgid "Margins (in millimeter)" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:381 +msgid "&Top" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:382 +msgid "&Bottom" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:383 +msgid "&Left" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:384 +msgid "&Right" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:433 +msgid "List of style items:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Entries" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:471 +msgid "Management of BibleTime's printing queue" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:481 +msgid "Choose a style" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:493 +msgid "Entries which should be printed:" +msgstr "" + +#: bibletime/printing/cprinterdialog.cpp:540 +#, c-format, ycp-format +msgid "Size: %1mm x %2mm" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:63 +msgid "Synchronize..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:68 +msgid "Edit entry..." +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:78 +msgid "Commentary window" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:81 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:66 +msgid "Entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:82 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:67 +msgid "Text of entry" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:83 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:88 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:68 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:73 +msgid "Entry with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:75 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:70 +msgid "Selected text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:91 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:76 +msgid "Entry as plain text" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:92 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:77 +msgid "Entry as HTML" +msgstr "" + +#: bibletime/dummy.h:95 bibletime/frontend/presenters/cbiblepresenter.cpp:86 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:94 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:79 +#: bibletime/tooltipdef.h:95 +msgid "Select all" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:87 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:95 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:80 +msgid "Lookup selected text in lexicon" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:89 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:97 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:82 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:401 +msgid "Copy..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:90 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:98 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:83 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:402 +msgid "Add to printing queue..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:91 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:403 +msgid "Save..." +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:67 +msgid "Bible window" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:70 +msgid "Verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:71 +msgid "Text of verse" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:72 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:78 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:82 +msgid "Verse with text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:73 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:79 +msgid "Chapter" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:83 +msgid "Chapter as plain text" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:84 +msgid "Chapter as HTML" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:300 +msgid "Save verse with text as ..." +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +msgid "Select additional modules" +msgstr "" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:51 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:121 +msgid "NONE" +msgstr "" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:63 +msgid "Lexicon window" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Accelerators" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:76 +msgid "Configure BibleTime's key bindings" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:86 +msgid "Choose fonts for BibleTime" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:90 +msgid "Choose the area of application and set the font for it" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:101 +msgid "The quick brown fox jumped over the lazy dog" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Module fonts" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:109 +msgid "Configure the fonts used for modules" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:134 +msgid "Configure BibleTime's colors" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:141 +msgid "Background" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:158 +msgid "Highlighted Verse" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:166 +msgid "Configure BibleTime's general options" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:170 +msgid "Show tip of the day" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:187 +msgid "Language for booknames" +msgstr "" + +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:192 +msgid "English" +msgstr "" + +#: bibletime/dummy.h:130 +#: bibletime/frontend/optionsdialog/coptionsdialog.cpp:211 +#: bibletime/tooltipdef.h:130 +msgid "Show startuplogo" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:172 +msgid "module not set" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Search Dialog" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:51 +msgid "Interrupt" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:94 +msgid "Choose modules" +msgstr "" + +#: bibletime/dummy.h:99 bibletime/frontend/searchdialog/csearchdialog.cpp:94 +#: bibletime/tooltipdef.h:99 +msgid "Choose the modules for the search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Search Text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:98 +msgid "Enter the text to search for" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "Search Result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:102 +msgid "The result of your search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Search Analysis" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:106 +msgid "Graphical analysis of your search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialoganalysis.cpp:316 +#, ycp-format +msgid "
%1

" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:57 +msgid "Search properties" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:75 +msgid "Multiple Words" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:83 +msgid "Exact Search" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:90 +msgid "Regular Expression" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:103 +msgid "Case Sensitive" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:107 +msgid "Search scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:111 +msgid "Search progress" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:116 +msgid "Current module:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:117 +msgid "Overall:" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +msgid "Search result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Result with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:203 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:240 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:273 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:318 +#, ycp-format +msgid "Search result for \"%1\" in module \"%2\"\n" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:232 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:312 +msgid "Save search result ..." +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:391 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:398 +msgid "Key" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:392 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:395 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:399 +msgid "Key with text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:549 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:580 +msgid "Save key ..." +msgstr "" + +#: bibletime/dummy.h:110 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:110 +msgid "No scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:216 +msgid "Choose custom range" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:217 +msgid "Define range text" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:218 +msgid "Range parsing results" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Range name" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:282 +msgid "Please enter a name for the new range" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:68 +msgid "Useful tips for BibleTime" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:100 +msgid "Run on startup" +msgstr "" + +#: bibletime/frontend/ctipwindow.cpp:120 +msgid "" +"
Missing tips!


Your installation is " +"missing the daily tips.\t\tPlease make sure all files of BibleTime are\t" +"\tinstalled and that the permissions of $KDEDIR are correct!

\t\tIf " +"you can't solve this problem please contact the team of BibleTime at\t\tinfo@bibletime.de!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:198 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:218 +msgid "Save text as HTML page ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:225 +msgid "Save text as plain text ..." +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:453 +msgid "Choose a font:" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:457 +msgid "Choose font size" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:461 +msgid "Bold" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:465 +msgid "Underlined" +msgstr "" + +#: bibletime/frontend/chtmlwidget.cpp:474 +msgid "Justify" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:182 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:193 +msgid "unknown" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:220 +msgid "Bookmark to" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +#, ycp-format +msgid "Foonotes: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:247 +#, ycp-format +msgid "Strong's numbers: %1
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "Unlock key:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:249 +msgid "not set" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:251 +msgid "Version:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:253 +msgid "Font:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:170 +msgid "Bibles" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:173 +msgid "Commentaries" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:176 +msgid "Lexicons" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:284 +msgid "Caption" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:292 +msgid "Main index" +msgstr "" + +#: bibletime/dummy.h:51 bibletime/frontend/groupmanager/cgroupmanager.cpp:293 +#: bibletime/tooltipdef.h:51 +msgid "Create a new folder" +msgstr "" + +#: bibletime/dummy.h:52 bibletime/frontend/groupmanager/cgroupmanager.cpp:296 +#: bibletime/tooltipdef.h:52 +msgid "Change this folder" +msgstr "" + +#: bibletime/dummy.h:53 bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +#: bibletime/tooltipdef.h:53 +msgid "Change this bookmark" +msgstr "" + +#: bibletime/dummy.h:54 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:54 +msgid "Import bookmarks" +msgstr "" + +#: bibletime/dummy.h:55 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:55 +msgid "Export bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:309 +msgid "Print bookmark" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:315 +msgid "Search in selected module(s)" +msgstr "" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:318 +#: bibletime/tooltipdef.h:57 +msgid "Unlock this module" +msgstr "" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:321 +#: bibletime/tooltipdef.h:58 +msgid "About this module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:377 +msgid "Please enter here the description:" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Change bookmark description - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:415 +msgid "Please change the description of the item!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Change folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:426 +msgid "Please change the name of the group!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:563 +msgid "Not necessary!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:575 +msgid "Datapath" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:577 +msgid "Version" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:579 +msgid "Unlock key" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:581 +msgid "Writable" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:589 +msgid "Footnotes" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:591 +msgid "Strong's numbers" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Enter name of folder - BibleTime" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:937 +msgid "Please enter the name of the folder!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "BibleTime - Unlock module" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1021 +msgid "Enter the key to unlock the module!" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1178 +msgid "Import bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1186 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1189 +msgid "Import of bookmarks" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1203 +msgid "Export bookmarks ..." +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1553 +msgid "BibleTime - Reset main index" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "" +"The file does already exist!
Do you want to overwrite it?
" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:78 +msgid "BibleTime - Save file as ..." +msgstr "" + +#: bibletime/frontend/chtmldialog.cpp:35 bibletime/frontend/chtmldialog.cpp:43 +msgid "BibleTime - Help window" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +msgid "Edit toolbar" +msgstr "" + +#: bibletime/dummy.h:41 bibletime/tooltipdef.h:41 +msgid "BibleTime's handbook" +msgstr "" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Enter \"What's this?\" mode" +msgstr "" + +#: bibletime/dummy.h:43 bibletime/tooltipdef.h:43 +msgid "Send bugreport" +msgstr "" + +#: bibletime/dummy.h:44 bibletime/tooltipdef.h:44 +msgid "Show a daily tip" +msgstr "" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "About BibleTime" +msgstr "" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "About KDE" +msgstr "" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +msgid "The main index" +msgstr "" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "Add bookmark to printing queue" +msgstr "" + +#: bibletime/dummy.h:61 bibletime/tooltipdef.h:61 +msgid "The working area" +msgstr "" + +#: bibletime/dummy.h:63 bibletime/tooltipdef.h:63 +msgid "The bible window" +msgstr "" + +#: bibletime/dummy.h:64 bibletime/tooltipdef.h:64 +msgid "The commentary window" +msgstr "" + +#: bibletime/dummy.h:65 bibletime/tooltipdef.h:65 +msgid "The lexicon window" +msgstr "" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "Show the next entry" +msgstr "" + +#: bibletime/dummy.h:68 bibletime/tooltipdef.h:68 +msgid "Show the previous entry" +msgstr "" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Jump to next verse" +msgstr "" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Jump to previous verse" +msgstr "" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +msgid "Show next chapter" +msgstr "" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +msgid "Show previous chapter" +msgstr "" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +msgid "Show next book" +msgstr "" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +msgid "Show previous book" +msgstr "" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +msgid "List of books" +msgstr "" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +msgid "List of chapters" +msgstr "" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of verses" +msgstr "" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of entries" +msgstr "" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "Scroll through the list" +msgstr "" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "Edit this entry" +msgstr "" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Save this comment" +msgstr "" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Delete this comment" +msgstr "" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Comment up to" +msgstr "" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Set bold" +msgstr "" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Set italic" +msgstr "" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set underlined" +msgstr "" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set font" +msgstr "" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set the color" +msgstr "" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set the fontsize" +msgstr "" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Synchronize with Bible windows" +msgstr "" + +#: bibletime/dummy.h:94 bibletime/tooltipdef.h:94 +msgid "Save as HTML" +msgstr "" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Copy to clipboard" +msgstr "" + +#: bibletime/dummy.h:100 bibletime/tooltipdef.h:100 +msgid "Add the selected module to the list" +msgstr "" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +msgid "Remove the selected module from the list" +msgstr "" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "List of modules used for the search" +msgstr "" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "Search this text" +msgstr "" + +#: bibletime/dummy.h:105 bibletime/tooltipdef.h:105 +msgid "Search multiple words" +msgstr "" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +msgid "Exact match" +msgstr "" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search with GNU regular expressions" +msgstr "" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Search case sensitive" +msgstr "" + +#: bibletime/dummy.h:111 bibletime/tooltipdef.h:111 +msgid "Last search result" +msgstr "" + +#: bibletime/dummy.h:112 bibletime/tooltipdef.h:112 +msgid "Use own scope" +msgstr "" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Add a new scope" +msgstr "" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +msgid "Delete this search scope" +msgstr "" + +#: bibletime/dummy.h:115 bibletime/dummy.h:297 bibletime/tooltipdef.h:115 +#: bibletime/whatsthisdef.h:123 +msgid "Edit and define your search scopes" +msgstr "" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Choose a search scope from the list" +msgstr "" + +#: bibletime/dummy.h:117 bibletime/tooltipdef.h:117 +msgid "Enter your own search scope" +msgstr "" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Parsed result" +msgstr "" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Close this dialog" +msgstr "" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Used modules" +msgstr "" + +#: bibletime/dummy.h:122 bibletime/tooltipdef.h:122 +msgid "Items found" +msgstr "" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Graphical analysis" +msgstr "" + +#: bibletime/dummy.h:128 bibletime/tooltipdef.h:128 +msgid "Show daily tip" +msgstr "" + +#: bibletime/dummy.h:129 bibletime/tooltipdef.h:129 +msgid "List of languages" +msgstr "" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +msgid "Set keyboard accelerators" +msgstr "" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Choose the area of application" +msgstr "" + +#: bibletime/dummy.h:136 bibletime/dummy.h:317 bibletime/tooltipdef.h:136 +#: bibletime/whatsthisdef.h:143 +msgid "Choose a font" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "List of modules" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "Color of the background" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "Color of the highlighted verse" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "Start printing" +msgstr "" + +#: bibletime/dummy.h:145 bibletime/tooltipdef.h:145 +msgid "Show a preview" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Open help" +msgstr "" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "The list of printers" +msgstr "" + +#: bibletime/dummy.h:150 bibletime/tooltipdef.h:150 +msgid "Print into a file" +msgstr "" + +#: bibletime/dummy.h:151 bibletime/tooltipdef.h:151 +msgid "Browse for the file" +msgstr "" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Copies" +msgstr "" + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Paper type" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Paper size" +msgstr "" + +#: bibletime/dummy.h:159 bibletime/tooltipdef.h:159 +msgid "Styles" +msgstr "" + +#: bibletime/dummy.h:160 bibletime/tooltipdef.h:160 +msgid "List of print items" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Move item up" +msgstr "" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +msgid "Move item down" +msgstr "" + +#: bibletime/dummy.h:163 bibletime/tooltipdef.h:163 +msgid "Delete items" +msgstr "" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Insert a page break" +msgstr "" + +#: bibletime/dummy.h:166 bibletime/tooltipdef.h:166 +msgid "Page borders" +msgstr "" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "Left border" +msgstr "" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Right border" +msgstr "" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Upper border" +msgstr "" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Lower border" +msgstr "" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "List of styles" +msgstr "" + +#: bibletime/dummy.h:172 bibletime/tooltipdef.h:172 +msgid "Delete the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Edit the chosen printing style" +msgstr "" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Create a new printing style" +msgstr "" + +#: bibletime/dummy.h:202 bibletime/whatsthisdef.h:28 +msgid "" +"Clear the printing queue of BibleTime. All items will be removed from the " +"list, the print button will be disabled." +msgstr "" + +#: bibletime/dummy.h:203 bibletime/whatsthisdef.h:29 +msgid "" +"Open the printerdialog of BibleTime where you can edit the printing queue " +"and assign styles to the items." +msgstr "" + +#: bibletime/dummy.h:204 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "" + +#: bibletime/dummy.h:206 bibletime/whatsthisdef.h:32 +msgid "Open the search dialog to search text in one or more modules." +msgstr "" + +#: bibletime/dummy.h:207 bibletime/whatsthisdef.h:33 +msgid "" +"Remove the selected items from the main index.
If you remove a folder the " +"subitems of it will be removed, too." +msgstr "" + +#: bibletime/dummy.h:208 bibletime/whatsthisdef.h:34 +msgid "" +"Reset the main index
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:36 +msgid "Show or hide the main index depending on current state." +msgstr "" + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:37 +msgid "Show or hide the main toolbar depending on current state." +msgstr "" + +#: bibletime/dummy.h:212 bibletime/whatsthisdef.h:38 +msgid "Show or hide the footnotes in the modules deoending on current state." +msgstr "" + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:39 +msgid "" +"Show or hide Strong's numbers in the modules depending on current state." +msgstr "" + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:41 +msgid "Arrange the opened display windows in a tile pattern." +msgstr "" + +#: bibletime/dummy.h:216 bibletime/whatsthisdef.h:42 +msgid "" +"The open display windows will automatically arranged in a tile pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:43 +msgid "Arrange the open display windows in a cascade pattern." +msgstr "" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:44 +msgid "" +"The open display windows will automatically arranged in a cascade pattern if " +"it's necessary." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "" + +#: bibletime/dummy.h:221 bibletime/whatsthisdef.h:47 +msgid "Open a dialog where you can edit the toolbar of BibleTime." +msgstr "" + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:48 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:50 +msgid "Open KDE's helpbrowser with BibleTime's handbook." +msgstr "" + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:51 +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help." +msgstr "" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:52 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "" + +#: bibletime/dummy.h:227 bibletime/whatsthisdef.h:53 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:54 +msgid "Show detailed information about BibleTime." +msgstr "" + +#: bibletime/dummy.h:229 bibletime/whatsthisdef.h:55 +msgid "Show the general about dialog of KDE 2." +msgstr "" + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:59 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:60 +msgid "" +"Create a new folder in the main index.
If you pressed the right mouse " +"button on a folder the new folder will be a sub-item of it.
Otherwise you " +"will create a toplevel folder." +msgstr "" + +#: bibletime/dummy.h:235 bibletime/whatsthisdef.h:61 +msgid "Change the properties of the selected folder." +msgstr "" + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:62 +msgid "Change the properties of the selected bookmark." +msgstr "" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:63 +msgid "Import bookmark from a file." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:64 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:65 +msgid "" +"Use this to add this bookmark to BibleTime's printing queue. The key, the " +"description and the text of the key will be used for printing." +msgstr "" + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:66 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:67 +msgid "Open a dialog to show information about the selected module." +msgstr "" + +#: bibletime/dummy.h:244 bibletime/whatsthisdef.h:70 +msgid "" +"This area contains is the working place of Bibletime.
All display windows " +"are opened in this place." +msgstr "" + +#: bibletime/dummy.h:246 bibletime/whatsthisdef.h:72 +msgid "This is the Bible display window" +msgstr "" + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:73 +msgid "This is the commentary display window." +msgstr "" + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:74 +msgid "This is the lexicon display window." +msgstr "" + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:76 +msgid "The next entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:77 +msgid "The previous entry of the module will be shown." +msgstr "" + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:78 +msgid "" +"If you view the text of a Bible the next verse will be highlighted.
If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:79 +msgid "" +"If you view the text of a Bible the previous verse will be highlighted. If " +"you read a commentary the next entry will be shown." +msgstr "" + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:80 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "" + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:81 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "" + +#: bibletime/dummy.h:256 bibletime/whatsthisdef.h:82 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" + +#: bibletime/dummy.h:257 bibletime/whatsthisdef.h:83 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:84 +msgid "This list contains the books which are available in this module." +msgstr "" + +#: bibletime/dummy.h:259 bibletime/whatsthisdef.h:85 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:86 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:87 +msgid "This list contains the entries of the current module." +msgstr "" + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:88 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:89 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "" + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:90 +msgid "Save the personal comment." +msgstr "" + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:91 +msgid "Clear the text and delete the entry from the module." +msgstr "" + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:92 +msgid "Switch between bold and non-bold formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:93 +msgid "Switch between italic and non-italic formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:94 +msgid "" +"Switch between underlined and non-undelined formatting of the selected text." +msgstr "" + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:95 +msgid "Choose a new font for the selected text." +msgstr "" + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:96 +msgid "Choose a new color for the selected text." +msgstr "" + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:97 +msgid "Choose a new fontsize for the selected text." +msgstr "" + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:99 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "" + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:102 +msgid "Save the displayed chapter as a HTML file." +msgstr "" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:103 +msgid "Select all text." +msgstr "" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:104 +msgid "Copy the displayed text to the clipboard." +msgstr "" + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:107 +msgid "" +"Choose the modules which will be used for the search.
Use the two button " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" + +#: bibletime/dummy.h:282 bibletime/whatsthisdef.h:108 +msgid "Add the selected module to the list on the left." +msgstr "" + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:109 +msgid "Remove the selected module from the list on the left side." +msgstr "" + +#: bibletime/dummy.h:284 bibletime/whatsthisdef.h:110 +msgid "The list of modules used for the search." +msgstr "" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:112 +msgid "The text entered in this edit box will be searched in all modules." +msgstr "" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:113 +msgid "" +"Select this to search for multiple words.
Each word in the edit line is " +"searched as a single word." +msgstr "" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:114 +msgid "" +"Select this to search for exactly the same text you entered in the edit line." +msgstr "" + +#: bibletime/dummy.h:289 bibletime/whatsthisdef.h:115 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" + +#: bibletime/dummy.h:290 bibletime/whatsthisdef.h:116 +msgid "Activate this to use case sensitive search." +msgstr "" + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:118 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:119 +msgid "" +"Select this if you want to use the last search result of each module as " +"search scope." +msgstr "" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:120 +msgid "Create a new search scope." +msgstr "" + +#: bibletime/dummy.h:295 bibletime/whatsthisdef.h:121 +msgid "" +"Use an own scope for the search.
A standard set of search scopes exists." +msgstr "" + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:122 +msgid "Use this button to delete the chosen search scope." +msgstr "" + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:124 +msgid "Choose a search scope from the combo box" +msgstr "" + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:125 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:126 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" + +#: bibletime/dummy.h:301 bibletime/whatsthisdef.h:127 +msgid "Close this dialog and save the changes." +msgstr "" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:129 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:130 +msgid "This contains the items found in the selected module." +msgstr "" + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:131 +msgid "This text box shows a preview of the chosen item." +msgstr "" + +#: bibletime/dummy.h:307 bibletime/whatsthisdef.h:133 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:136 +msgid "Activate this box to see a daily tip on startup." +msgstr "" + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:137 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" + +#: bibletime/dummy.h:312 bibletime/whatsthisdef.h:138 +msgid "Activate this to see a startup logo on each startup of BibleTime." +msgstr "" + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:141 +msgid "Select a action and change the key binding for the action." +msgstr "" + +#: bibletime/dummy.h:316 bibletime/whatsthisdef.h:142 +msgid "" +"Select in this box how the font is used and change the font in the font " +"chooser." +msgstr "" + +#: bibletime/dummy.h:319 bibletime/whatsthisdef.h:145 +msgid "This list contains the modules using foreign fonts." +msgstr "" + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:147 +msgid "This is the background color used in display windows." +msgstr "" + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:148 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "" + +#: bibletime/dummy.h:325 bibletime/whatsthisdef.h:151 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:152 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:153 +msgid "" +"Closes this dialog without doing anything with the items or the printer." +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:154 +msgid "Open the online help of BibleTime." +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:156 +msgid "" +"This is the list of available printers of your system.
Please select the " +"printer you want to use for printing." +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:157 +msgid "Print into a postscript file on disk." +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:158 +msgid "Browse for the file you want to print into." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:159 +msgid "The number of copies used for printing." +msgstr "" + +#: bibletime/dummy.h:334 bibletime/whatsthisdef.h:160 +msgid "Choose the orientation of the used paper." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:161 +msgid "Print on the paper using \"Portrait\" as orientation." +msgstr "" + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:162 +msgid "Print on the paper using \"Landscape\" as orientation." +msgstr "" + +#: bibletime/dummy.h:337 bibletime/whatsthisdef.h:163 +msgid "The type of the paper which is used for printing." +msgstr "" + +#: bibletime/dummy.h:338 bibletime/whatsthisdef.h:164 +msgid "The size of the used paper." +msgstr "" + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:166 +msgid "This combo box contains the available printing styles." +msgstr "" + +#: bibletime/dummy.h:341 bibletime/whatsthisdef.h:167 +msgid "This is the list which contains the available print items." +msgstr "" + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:168 +msgid "Move the selected item one item above." +msgstr "" + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:169 +msgid "Move the selected item one item below." +msgstr "" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:170 +msgid "Delete the selected items." +msgstr "" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:171 +msgid "Inserts a page break into the list.
The printer will start new page." +msgstr "" + +#: bibletime/dummy.h:347 bibletime/whatsthisdef.h:173 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "" + +#: bibletime/dummy.h:348 bibletime/whatsthisdef.h:174 +msgid "The size of the border on the left side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:175 +msgid "The size of the border on the right side of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:176 +msgid "The size of the border on the top of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:177 +msgid "The size of the border on the bottom of the paper sheet." +msgstr "" + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:178 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" + +#: bibletime/dummy.h:353 bibletime/whatsthisdef.h:179 +msgid "Remove the selected printing style from the list." +msgstr "" + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:180 +msgid "Change the properties of the selected printing style." +msgstr "" + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:181 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "" diff --git a/bibletime-doc/po/sk.gmo b/bibletime-doc/po/sk.gmo new file mode 100644 index 0000000000000000000000000000000000000000..0817ede0167b1d55bff0aadd433f663733e6a957 GIT binary patch literal 26018 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, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: BibleTime 1\n" +"POT-Creation-Date: 2002-04-07 01:40+0200\n" +"PO-Revision-Date: 2001-05-24 12:39GMT\n" +"Last-Translator: Joachim Ansorg \n" +"Language-Team: Deutsch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.1\n" + +#: bibletime/backend/cswordbackend.cpp:313 +#: bibletime/frontend/coptionsdialog.cpp:272 +msgid "Footnotes" +msgstr "Poznámky pod čiarov" + +#: bibletime/backend/cswordbackend.cpp:315 +#, fuzzy +msgid "Strong's Numbers" +msgstr "Strongové čísla" + +#: bibletime/backend/cswordbackend.cpp:317 +msgid "Headings" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:319 +msgid "Morphological Tags" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:321 +msgid "Lemmas" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:323 +msgid "Hebrew Vowel Points" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:325 +#, fuzzy +msgid "Hebrew Cantillation" +msgstr "Orientácia" + +#: bibletime/backend/cswordbackend.cpp:327 +msgid "Greek Accents" +msgstr "" + +#: bibletime/backend/cswordbackend.cpp:329 +msgid "Textual Variants" +msgstr "" + +#: bibletime/main.cpp:110 +#, fuzzy +msgid "Enable debug messages" +msgstr "Povoľ správy na ladenie programu" + +#: bibletime/main.cpp:111 +msgid "Ignore the startup profile saved after the last BibleTime execution." +msgstr "" + +#: bibletime/main.cpp:119 +msgid "Bible study tool for KDE 2" +msgstr "Nástroj pre biblické štúdium pre KDE2" + +#: bibletime/main.cpp:121 +#, fuzzy +msgid "(c)1999-2002, The BibleTime Team" +msgstr "(c)1999-2001, The BibleTime Team" + +#: bibletime/main.cpp:122 +#, fuzzy +msgid "" +"BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n" +"\n" +"We are looking for translators and handbook authors.\n" +"If you'd like to join use send an eMail to info@bibletime.de." +msgstr "" +"Bibletime je ľahko použiteľný ale výkonný nástroj pre biblické štúdium pre " +"KDE2 \n" +"\n" +"Hľadáme nových vývojárov, prekladateľov a autorov príručky\n" +"Ak sa chcete k nám pripojiť pošlite eMail na info@bibletime.de." + +#: bibletime/main.cpp:130 +#, fuzzy +msgid "Project coordinator" +msgstr "Koordinátor projektu, frontend, backend" + +#: bibletime/main.cpp:131 +#, fuzzy +msgid "Frontend, backend" +msgstr "Frontend, backend, a iné veci" + +#: bibletime/main.cpp:132 +#, fuzzy +msgid "Searchdialog" +msgstr "Vyhľadávanie" + +#: bibletime/main.cpp:138 +msgid "Icons, startlogo, banners" +msgstr "" + +#: bibletime/main.cpp:141 +msgid "Handbook" +msgstr "Príručka" + +#: bibletime/main.cpp:144 +msgid "Translation into Czech" +msgstr "Preklad do češtiny" + +#: bibletime/main.cpp:145 +msgid "Translation into Danish" +msgstr "Preklad do dánštiny" + +#: bibletime/main.cpp:146 +msgid "Translation into Dutch" +msgstr "Preklad do holandštiny" + +#: bibletime/main.cpp:148 +msgid "Translation into French" +msgstr "Preklad do francúštiny" + +#: bibletime/main.cpp:149 +msgid "Translation into Hungarian" +msgstr "Preklad do maďarčiny" + +#: bibletime/main.cpp:150 bibletime/main.cpp:151 +msgid "Translation into Italian" +msgstr "Preklad do taliančiny" + +#: bibletime/main.cpp:152 +msgid "Translation into Norwegian" +msgstr "Preklad do francúštiny" + +#: bibletime/main.cpp:153 +msgid "Translation into Polish" +msgstr "Preklad do polštiny" + +#: bibletime/main.cpp:154 +msgid "Translation into Portoguese" +msgstr "Preklad do portugalštiny" + +#: bibletime/main.cpp:155 +#, fuzzy +msgid "Translation into Russian" +msgstr "Preklad do maďarčiny" + +#: bibletime/main.cpp:156 +msgid "Translation into Slovak" +msgstr "Preklad do slovenského jazyka" + +#: bibletime/main.cpp:157 +#, fuzzy +msgid "Translation into Spanish" +msgstr "Preklad do dánštiny" + +#: bibletime/main.cpp:160 +msgid "Bible study HowTo" +msgstr "Biblické štúdium Ako..." + +#: bibletime/main.cpp:185 +#, fuzzy +msgid "Starting BibleTime" +msgstr "O BibleTime" + +#: bibletime/bibletime_init.cpp:59 +#, fuzzy +msgid "Creating BibleTime's GUI" +msgstr "Ukonči BibleTime" + +#: bibletime/bibletime_init.cpp:77 +msgid "Initializing menu- and toolbars" +msgstr "" + +#: bibletime/bibletime_init.cpp:81 +msgid "Clear printing queue" +msgstr "Vyčisti tlačovú frontu" + +#: bibletime/bibletime_init.cpp:99 bibletime/dummy.h:25 +#: bibletime/tooltipdef.h:25 +msgid "Reset main index" +msgstr "Znovu nastav hlavný index" + +#: bibletime/bibletime_init.cpp:105 +msgid "Search in module(s)" +msgstr "Hľadaj v modul(e/och)" + +#: bibletime/bibletime_init.cpp:111 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:297 +msgid "Remove selected item(s)" +msgstr "Zmaž vybrané položky" + +#: bibletime/bibletime_init.cpp:122 +msgid "&Show main index" +msgstr "&Zobraz hlavný index" + +#: bibletime/bibletime_init.cpp:137 +msgid "&Cascade" +msgstr "&Kaskáda" + +#: bibletime/bibletime_init.cpp:143 +msgid "&Tile" +msgstr "&Dláždenie" + +#: bibletime/bibletime_init.cpp:149 +msgid "&Auto cascade" +msgstr "&Automatická kaskáda" + +#: bibletime/bibletime_init.cpp:155 +msgid "A&uto Tile" +msgstr "A&utomatické dlaždenie" + +#: bibletime/bibletime_init.cpp:161 +msgid "&Close all" +msgstr "Všetko &zavri" + +#: bibletime/bibletime_init.cpp:167 +#, fuzzy +msgid "&Save profile" +msgstr "Vytvor novú zložku" + +#: bibletime/bibletime_init.cpp:172 +#, fuzzy +msgid "&Load profile" +msgstr "Vytvor novú zložku" + +#: bibletime/bibletime_init.cpp:177 +#, fuzzy +msgid "&Configure profiles" +msgstr "Nastavte farby v BibleTime" + +#: bibletime/bibletime_init.cpp:183 +#, fuzzy +msgid "&Fullscreen mode" +msgstr "Aktuálny modul:" + +#: bibletime/bibletime_init.cpp:202 +#, fuzzy +msgid "&Handbook" +msgstr "Príručka" + +#: bibletime/bibletime_init.cpp:208 +msgid "&Installation" +msgstr "" + +#: bibletime/bibletime_init.cpp:214 +#, fuzzy +msgid "&Bible Study Howto" +msgstr "Biblické štúdium Ako..." + +#: bibletime/bibletime_init.cpp:229 +msgid "&Daily tip" +msgstr "Tip na &deň" + +#: bibletime/bibletime_init.cpp:294 +msgid "Initializing Sword" +msgstr "" + +#: bibletime/bibletime_init.cpp:341 +msgid "Initializing printing system" +msgstr "" + +#: bibletime/printing/cstyleeditordialog.cpp:40 +msgid "style editor" +msgstr "editor štýlu" + +#: bibletime/printing/cstyleeditordialog.cpp:63 +msgid "Name of style:" +msgstr "Meno štýlu" + +#: bibletime/printing/cstyleeditordialog.cpp:71 +msgid "Choose the part of the style:" +msgstr "Zvoľ časť štýlu:" + +#: bibletime/printing/cstyleeditordialog.cpp:73 +#: bibletime/printing/cstyleeditordialog.cpp:289 +msgid "Header" +msgstr "Hlavička" + +#: bibletime/printing/cstyleeditordialog.cpp:74 +#: bibletime/printing/cstyleeditordialog.cpp:293 +msgid "Description" +msgstr "Popis" + +#: bibletime/printing/cstyleeditordialog.cpp:75 +#: bibletime/printing/cstyleeditordialog.cpp:297 +msgid "Module text" +msgstr "Text modulu" + +#: bibletime/printing/cstyleeditordialog.cpp:81 +msgid "Enable this part" +msgstr "Povoľ túto časť" + +#: bibletime/printing/cstyleeditordialog.cpp:104 +msgid "Foreground:" +msgstr "Popredie:" + +#: bibletime/printing/cstyleeditordialog.cpp:115 +msgid "Background:" +msgstr "Pozadie:" + +#: bibletime/printing/cstyleeditordialog.cpp:126 +msgid "Choose font" +msgstr "Vyber písmo" + +#: bibletime/printing/cstyleeditordialog.cpp:129 +msgid "Font preview" +msgstr "Náhľad na písmo" + +#: bibletime/printing/cstyleeditordialog.cpp:143 +msgid "Use frame" +msgstr "Použi rámec" + +#: bibletime/printing/cstyleeditordialog.cpp:154 +msgid "Line thickness (in point):" +msgstr "Hrúbka čiary (v bodoch):" + +#: bibletime/printing/cstyleeditordialog.cpp:162 +msgid "Frame color:" +msgstr "Farba rámca:" + +#: bibletime/printing/cstyleeditordialog.cpp:170 +#, fuzzy +msgid "Line style:" +msgstr "Meno štýlu" + +#: bibletime/frontend/coptionsdialog.cpp:218 +#: bibletime/frontend/coptionsdialog.cpp:735 +#: bibletime/printing/cprintdialogpages.cpp:176 +#: bibletime/printing/cprinter.cpp:307 bibletime/printing/cprinter.cpp:316 +#: bibletime/printing/cstyle.cpp:180 +#: bibletime/printing/cstyleeditordialog.cpp:200 +msgid "Standard" +msgstr "Štandard" + +#: bibletime/printing/cstylelist.cpp:44 +msgid "Name:" +msgstr "Meno:" + +#: bibletime/printing/cstyle.cpp:181 +msgid "Colored style for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:182 +msgid "Black&White for larger test portions" +msgstr "" + +#: bibletime/printing/cstyle.cpp:187 +msgid "unknown name" +msgstr "neznámy" + +#: bibletime/dummy.h:166 bibletime/printing/cprintdialogpages.cpp:43 +#: bibletime/tooltipdef.h:166 +msgid "Styles" +msgstr "Štýly" + +#: bibletime/printing/cprintdialogpages.cpp:48 +msgid "Margins (in millimeter)" +msgstr "Ohraničenie (v milimetroch)" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Top" +msgstr "&Hore" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Left" +msgstr "&Vľavo" + +#: bibletime/printing/cprintdialogpages.cpp:55 +msgid "&Right" +msgstr "Vp&ravo" + +#: bibletime/printing/cprintdialogpages.cpp:104 +msgid "List of style items:" +msgstr "Zoznam položiek štýlu:" + +#: bibletime/printing/cprintdialogpages.cpp:192 +#, fuzzy +msgid "Print queue" +msgstr "Tlačiareň" + +#: bibletime/printing/cprintdialogpages.cpp:203 +msgid "Choose a style" +msgstr "Výber štýlu" + +#: bibletime/printing/cprintdialogpages.cpp:215 +msgid "Entries which should be printed:" +msgstr "Záznamy, ktoré by mali byť vytlačené:" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:239 +#: bibletime/printing/cprintitemlist.cpp:44 +msgid "Module" +msgstr "Modul" + +#: bibletime/printing/cprintitemlist.cpp:45 +msgid "From" +msgstr "Od" + +#: bibletime/printing/cprintitemlist.cpp:46 +msgid "To" +msgstr "Do:" + +#: bibletime/printing/cprintitemlist.cpp:47 +msgid "Style" +msgstr "Štýl" + +#: bibletime/frontend/chtmldialog.cpp:84 +#, fuzzy +msgid "Backward" +msgstr "Pozadie" + +#: bibletime/frontend/chtmldialog.cpp:102 +msgid "Forward" +msgstr "" + +#: bibletime/frontend/cinputdialog.cpp:72 +msgid "Ok" +msgstr "Ok" + +#: bibletime/frontend/chtmlwidget.cpp:264 +#, ycp-format +msgid "Unable to find the page %1!" +msgstr "Nie je možné nájsť stránku %1!" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "" +"*.html *.htm *.shtml *.shtm | HTML files\n" +" *.* | All files (*.*)" +msgstr "" +"*.html *.htm *.shtml *.shtm | HTML súbory\n" +" *.* | Všetky súbory (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:284 +msgid "Save text as HTML page ..." +msgstr "Ulož text ako HTML stránku..." + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "" +"*.txt | Text file (*.txt)\n" +"*.* | All files (*.*)" +msgstr "" +"*.txt | Textový súbor (*.txt)\n" +"*.* | Všetky súbory (*.*)" + +#: bibletime/frontend/chtmlwidget.cpp:291 +msgid "Save text as plain text ..." +msgstr "Ulož text ako obyčajný text..." + +#: bibletime/frontend/chtmlwidget.cpp:501 +msgid "Choose a font:" +msgstr "Vyberte typ písma:" + +#: bibletime/frontend/chtmlwidget.cpp:505 +msgid "Choose font size" +msgstr "Vyberte veľkosť typu písma" + +#: bibletime/frontend/chtmlwidget.cpp:509 +msgid "Bold" +msgstr "Tučné" + +#: bibletime/frontend/chtmlwidget.cpp:513 +msgid "Underlined" +msgstr "Podčiarknuté" + +#: bibletime/frontend/chtmlwidget.cpp:522 +msgid "Justify" +msgstr "Zarovnaj" + +#: bibletime/frontend/cprofile.cpp:33 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:178 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:189 +msgid "unknown" +msgstr "neznámy" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:214 +msgid "Bookmark to" +msgstr "Záložka k" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:539 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:241 +#, fuzzy +msgid "Language" +msgstr "Zoznam jazykov" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:549 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:243 +msgid "Unlock key" +msgstr "Kľúč k odomknutiu" + +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:244 +msgid "not set" +msgstr "nenastavené" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:532 +#: bibletime/frontend/groupmanager/cgroupmanageritem.cpp:246 +msgid "Version" +msgstr "Verzia" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:149 +msgid "Bibles" +msgstr "Biblie" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:150 +msgid "Books" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:151 +msgid "Commentaries" +msgstr "Komentáre" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:152 +msgid "Lexicons" +msgstr "Lexikóny" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:269 +msgid "Caption" +msgstr "Titulok" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:277 +msgid "Main index" +msgstr "Hlavný index" + +#: bibletime/dummy.h:57 bibletime/frontend/groupmanager/cgroupmanager.cpp:278 +#: bibletime/tooltipdef.h:57 +msgid "Create a new folder" +msgstr "Vytvor novú zložku" + +#: bibletime/dummy.h:58 bibletime/frontend/groupmanager/cgroupmanager.cpp:281 +#: bibletime/tooltipdef.h:58 +msgid "Change this folder" +msgstr "Zmeň túto zložku" + +#: bibletime/dummy.h:59 bibletime/frontend/groupmanager/cgroupmanager.cpp:285 +#: bibletime/tooltipdef.h:59 +msgid "Change this bookmark" +msgstr "Zmeň záložku" + +#: bibletime/dummy.h:60 bibletime/frontend/groupmanager/cgroupmanager.cpp:288 +#: bibletime/tooltipdef.h:60 +msgid "Import bookmarks" +msgstr "Importuj záložky" + +#: bibletime/dummy.h:61 bibletime/frontend/groupmanager/cgroupmanager.cpp:291 +#: bibletime/tooltipdef.h:61 +msgid "Export bookmarks" +msgstr "Exportuj záložky" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:294 +msgid "Print bookmark" +msgstr "Vytlač záložku" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:300 +msgid "Search in selected module(s)" +msgstr "Hľadaj vo zvolenom module" + +#: bibletime/dummy.h:63 bibletime/frontend/groupmanager/cgroupmanager.cpp:303 +#: bibletime/tooltipdef.h:63 +msgid "Unlock this module" +msgstr "Odomkni tento modul" + +#: bibletime/dummy.h:64 bibletime/frontend/groupmanager/cgroupmanager.cpp:306 +#: bibletime/tooltipdef.h:64 +msgid "About this module" +msgstr "O tomto module" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Bookmark description - BibleTime" +msgstr "Popis záložiek - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:376 +msgid "Please enter here the description:" +msgstr "Prosím vložte sem popis:" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Change bookmark description - BibleTime" +msgstr "Zmeňte popis záložiek - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:406 +msgid "Please change the description of the item!" +msgstr "Zmeňte prosím popis položky!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Change folder - BibleTime" +msgstr "Zmeňte zložku - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:417 +msgid "Please change the name of the group!" +msgstr "Zmeňte prosím meno skupiny!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:536 +#, fuzzy +msgid "Location" +msgstr "Titulok" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:544 +msgid "Writable" +msgstr "Zapisovatené" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:545 +#, fuzzy +msgid "yes" +msgstr "Štýly" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Encoding" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:219 +#: bibletime/frontend/coptionsdialog.cpp:738 +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "Unicode" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:551 +msgid "iso8859-1" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:564 +msgid "Features" +msgstr "" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Enter name of folder - BibleTime" +msgstr "Vlož meno zložky - BibleTime" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:907 +msgid "Please enter the name of the folder!" +msgstr "Prosím vložte meno zložky!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "BibleTime - Unlock module" +msgstr "BibleTime - Odomknutie modulu" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:991 +msgid "Enter the key to unlock the module!" +msgstr "Vlož klúč k odoknutiu modulu!" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1148 +msgid "Import bookmarks ..." +msgstr "Importuj záložky ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1156 +msgid "" +"A problem occurred while importing bookmarks!
The bookmarks format of " +"the imported file is newer
than the bookmarks format version of this " +"version of BibleTime!
Importing the bookmarks may not work correctly!
Do you want to continue?
" +msgstr "" +"Objavila sa chyba pri importovaní záložiek!
Formát záložiek z " +"importovaného súboru je novší
ako formát založiek tejto verzie BibleTime!" +"
Importové záložky nemusia fungovať správne!
Chcete pokračovať?" +"
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1159 +msgid "Import of bookmarks" +msgstr "Importuj záložky" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1173 +msgid "Export bookmarks ..." +msgstr "Exportuj záložky ..." + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "" +"This function will reset the main index!
This will recreate the " +"original groups and delete all other items!
Be sure no important " +"bookmarks will be deleted!
Do you want to continue?
" +msgstr "" +"Táto funkcia znovu nastaví manažéra skupiny!
To opäť vytvorí " +"originálne skupiny a zmaže ostatné položky!
Uistite sa, či tým nezmažete " +"dôležité záložky atď!
Prajete si pokračovať?
" + +#: bibletime/frontend/groupmanager/cgroupmanager.cpp:1516 +msgid "BibleTime - Reset main index" +msgstr "BibleTime - Znovu nastav hlavný index" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:85 +msgid "Lexicon window" +msgstr "Okno lexikónu" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:99 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:88 +msgid "Entry" +msgstr "Záznam" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:100 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:89 +msgid "Text of entry" +msgstr "Text záznamu" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:101 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:106 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:90 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:95 +msgid "Entry with text" +msgstr "Záznam s textom" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:100 +#: bibletime/frontend/presenters/cbookpresenter.cpp:98 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:103 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:92 +msgid "Selected text" +msgstr "Zvolený text" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:109 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:98 +msgid "Entry as plain text" +msgstr "Záznam ako obyčejný text" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:106 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:110 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:99 +msgid "Entry as HTML" +msgstr "Záznam ako HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:112 +#: bibletime/frontend/presenters/cbookpresenter.cpp:109 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:113 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:102 +msgid "Lookup selected text in lexicon" +msgstr "Hľadaj vyznačený text v lexikóne" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:114 +#: bibletime/frontend/presenters/cbookpresenter.cpp:111 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:115 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:104 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:134 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:270 +msgid "Copy..." +msgstr "Kopíruj..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:115 +#: bibletime/frontend/presenters/cbookpresenter.cpp:112 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:116 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:105 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:135 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:271 +msgid "Add to printing queue..." +msgstr "Pridaj do tlačovej fronty..." + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:116 +#: bibletime/frontend/presenters/cbookpresenter.cpp:113 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:117 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:106 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:136 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:272 +msgid "Save..." +msgstr "Ulož..." + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:259 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:267 +#, fuzzy +msgid "Next entry" +msgstr "Text záznamu" + +#: bibletime/frontend/presenters/clexiconpresenter.cpp:260 +#: bibletime/frontend/presenters/clexiconpresenter.cpp:270 +#, fuzzy +msgid "Previous entry" +msgstr "Zobraz predchádzajúci záznam" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:92 +msgid "Bible window" +msgstr "Okno Biblie" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:95 +msgid "Verse" +msgstr "verš" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:96 +msgid "Text of verse" +msgstr "text verša" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:97 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:103 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:107 +msgid "Verse with text" +msgstr "verš s textom" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:98 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:104 +msgid "Chapter" +msgstr "kapitolu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:108 +msgid "Chapter as plain text" +msgstr "kapitolu ako obyčajný text" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:109 +msgid "Chapter as HTML" +msgstr "kapitolu ako HTML" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:327 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:343 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:413 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:432 +#, fuzzy +msgid "Next book" +msgstr "Zobraz ďalšiu knihu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:328 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:345 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:414 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:434 +#, fuzzy +msgid "Previous book" +msgstr "Zobraz predchádzajúcu knihu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:330 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:348 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:416 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:437 +#, fuzzy +msgid "Next chapter" +msgstr "Zobraz nasledujúcu kapitolu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:331 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:350 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:417 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:439 +#, fuzzy +msgid "Previous chapter" +msgstr "Zobraz predchádzajúcu kapitolu" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:333 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:353 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:419 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:442 +#, fuzzy +msgid "Next verse" +msgstr "text verša" + +#: bibletime/frontend/presenters/cbiblepresenter.cpp:334 +#: bibletime/frontend/presenters/cbiblepresenter.cpp:355 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:420 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:444 +#, fuzzy +msgid "Previous verse" +msgstr "Skoč na predchádzajúci verš" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:47 +msgid "Select additional modules" +msgstr "Zvoľ dodatočné moduly" + +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:49 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:72 +#: bibletime/frontend/presenters/cmodulechooserbutton.cpp:126 +msgid "NONE" +msgstr "Nič" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:70 +#, fuzzy +msgid "Display options" +msgstr "Zobraz okno" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:73 +msgid "Use linebreaks" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:74 +#, fuzzy +msgid "Show versenumbers" +msgstr "Zobraz Strongové čísla" + +#: bibletime/frontend/coptionsdialog.cpp:663 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:76 +msgid "Show headings" +msgstr "" + +#: bibletime/dummy.h:29 bibletime/frontend/coptionsdialog.cpp:653 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:78 +#: bibletime/tooltipdef.h:29 +msgid "Show footnotes" +msgstr "Zobraz poznámky pod čiarov" + +#: bibletime/frontend/coptionsdialog.cpp:658 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:80 +#, fuzzy +msgid "Show Strong's Numbers" +msgstr "Zobraz Strongové čísla" + +#: bibletime/frontend/coptionsdialog.cpp:668 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:83 +msgid "Show morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:673 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:85 +msgid "Show lemmas" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:678 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:87 +msgid "Show Hebrew vowel points" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:683 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:89 +msgid "Show Hebrew cantillation marks" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:688 +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:91 +msgid "Show Greek accents" +msgstr "" + +#: bibletime/frontend/presenters/cdisplaysettingsbutton.cpp:93 +msgid "Use alternative textual variant" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:80 +msgid "Synchronize..." +msgstr "Synchronizuj..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:85 +msgid "Edit entry..." +msgstr "Uprav záznam..." + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:96 +msgid "Commentary window" +msgstr "Okno komentárov" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:232 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:392 +msgid "The text was not saved to the module. Save the changes now?" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:422 +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:447 +msgid "Toggle synchronize button" +msgstr "" + +#: bibletime/frontend/presenters/ccommentarypresenter.cpp:511 +#, fuzzy +msgid "Save changes to module?" +msgstr "Hľadaj v moduloch" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:68 +msgid "Toggle tree..." +msgstr "" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:90 +#, fuzzy +msgid "Book window" +msgstr "Okno Biblie" + +#: bibletime/frontend/presenters/cbookpresenter.cpp:200 +#: bibletime/frontend/presenters/cbookpresenter.cpp:208 +#, fuzzy +msgid "Toggle tree" +msgstr "Aktuálny modul:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:52 +msgid "Modules:" +msgstr "Moduly:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:55 +msgid "Entries found:" +msgstr "Nájdené záznamy:" + +#: bibletime/frontend/searchdialog/csearchdialogresult.cpp:173 +#, fuzzy +msgid "module not set" +msgstr "module nie je nastavený" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:53 +msgid "Search properties" +msgstr "Možnosti vyhľadávania:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:72 +msgid "Multiple Words" +msgstr "Zložené slová" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:80 +msgid "Exact Search" +msgstr "Presné hľadanie" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:87 +msgid "Regular Expression" +msgstr "Regulárny výraz" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:100 +msgid "Case Sensitive" +msgstr "Rozlišovať veľkosť písmen" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:104 +msgid "Search scope" +msgstr "Rozsah vyhľadávania" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:108 +msgid "Search progress" +msgstr "Priebeh vyhľadávania:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:113 +msgid "Current module:" +msgstr "Aktuálny modul:" + +#: bibletime/frontend/searchdialog/csearchdialogtext.cpp:114 +msgid "Overall:" +msgstr "Celkovo:" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search Dialog" +msgstr "Vyhľadávanie" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Search" +msgstr "Hľadaj" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:54 +msgid "Interrupt" +msgstr "Preručenie" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "Choose modules" +msgstr "Vyberte moduly" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:84 +msgid "Choose the modules for the search" +msgstr "Vložte moduly na prehľadávanie" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Search Text" +msgstr "Hľadaj text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:88 +msgid "Enter the text to search for" +msgstr "Vlož text, ktorý bude vyhľadávaný" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "Search Result" +msgstr "Výsledky hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:92 +msgid "The result of your search" +msgstr "Výsledky vášho hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Search Analysis" +msgstr "Analýza hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:96 +msgid "Graphical analysis of your search result" +msgstr "Grafické analýzy výsledkov vášho hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +msgid "HTML files" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:127 +#, fuzzy +msgid "Save Search Analysis" +msgstr "Analýza hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:155 +#, fuzzy +msgid "BibleTime Search Analysis" +msgstr "Analýza hľadania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:156 +#, fuzzy +msgid "Search Text :" +msgstr "Hľadaj text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:157 +#, fuzzy +msgid "Search Type :" +msgstr "Hľadaj text" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:158 +#, fuzzy +msgid "Search Scope:" +msgstr "Rozsah vyhľadávania" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:161 +msgid "Book" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:162 +msgid "Total Hits" +msgstr "" + +#: bibletime/frontend/searchdialog/csearchdialog.cpp:186 +msgid "Created by" +msgstr "" + +#: bibletime/dummy.h:112 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:44 +#: bibletime/tooltipdef.h:112 +msgid "No scope" +msgstr "Bez rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:48 +msgid "Last result" +msgstr "Posledné výsledky" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:52 +msgid "Use scope" +msgstr "Použi rozsah" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:63 +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:223 +msgid "Choose custom range" +msgstr "Vyberte vlastný oblasť" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:67 +msgid "Edit ranges" +msgstr "Upravenie rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:96 +msgid "Old testament" +msgstr "Starý zákon" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:97 +msgid "Moses/Pentateuch/Torah" +msgstr "Mojžišove knihy/Pentateuch/Tóra" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:98 +msgid "History" +msgstr "História" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:99 +msgid "Prophets" +msgstr "Proroci" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:100 +msgid "New testament" +msgstr "Nový zákon" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:101 +msgid "Gospels" +msgstr "Evanjeliá" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:102 +msgid "Letters/Epistels" +msgstr "Listy/Epištoly" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:103 +msgid "Paul's Epistels" +msgstr "Pavlove Epištoly" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:224 +msgid "Define range text" +msgstr "Definutje rozsah textu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:225 +msgid "Range parsing results" +msgstr "Rozsah analyzovania výsledkov" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Range name" +msgstr "Meno rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogscope.cpp:289 +msgid "Please enter a name for the new range" +msgstr "Vložte meno nového rozsahu" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:117 +msgid "Modules" +msgstr "Moduly" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:124 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:128 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:131 +msgid "Search result" +msgstr "Výsledky hľadania" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:125 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:132 +msgid "Search result with text" +msgstr "Výsledky hľadania v texte" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:152 +#, fuzzy +msgid "Appending keys to the printing queue ..." +msgstr "Pridaj do tlačovej fronty..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:166 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:195 +#, fuzzy +msgid "Copying search result to clipboard..." +msgstr "Kopíruj do schránky" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:181 +#, fuzzy +msgid "Saving the search result ..." +msgstr "Ulož výsledky hľadania..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:209 +#, fuzzy +msgid "Saving the search result..." +msgstr "Ulož výsledky hľadania..." + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:260 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:267 +msgid "Key" +msgstr "referenciu" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:261 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:264 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:268 +msgid "Key with text" +msgstr "referenciu s textom" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "" +"*.txt | Text files\n" +" *.* | All files (*.*)" +msgstr "" +"*.txt | Textové súbory\n" +" *.* | Všetky súbory (*.*)" + +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:385 +#: bibletime/frontend/searchdialog/csearchdialogresultview.cpp:414 +msgid "Save key ..." +msgstr "Ulož referenciu..." + +#: bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp:50 +msgid "" +"Choose the module you want to use for the search. The tree on the left " +"contains all available modules, the tree on the right the modules for the " +"search. Use the two arrow buttons to add or remove modules from the right " +"tree." +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:79 +msgid "The file does already exist!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:80 +msgid "Do you want to overwrite it?" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:96 +msgid "Sorry! But the file couldn't be saved!" +msgstr "" + +#: bibletime/frontend/ctoolclass.cpp:97 +msgid "Please check permissions etc. !" +msgstr "" + +#: bibletime/frontend/cexportmanager.cpp:41 +#: bibletime/frontend/cexportmanager.cpp:55 +#: bibletime/frontend/cexportmanager.cpp:93 +msgid "Save search result ..." +msgstr "Ulož výsledky hľadania..." + +#: bibletime/frontend/coptionsdialog.cpp:68 +msgid "Optionsdialog" +msgstr "Nastavenia" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#: bibletime/frontend/coptionsdialog.cpp:314 +#, fuzzy +msgid "Create new profile" +msgstr "Vytvor novú zložku" + +#: bibletime/frontend/coptionsdialog.cpp:122 +#, fuzzy +msgid "Please enter the name of the new profile" +msgstr "Prosím vložte meno zložky!" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Rename profile" +msgstr "Zmaž vybrané položky" + +#: bibletime/frontend/coptionsdialog.cpp:146 +#, fuzzy +msgid "Please enter the new name of the profile" +msgstr "Prosím vložte meno zložky!" + +#: bibletime/frontend/coptionsdialog.cpp:170 +#, fuzzy +msgid "Startup" +msgstr "Zobraz štartovacie logo" + +#: bibletime/frontend/coptionsdialog.cpp:174 +msgid "Show tip of the day" +msgstr "Ukáž tip dňa" + +#: bibletime/frontend/coptionsdialog.cpp:184 +msgid "Show startuplogo" +msgstr "Zobraz štartovacie logo" + +#: bibletime/frontend/coptionsdialog.cpp:193 +msgid "Restore windows in workspace area" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:210 +#, fuzzy +msgid "Choose fonts" +msgstr "Vyber písmo" + +#: bibletime/frontend/coptionsdialog.cpp:210 +msgid "" +"The fonts you can choose here are used in the display windows. Use the drop-" +"down box below to choose the area of application. Then select a font for it. " +"Make sure the charset \"iso10646-1\" is available for the selected Unicode " +"font.!" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:225 +#, fuzzy +msgid "The quick brown fox jumps over the lazy dog" +msgstr "Rýchla červená líška preskočila lenivého psa." + +#: bibletime/frontend/coptionsdialog.cpp:238 +msgid "Colors" +msgstr "Farby" + +#: bibletime/frontend/coptionsdialog.cpp:245 +#, fuzzy +msgid "Choose colors" +msgstr "Vyberte moduly" + +#: bibletime/frontend/coptionsdialog.cpp:246 +msgid "" +"Choose the colors to change the look of the display windows to your own " +"preferences. Some options like \"Words of Jesus\" do only apply to texts " +"which support this special feature." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:252 +msgid "Text" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:257 +msgid "Background" +msgstr "Pozadie" + +#: bibletime/frontend/coptionsdialog.cpp:262 +#, fuzzy +msgid "Highlighted verse" +msgstr "Označený verš" + +#: bibletime/frontend/coptionsdialog.cpp:267 +#, fuzzy +msgid "Hyperlinks" +msgstr "Spusti tlač" + +#: bibletime/frontend/coptionsdialog.cpp:277 +msgid "Strong's numbers" +msgstr "Strongové čísla" + +#: bibletime/frontend/coptionsdialog.cpp:282 +msgid "Morphologic tags" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:287 +msgid "Words of Jesus" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:297 +#, fuzzy +msgid "Profiles" +msgstr "Uprav záznam..." + +#: bibletime/frontend/coptionsdialog.cpp:302 +#, fuzzy +msgid "Manage your profiles" +msgstr "Nastavte farby v BibleTime" + +#: bibletime/frontend/coptionsdialog.cpp:303 +msgid "" +"Profiles define the appereance of the work area, for example which windows " +"are open and which texts should displayed in these windows. Don't forget " +"that new profiles only work after you've saved something in them." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:318 +#, fuzzy +msgid "Delete selected profile" +msgstr "Zmaže vybrané položky." + +#: bibletime/frontend/coptionsdialog.cpp:322 +#, fuzzy +msgid "Rename selected profile" +msgstr "Zmaž vybrané položky" + +#: bibletime/frontend/coptionsdialog.cpp:340 +msgid "Accelerators" +msgstr "Nastaviť klávesy" + +#: bibletime/frontend/coptionsdialog.cpp:345 +msgid "Application wide" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:368 +#, fuzzy +msgid "Bible windows" +msgstr "Okno Biblie" + +#: bibletime/frontend/coptionsdialog.cpp:381 +#, fuzzy +msgid "Commentary windows" +msgstr "Okno komentárov" + +#: bibletime/frontend/coptionsdialog.cpp:394 +#, fuzzy +msgid "Lexicon windows" +msgstr "Okno lexikónu" + +#: bibletime/frontend/coptionsdialog.cpp:408 +#, fuzzy +msgid "Book windows" +msgstr "Okno Biblie" + +#: bibletime/frontend/coptionsdialog.cpp:422 +msgid "Sword" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:425 +msgid "General" +msgstr "Všeobecné" + +#: bibletime/frontend/coptionsdialog.cpp:431 +#: bibletime/frontend/coptionsdialog.cpp:439 +msgid "Use key cache for lexicons" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:432 +msgid "" +"BibleTime can create a key cache for lexicons, which speeds up opening large " +"lexicon modules a lot. However these files consume some disk space (usually " +"not much), and reside in $KDEHOME/share/apps/bibletime/cache." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:447 +msgid "Scrolling behaviour" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:448 +msgid "" +"The down arrow moves to the next verse by default. Uncheck this box " +"if you want it to move to the previous verse." +msgstr "" + +#: bibletime/dummy.h:134 bibletime/frontend/coptionsdialog.cpp:454 +#: bibletime/tooltipdef.h:134 +msgid "Use down arrow to scroll to next verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:461 +#, fuzzy +msgid "Specify a language for biblical booknames" +msgstr "Jazyk pre názvy kníh" + +#: bibletime/frontend/coptionsdialog.cpp:462 +msgid "" +"Sword has a number of locales available which can be used to " +"internationalize the booknames of the bible. You can specify which locale to " +"choose. If you want to create a new locale, see http://www.crosswire.org/" +"sword/develop for details." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:469 +msgid "Language for booknames" +msgstr "Jazyk pre názvy kníh" + +#: bibletime/frontend/coptionsdialog.cpp:477 +msgid "English" +msgstr "Anglický jazyk" + +#: bibletime/frontend/coptionsdialog.cpp:495 +#: bibletime/frontend/coptionsdialog.cpp:500 +#, fuzzy +msgid "Default modules" +msgstr "Použité moduly" + +#: bibletime/frontend/coptionsdialog.cpp:500 +msgid "" +"Default modules are used, when no module is specified. This may happen with " +"references into modules like Bibles or Lexicons." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:505 +msgid "Default Bible" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:513 +#, fuzzy +msgid "Default Commentary" +msgstr "Komentáre" + +#: bibletime/frontend/coptionsdialog.cpp:522 +#, fuzzy +msgid "Default Lexicon" +msgstr "Lexikóny" + +#: bibletime/frontend/coptionsdialog.cpp:530 +#, fuzzy +msgid "Default Hebrew Strong's Lexicon" +msgstr "Lexikóny" + +#: bibletime/frontend/coptionsdialog.cpp:538 +#, fuzzy +msgid "Default Greek Strong's Lexicon" +msgstr "Lexikóny" + +#: bibletime/frontend/coptionsdialog.cpp:546 +#, fuzzy +msgid "Default Hebrew Morphological Lexicon" +msgstr "Lexikóny" + +#: bibletime/frontend/coptionsdialog.cpp:553 +#, fuzzy +msgid "Default Greek Morphological Lexicon" +msgstr "Lexikóny" + +#: bibletime/frontend/coptionsdialog.cpp:636 +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "Filter settings" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:639 +msgid "" +"Filters control the appereance of the text in the display windows. Here you " +"can choose the default settings of the various filter settings. You can " +"change the settings in each display window, too." +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:643 +msgid "Show line break after each verse" +msgstr "" + +#: bibletime/frontend/coptionsdialog.cpp:648 +#, fuzzy +msgid "Show verse numbers" +msgstr "Zobraz Strongové čísla" + +#: bibletime/frontend/coptionsdialog.cpp:693 +msgid "Use textual variants" +msgstr "" + +#: bibletime/bibletime_slots.cpp:285 +msgid "Printing..." +msgstr "Tlačenie..." + +#: bibletime/bibletime_slots.cpp:285 +msgid "Abort printing" +msgstr "Zruš tlač" + +#: bibletime/rc-dummy.cpp:2 +msgid "&Main index" +msgstr "&Hlavný index" + +#: bibletime/rc-dummy.cpp:5 +msgid "&Window" +msgstr "" + +#: bibletime/tips-dummy.cpp:3 +msgid "" +"This is BibleTime 1.1!
\n" +"This version of BibleTime should have reached the state where it could\n" +"be called stable, useful and user friendly!
\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:9 +msgid "The Bible was written so we could believe in Jesus. (John 20:31)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:13 +msgid "" +"BibleTime 1.1 includes a really useful handbook written by Fred Saalbach.\n" +"To read it choose the item \"Handbook\" in the \"Help\" menu of BibleTime.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:18 +msgid "" +"No one is allowed by God to add anything to or take anything away from the " +"Word. (Revelation 22:18)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:22 +msgid "The Bible is like a mirror. (James 1:23)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:26 +msgid "" +"BibleTime does include a Bible Study HowTo! \n" +"It was written by Bob Harman and is a great help how to study the Bible.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:31 +msgid "" +"The Bible has the power to \"comfort the afflicted\" and \"afflict the " +"comfortable\". (Revelation 10:10)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:35 +msgid "" +"You can save, print and copy the whole search result by pressing the right " +"mouse button on the icon of the searched module in the search dialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:39 +msgid "The Bible is our only spiritual weapon. (Ephesians 6:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:43 +msgid "" +"To get the number of verses in the Bible search for a space in the module.\n" +"The search analysis shows you the number of verses of each book.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:48 +msgid "That the Bible is truth. (John 17:17)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:52 +msgid "" +"If you would like to create a set of bookmarks around a specific topic with " +"comments containing what the Lord told you here, it's best to\n" +"make bookmarks from your personal commentary.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:57 +msgid "" +"The scriptures give us the wisdom that leads to salvation. (2 Timothy 3:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:61 +msgid "" +"It's possible to insert the text of bookmarks and references to verses or " +"lexicon entries into the personal commentary editor by dropping them there.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:65 +msgid "" +"By studying the Bible you will have no reason to stand ashamed before God. " +"(2 Timothy 2:15)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:69 +msgid "" +"To lookup the meaning of the original hebrew or greek word in a Bible " +"supporting Strong's numbers, switch them on and \n" +"click on the strong number. Now a new window showing the strong number with\n" +"it's explanation is shown. If your favourite translation doesn't support " +"Strong's numbers please refer to an alternate translation for the number of " +"the corresponding word.\n" +"Make sure you have set the default modules in the optionsdialog.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:76 +msgid "" +"If you want to use a commentary as a topical reference, search it for terms " +"your topic is about.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:80 +msgid "" +"In the beginning was the Word, the Word was with God, and the Word was God. " +"(John 1:1)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:84 +msgid "" +"We will be judged on the last day by the words Jesus spoke. (John 12:48)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:88 +msgid "" +"If you want to find the full set of verses or entries on a area of content, " +"you should use the regular expression \"x | y | z\" for searching, which is " +"equivalent to \"x OR y OR z\", e.g. \"pray | worship | supplicate\".\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:92 +msgid "" +"If you are searching a verse you know only fuzzy or in a different " +"translation search for the most probable terms in multiple Bible " +"translations at the same time.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:96 +msgid "" +"God's Word can be a lamp to your feet and a light to your path. (Psalm " +"119:105)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:100 +msgid "" +"If you want to search a word in a foreign module (e.g. greek or hebrew), " +"open a display window and choose a chapter or an entry which contains this " +"word.\n" +"Now double click on it and drag the selected word on the foreign module in " +"the main index.\n" +"The search dialog will be opened with the word in the edit line.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:106 +msgid "" +"The Word of God will not return to Him without accomplishing its purpose. " +"(Isaiah 55:11)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:110 +msgid "" +"Foreign modules (e.g. greek or hebrew) do often require a special unicode " +"font to read them.\n" +"Many of the fonts are available on www.crosswire.org or on the Sword CD.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:115 +msgid "" +"Did you know that the first book ever printed on a printing press was the " +"Bible. (by Johann Gutenberg, in 1492)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:119 +msgid "" +"God has already given to us everything pertaining to life and godliness. (2 " +"Peter 1:3)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:123 +msgid "" +"All important elements of BibleTime's graphical user interface have a " +"tooltip and a \"What's this?\" help.
\n" +"To read the \"What's this?\" help press the keys SHIFT+F1 and click on the " +"part.\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:128 +msgid "" +"The Word of God is living, active, and sharper than any two-edged sword. " +"(Hebrews 4:12)\n" +msgstr "" + +#: bibletime/tips-dummy.cpp:132 +msgid "" +"You are using a program that has been written for the glory of God.
May " +"He bless you as you study His Word!\n" +msgstr "" + +#: bibletime/dummy.h:19 bibletime/tooltipdef.h:19 +msgid "Clear the printing queue" +msgstr "Vyčisti tlačovú frontu" + +#: bibletime/dummy.h:20 bibletime/tooltipdef.h:20 +msgid "Open the printerdialog" +msgstr "Otvor dialóg pre tlač" + +#: bibletime/dummy.h:21 bibletime/tooltipdef.h:21 +msgid "Close BibleTime" +msgstr "Ukonči BibleTime" + +#: bibletime/dummy.h:23 bibletime/tooltipdef.h:23 +msgid "Search in modules" +msgstr "Hľadaj v moduloch" + +#: bibletime/dummy.h:24 bibletime/tooltipdef.h:24 +msgid "Remove selected items" +msgstr "Zmaž vybrané položky" + +#: bibletime/dummy.h:27 bibletime/tooltipdef.h:27 +msgid "Show main index" +msgstr "Zobraz hlavný index" + +#: bibletime/dummy.h:28 bibletime/tooltipdef.h:28 +msgid "Show tooolbar" +msgstr "Zobraz panel nástrojov" + +#: bibletime/dummy.h:30 bibletime/tooltipdef.h:30 +msgid "Show Strong's numbers" +msgstr "Zobraz Strongové čísla" + +#: bibletime/dummy.h:32 bibletime/tooltipdef.h:32 +msgid "Tile windows" +msgstr "Dláždi okná" + +#: bibletime/dummy.h:33 bibletime/tooltipdef.h:33 +msgid "Automatically tile windows" +msgstr "Automaticky dláždi okná" + +#: bibletime/dummy.h:34 bibletime/tooltipdef.h:34 +msgid "Cascade windows" +msgstr "Kaskáduj okná" + +#: bibletime/dummy.h:35 bibletime/tooltipdef.h:35 +msgid "Automatically cascade windows" +msgstr "Automaticky kaskáduj okná" + +#: bibletime/dummy.h:36 bibletime/tooltipdef.h:36 +msgid "Close all windows" +msgstr "Zavri všetky okná" + +#: bibletime/dummy.h:37 bibletime/dummy.h:227 bibletime/tooltipdef.h:37 +#: bibletime/whatsthisdef.h:46 +msgid "Save current profile" +msgstr "" + +#: bibletime/dummy.h:38 bibletime/tooltipdef.h:38 +#, fuzzy +msgid "Edit profiles" +msgstr "Uprav záznam..." + +#: bibletime/dummy.h:39 bibletime/dummy.h:229 bibletime/tooltipdef.h:39 +#: bibletime/whatsthisdef.h:48 +#, fuzzy +msgid "Load a new profile" +msgstr "Vytvor novú zložku" + +#: bibletime/dummy.h:40 bibletime/dummy.h:230 bibletime/tooltipdef.h:40 +#: bibletime/whatsthisdef.h:49 +#, fuzzy +msgid "Toggle fullscreen mode" +msgstr "Aktuálny modul:" + +#: bibletime/dummy.h:42 bibletime/tooltipdef.h:42 +msgid "Edit toolbar" +msgstr "Uprav panel nástrojov" + +#: bibletime/dummy.h:45 bibletime/tooltipdef.h:45 +msgid "BibleTime's handbook" +msgstr "Príručka k BibleTime" + +#: bibletime/dummy.h:46 bibletime/tooltipdef.h:46 +msgid "BibleTime's installation documentation" +msgstr "" + +#: bibletime/dummy.h:47 bibletime/tooltipdef.h:47 +#, fuzzy +msgid "BibleTime's Bible study HowTo" +msgstr "Biblické štúdium Ako..." + +#: bibletime/dummy.h:48 bibletime/tooltipdef.h:48 +msgid "Enter \"What's this?\" mode" +msgstr "Vstúp do módu \"Čo je toto?\"" + +#: bibletime/dummy.h:49 bibletime/tooltipdef.h:49 +msgid "Send bugreport" +msgstr "Pošli správu o chybe" + +#: bibletime/dummy.h:50 bibletime/tooltipdef.h:50 +#, fuzzy +msgid "Show daily tips at startup" +msgstr "Zobraz tip dňa" + +#: bibletime/dummy.h:51 bibletime/tooltipdef.h:51 +msgid "About BibleTime" +msgstr "O BibleTime" + +#: bibletime/dummy.h:52 bibletime/tooltipdef.h:52 +msgid "About KDE" +msgstr "O KDE" + +#: bibletime/dummy.h:56 bibletime/tooltipdef.h:56 +msgid "The main index" +msgstr "Hlavný index" + +#: bibletime/dummy.h:62 bibletime/tooltipdef.h:62 +msgid "Add bookmark to printing queue" +msgstr "Pridaj záložku do tlačovej fronty" + +#: bibletime/dummy.h:67 bibletime/tooltipdef.h:67 +msgid "The working area" +msgstr "Pracovná oblasť" + +#: bibletime/dummy.h:69 bibletime/tooltipdef.h:69 +msgid "Show the next entry" +msgstr "Zobraz ďalší záznam" + +#: bibletime/dummy.h:70 bibletime/tooltipdef.h:70 +msgid "Show the previous entry" +msgstr "Zobraz predchádzajúci záznam" + +#: bibletime/dummy.h:71 bibletime/tooltipdef.h:71 +#, fuzzy +msgid "Jump to the next verse" +msgstr "Skoč na ďalší verš" + +#: bibletime/dummy.h:72 bibletime/tooltipdef.h:72 +#, fuzzy +msgid "Jump to the previous verse" +msgstr "Skoč na predchádzajúci verš" + +#: bibletime/dummy.h:73 bibletime/tooltipdef.h:73 +#, fuzzy +msgid "Show the next chapter" +msgstr "Zobraz nasledujúcu kapitolu" + +#: bibletime/dummy.h:74 bibletime/tooltipdef.h:74 +#, fuzzy +msgid "Show the previous chapter" +msgstr "Zobraz predchádzajúcu kapitolu" + +#: bibletime/dummy.h:75 bibletime/tooltipdef.h:75 +#, fuzzy +msgid "Show the next book" +msgstr "Zobraz ďalšiu knihu" + +#: bibletime/dummy.h:76 bibletime/tooltipdef.h:76 +#, fuzzy +msgid "Show the previous book" +msgstr "Zobraz predchádzajúcu knihu" + +#: bibletime/dummy.h:77 bibletime/tooltipdef.h:77 +msgid "List of books" +msgstr "Zoznam kníh" + +#: bibletime/dummy.h:78 bibletime/tooltipdef.h:78 +msgid "List of chapters" +msgstr "Zoznam kapitol" + +#: bibletime/dummy.h:79 bibletime/tooltipdef.h:79 +msgid "List of verses" +msgstr "Zoznam veršov" + +#: bibletime/dummy.h:80 bibletime/tooltipdef.h:80 +msgid "List of entries" +msgstr "Zoznam záznamov" + +#: bibletime/dummy.h:81 bibletime/tooltipdef.h:81 +msgid "Scroll through the list" +msgstr "Posun cez zoznam" + +#: bibletime/dummy.h:82 bibletime/tooltipdef.h:82 +msgid "Edit this entry" +msgstr "Uprav tento záznam" + +#: bibletime/dummy.h:83 bibletime/tooltipdef.h:83 +msgid "Save this comment" +msgstr "Ulož tento komentár" + +#: bibletime/dummy.h:84 bibletime/tooltipdef.h:84 +msgid "Delete this comment" +msgstr "Zmaž tento komentár" + +#: bibletime/dummy.h:85 bibletime/tooltipdef.h:85 +msgid "Comment up to" +msgstr "Komentuj po:" + +#: bibletime/dummy.h:86 bibletime/tooltipdef.h:86 +msgid "Set bold" +msgstr "Vyznač tucným" + +#: bibletime/dummy.h:87 bibletime/tooltipdef.h:87 +msgid "Set italic" +msgstr "Vyznač kurzívou" + +#: bibletime/dummy.h:88 bibletime/tooltipdef.h:88 +msgid "Set underlined" +msgstr "Podčiarkni" + +#: bibletime/dummy.h:89 bibletime/tooltipdef.h:89 +msgid "Set font" +msgstr "Vyberte typ písma" + +#: bibletime/dummy.h:90 bibletime/tooltipdef.h:90 +msgid "Set the color" +msgstr "Vyberte farby" + +#: bibletime/dummy.h:91 bibletime/tooltipdef.h:91 +msgid "Set the fontsize" +msgstr "Zvoľte veľkosť písma" + +#: bibletime/dummy.h:93 bibletime/tooltipdef.h:93 +msgid "Synchronize with Bible windows" +msgstr "Synchronizuj s oknom biblie" + +#: bibletime/dummy.h:96 bibletime/tooltipdef.h:96 +msgid "Save as HTML" +msgstr "Ulož ako HTML..." + +#: bibletime/dummy.h:98 bibletime/tooltipdef.h:98 +msgid "Copy to clipboard" +msgstr "Kopíruj do schránky" + +#: bibletime/dummy.h:101 bibletime/tooltipdef.h:101 +#, fuzzy +msgid "Choose the modules to search in" +msgstr "Vložte moduly na prehľadávanie" + +#: bibletime/dummy.h:102 bibletime/tooltipdef.h:102 +msgid "Add the selected module to the list" +msgstr "Pridaj zovolený modul do zoznamu" + +#: bibletime/dummy.h:103 bibletime/tooltipdef.h:103 +msgid "Remove the selected module from the list" +msgstr "Odstráň zvolený modul zo zoznamu" + +#: bibletime/dummy.h:104 bibletime/tooltipdef.h:104 +msgid "List of modules used for the search" +msgstr "Zoznam modulov, ktoré sa použijú pri hľadaní" + +#: bibletime/dummy.h:106 bibletime/tooltipdef.h:106 +#, fuzzy +msgid "Search for this text" +msgstr "Prehľadaj tento text" + +#: bibletime/dummy.h:107 bibletime/tooltipdef.h:107 +msgid "Search multiple words" +msgstr "Hľadaj zložené slová" + +#: bibletime/dummy.h:108 bibletime/tooltipdef.h:108 +msgid "Exact match" +msgstr "Presné hľadanie" + +#: bibletime/dummy.h:109 bibletime/tooltipdef.h:109 +msgid "Search with GNU regular expressions" +msgstr "Hľadaj s regulárnymi výrazmi" + +#: bibletime/dummy.h:110 bibletime/tooltipdef.h:110 +msgid "Search case sensitive" +msgstr "Rozlišovať veľkosť písmen" + +#: bibletime/dummy.h:113 bibletime/tooltipdef.h:113 +msgid "Last search result" +msgstr "Posledné výsledky hľadania" + +#: bibletime/dummy.h:114 bibletime/tooltipdef.h:114 +#, fuzzy +msgid "Use custom scope" +msgstr "Použi vlastný rozsah" + +#: bibletime/dummy.h:115 bibletime/tooltipdef.h:115 +msgid "Add a new scope" +msgstr "Pridaj nový rozsah" + +#: bibletime/dummy.h:116 bibletime/tooltipdef.h:116 +msgid "Delete this search scope" +msgstr "Odstráň tento rozsah" + +#: bibletime/dummy.h:117 bibletime/dummy.h:307 bibletime/tooltipdef.h:117 +#: bibletime/whatsthisdef.h:126 +msgid "Edit and define your search scopes" +msgstr "Upravte a definujte svoj rozsah hľadania" + +#: bibletime/dummy.h:118 bibletime/tooltipdef.h:118 +msgid "Choose a search scope from the list" +msgstr "Vyberte rozsah hľadania zo zoznamu" + +#: bibletime/dummy.h:119 bibletime/tooltipdef.h:119 +msgid "Enter your own search scope" +msgstr "Vložte soj vlastný rozsah hľadania" + +#: bibletime/dummy.h:120 bibletime/tooltipdef.h:120 +msgid "Parsed result" +msgstr "Analyzuj výsledky" + +#: bibletime/dummy.h:121 bibletime/tooltipdef.h:121 +msgid "Close this dialog" +msgstr "Ukonči dialóg" + +#: bibletime/dummy.h:123 bibletime/tooltipdef.h:123 +msgid "Used modules" +msgstr "Použité moduly" + +#: bibletime/dummy.h:124 bibletime/tooltipdef.h:124 +msgid "Items found" +msgstr "Nájdené položky" + +#: bibletime/dummy.h:125 bibletime/tooltipdef.h:125 +msgid "Preview" +msgstr "Náhľad" + +#: bibletime/dummy.h:127 bibletime/tooltipdef.h:127 +#, fuzzy +msgid "Graphical Search Analysis" +msgstr "Graficka analýza" + +#: bibletime/dummy.h:131 bibletime/tooltipdef.h:131 +msgid "Show daily tip" +msgstr "Zobraz tip dňa" + +#: bibletime/dummy.h:132 bibletime/tooltipdef.h:132 +msgid "List of languages" +msgstr "Zoznam jazykov" + +#: bibletime/dummy.h:133 bibletime/tooltipdef.h:133 +#, fuzzy +msgid "Show start-up logo" +msgstr "Zobraz štartovacie logo" + +#: bibletime/dummy.h:135 bibletime/tooltipdef.h:135 +msgid "Restore the windows in the workspace on startup" +msgstr "" + +#: bibletime/dummy.h:137 bibletime/tooltipdef.h:137 +msgid "Use cache files for the lexicon entries" +msgstr "" + +#: bibletime/dummy.h:138 bibletime/tooltipdef.h:138 +msgid "The default bible used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:139 bibletime/tooltipdef.h:139 +msgid "The default commentary used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:140 bibletime/tooltipdef.h:140 +msgid "The default lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:141 bibletime/tooltipdef.h:141 +msgid "The default Hebrew lexicon used in the workspace are" +msgstr "" + +#: bibletime/dummy.h:142 bibletime/tooltipdef.h:142 +msgid "The default Greek lexicon used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:143 bibletime/tooltipdef.h:143 +msgid "" +"The default Morphological lexicon for Hebrew texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:144 bibletime/tooltipdef.h:144 +msgid "" +"The default Morphological lexicon for Greek texts used in the workspace area" +msgstr "" + +#: bibletime/dummy.h:147 bibletime/tooltipdef.h:147 +msgid "Set keyboard accelerators" +msgstr "Nastav klávesové skratky" + +#: bibletime/dummy.h:149 bibletime/tooltipdef.h:149 +msgid "Choose the area of application" +msgstr "Zvoľte oblasť aplikácie" + +#: bibletime/dummy.h:150 bibletime/dummy.h:337 bibletime/tooltipdef.h:150 +#: bibletime/whatsthisdef.h:156 +msgid "Choose a font" +msgstr "Zvoľte typ písma" + +#: bibletime/dummy.h:152 bibletime/tooltipdef.h:152 +msgid "Color of the background" +msgstr "Farba pozadia" + +#: bibletime/dummy.h:153 bibletime/tooltipdef.h:153 +msgid "Color of the highlighted verse" +msgstr "Farba označeného verša" + +#: bibletime/dummy.h:155 bibletime/tooltipdef.h:155 +#, fuzzy +msgid "Keyboard accelerators used by all display windows" +msgstr "Toto je farba pozadia, ktorá je použitá pre zobrazovaní okien." + +#: bibletime/dummy.h:156 bibletime/tooltipdef.h:156 +msgid "Keyboard accelerators used by Bible windows" +msgstr "" + +#: bibletime/dummy.h:157 bibletime/tooltipdef.h:157 +msgid "Keyboard accelerators used by commentary windows" +msgstr "" + +#: bibletime/dummy.h:158 bibletime/tooltipdef.h:158 +msgid "Keyboard accelerators used by lexicon windows" +msgstr "" + +#: bibletime/dummy.h:161 bibletime/tooltipdef.h:161 +msgid "Start printing" +msgstr "Spusti tlač" + +#: bibletime/dummy.h:162 bibletime/tooltipdef.h:162 +#, fuzzy +msgid "Preview print job" +msgstr "Aplikácia pre náhľad:" + +#: bibletime/dummy.h:164 bibletime/tooltipdef.h:164 +msgid "Open help" +msgstr "Otvor pomoc" + +#: bibletime/dummy.h:167 bibletime/tooltipdef.h:167 +msgid "List of print items" +msgstr "Zoznam položiek na tlačenie" + +#: bibletime/dummy.h:168 bibletime/tooltipdef.h:168 +msgid "Move item up" +msgstr "Posuň položku hore" + +#: bibletime/dummy.h:169 bibletime/tooltipdef.h:169 +msgid "Move item down" +msgstr "Posuň položku dole" + +#: bibletime/dummy.h:170 bibletime/tooltipdef.h:170 +msgid "Delete items" +msgstr "Zmaž položky" + +#: bibletime/dummy.h:171 bibletime/tooltipdef.h:171 +msgid "Insert a page break" +msgstr "Vlož koniec strany" + +#: bibletime/dummy.h:173 bibletime/tooltipdef.h:173 +msgid "Page borders" +msgstr "Okraje strany" + +#: bibletime/dummy.h:174 bibletime/tooltipdef.h:174 +msgid "Left border" +msgstr "Ľavý okraj" + +#: bibletime/dummy.h:175 bibletime/tooltipdef.h:175 +msgid "Right border" +msgstr "Pravý okraj" + +#: bibletime/dummy.h:176 bibletime/tooltipdef.h:176 +msgid "Upper border" +msgstr "Horná hranica" + +#: bibletime/dummy.h:177 bibletime/tooltipdef.h:177 +msgid "Lower border" +msgstr "Spodná hranica" + +#: bibletime/dummy.h:178 bibletime/tooltipdef.h:178 +#, fuzzy +msgid "List of print styles" +msgstr "Zoznam položiek na tlačenie" + +#: bibletime/dummy.h:179 bibletime/tooltipdef.h:179 +#, fuzzy +msgid "Delete the selected style" +msgstr "Zmaže vybrané položky." + +#: bibletime/dummy.h:180 bibletime/tooltipdef.h:180 +#, fuzzy +msgid "Edit the selected style" +msgstr "Zmaže vybrané položky." + +#: bibletime/dummy.h:181 bibletime/tooltipdef.h:181 +msgid "Create a new printing style" +msgstr "Vytvor nový tlačový štýl" + +#: bibletime/dummy.h:209 bibletime/whatsthisdef.h:28 +#, fuzzy +msgid "" +"Clear the print queue of BibleTime. All items will be removed from the list " +"and the print button will be disabled." +msgstr "" +"Vyčistí tlačovú frontu v BibleTime. Všetky položky budú odstránené zo " +"zoznamu a tlačítko pre tlač bude nedostupné." + +#: bibletime/dummy.h:210 bibletime/whatsthisdef.h:29 +#, fuzzy +msgid "" +"Open the printer dialog of BibleTime. Here you can edit the print queue and " +"assign styles to the items." +msgstr "" +"Otvorí dialóg pre tlač v BibleTime, kde je možné upraviť tlačovú frontua " +"priradiť štýly k položkám." + +#: bibletime/dummy.h:211 bibletime/whatsthisdef.h:30 +msgid "Close BibleTime and save the settings." +msgstr "Ukočí BibleTime and ulož nastavenia." + +#: bibletime/dummy.h:213 bibletime/whatsthisdef.h:32 +#, fuzzy +msgid "Open the search dialog to search for text in one or more modules." +msgstr "Otvorí dialóg pre vyhľadávanie v jednom alebo viacerých moduloch." + +#: bibletime/dummy.h:214 bibletime/whatsthisdef.h:33 +#, fuzzy +msgid "" +"Remove the selected items from the main index.
If you remove a folder, " +"the subitems of it will be removed too." +msgstr "" +"Odstráni zvolené položky z hlavného indexu.
Ak odstránite zložku, položky " +"v nej budú tiež odstránené." + +#: bibletime/dummy.h:215 bibletime/whatsthisdef.h:34 +#, fuzzy +msgid "" +"Reset the main index.
All bookmarks and folders will be deleted and the " +"default folders will be restored." +msgstr "" +"Znovu nastaví hlavný index
Všetky záložky a zložky budú zmazané a " +"štandardné nastavenie bude obnovené." + +#: bibletime/dummy.h:217 bibletime/whatsthisdef.h:36 +#, fuzzy +msgid "Toggle the main index view." +msgstr "Hlavný index" + +#: bibletime/dummy.h:218 bibletime/whatsthisdef.h:37 +msgid "Toggle the main toolbar view." +msgstr "" + +#: bibletime/dummy.h:219 bibletime/whatsthisdef.h:38 +msgid "Toggle footnotes in the modules." +msgstr "" + +#: bibletime/dummy.h:220 bibletime/whatsthisdef.h:39 +#, fuzzy +msgid "Toggle Strong's numbers in the modules." +msgstr "" +"Zobrazí alebo skryje Strongové čísla v module v závislosti od aktuálneho " +"stavu." + +#: bibletime/dummy.h:222 bibletime/whatsthisdef.h:41 +#, fuzzy +msgid "Tile the open display windows." +msgstr "Uzavrie všetkyzobrazené okná." + +#: bibletime/dummy.h:223 bibletime/whatsthisdef.h:42 +#, fuzzy +msgid "Automatically tile the display windows." +msgstr "Automaticky dláždi okná" + +#: bibletime/dummy.h:224 bibletime/whatsthisdef.h:43 +#, fuzzy +msgid "Cascade the open display windows." +msgstr "Uzavrie všetkyzobrazené okná." + +#: bibletime/dummy.h:225 bibletime/whatsthisdef.h:44 +#, fuzzy +msgid "Automatically cascade the opened display windows." +msgstr "Automaticky kaskáduj okná" + +#: bibletime/dummy.h:226 bibletime/whatsthisdef.h:45 +msgid "Close all open display windows." +msgstr "Uzavrie všetkyzobrazené okná." + +#: bibletime/dummy.h:228 bibletime/whatsthisdef.h:47 +#, fuzzy +msgid "Edit profiles..." +msgstr "Uprav záznam..." + +#: bibletime/dummy.h:233 bibletime/whatsthisdef.h:52 +msgid "Open the BibleTime tool bar editor." +msgstr "" + +#: bibletime/dummy.h:234 bibletime/whatsthisdef.h:53 +msgid "" +"Open BibleTime's optionsdialog where you can set most of the preferences." +msgstr "Otvorí dialóg s nastaveniami, kde si môžete zmeniť väčšinu nastavení." + +#: bibletime/dummy.h:236 bibletime/whatsthisdef.h:55 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with BibleTime's handbook.
The handbook explains " +"how to use BibleTime in the best way." +msgstr "Otvorí KDE pomocníka s BibleTime príručkou" + +#: bibletime/dummy.h:237 bibletime/whatsthisdef.h:56 +msgid "" +"Open KDE's helpbrowser with BibleTime's installation instructions.
The " +"installation instructions explain how to set up BibleTime and the text " +"modules." +msgstr "" + +#: bibletime/dummy.h:238 bibletime/whatsthisdef.h:57 +#, fuzzy +msgid "" +"Open KDE's helpbrowser with the Bible study HowTo included with BibleTime." +"
This HowTo is an introduction how to study the Bible in an efficient way." +msgstr "Otvorí KDE pomocníka s BibleTime príručkou" + +#: bibletime/dummy.h:239 bibletime/whatsthisdef.h:58 +#, fuzzy +msgid "" +"Switch into the \"What's this?\" mode.
All important elements of " +"BibleTime's GUI offer a \"What's this?\" help message." +msgstr "" +"Prepne do \"Čo je toto?\" módu.
Všetky podstatné elementyBibleTime " +"GUI ponúkajú \"Čo je toto?\" pomoc." + +#: bibletime/dummy.h:240 bibletime/whatsthisdef.h:59 +msgid "Send a bugreport to the developers of BibleTime!" +msgstr "Pošle správu vývojarom BibleTime!" + +#: bibletime/dummy.h:241 bibletime/whatsthisdef.h:60 +msgid "" +"Show a daily tip.
The tips contain important Bible quotations and helpful " +"usage tips for BibleTime." +msgstr "" +"Zobrazí tip dňa.
Tipy obsahujú dôležité biblické citáty a užitočnétipy " +"pre používanie BibleTime." + +#: bibletime/dummy.h:242 bibletime/whatsthisdef.h:61 +msgid "Show detailed information about BibleTime." +msgstr "Zobrazí detailné informácie o BibleTime." + +#: bibletime/dummy.h:243 bibletime/whatsthisdef.h:62 +#, fuzzy +msgid "Show the \"about\" dialog of KDE 2." +msgstr "Zobrazí všeobecné informácie o KDE 2." + +#: bibletime/dummy.h:247 bibletime/whatsthisdef.h:66 +msgid "" +"This is the main index of BibleTime.
Use it to manage the installed " +"modules, to work with bookmarks, to open display windows etc.." +msgstr "" +"Toto je hlavný index BibleTime.
Používa sa na ovládanie " +"nainštalovanýchmodulov, k práci so záložkami, k otváraniiu okien atď.." + +#: bibletime/dummy.h:248 bibletime/whatsthisdef.h:67 +#, fuzzy +msgid "" +"Create a new folder in the main index.
If you press the right mouse " +"button on a folder, the new folder will become a sub-folder of it." +"
Otherwise you will create a toplevel folder." +msgstr "" +"Vytvorí novú zložku v hlavnom indexe.
Ak ste stlačili pravé tlačítko na " +"myšina zložke, nová zložka bude jeho položkou.
Inak vytvorítezložku na " +"najvyššej úrovni." + +#: bibletime/dummy.h:249 bibletime/whatsthisdef.h:68 +msgid "Change the properties of the selected folder." +msgstr "Zmení nastavenie zvolenej zložky." + +#: bibletime/dummy.h:250 bibletime/whatsthisdef.h:69 +msgid "Change the properties of the selected bookmark." +msgstr "Zmení nastavenie zvolenej záložky." + +#: bibletime/dummy.h:251 bibletime/whatsthisdef.h:70 +#, fuzzy +msgid "Import bookmarks from a file." +msgstr "Importuj záložky zo súboru." + +#: bibletime/dummy.h:252 bibletime/whatsthisdef.h:71 +msgid "" +"Export bookmarks to a file so you or other
users can import them later." +msgstr "" +"Exportuje záložky do súboru, aby ste vy alebo iný
užívateľ ich mohli " +"neskôr importovať." + +#: bibletime/dummy.h:253 bibletime/whatsthisdef.h:72 +#, fuzzy +msgid "" +"Use this to add this bookmark to BibleTime's print queue. The key, the " +"description, and the text of the key will be used for printing." +msgstr "" +"Použite tot k pridaniu záložky do tlačovej fronty BibleTime. Kľúč, popis a " +"text kľúča budú vytlačené." + +#: bibletime/dummy.h:254 bibletime/whatsthisdef.h:73 +msgid "Open a small dialog where you can unlock the selected module." +msgstr "Otvorí malý dialóg, kde môžete odomknúť zvolené moduly." + +#: bibletime/dummy.h:255 bibletime/whatsthisdef.h:74 +msgid "Open a dialog to show information about the selected module." +msgstr "Otvorí dialóg, kde sú zobrazené infomácie o zvolenom module." + +#: bibletime/dummy.h:258 bibletime/whatsthisdef.h:77 +#, fuzzy +msgid "" +"This area is the main workspace of Bibletime.
All display windows are " +"opened in this window." +msgstr "" +"Táto oblasť predstavuje pracovnú plochu BibleTime.
Všetky okná sa " +"zobrazujú tu." + +#: bibletime/dummy.h:260 bibletime/whatsthisdef.h:79 +msgid "The next entry of the module will be shown." +msgstr "Ďalší záznam modulu bude zobrazený." + +#: bibletime/dummy.h:261 bibletime/whatsthisdef.h:80 +msgid "The previous entry of the module will be shown." +msgstr "Predchádzajúci záznam modulu sa čoskoro objaví." + +#: bibletime/dummy.h:262 bibletime/whatsthisdef.h:81 +#, fuzzy +msgid "" +"For Bible texts, the next verse will be highlighted.
In commentaries, the " +"next entry will be shown." +msgstr "" +"Ak vidíte text Biblie, tak ďalší verš sa označený.
Ak čítate komentár," +"ďalší záznam sa čoskoro objaví." + +#: bibletime/dummy.h:263 bibletime/whatsthisdef.h:82 +#, fuzzy +msgid "" +"For Bible texts, the previous verse will be highlighted. In commentaries, " +"the previous entry will be shown." +msgstr "" +"Ak vidíte text Biblie, tak predchádyajúci verš bude označený. Ak čítate " +"komentár,predchádzajúci záznam sa čoskoro objaví." + +#: bibletime/dummy.h:264 bibletime/whatsthisdef.h:83 +msgid "Show the next chapter of the module. The verse will be set to \"1\"." +msgstr "Zobrazí nasledujúcu kapitolu modulu. Verš sa nastaví na \"1\"." + +#: bibletime/dummy.h:265 bibletime/whatsthisdef.h:84 +msgid "Show the previous chapter of the module. The verse will be set to \"1\"" +msgstr "Zobrazí predchádzajúcu kapitolu modulu. Verš sa nastaví na \"1\"." + +#: bibletime/dummy.h:266 bibletime/whatsthisdef.h:85 +msgid "" +"Show the next book of this module. The chapter and the verse will be set to " +"\"1\"." +msgstr "" +"Zobrazí nasledujúcu knihu modulu. Verš a kapitola budú nastavené na \"1\"." + +#: bibletime/dummy.h:267 bibletime/whatsthisdef.h:86 +msgid "" +"Show the previous book of this module. The chapter and the verse will be set " +"to \"1\"." +msgstr "" +"Zobrazí predchádzajúcu knihu modulu. Verš a kapitola budú nastavené na \"1\"." + +#: bibletime/dummy.h:268 bibletime/whatsthisdef.h:87 +msgid "This list contains the books which are available in this module." +msgstr "Zoznam obsahuje knihy, ktoré sú dostupné v tomto module." + +#: bibletime/dummy.h:269 bibletime/whatsthisdef.h:88 +msgid "" +"This list contains the chapters which are available in the current book." +msgstr "" +"Zoznam obsahuje kapitoly, ktoré sú dostupné v tomto module v aktuálnej knihe." + +#: bibletime/dummy.h:270 bibletime/whatsthisdef.h:89 +msgid "" +"This list contains the verses which are available in the current chapter." +msgstr "" +"Zoznam obsahuje verše, ktoré sú dostupné v tomto module v aktuálnej kapitole." + +#: bibletime/dummy.h:271 bibletime/whatsthisdef.h:90 +msgid "This list contains the entries of the current module." +msgstr "Zoznam obsahuje položky aktuálneho module." + +#: bibletime/dummy.h:272 bibletime/whatsthisdef.h:91 +msgid "" +"This button is useful to scroll through the entries of the list. Press the " +"button and move the mouse to increase or decrease the item." +msgstr "" +"Toto tlačítko je užitočné pri prechádzaní položkami zoznamu.Stlačte tlačítko " +"a pohybujte myšou ak chcete zvýšiť alebo znížiť položku." + +#: bibletime/dummy.h:273 bibletime/whatsthisdef.h:92 +msgid "Toggle between read-write and read-only mode of writeable modules." +msgstr "Prepína módy zapisovateľné/iba na čítanie" + +#: bibletime/dummy.h:274 bibletime/whatsthisdef.h:93 +#, fuzzy +msgid "Save new personal comments." +msgstr "Uloží vlastný komentár" + +#: bibletime/dummy.h:275 bibletime/whatsthisdef.h:94 +msgid "Clear the text and delete the entry from the module." +msgstr "Zmaže text a zmaže položku z modulu." + +#: bibletime/dummy.h:276 bibletime/whatsthisdef.h:95 +#, fuzzy +msgid "Toggle bold formatting of the selected text." +msgstr "Prepne medzi tučným a nie tučným formátovaním vybraného textu" + +#: bibletime/dummy.h:277 bibletime/whatsthisdef.h:96 +#, fuzzy +msgid "Toggle italic formatting of the selected text." +msgstr "Prepne medzi kurzívou a formátovaním nie kurzívou vybraného textu" + +#: bibletime/dummy.h:278 bibletime/whatsthisdef.h:97 +#, fuzzy +msgid "Toggle underlined formatting of the selected text." +msgstr "" +"Prepne medzi podčiarknutým a nie podčiarknutým formátovaním vybraného textu" + +#: bibletime/dummy.h:279 bibletime/whatsthisdef.h:98 +msgid "Choose a new font for the selected text." +msgstr "Vyberie nový typ písma pre vybraný text." + +#: bibletime/dummy.h:280 bibletime/whatsthisdef.h:99 +msgid "Choose a new color for the selected text." +msgstr "Vyberie farbu pre zvolený text." + +#: bibletime/dummy.h:281 bibletime/whatsthisdef.h:100 +msgid "Choose a new fontsize for the selected text." +msgstr "Vyberie veľkosť typu písma pre zvolený text." + +#: bibletime/dummy.h:283 bibletime/whatsthisdef.h:102 +msgid "" +"Synchronize the displayed verse of this module with the active Bible window." +msgstr "Synchronizuje zobrazený text tohoto modulu s oknom s aktuálnou Bibliou" + +#: bibletime/dummy.h:286 bibletime/whatsthisdef.h:105 +#, fuzzy +msgid "Save the displayed chapter as an HTML file." +msgstr "Uloží zobrazenú kapitolu ako HTML súbor" + +#: bibletime/dummy.h:287 bibletime/whatsthisdef.h:106 +msgid "Select all text." +msgstr "Označí celý text" + +#: bibletime/dummy.h:288 bibletime/whatsthisdef.h:107 +msgid "Copy the displayed text to the clipboard." +msgstr "Kopíruje zobrazený text do schránky" + +#: bibletime/dummy.h:291 bibletime/whatsthisdef.h:110 +#, fuzzy +msgid "" +"Choose the modules which will be used for the search.
Use the two buttons " +"on the right side to add or delete the modules to/from the list of used ones." +msgstr "" +"Vyberie moduly, ktore sa použijú pri hľadaní.
Použite dve tlačítkana " +"poravej strane k pridaniu alebo odobraniu modulov do/zo zoznamu." + +#: bibletime/dummy.h:292 bibletime/whatsthisdef.h:111 +#, fuzzy +msgid "Add the selected module to the list on the right." +msgstr "Pridá zvolený modul do zoznamu vľavo" + +#: bibletime/dummy.h:293 bibletime/whatsthisdef.h:112 +#, fuzzy +msgid "Remove the selected module from the list on the right side." +msgstr "Odstráni zvolený modul zo zoznamu vľavej časti" + +#: bibletime/dummy.h:294 bibletime/whatsthisdef.h:113 +msgid "The list of modules used for the search." +msgstr "Zoznam modulov použitých pri hľadaní." + +#: bibletime/dummy.h:296 bibletime/whatsthisdef.h:115 +#, fuzzy +msgid "" +"The text entered in this edit box will be searched for in all selected " +"modules." +msgstr "Text v tomto okne bude hľadaný vo všetkých moduloch." + +#: bibletime/dummy.h:297 bibletime/whatsthisdef.h:116 +#, fuzzy +msgid "" +"Select this to search for multiple words.
Each word in the edit box above " +"is searched as a single word." +msgstr "" +"Zloľte si túto možnosť ak chcete hľadať zložené slová.
Každé slovo v " +"editovacom riadku je hľadané ako samostatné slovo." + +#: bibletime/dummy.h:298 bibletime/whatsthisdef.h:117 +#, fuzzy +msgid "" +"Select this to search for exactly the same text you entered in the edit box." +msgstr "" +"Vyberte si túto možnosť, ak chcete aby vložený text bol vyhľadný tak, ako " +"ste ho vložili." + +#: bibletime/dummy.h:299 bibletime/whatsthisdef.h:118 +msgid "" +"Select this to search using standard GNU regular expressions.
Read the " +"handbook for a explanation how to use them." +msgstr "" +"Vyberte si túto možnosť, ak chcete pri vyhľadávaní použiť GNU regulárne " +"výrazy.
Prečítajte siv príručke vysvetlenie ako ich používať." + +#: bibletime/dummy.h:300 bibletime/whatsthisdef.h:119 +#, fuzzy +msgid "Activate this to use a case sensitive search." +msgstr "Aktivujte túto možnosť, ak chce aby sa brah ohľad na veľkosť písmen." + +#: bibletime/dummy.h:302 bibletime/whatsthisdef.h:121 +msgid "Select this if you want to search through all parts of the module(s)." +msgstr "" +"Vyberte si túto možnosť, ak chce vyhľadávať vo všetkých častiach modulov" + +#: bibletime/dummy.h:303 bibletime/whatsthisdef.h:122 +#, fuzzy +msgid "" +"Select this if you want to use the last search result as the search scope." +msgstr "" +"Vyberte si túto možnosť, ak chcete použiť výsledky posledného hľadania v " +"kažkom module ako rozsah hľadania" + +#: bibletime/dummy.h:304 bibletime/whatsthisdef.h:123 +msgid "Create a new search scope." +msgstr "Vytvorí nový rozsah hľadania." + +#: bibletime/dummy.h:305 bibletime/whatsthisdef.h:124 +#, fuzzy +msgid "" +"Use a custom scope for the search.
A standard set of search scopes exists." +msgstr "" +"Použije vlastné rozsahy hľadania.
Štandardné rozsahy hľadania sú tiež k " +"dispozícii." + +#: bibletime/dummy.h:306 bibletime/whatsthisdef.h:125 +msgid "Use this button to delete the chosen search scope." +msgstr "Použite toto tlaťítko, ak chcete zmazať vybraný rozsah hľadania." + +#: bibletime/dummy.h:308 bibletime/whatsthisdef.h:127 +msgid "Choose a search scope from the combo box" +msgstr "Vyberte rozsah hľadania z kombo boxu." + +#: bibletime/dummy.h:309 bibletime/whatsthisdef.h:128 +msgid "" +"Enter your own search scope.
To define a range use \"-\" (e.g. Genesis-" +"Exodus),
to seperate different ranges or keys use the semicolon (e.g. " +"Genesis;Matthew)." +msgstr "" +"Vložte svoj vlastný rozsah hľadania.
. Definujte rozsah s použitím \"-" +"\" (napr. Genesis-Exodus),
K oddeleniu jednotlivých rozsahov alebo kľúčov " +"použite podkočiarku(napr. Genesis; Matúš)." + +#: bibletime/dummy.h:310 bibletime/whatsthisdef.h:129 +msgid "" +"This list contains the parsed result of your entered scope. This result will " +"be used for the search." +msgstr "" +"Zoznam obsahuje analyzované výsledky vzmi vloženého rozsahu. Tieto výsledky " +"budúpoužité pri hľadaní." + +#: bibletime/dummy.h:311 bibletime/whatsthisdef.h:130 +msgid "Close this dialog and save the changes." +msgstr "Ukočí dialóg a uloží zmeny." + +#: bibletime/dummy.h:313 bibletime/whatsthisdef.h:132 +msgid "" +"List of modules used for the search.
Click on a module to see the search " +"result on the right side." +msgstr "" +"Zoznam modulov pouzívaných pri hľadaní.
Kliknite na modul, keď chcete " +"vidieť výsledky na pravej strane." + +#: bibletime/dummy.h:314 bibletime/whatsthisdef.h:133 +msgid "This contains the items found in the selected module." +msgstr "Toto obsahuje položky nájdené vo zvolšných moduloch." + +#: bibletime/dummy.h:315 bibletime/whatsthisdef.h:134 +msgid "This text box shows a preview of the chosen item." +msgstr "Tento textový blok zobrazuje náhľad vybraných položiek." + +#: bibletime/dummy.h:317 bibletime/whatsthisdef.h:136 +msgid "" +"Graphical analysis of your search result.
The bars show the number of " +"items found in each book of the Bible or commentary." +msgstr "" +"Grafická analýza vášho hľadania.
Stĺpce zobrazujú početpoložiek " +"nájdených v každej knihe Biblie alebo komentáry." + +#: bibletime/dummy.h:320 bibletime/whatsthisdef.h:139 +msgid "Activate this box to see a daily tip on startup." +msgstr "Aktivujte túto možnosť, ak chcete vidieť tipy dňa pri spustení." + +#: bibletime/dummy.h:321 bibletime/whatsthisdef.h:140 +msgid "" +"Contains the languages which can be used for the international booknames." +msgstr "" +"Obsahuje jazyky, ktoré môžu byť použité pri medzinárodných názvoch kníh." + +#: bibletime/dummy.h:322 bibletime/whatsthisdef.h:141 +#, fuzzy +msgid "Activate this to see the BibleTime logo on startup." +msgstr "Aktivujte túto možnosť, ak chcete vidieť tipy dňa pri spustení." + +#: bibletime/dummy.h:323 bibletime/whatsthisdef.h:142 +msgid "Check this to use the down arrow to scroll to the next verse." +msgstr "" + +#: bibletime/dummy.h:324 bibletime/whatsthisdef.h:143 +msgid "" +"Save the windows in the workspace if BibleTime is closed
and restore them " +"on the next startup. " +msgstr "" + +#: bibletime/dummy.h:326 bibletime/whatsthisdef.h:145 +msgid "" +"Activate this to let BibleTime create index files for the lexicon entries. " +"This will speed up opening the lexicons a lot, but consume some disk space. " +"Recommended." +msgstr "" + +#: bibletime/dummy.h:327 bibletime/whatsthisdef.h:146 +msgid "The default Bible is used when a hyperlink into a Bible was clicked" +msgstr "" + +#: bibletime/dummy.h:328 bibletime/whatsthisdef.h:147 +msgid "" +"The default commentary is used when a hyperlink into a commentary was clicked" +msgstr "" + +#: bibletime/dummy.h:329 bibletime/whatsthisdef.h:148 +msgid "The default lexicon is used when a hyperlink into a lexicon was clicked" +msgstr "" + +#: bibletime/dummy.h:330 bibletime/whatsthisdef.h:149 +msgid "" +"The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon " +"was clicked" +msgstr "" + +#: bibletime/dummy.h:331 bibletime/whatsthisdef.h:150 +msgid "" +"The default Greek lexicon is used when a hyperlink into a Greek lexicon was " +"clicked" +msgstr "" + +#: bibletime/dummy.h:332 bibletime/whatsthisdef.h:151 +msgid "" +"The standard morphological lexicon for Hebrew texts is used when a hyperlink " +"of a morphological tag in a Hebrew text was clicked." +msgstr "" + +#: bibletime/dummy.h:333 bibletime/whatsthisdef.h:152 +msgid "" +"The standard morphological lexicon for Greek texts is used when a hyperlink " +"of a morphological tag in a Greek text was clicked." +msgstr "" + +#: bibletime/dummy.h:335 bibletime/whatsthisdef.h:154 +#, fuzzy +msgid "Select an action and change the key binding for the action." +msgstr "Vyberte si funkciu a zmeňte pre ňu klávesovú skratku." + +#: bibletime/dummy.h:336 bibletime/whatsthisdef.h:155 +#, fuzzy +msgid "" +"Use this box to select how the font is used and change the font in the font " +"chooser." +msgstr "Vyberte si tu spsob použitia typu písma, zmeňte typ písma." + +#: bibletime/dummy.h:339 bibletime/whatsthisdef.h:158 +msgid "This is the background color used in display windows." +msgstr "Toto je farba pozadia, ktorá je použitá pre zobrazovaní okien." + +#: bibletime/dummy.h:340 bibletime/whatsthisdef.h:159 +msgid "This is the color of the highlighted verse used in display windows." +msgstr "Toto je farba označeného verša, ktorá je použitá pri zobrazení okien." + +#: bibletime/dummy.h:342 bibletime/whatsthisdef.h:161 +#, fuzzy +msgid "Set the keyboard accelerators used in all display windows" +msgstr "Toto je farba pozadia, ktorá je použitá pre zobrazovaní okien." + +#: bibletime/dummy.h:343 bibletime/whatsthisdef.h:162 +#, fuzzy +msgid "Set keyboard accelerators used in Bible windows" +msgstr "Nastav klávesové skratky" + +#: bibletime/dummy.h:344 bibletime/whatsthisdef.h:163 +#, fuzzy +msgid "Set the keyboard accelerators used in commentary windows" +msgstr "Nastav klávesové skratky" + +#: bibletime/dummy.h:345 bibletime/whatsthisdef.h:164 +#, fuzzy +msgid "Set the keyboard accelerators used in lexicon windows" +msgstr "Nastav klávesové skratky" + +#: bibletime/dummy.h:349 bibletime/whatsthisdef.h:168 +msgid "" +"Start the printing process.
The items of the list will be printed using " +"the assigned styles." +msgstr "" +"Sputí proces tlače.
Položky v zozname budú vytlačené s použitím zvoleného " +"štýlu." + +#: bibletime/dummy.h:350 bibletime/whatsthisdef.h:169 +msgid "" +"Print into a temporary file and open a postscript viewer to preview the " +"printing result." +msgstr "" +"Tlačí do dočasného súboru a otvoríaplikáciu k púrezeraniu poscriptu k " +"vytvoreniu náhľadu pre tlač." + +#: bibletime/dummy.h:351 bibletime/whatsthisdef.h:170 +#, fuzzy +msgid "Closes this dialog without doing anything else." +msgstr "" +"Ukončí tento dialóg bez akéhokoľvek zásahu do položiek alebo tlačiarne." + +#: bibletime/dummy.h:352 bibletime/whatsthisdef.h:171 +msgid "Open the online help of BibleTime." +msgstr "Otvorí online pomoc pre BibleTime." + +#: bibletime/dummy.h:354 bibletime/whatsthisdef.h:173 +#, fuzzy +msgid "This combo box contains the available print styles." +msgstr "Tento blok obsahuje dostupné štýly pre tlač." + +#: bibletime/dummy.h:355 bibletime/whatsthisdef.h:174 +msgid "This is the list which contains the available print items." +msgstr "Tento zoznam obsahuje dostupné položky pre tlač." + +#: bibletime/dummy.h:356 bibletime/whatsthisdef.h:175 +#, fuzzy +msgid "Move the selected item up one item." +msgstr "Posunie zvolenú položku o jednu položku nižšie." + +#: bibletime/dummy.h:357 bibletime/whatsthisdef.h:176 +#, fuzzy +msgid "Move the selected item down one item." +msgstr "Posunie zvolenú položku o jednu položku vyššie." + +#: bibletime/dummy.h:358 bibletime/whatsthisdef.h:177 +msgid "Delete the selected items." +msgstr "Zmaže vybrané položky." + +#: bibletime/dummy.h:359 bibletime/whatsthisdef.h:178 +#, fuzzy +msgid "" +"Inserts a page break into the list.
The printer will start a new page." +msgstr "" +"Vloží koniec strany do zoznamu.
Tlačiareň začne tlačiť na novej strane." + +#: bibletime/dummy.h:361 bibletime/whatsthisdef.h:180 +msgid "" +"This group contains the page borders of the page measured in millimeters." +msgstr "Táto skupina obsahuej ohraničenie strany v milimetroch" + +#: bibletime/dummy.h:362 bibletime/whatsthisdef.h:181 +#, fuzzy +msgid "The size of the border on the left side of the paper." +msgstr "Veľkosť ohraničenia vľavej časti papierového listu." + +#: bibletime/dummy.h:363 bibletime/whatsthisdef.h:182 +#, fuzzy +msgid "The size of the border on the right side of the paper." +msgstr "Veľkosť ohraničenia vpravej časti papierového listu." + +#: bibletime/dummy.h:364 bibletime/whatsthisdef.h:183 +#, fuzzy +msgid "The size of the border on the top of the paper." +msgstr "Veľkosť horného ohraničenia na papierovom liste." + +#: bibletime/dummy.h:365 bibletime/whatsthisdef.h:184 +#, fuzzy +msgid "The size of the border on the bottom of the paper." +msgstr "Veľkosť spodného ohraničenia na papierovom liste." + +#: bibletime/dummy.h:366 bibletime/whatsthisdef.h:185 +msgid "" +"This list contains the available printing styles.
Create your own one " +"using the \"New style\" button." +msgstr "" +"Zoznam obsahuje dostupné štýly pre tlač.
Nový môžete vytvoriťpoužitím " +"tlačítka \"Nový štyl\"." + +#: bibletime/dummy.h:367 bibletime/whatsthisdef.h:186 +msgid "Remove the selected printing style from the list." +msgstr "Odstráni zvolený štýl pre tlač zo zoznamu." + +#: bibletime/dummy.h:368 bibletime/whatsthisdef.h:187 +msgid "Change the properties of the selected printing style." +msgstr "Zmení nastavenie pre vybraný štýl pre tlač." + +#: bibletime/dummy.h:369 bibletime/whatsthisdef.h:188 +msgid "" +"Create a new printing style.
The new style will be added to the list." +msgstr "Vytvorí nový štýl pre tlač.
Nový štýl bude pridaný do zoznamu." + +#~ msgid "Save verse with text as ..." +#~ msgstr "Ulož verš s textom ako ..." + +#~ msgid "The bible window" +#~ msgstr "Okno biblie" + +#~ msgid "The commentary window" +#~ msgstr "Okno komentáru" + +#~ msgid "The lexicon window" +#~ msgstr "Okno lexikónu" + +#~ msgid "The list of printers" +#~ msgstr "Zoznam tlačiarní" + +#, fuzzy +#~ msgid "Print to a file" +#~ msgstr "Tlač do súboru" + +#~ msgid "Browse for the file" +#~ msgstr "Hľadaj súbor" + +#, fuzzy +#~ msgid "Number of copies" +#~ msgstr "&Počet kópii" + +#~ msgid "Paper type" +#~ msgstr "Typ papiera" + +#~ msgid "Paper size" +#~ msgstr "Veľkosť papiera" + +#~ msgid "This is the Bible display window" +#~ msgstr "Toto je okno, kde je zobrazená Biblia." + +#~ msgid "This is the commentary display window." +#~ msgstr "Toto je okno, kde je zobrazený komentár." + +#~ msgid "This is the lexicon display window." +#~ msgstr "Toto je okno, kde je zobrazený lexikón." + +#~ msgid "" +#~ "This is the list of available printers of your system.
Please select " +#~ "the printer you want to use for printing." +#~ msgstr "" +#~ "Toto je zoznam dostupných tlačiarní vo vašom systéme.
Prosím zvoľte " +#~ "tlačiareň, ktorú chcete použiť na tlač." + +#, fuzzy +#~ msgid "Print to a postscript file on disk." +#~ msgstr "Tlač do postscriptového súboru na disk." + +#, fuzzy +#~ msgid "Browse for the file you want to print to." +#~ msgstr "Hľadanie súboru, do ktorého chcete tlačiť." + +#, fuzzy +#~ msgid "The number of copies for printing." +#~ msgstr "Koľko kópii bude vytvorených pri tlači." + +#, fuzzy +#~ msgid "Choose the orientation of the paper." +#~ msgstr "Zvoľte orientáciu použitého papiera." + +#, fuzzy +#~ msgid "Print on the paper using \"Portrait\" orientation." +#~ msgstr "Tlač na papier s použitím orientácie na \"Na výšku\" " + +#, fuzzy +#~ msgid "Print on the paper using \"Landscape\" orientation." +#~ msgstr "Tlač na papier s použitím orientácie na \"Na šírku\" " + +#~ msgid "The type of the paper which is used for printing." +#~ msgstr "Typ papiera, ktorý bude použitý pri tlači." + +#, fuzzy +#~ msgid "The size of the paper used." +#~ msgstr "Veľkosť použitého papiera." + +#~ msgid "Search result for \"%1\" in module \"%2\"\n" +#~ msgstr "Hľadaj výsledky pre \"%1\" v module \"%2\"\n" + +#~ msgid "Printdialog" +#~ msgstr "Tlačový dialóg" + +#~ msgid "The general options for printing" +#~ msgstr "Všeobecné možnosti pre tlač" + +#~ msgid "Available printers:" +#~ msgstr "Dostupné tlačiarne:" + +#~ msgid "Host" +#~ msgstr "Hostiteľ" + +#~ msgid "Comment" +#~ msgstr "Komentár" + +#~ msgid "Print to file:" +#~ msgstr "Tlač do súboru:" + +#~ msgid "&Number of copies" +#~ msgstr "&Počet kópii" + +#~ msgid "Por&trait" +#~ msgstr "Na &výšku" + +#~ msgid "L&andscape" +#~ msgstr "N&a šírku" + +#~ msgid "Paper t&ype" +#~ msgstr "T&yp papiera" + +#~ msgid "Size: 8888mm x 8888mm" +#~ msgstr "Veľkosť: 8888mm x 8888mm" + +#~ msgid "Preview application:" +#~ msgstr "Aplikácia pre náhľad:" + +#~ msgid "*.ps | Postscript files" +#~ msgstr "*.ps | Postscript súbory" + +#~ msgid "A4" +#~ msgstr "A4" + +#~ msgid "A5" +#~ msgstr "A5" + +#~ msgid "Letter" +#~ msgstr "Letter" + +#~ msgid "Legal" +#~ msgstr "Legal" + +#~ msgid "Executive" +#~ msgstr "Executive" + +#~ msgid "Layout specific settings" +#~ msgstr "Nastavenie pre konkrétne rozloženie" + +#~ msgid "Entries" +#~ msgstr "Záznamy" + +#~ msgid "Management of BibleTime's printing queue" +#~ msgstr "Riadenie tlačovej fronty v BibleTime" + +#~ msgid "Size: %1mm x %2mm" +#~ msgstr "Veľkosť: %1mm x %2mm" + +#~ msgid "Useful tips for BibleTime" +#~ msgstr "Užitočné tipy pre BibleTime" + +#~ msgid "Run on startup" +#~ msgstr "Spusti pri štarte" + +#, fuzzy +#~ msgid "Language:" +#~ msgstr "Zoznam jazykov" + +#, fuzzy +#~ msgid "Foonotes:" +#~ msgstr "Poznámky pod čiarov" + +#~ msgid "Strong's numbers: %1
" +#~ msgstr "Strongové čislo: %1
" + +#, fuzzy +#~ msgid "Unlock key:" +#~ msgstr "Kľúč k odomknutiu" + +#, fuzzy +#~ msgid "Version:" +#~ msgstr "Verzia" + +#, fuzzy +#~ msgid "Not necessary" +#~ msgstr "Nie je nevyhnutné!" + +#~ msgid "Datapath" +#~ msgstr "Cesta k dátam (Datapath)" + +#~ msgid "" +#~ "The file does already exist!
Do you want to overwrite it?" +#~ msgstr "Súbor už existuje!
Chcete ho prepísať?
" + +#~ msgid "BibleTime - Save file as ..." +#~ msgstr "BibleTime - Ulož súbor ako..." + +#~ msgid "Printing %1" +#~ msgstr "Tlačenie %1" + +#, fuzzy +#~ msgid "Startup options" +#~ msgstr "Spusti tlač" + +#, fuzzy +#~ msgid "SWORD options" +#~ msgstr "Spusti tlač" + +#, fuzzy +#~ msgid "Configure BibleTime's key bindings" +#~ msgstr "Nastavenie kláves v BibleTime" + +#, fuzzy +#~ msgid "Display windows" +#~ msgstr "Zobraz okno" + +#, fuzzy +#~ msgid "General settings for display windows" +#~ msgstr "Uzavrie všetkyzobrazené okná." + +#, fuzzy +#~ msgid "Colors used in display windows" +#~ msgstr "Uzavrie všetkyzobrazené okná." + +#~ msgid "Choose fonts for BibleTime" +#~ msgstr "Vyber typ písma pre BibleTime" + +#~ msgid "Choose the area of application and set the font for it" +#~ msgstr "Vyberte oblasť aplikácie a zvoľte typ písma pre ňu" + +#, fuzzy +#~ msgid "Accelerators used by all windows" +#~ msgstr "Zavri všetky okná" + +#, fuzzy +#~ msgid "Accelerators for bible windows" +#~ msgstr "Okno biblie" + +#, fuzzy +#~ msgid "Accelerators for commentary windows" +#~ msgstr "Okno komentáru" + +#, fuzzy +#~ msgid "Accelerators for lexicon windows" +#~ msgstr "Okno lexikónu" + +#, fuzzy +#~ msgid "Initializing keyboard accelerators" +#~ msgstr "Nastav klávesové skratky" + +#~ msgid "
%1

" +#~ msgstr "
%1

" + +#~ msgid "Display window" +#~ msgstr "Zobraz okno" + +#, fuzzy +#~ msgid "Display window Unicode" +#~ msgstr "Zobraz okno" + +#, fuzzy +#~ msgid "" +#~ "* | Text files\n" +#~ " *.* | All files (*.*)" +#~ msgstr "" +#~ "*.txt | Textové súbory\n" +#~ " *.* | Všetky súbory (*.*)" + +#~ msgid "Show a daily tip" +#~ msgstr "Zobraz tip dňa" + +#~ msgid "List of modules" +#~ msgstr "Zoznam modulov" + +#~ msgid "Show a preview" +#~ msgstr "Zobraz náhľad" + +#~ msgid "Copies" +#~ msgstr "Kópie" + +#~ msgid "List of styles" +#~ msgstr "Zoznam štýlov" + +#~ msgid "Delete the chosen printing style" +#~ msgstr "Zmaž vybraný tlačový štýl" + +#~ msgid "Edit the chosen printing style" +#~ msgstr "Uprav zvolený tlačový štýl" + +#~ msgid "Show or hide the main index depending on current state." +#~ msgstr "Zobrazí alebo skryje hlavný index v závislosti od aktuálneho stavu." + +#~ msgid "Show or hide the main toolbar depending on current state." +#~ msgstr "" +#~ "Zobrazí alebo skryje panel nástrojov v závislosti od aktuálneho stavu." + +#~ msgid "" +#~ "Show or hide the footnotes in the modules deoending on current state." +#~ msgstr "" +#~ "Zobrazí alebo skryje poznámky pod čiarov v module v závislosti od " +#~ "aktuálneho stavu." + +#~ msgid "Arrange the opened display windows in a tile pattern." +#~ msgstr "Upraví otovrené okná podľa dlaždicového vzoru." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a tile pattern if " +#~ "it's necessary." +#~ msgstr "" +#~ "Otvárané okná budú automaticky upravené podľa dlaždicového vzoru, ak je " +#~ "to nevyhnutné." + +#~ msgid "Arrange the open display windows in a cascade pattern." +#~ msgstr "Upraví otovrené okná podľa kaskádového vzoru." + +#~ msgid "" +#~ "The open display windows will automatically arranged in a cascade pattern " +#~ "if it's necessary." +#~ msgstr "" +#~ "Otvárané okná budú automaticky upravené podľa kaskádového vzoru, ak je to " +#~ "nevyhnutné." + +#~ msgid "Open a dialog where you can edit the toolbar of BibleTime." +#~ msgstr "Otvorí dialóg, kde môžete uptaviť panel nástrojov BibleTime" + +#~ msgid "Activate this to see a startup logo on each startup of BibleTime." +#~ msgstr "" +#~ "Aktivujete túto možnosť, ak si chcete vidieť pri sputení logo BibleTime." + +#~ msgid "This list contains the modules using foreign fonts." +#~ msgstr "Tento zoznam obsahuje moduly pouzívajúce zahraničné typy písma" + +#~ msgid "&Show footnotes" +#~ msgstr "&Zobraz poznámky pod čiarov" + +#~ msgid "S&how Strong's numbers" +#~ msgstr "U&káž strongové čísla" + +#~ msgid "handbook" +#~ msgstr "príručka" + +#~ msgid "Martin Luther startup logo" +#~ msgstr "Štartovacie logo s Martinom Lutherom" + +#~ msgid "Sponsor of www.bibletime.de" +#~ msgstr "Sponzor stránky www.bibletime.de!" + +#~ msgid "backend" +#~ msgstr "backend" + +#~ msgid "" +#~ "Leader of the SWORD project.\n" +#~ "Lots of help with the SWORD API!" +#~ msgstr "" +#~ "Vedúci projektu SWORD.\n" +#~ "Poskytol veľa pomoci s SWORD API!" + +#~ msgid "Module fonts" +#~ msgstr "Typy písma v modul" + +#~ msgid "Configure the fonts used for modules" +#~ msgstr "Nastavte typy písma používané pre moduly" + +#~ msgid "Result with text" +#~ msgstr "Výsledky s textom" + +#~ msgid "Left" +#~ msgstr "Vľavo" + +#~ msgid "Center" +#~ msgstr "Stred" + +#~ msgid "Right" +#~ msgstr "Vpravo" + +#~ msgid "&Bottom" +#~ msgstr "&Dole" + +#~ msgid "Select all" +#~ msgstr "Zvoľ všetko" + +#~ msgid "Configure BibleTime's general options" +#~ msgstr "Nastavte všeobecné možnosti v BibleTime" + +#~ msgid "" +#~ "
Missing tips!


Your installation " +#~ "is missing the daily tips.\t\tPlease make sure all files of BibleTime are" +#~ "\t\tinstalled and that the permissions of $KDEDIR are correct!

\t" +#~ "\tIf you can't solve this problem please contact the team of BibleTime at" +#~ "\t\tinfo@bibletime.de!" +#~ msgstr "" +#~ "
Chýbajú tipy!


Vaša " +#~ "inštalácianeobsahuje tipy dňa.\t\tUistite sa, prosím, či všetky súbory " +#~ "BibleTime sú\t\tnainštalované a či prístupové práva ku $KDEDIR sú správne!" +#~ "

\t\t Ak nemôžete vyriešiť tento problém, skontaktujte sa prosím s " +#~ "BibleTime tímom na\t\tinfo@bibletime." +#~ "de!" + +#~ msgid "Foonotes: %1
" +#~ msgstr "Poznámka: %1
" + +#~ msgid "BibleTime - Help window" +#~ msgstr "BibleTime - Pomocník" + +#~ msgid "Translation into Brazilian Portoguese" +#~ msgstr "Preklad do brazílčiny a portugalštiny" diff --git a/bibletime-doc/stamp-h.in b/bibletime-doc/stamp-h.in new file mode 100644 index 0000000..e69de29 diff --git a/bibletime.desktop b/bibletime.desktop new file mode 100644 index 0000000..11f5988 --- /dev/null +++ b/bibletime.desktop @@ -0,0 +1,24 @@ +[Desktop Entry] +Comment=An easy to use bible study tool +Comment[C]=An easy to use bible study tool +Comment[cs]=Snadno pouiteln n�troj pro studium Bible +Comment[da]=Et letanvendeligt bibelstudieprogram +Comment[de]=Ein einfach zu benutzendes Bibelprogramm +Comment[fr]=Un outil d'�ude biblique facile �utiliser +Exec=bibletime +Icon=bibletime.png +MimeType= +Name=BibleTime 1.1 +Name[C]=BibleTime 1.1 +Name[cs]=BibleTime 1.1 +Name[da]=Bibeltime 1.1 +Name[de]=BibleTime 1.1 +Name[fr]=BibleTime 1.1 +SwallowExec= +SwallowTitle= +Terminal=false +TerminalOptions= +Type=Application +X-KDE-SubstituteUID=false +X-KDE-Username= +DocPath=bibletime/handbook/index.html diff --git a/bibletime.desktop.in b/bibletime.desktop.in new file mode 100644 index 0000000..49f0bae --- /dev/null +++ b/bibletime.desktop.in @@ -0,0 +1,24 @@ +[Desktop Entry] +Comment=An easy to use bible study tool +Comment[C]=An easy to use bible study tool +Comment[cs]=Snadno pouiteln n�troj pro studium Bible +Comment[da]=Et letanvendeligt bibelstudieprogram +Comment[de]=Ein einfach zu benutzendes Bibelprogramm +Comment[fr]=Un outil d'�ude biblique facile �utiliser +Exec=bibletime +Icon=bibletime.png +MimeType= +Name=BibleTime @VERSION@ +Name[C]=BibleTime @VERSION@ +Name[cs]=BibleTime @VERSION@ +Name[da]=Bibeltime @VERSION@ +Name[de]=BibleTime @VERSION@ +Name[fr]=BibleTime @VERSION@ +SwallowExec= +SwallowTitle= +Terminal=false +TerminalOptions= +Type=Application +X-KDE-SubstituteUID=false +X-KDE-Username= +DocPath=bibletime/handbook/index.html diff --git a/bibletime.kdevprj b/bibletime.kdevprj new file mode 100644 index 0000000..ff38aa0 --- /dev/null +++ b/bibletime.kdevprj @@ -0,0 +1,1839 @@ +[COPYING] +dist=true +install=false +install_location= +type=DATA + +[CVS/Makefile.am] +files= +sub_dirs= +type=normal + +[ChangeLog] +dist=true +install=false +install_location= +type=DATA + +[Config for BinMakefileAm] +addcxxflags= +bin_program=bibletime +cxxflags=\s-O2 -Wall +ldadd=-lpthread -lkfile -lkdeui -lkdecore -lqt -lXext -lX11 +ldflags= +libtool_dir= +path_to_bin_program=bibletime + +[General] +AMChanged=false +author=The BibleTime team +configure_args=--with-qt-dir=/usr/lib/qt2 --with-kdedir=/opt/kde2 +debug_args=--debug --nocrashhandler +dir_where_make_will_be_called=./ +email=info@bibletime.de +execute_args=--debug --ignore-startprofile +kdevprj_version=1.3 +lfv_open_groups= +make_options=\s-j1 +makefiles=bibletime/backend/sword_backend/Makefile.am,bibletime/backend/Makefile.am,bibletime/Makefile.am,bibletime/frontend/Makefile.am,bibletime/frontend/presenters/Makefile.am,bibletime/frontend/groupmanager/Makefile.am,bibletime/frontend/optionsdialog/Makefile.am,bibletime/frontend/searchdialog/Makefile.am,AUTHORS.in,TODO.in,bibletime.lsm.in,bibletime.spec.in,README.in,INSTALL.in,bibletime/docs/en/helpdialog/Makefile.am,bibletime/docs/de/helpdialog/Makefile.am,bibletime/pics/lowcolor/16*16/Makefile.am,bibletime/pics/lowcolor/Makefile.am,bibletime/pics/highcolor/16*16/Makefile.am,bibletime/pics/highcolor/Makefile.am,bibletime/pics/highcolor/22*22/Makefile.am,bibletime/pics/highcolor/32*32/Makefile.am,bibletime/pics/lowcolor/32*32/Makefile.am,bibletime/pics/lowcolor/22*22/Makefile.am,bibletime/pics/highcolor/48*48/Makefile.am,doc/Makefile.am,bibletime/printing/Makefile.am,bibletime/docs/sk/Makefile.am,bibletime/libhtmlparse/Makefile.am,bibletime/frontend/keychooser/Makefile.am,bibletime/xml/Makefile.am,README,INSTALL,bibletime.lsm,AUTHORS,TODO,bibletime.spec,admin/Makefile.am,bibletime/docs/Makefile.am,bibletime/docs/en/Makefile.am,po/Makefile.am,bibletime/docs/de/Makefile.am,bibletime/pics/Makefile.am,Makefile.am,bibletime/docs/development/Makefile.am,bibletime/frontend/thirdparty/Makefile.am,bibletime/docs/en/handbook/Makefile.am,bibletime/docs/en/handbook/common/Makefile.am,bibletime/frontend/thirdparty/qt3stuff/Makefile.am,bibletime/util/Makefile.am +modifyMakefiles=false +project_name=BibleTime +project_type=normal_empty +sgml_file=/home/joachim/BibleTime/bibletime-2/bibletime/docs/de/index.sgml +short_info= +sub_dir=bibletime/ +version=1.1beta2 +version_control=CVS +workspace=1 + +[INSTALL] +dist=true +install=false +install_location= +type=DATA + +[INSTALL.in] +dist=true +install=false +install_location= +type=DATA + +[KPP] +kpp_appgrp=Applications +kpp_bldroot= +kpp_icon=0 +kpp_license=5 +kpp_summary= +kpp_url=http://www.bibletime.de/ +kpp_version=1.0 + +[LFV Groups] +Andere=*, +Dialogs=*.kdevdlg, +GNU=AUTHORS.in,COPYING,ChangeLog,INSTALL.in,README.in,TODO.in,NEWS.in,bibletime.lsm.in,bibletime.spec.in,bibletime.desktop.in, +Headers=*.h,*.hxx,*.hpp,*.H, +Icons=*.png, +Images=*.jpg,*.gif, +Others=*, +Ressource files=*.rc, +Sources=*.cpp,*.c,*.cc,*.C,*.cxx,*.ec,*.ecpp,*.lxx,*.l++,*.ll,*.l, +groups=Ressource files,Icons,Images,Headers,Sources,Dialogs,GNU,Others + +[Makefile.am] +files=bibletime.kdevprj,COPYING,ChangeLog,bibletime.spec.in,README.in,TODO.in,INSTALL.in,bibletime.lsm.in,bibletime.lsm,bibletime.spec,NEWS,README,TODO,INSTALL,configure.in.in,configure.in,am_edit,bibletime.desktop.in,NEWS.in,Makefile.cvs +sub_dirs=bibletime,po,admin,doc,CVS, +type=normal + +[Makefile.cvs] +dist=true +install=false +install_location= +type=DATA + +[NEWS] +dist=true +install=false +install_location= +type=DATA + +[NEWS.in] +dist=true +install=false +install_location= +type=DATA + +[README] +dist=true +install=false +install_location= +type=DATA + +[README.in] +dist=true +install=false +install_location= +type=DATA + +[TODO] +dist=true +install=false +install_location= +type=DATA + +[TODO.in] +dist=true +install=false +install_location= +type=DATA + +[Workspace_1] +browser_file=file:/opt/kde/share/doc/srcdoc.kde2/kdeui/kjanuswidget_h.html +cpp_file=/home/joachim/BibleTime/bibletime-2/bibletime/main.cpp +show_outputview=true +show_treeview=true + +[admin/Makefile.am] +files=admin/acinclude.m4.in,admin/am_edit.py,admin/Makefile.common,admin/missing,admin/ylwrap,admin/mkinstalldirs,admin/ltmain.sh,admin/config.sub,admin/config.pl,admin/config.guess,admin/conf.change.pl,admin/ltcf-c.sh,admin/ltcf-cxx.sh,admin/libtool.m4.in,admin/install-sh,admin/debianrules,admin/depcomp,admin/ltconfig +type=HEADER + +[admin/Makefile.common] +dist=true +install=false +install_location= +type=DATA + +[admin/acinclude.m4.in] +dist=true +install=false +install_location= +type=DATA + +[admin/am_edit.py] +dist=true +install=false +install_location= +type=DATA + +[admin/conf.change.pl] +dist=true +install=false +install_location= +type=DATA + +[admin/config.guess] +dist=true +install=false +install_location= +type=DATA + +[admin/config.pl] +dist=true +install=false +install_location= +type=DATA + +[admin/config.sub] +dist=true +install=false +install_location= +type=DATA + +[admin/configure.in.min] +dist=true +install=false +install_location= +type=DATA + +[admin/debianrules] +dist=true +install=false +install_location= +type=DATA + +[admin/depcomp] +dist=true +install=false +install_location= +type=DATA + +[admin/install-sh] +dist=false +install=false +install_location= +type=DATA + +[admin/libtool.m4.in] +dist=true +install=false +install_location=$$$$(kde_htmldir)/de/bibletime/tipdatabase +type=DATA + +[admin/ltcf-c.sh] +dist=true +install=false +install_location= +type=DATA + +[admin/ltcf-cxx.sh] +dist=false +install=false +install_location= +type=DATA + +[admin/ltconfig] +dist=true +install=false +install_location= +type=DATA + +[admin/ltmain.sh] +dist=true +install=false +install_location= +type=DATA + +[admin/missing] +dist=true +install=false +install_location= +type=DATA + +[admin/mkinstalldirs] +dist=true +install=false +install_location= +type=DATA + +[admin/ylwrap] +dist=true +install=false +install_location= +type=DATA + +[am_edit] +dist=true +install=false +install_location= +type=DATA + +[bibletime.desktop] +dist=true +install=false +install_location= +type=DATA + +[bibletime.desktop.in] +dist=true +install=false +install_location= +type=DATA + +[bibletime.kdevprj] +dist=true +install=false +install_location= +type=DATA + +[bibletime.lsm] +dist=true +install=false +install_location= +type=DATA + +[bibletime.lsm.in] +dist=true +install=false +install_location= +type=DATA + +[bibletime.spec] +dist=true +install=false +install_location= +type=DATA + +[bibletime.spec.in] +dist=true +install=false +install_location= +type=DATA + +[bibletime/Makefile.am] +files=bibletime/main.cpp,bibletime/bibletime.cpp,bibletime/bibletime.h,bibletime/bibletime_slots.cpp,bibletime/bibletime_init.cpp,bibletime/structdef.h,bibletime/whatsthisdef.h,bibletime/tooltipdef.h,bibletime/bibletime.in,bibletime/resource.h +sub_dirs=backend,frontend,pics,docs,xml,printing,libhtmlparse,util +type=prog_main + +[bibletime/backend/Makefile.am] +files=bibletime/backend/ckey.h,bibletime/backend/chtmlchapterdisplay.cpp,bibletime/backend/chtmlchapterdisplay.h,bibletime/backend/chtmlentrydisplay.cpp,bibletime/backend/chtmlentrydisplay.h,bibletime/backend/cswordbackend.cpp,bibletime/backend/cswordbackend.h,bibletime/backend/cswordbiblemoduleinfo.cpp,bibletime/backend/cswordbiblemoduleinfo.h,bibletime/backend/cswordcommentarymoduleinfo.cpp,bibletime/backend/cswordcommentarymoduleinfo.h,bibletime/backend/cswordkey.cpp,bibletime/backend/cswordkey.h,bibletime/backend/cswordldkey.cpp,bibletime/backend/cswordldkey.h,bibletime/backend/cswordlexiconmoduleinfo.cpp,bibletime/backend/cswordlexiconmoduleinfo.h,bibletime/backend/cswordmoduleinfo.cpp,bibletime/backend/cswordmoduleinfo.h,bibletime/backend/cswordmodulesearch.cpp,bibletime/backend/cswordmodulesearch.h,bibletime/backend/cswordversekey.cpp,bibletime/backend/cswordversekey.h,bibletime/backend/creferencemanager.cpp,bibletime/backend/creferencemanager.h,bibletime/backend/bt_gbfhtml.cpp,bibletime/backend/bt_gbfhtml.h,bibletime/backend/bt_thmlhtml.cpp,bibletime/backend/bt_thmlhtml.h,bibletime/backend/bt_basicfilter.cpp,bibletime/backend/bt_basicfilter.h,bibletime/backend/cswordtreekey.h,bibletime/backend/cswordtreekey.cpp,bibletime/backend/cswordbookmoduleinfo.h,bibletime/backend/cswordbookmoduleinfo.cpp,bibletime/backend/chtmlbookdisplay.cpp,bibletime/backend/chtmlbookdisplay.h +sub_dirs=sword_backend, +type=shared_library + +[bibletime/backend/bt_basicfilter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/bt_basicfilter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/bt_gbfhtml.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/bt_gbfhtml.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/bt_thmlhtml.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/bt_thmlhtml.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/chtmlbookdisplay.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/chtmlbookdisplay.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/chtmlchapterdisplay.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/chtmlchapterdisplay.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/chtmlentrydisplay.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/chtmlentrydisplay.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/ckey.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/creferencemanager.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/creferencemanager.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordbackend.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordbackend.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordbiblemoduleinfo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordbiblemoduleinfo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordbookmoduleinfo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordbookmoduleinfo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordcommentarymoduleinfo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordcommentarymoduleinfo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordkey.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordkey.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordldkey.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordldkey.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordlexiconmoduleinfo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordlexiconmoduleinfo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordmoduleinfo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordmoduleinfo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordmodulesearch.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordmodulesearch.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordtreekey.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordtreekey.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/cswordversekey.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/cswordversekey.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/backend/sword_backend/Makefile.am] +files=bibletime/backend/sword_backend/chtmlchapterdisplay.cpp,bibletime/backend/sword_backend/chtmlchapterdisplay.h +sub_dirs= +type=shared_library + +[bibletime/backend/sword_backend/chtmlchapterdisplay.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/backend/sword_backend/chtmlchapterdisplay.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/bibletime.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/bibletime.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/bibletime.in] +dist=true +install=false +install_location= +type=DATA + +[bibletime/bibletime_init.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/bibletime_slots.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/docs/Makefile.am] +files= +sub_dirs=en,de,sk,development +type=normal + +[bibletime/docs/de/Makefile.am] +files= +sub_dirs=helpdialog, +type=normal + +[bibletime/docs/de/helpdialog/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/docs/development/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/docs/en/Makefile.am] +files= +sub_dirs=helpdialog,handbook +type=normal + +[bibletime/docs/en/handbook/Makefile.am] +files= +sub_dirs=common +type=normal + +[bibletime/docs/en/handbook/common/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/docs/en/helpdialog/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/docs/sk/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/frontend/Makefile.am] +files=bibletime/frontend/cmdiarea.cpp,bibletime/frontend/cmdiarea.h,bibletime/frontend/ceditwidget.h,bibletime/frontend/chtmldialog.cpp,bibletime/frontend/chtmldialog.h,bibletime/frontend/chtmlwidget.cpp,bibletime/frontend/chtmlwidget.h,bibletime/frontend/kstartuplogo.h,bibletime/frontend/kstartuplogo.cpp,bibletime/frontend/ctoolclass.h,bibletime/frontend/ctoolclass.cpp,bibletime/frontend/cminmaxlayout.cpp,bibletime/frontend/cminmaxlayout.h,bibletime/frontend/cinputdialog.cpp,bibletime/frontend/cinputdialog.h,bibletime/frontend/cprofilemgr.cpp,bibletime/frontend/cprofilemgr.h,bibletime/frontend/cprofile.cpp,bibletime/frontend/cprofile.h,bibletime/frontend/cprofilewindow.cpp,bibletime/frontend/cprofilewindow.h,bibletime/frontend/creferencemanager.cpp,bibletime/frontend/creferencemanager.h,bibletime/frontend/cbtconfig.cpp,bibletime/frontend/cbtconfig.h,bibletime/frontend/coptionsdialog.cpp,bibletime/frontend/coptionsdialog.h,bibletime/frontend/cpointers.cpp,bibletime/frontend/cpointers.h,bibletime/frontend/cexportmanager.cpp,bibletime/frontend/cexportmanager.h +sub_dirs=groupmanager,presenters,optionsdialog,searchdialog,keychooser,thirdparty +type=static_library + +[bibletime/frontend/cbtconfig.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cbtconfig.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/ceditwidget.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cexportmanager.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cexportmanager.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/chtmldialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/chtmldialog.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/chtmlwidget.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/chtmlwidget.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cinputdialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cinputdialog.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cmdiarea.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cmdiarea.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cminmaxlayout.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cminmaxlayout.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/coptionsdialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/coptionsdialog.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cpointers.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cpointers.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cprofile.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cprofile.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cprofilemgr.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cprofilemgr.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/cprofilewindow.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/cprofilewindow.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/creferencemanager.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/creferencemanager.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/ctoolclass.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/ctoolclass.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/groupmanager/Makefile.am] +files=bibletime/frontend/groupmanager/cgroupmanager.h,bibletime/frontend/groupmanager/cgroupmanageritem.cpp,bibletime/frontend/groupmanager/cgroupmanageritem.h,bibletime/frontend/groupmanager/cgroupmanager.cpp, +sub_dirs= +type=static_library + +[bibletime/frontend/groupmanager/cgroupmanager.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/groupmanager/cgroupmanager.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/groupmanager/cgroupmanageritem.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/groupmanager/cgroupmanageritem.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/Makefile.am] +files=bibletime/frontend/keychooser/ckeychooserwidget.cpp,bibletime/frontend/keychooser/ckeychooserwidget.h,bibletime/frontend/keychooser/cfx_btn.cpp,bibletime/frontend/keychooser/cfx_btn.h,bibletime/frontend/keychooser/ckeychooser.cpp,bibletime/frontend/keychooser/ckeychooser.h,bibletime/frontend/keychooser/clexiconkeychooser.cpp,bibletime/frontend/keychooser/clexiconkeychooser.h,bibletime/frontend/keychooser/cbiblekeychooser.cpp,bibletime/frontend/keychooser/cbiblekeychooser.h,bibletime/frontend/keychooser/cbookkeychooser.cpp,bibletime/frontend/keychooser/cbookkeychooser.h,bibletime/frontend/keychooser/cbooktreechooser.cpp,bibletime/frontend/keychooser/cbooktreechooser.h +sub_dirs= +type=static_library + +[bibletime/frontend/keychooser/cbiblekeychooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/cbiblekeychooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/cbookkeychooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/cbookkeychooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/cbooktreechooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/cbooktreechooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/cfx_btn.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/cfx_btn.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/ckeychooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/ckeychooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/ckeychooserbase.cpp] +dist=false +install=false +install_location= +type=DATA + +[bibletime/frontend/keychooser/ckeychooserwidget.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/ckeychooserwidget.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/clexiconkeychooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/keychooser/clexiconkeychooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/keychooser/keychooserbase.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/kstartuplogo.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/kstartuplogo.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/optionsdialog/Makefile.am] +files=bibletime/frontend/optionsdialog/coptionsdialog.cpp,bibletime/frontend/optionsdialog/coptionsdialog.h,bibletime/frontend/optionsdialog/cbtconfig.cpp,bibletime/frontend/optionsdialog/cbtconfig.h +sub_dirs= +type=static_library + +[bibletime/frontend/optionsdialog/cbtconfig.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/optionsdialog/cbtconfig.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/optionsdialog/coptionsdialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/optionsdialog/coptionsdialog.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/Makefile.am] +files=bibletime/frontend/presenters/cmodulechooserbar.cpp,bibletime/frontend/presenters/cmodulechooserbar.h,bibletime/frontend/presenters/cmodulechooserbutton.cpp,bibletime/frontend/presenters/cmodulechooserbutton.h,bibletime/frontend/presenters/cbiblepresenter.cpp,bibletime/frontend/presenters/cbiblepresenter.h,bibletime/frontend/presenters/cswordpresenter.cpp,bibletime/frontend/presenters/ccommentarypresenter.cpp,bibletime/frontend/presenters/ccommentarypresenter.h,bibletime/frontend/presenters/clexiconpresenter.cpp,bibletime/frontend/presenters/clexiconpresenter.h,bibletime/frontend/presenters/cswordpresenter.h,bibletime/frontend/presenters/cdisplaysettingsbutton.cpp,bibletime/frontend/presenters/cdisplaysettingsbutton.h,bibletime/frontend/presenters/cbookpresenter.cpp,bibletime/frontend/presenters/cbookpresenter.h +sub_dirs= +type=static_library + +[bibletime/frontend/presenters/cbiblepresenter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cbiblepresenter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/cbookpresenter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cbookpresenter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/ccommentarypresenter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/ccommentarypresenter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/cdisplaysettingsbutton.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cdisplaysettingsbutton.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/clexiconpresenter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/clexiconpresenter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/cmodulechooserbar.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cmodulechooserbar.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/cmodulechooserbutton.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cmodulechooserbutton.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/presenters/cswordpresenter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/presenters/cswordpresenter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/Makefile.am] +files=bibletime/frontend/searchdialog/csearchdialog.h,bibletime/frontend/searchdialog/csearchdialogtext.cpp,bibletime/frontend/searchdialog/csearchdialogtext.h,bibletime/frontend/searchdialog/csearchdialogresult.cpp,bibletime/frontend/searchdialog/csearchdialogresult.h,bibletime/frontend/searchdialog/csearchdialogresultview.cpp,bibletime/frontend/searchdialog/csearchdialogresultview.h,bibletime/frontend/searchdialog/csearchdialoganalysis.cpp,bibletime/frontend/searchdialog/csearchdialoganalysis.h,bibletime/frontend/searchdialog/csearchdialog.cpp,bibletime/frontend/searchdialog/csearchdialogscope.cpp,bibletime/frontend/searchdialog/csearchdialogscope.h,bibletime/frontend/searchdialog/csearchdialoganalysisview.cpp,bibletime/frontend/searchdialog/csearchdialoganalysisview.h,bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp,bibletime/frontend/searchdialog/csearchdialogmodulechooser.h +sub_dirs= +type=static_library + +[bibletime/frontend/searchdialog/csearchdialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialog.h] +dist=false +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialoganalysis.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialoganalysis.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialoganalysisview.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialoganalysisview.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialogmodulechooser.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialogresult.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialogresult.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialogresultview.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialogresultview.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialogscope.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialogscope.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/searchdialog/csearchdialogtext.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/searchdialog/csearchdialogtext.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/Makefile.am] +dist=true +files=bibletime/frontend/thirdparty/Makefile.am +install=false +install_location= +sub_dirs=qt3stuff +type=static_library + +[bibletime/frontend/thirdparty/qt3stuff/Makefile.am] +dist=true +files=bibletime/frontend/thirdparty/qt3stuff/qtextview.h,bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp,bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h,bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h,bibletime/frontend/thirdparty/qt3stuff/qtextedit.h,bibletime/frontend/thirdparty/qt3stuff/Makefile.am,bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp,bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp,bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h,bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp,bibletime/frontend/thirdparty/qt3stuff/qsimplerichtext.cpp,bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h,bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp,bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h +install=false +install_location= +sub_dirs= +type=static_library + +[bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qsimplerichtext.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qtextedit.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/frontend/thirdparty/qt3stuff/qtextview.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/libhtmlparse/Makefile.am] +files= +sub_dirs= +type=static_library + +[bibletime/main.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/pics/Makefile.am] +files= +sub_dirs=lowcolor,highcolor, +type=normal + +[bibletime/pics/highcolor/16*16/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/pics/highcolor/22*22/Makefile.am] +files=bibletime/pics/highcolor/22*22/hi22-action-nextchapter.png,bibletime/pics/highcolor/22*22/hi22-action-nextverse.png,bibletime/pics/highcolor/22*22/hi22-action-prevchapter.png,bibletime/pics/highcolor/22*22/hi22-action-prevverse.png,bibletime/pics/highcolor/22*22/hi22-action-strongs.png,bibletime/pics/highcolor/22*22/hi22-action-tile_auto.png,bibletime/pics/highcolor/22*22/hi22-action-tile.png,bibletime/pics/highcolor/22*22/hi22-action-scrolling.png +sub_dirs= +type=normal + +[bibletime/pics/highcolor/22*22/hi22-action-nextchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-nextverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-prevchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-prevverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-scrolling.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-strongs.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-tile.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/22*22/hi22-action-tile_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/Makefile.am] +files=bibletime/pics/highcolor/32*32/hi32-action-footnotes.png,bibletime/pics/highcolor/32*32/hi32-action-nextchapter.png,bibletime/pics/highcolor/32*32/hi32-action-nextverse.png,bibletime/pics/highcolor/32*32/hi32-action-prevchapter.png,bibletime/pics/highcolor/32*32/hi32-action-prevverse.png,bibletime/pics/highcolor/32*32/hi32-action-strongs.png,bibletime/pics/highcolor/32*32/hi32-app-bibletime.png,bibletime/pics/highcolor/32*32/hi32-action-cascade.png,bibletime/pics/highcolor/32*32/hi32-action-cascade_auto.png,bibletime/pics/highcolor/32*32/hi32-action-tile.png,bibletime/pics/highcolor/32*32/hi32-action-tile_auto.png,bibletime/pics/highcolor/32*32/hi32-action-groupmanager.png,bibletime/pics/highcolor/32*32/hi32-action-scrolling.png, +sub_dirs= +type=normal + +[bibletime/pics/highcolor/32*32/hi32-action-cascade.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-cascade_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-footnotes.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-groupmanager.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-nextchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-nextverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-prevchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-prevverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-scrolling.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-strongs.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-tile.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-action-tile_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/32*32/hi32-app-bibletime.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/48*48/Makefile.am] +files=bibletime/pics/highcolor/48*48/hi48-app-bibletime.png, +sub_dirs= +type=normal + +[bibletime/pics/highcolor/48*48/hi48-app-bibletime.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/highcolor/Makefile.am] +sub_dirs=16*16,22*22,32*32,48*48, +type=normal + +[bibletime/pics/lowcolor/16*16/Makefile.am] +files=bibletime/pics/lowcolor/16*16/lo16-action-nextchapter.png,bibletime/pics/lowcolor/16*16/lo16-app-bibletime.png,bibletime/pics/lowcolor/16*16/lo16-action-footnotes.png,bibletime/pics/lowcolor/16*16/lo16-action-nextverse.png,bibletime/pics/lowcolor/16*16/lo16-action-prevchapter.png,bibletime/pics/lowcolor/16*16/lo16-action-prevverse.png,bibletime/pics/lowcolor/16*16/lo16-action-bible.png,bibletime/pics/lowcolor/16*16/lo16-action-bible_crypt.png,bibletime/pics/lowcolor/16*16/lo16-action-strongs.png,bibletime/pics/lowcolor/16*16/lo16-action-versref.png,bibletime/pics/lowcolor/16*16/lo16-action-groupmanager.png,bibletime/pics/lowcolor/16*16/lo16-action-cascade.png,bibletime/pics/lowcolor/16*16/lo16-action-cascade_auto.png,bibletime/pics/lowcolor/16*16/lo16-action-commentary.png,bibletime/pics/lowcolor/16*16/lo16-action-commentary_crypt.png,bibletime/pics/lowcolor/16*16/lo16-action-lexicon.png,bibletime/pics/lowcolor/16*16/lo16-action-lexicon_crypt.png,bibletime/pics/lowcolor/16*16/lo16-action-tile.png,bibletime/pics/lowcolor/16*16/lo16-action-tile_auto.png,bibletime/pics/lowcolor/16*16/lo16-action-module_info.png,bibletime/pics/lowcolor/16*16/lo16-action-scrolling.png,bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark.png,bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_change.png,bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_export.png,bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_import.png,bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_new.png, +sub_dirs= +type=normal + +[bibletime/pics/lowcolor/16*16/lo16-action-bible.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bible_crypt.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_change.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_export.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_import.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-bt_bookmark_new.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-cascade.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-cascade_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-commentary.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-commentary_crypt.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-footnotes.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-groupmanager.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-lexicon.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-lexicon_crypt.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-module_info.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-nextchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-nextverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-prevchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-prevverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-scrolling.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-strongs.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-tile.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-tile_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-action-versref.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/16*16/lo16-app-bibletime.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/22*22/Makefile.am] +files= +sub_dirs= +type=normal + +[bibletime/pics/lowcolor/32*32/Makefile.am] +files=bibletime/pics/lowcolor/32*32/lo32-action-footnotes.png,bibletime/pics/lowcolor/32*32/lo32-app-bibletime.png,bibletime/pics/lowcolor/32*32/lo32-action-nextchapter.png,bibletime/pics/lowcolor/32*32/lo32-action-prevchapter.png,bibletime/pics/lowcolor/32*32/lo32-action-nextverse.png,bibletime/pics/lowcolor/32*32/lo32-action-prevverse.png,bibletime/pics/lowcolor/32*32/lo32-action-groupmanager.png,bibletime/pics/lowcolor/32*32/lo32-action-scrolling.png,bibletime/pics/lowcolor/32*32/lo32-action-strongs.png,bibletime/pics/lowcolor/32*32/lo32-action-tile.png,bibletime/pics/lowcolor/32*32/lo32-action-tile_auto.png, +sub_dirs= +type=normal + +[bibletime/pics/lowcolor/32*32/lo32-action-footnotes.png] +dist=false +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-groupmanager.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-nextchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-nextverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-prevchapter.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-prevverse.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-scrolling.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-strongs.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-tile.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-action-tile_auto.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/32*32/lo32-app-bibletime.png] +dist=true +install=false +install_location= +type=DATA + +[bibletime/pics/lowcolor/Makefile.am] +sub_dirs=16*16,32*32,22*22, +type=normal + +[bibletime/printing/Makefile.am] +files=bibletime/printing/cprinter.cpp,bibletime/printing/cprinter.h,bibletime/printing/cstyleeditordialog.cpp,bibletime/printing/cstyleeditordialog.h,bibletime/printing/cstyle.cpp,bibletime/printing/cstyle.h,bibletime/printing/cprintitem.cpp,bibletime/printing/cprintitem.h,bibletime/printing/cprintitemlist.cpp,bibletime/printing/cprintitemlist.h,bibletime/printing/cstylelist.cpp,bibletime/printing/cstylelist.h,bibletime/printing/cprintdialogpages.cpp,bibletime/printing/cprintdialogpages.h +sub_dirs= +type=static_library + +[bibletime/printing/cprintdialogpages.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cprintdialogpages.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cprinter.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cprinter.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cprintitem.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cprintitem.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cprintitemlist.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cprintitemlist.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cstyle.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cstyle.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cstyleeditordialog.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cstyleeditordialog.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/printing/cstylelist.cpp] +dist=true +install=false +install_location= +type=SOURCE + +[bibletime/printing/cstylelist.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/resource.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/structdef.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/tooltipdef.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/util/Makefile.am] +files=bibletime/util/scoped_resource.h +sub_dirs= +type=normal + +[bibletime/util/scoped_resource.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/whatsthisdef.h] +dist=true +install=false +install_location= +type=HEADER + +[bibletime/xml/Makefile.am] +files=bibletime/xml/bibletimeui.rc, +sub_dirs= +type=normal + +[bibletime/xml/bibletimeui.rc] +dist=true +install=false +install_location= +type=DATA + +[configure.in] +dist=true +install=false +install_location= +type=DATA + +[configure.in.in] +dist=true +install=false +install_location= +type=DATA + +[doc/Makefile.am] +files= +sub_dirs= +type=normal + +[po/Makefile.am] +files= +sub_dirs= +type=po diff --git a/bibletime.kdevses b/bibletime.kdevses new file mode 100644 index 0000000..3caf657 --- /dev/null +++ b/bibletime.kdevses @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/bibletime.lsm b/bibletime.lsm new file mode 100644 index 0000000..fa039d0 --- /dev/null +++ b/bibletime.lsm @@ -0,0 +1,14 @@ +Begin3 +Title: BibleTime +Version: 1.1 +Entered-date: 17JUNE2001 +Description: An easy to use but powerful Bible study tool for KDE 2. BibleTime is based on SWORD 1.52.. +Keywords: bible,study,KDE2,KDE,QT,sword,bibletime,bibletime2,crosswire,www.bibletime.de,crosswire.org +Author: The BibleTime Team +Maintained-by: The BibleTime Team +Primary-site: http://www.bibletime.de/ +Home-page: http://www.bibletime.de/ +Original-site: http://www.bibletime.de/ +Platforms: Linux and other Unices +Copying-policy: GNU Public License +End diff --git a/bibletime.lsm.in b/bibletime.lsm.in new file mode 100644 index 0000000..65b03f4 --- /dev/null +++ b/bibletime.lsm.in @@ -0,0 +1,14 @@ +Begin3 +Title: BibleTime +Version: @VERSION@ +Entered-date: 17JUNE2001 +Description: An easy to use but powerful Bible study tool for KDE 2. BibleTime is based on SWORD 1.52.. +Keywords: bible,study,KDE2,KDE,QT,sword,bibletime,bibletime2,crosswire,www.bibletime.de,crosswire.org +Author: The BibleTime Team +Maintained-by: The BibleTime Team +Primary-site: http://www.bibletime.de/ +Home-page: http://www.bibletime.de/ +Original-site: http://www.bibletime.de/ +Platforms: Linux and other Unices +Copying-policy: GNU Public License +End diff --git a/bibletime.m4 b/bibletime.m4 new file mode 100644 index 0000000..64b08fa --- /dev/null +++ b/bibletime.m4 @@ -0,0 +1,156 @@ +## -*- autoconf -*- + +dnl ------------------------------------------------------------------------------- +dnl Check wheter to use static linking, first parameter is the result (YES/NO) +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_STATIC_LINKING, +[ +$1="NO" + +AC_MSG_CHECKING(whether to use static linking) +AC_ARG_ENABLE(static-linking, + [ --enable-static-linking use static linking], + USE_STATIC_LINKING=$enableval, USE_STATIC_LINKING="no") + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + AC_SUBST(BT_LDFLAGS) + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + $1="YES"; +else + $1="NO"; +fi + +AC_MSG_RESULT($USE_STATIC_LINKING) +]) + +dnl ------------------------------------------------------------------------------- +dnl Checks the type of the distribution +dnl Possible names for the distributions are SuSE, RedHat, Mandrake +dnl ------------------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_DISTRIBUTION, +[ +AC_MSG_CHECKING([for the used Linux distribution]) + +AC_ARG_WITH(distribution, +[ --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] ], +[ + ac_distribution=$withval +],ac_distribution=auto +) + +AC_ARG_WITH(distribution-version, +[ --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] ], +[ + ac_distribution_version=$withval +],ac_distribution_version=auto +) + +AC_ARG_WITH(rpm-prefix, +[ --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] ], +[ + ac_rpm_prefix=$withval +],ac_rpm_prefix=auto +) + +AC_ARG_WITH(rpm-group, +[ --with-rpm-group=DIR The group which will be used for the RPM system [auto] ], +[ + ac_rpm_group=$withval +],ac_rpm_group=auto +) + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=[$ac_distribution] +fi + +if test "$ac_distribution" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION, [ +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi +]) +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=[$ac_distribution_version] +fi +if test "$ac_distribution_version" = "auto"; then +AC_CACHE_VAL(DISTRIBUTION_VERSION, [ +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=[`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`]; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=[`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=[`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print $1}'`] +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=[`cat /etc/debian_version`] +fi +]) +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=[$ac_rpm_prefix] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_PREFIX, [ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi +]) +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=[$ac_rpm_group] +fi +if test "$ac_rpm_prefix" = "auto"; then +AC_CACHE_VAL(RPM_GROUP, +[ +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi +]) +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION, ${DISTRIBUTION}, [The type of your distribution]) +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + AC_DEFINE_UNQUOTED(DISTRIBUTION_VERSION, ${DISTRIBUTION_VERSION}, [The version of your distribution]) +fi + +AC_SUBST(DISTRIBUTION) +AC_SUBST(DISTRIBUTION_VERSION) +AC_SUBST(RPM_PREFIX) +AC_SUBST(RPM_GROUP) + +AC_MSG_RESULT([$DISTRIBUTION $DISTRIBUTION_VERSION]) + +AC_MSG_CHECKING([for RPM installation prefix]) +AC_MSG_RESULT([$RPM_PREFIX]) + +AC_MSG_CHECKING([for the correct RPM group]) +AC_MSG_RESULT([$RPM_GROUP]) +]) + diff --git a/bibletime.spec b/bibletime.spec new file mode 100644 index 0000000..b0a0467 --- /dev/null +++ b/bibletime.spec @@ -0,0 +1,314 @@ +%define name bibletime +%define version 1.1 + +# This should not be changed but set this to static or dynamic. +# Sword should always be set to static for these builds. +%define swordlibs static + +# this needs to be changed depending on build number +# and weather or not it is static +%define release 1 + +# This should be set to your os. +# Possible values are Mandrake, Red Hat, Turbolinux, Caldera, SuSE, Debian, etc. +%define ostype Debian + +# This should be set to the version of your OS (6.0, 6.1, 6.2, 7.0, 7.1, 7.2, 8.0, etc.) +%define osversion 3.0 + +# This is your cpu i486, i586, i686, ppc, sparc, alfa, etc. +%define buildarch i586 + +# This the RPM group on your system that this will installed into. +# Graphical desktop/KDE, X11/apps, etc. +%define rpmgroup Graphical desktop/KDE + +# this is were the sword modules will be installed on your system. +# /usr/local/sword, /usr/share/sword, /opt/local/sword, etc. +# default is /usr/share/sword +%define SwordPath /usr/share/sword +%define ModsPath %{SwordPath}/mods.d + +# This for Mandrake menus if you have another system do not edit this line. it is for +# compatability with those systems. +%define build_menus 1 +%define _menudir /usr/lib/menu +# Nothing else should need to be changed. +# Please do not edit below this line unless you know what you are doing. + +Summary: BibleTime %{version} is an easy to use Bible study tool for KDE2. +Name: %{name} +Version: %{version} +Release: %{release} +#Icon: bibletime.xpm +Copyright: GPL +Vendor: The team of BibleTime +Url: http://www.bibletime.de +Packager: Brook Humphrey , Joachim Ansorg +Group: %{rpmgroup} +BuildArch: %{buildarch} +Source0: %{name}-%{version}.tar.bz2 + +# For use with mandrake menu system. +%if %build_menus +Source1: bibletime_icons.tar.bz2 +%endif + +# This source comes from sword and will conflict woth sword if it is installed so we will make it a seperarte package. +Source2: locales.d.tar.bz2 + +BuildRoot: %{_tmppath}/%{name}-%{version}--rootbibletime +Provides: sword-base sword = %{libversion} +Prefix: /usr + + +%description +BibleTime %{version}-%{release} is a free and easy to use bible study tool for UNIX systems. + +BibleTime provides easy handling of digitalized texts (Bibles, commentaries and lexicons) and powerful features to work with these texts (search in texts, write own notes, save, print etc.). Bibletime is a frontend for the SWORD Bible Framework. + +This is a relocatable package, you can install it on different target with +rpm -Uvh bibletime-xxx.rpm --prefix /usr/local/opt/apps/noncommercial +default is %{_prefix} + +The SWORD Project is an effort to create an ever expanding software package for research and study of God and His Word. The SWORD Bible Framework allows easy manipulation of Bible texts, commentaries, lexicons, dictionaries, etc. Many frontends are build using this framework. An installed module set may be shared between any frontend using the framework. + +This rpm was compiled on a %{ostype} %{osversion} system for %{buildarch} class cpu's. + +This RPM has these compiled options Sword is compiled %{swordlibs} and KDE/QT is compiled %{kdelibs}. + +Although this binary no longer requires sword to run the source.rpm will not build correctly +without the sword-devel package installed. + +%prep +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/%{name}-%{version} + +# For use with mandrake menu system +mkdir -p $RPM_BUILD_ROOT%{_menudir} + +mkdir -p $RPM_BUILD_ROOT/usr/share/config + +# generate directories for sword if building static +if [ %{swordlibs} = "static" ] ; then + mkdir -p $RPM_BUILD_ROOT%{SwordPath} + mkdir -p $RPM_BUILD_ROOT%{ModsPath} +fi + + +%setup -q +tar jxvf %{SOURCE2} +if [ %{ostype} = "Mandrake" ] ; then + %if %build_menus + #Icons for Mandrake menu system + tar jxvf %{SOURCE1} + %endif + export KDEDIR=/usr QTDIR=/usr/lib/qt2 +elif [%{ostype} = "SuSE"] ; then + export KDEDIR=/opt/kde2 QTDIR=/usr/lib/qt2 +else + echo "Using $KDEDIR as KDE2 directory"; + echo "Using $QTDIR as QT 2.2.x directory"; + echo "If the directories are not correct please set them using \"export KDEDIR= QTDIR=\"" + sleep 5 +fi + +make -f Makefile.cvs + +if [ %{swordlibs} = "static" ] ; then + ./configure --enable-static-sword; +else + ./configure; +fi + +make -j2 + +%install +make prefix=$RPM_BUILD_ROOT%{prefix} install + +# Copy Sword language.conf files to our install dir +mkdir -p $RPM_BUILD_ROOT%{SwordPath}/locales.d +cp locales.d/*.conf $RPM_BUILD_ROOT%{SwordPath}/locales.d/ + +# Create Sword globals.conf for using bibletime without sword installed. +cat << EOF >$RPM_BUILD_ROOT%{ModsPath}/globals.conf + [Globals] +EOF + +# For use with mandrake menu system +cat << EOF > $RPM_BUILD_ROOT%{_menudir}/%{name} +?package(bibletime):command="/usr/bin/bibletime" icon="bibletime.xpm" \ + needs="X11" section="Applications/Bible Study/" title="Bibletime" \ + longtitle="An easy to use Bible study tool." +EOF + +# For use with mandrake menu system +# icons: this is for the mandrake menu system +%if %build_menus + mkdir -p $RPM_BUILD_ROOT%{_liconsdir} + mkdir -p $RPM_BUILD_ROOT%{_iconsdir} + mkdir -p $RPM_BUILD_ROOT%{_miconsdir} + cd $RPM_BUILD_DIR/%{name}-%{version} + install -m 644 %{name}_16.xpm $RPM_BUILD_ROOT%{_miconsdir}/%{name}.xpm + install -m 644 %{name}_32.xpm $RPM_BUILD_ROOT%{_iconsdir}/%{name}.xpm + install -m 644 %{name}_48.xpm $RPM_BUILD_ROOT%{_liconsdir}/%{name}.xpm +%endif + +%post +# this is for creation of the sword.conf for systems that are using bibletime without Sword installed. +if [ -f /etc/sword.conf ] ; then + echo "sword.conf already exists skiping sword.conf creation." ; +else +cat << EOF >/etc/sword.conf +[Install] +DataPath=%{SwordPath} +EOF +fi + +/sbin/ldconfig + +# For use with mandrake menu system +if [ %{ostype} = "Mandrake" ] ; then + %{update_menus} +fi + +%postun + +# For use with mandrake menu system +if [ %{ostype} = "Mandrake" ] ; then + %{clean_menus} +fi + +/sbin/ldconfig + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +#Sword config files +%config %{ModsPath}/globals.conf +%config %{SwordPath}/locales.d/*.conf +# global BibleTime config files +%config %{prefix}/share/config/bt-printing +%{prefix}/bin/bibletime +%{prefix}/share/applnk/Applications/* +%{prefix}/share/apps/bibletime/* +%{prefix}/share/icons/* +# For use with mandrake menu system +%if %build_menus +%{_menudir}/%{name} +%endif + +%changelog +* Mon Apr 8 2002 Brook Humphrey bibletime-1.1 + +- Added to the spec to better handle mandrake menus during compile. Now should be compatable with all os's. + +- added locals.d source to build. This removes dependecy on sword being installed. Will make seperate package for this later. + + +* Fri Mar 31 2002 Joachim Ansorg + +- Made including the book translations working finally. + +- Fixed SPEC files to work with SuSE + + +* Thu Feb 7 2002 Brook Humphrey bibletime-1.0.2 + +- changed compile time options to mach bibletime spec included with source files + +- compiled on mandrake 8.2 + + +* Fri Sep 7 2001 Joachim Ansorg + +- Added the bookname files in the file list + +* Tue Jul 10 2001 Brook Humphrey bibletime-1.0.1-Mandrake8.0.4mdk + +- Recompile because of dependecy problems. + +* Tue Jul 10 2001 Brook Humphrey bibletime-1.0.1-Mandrake8.0.1mdk + +- bug fix release bibletime-1.0.1 + +- adda extra compile options to spec file. + +- Merged in suse changes for compileing on SuSE + +* Sun May 27 2001 Brook Humphrey + +- Trying different variations of static compiles again. + +- Still using cvs sources while waiting for 1.0 release. + +* Thu May 24 2001 Brook Humphrey + +- Trying for x static and whatever else we can get into it. + +- No X for today Got libz to compile in but it causes segfault. + +* Wed May 23 2001 Brook Humphrey + +- Yet another try at static qt. + +- Qt static works now. + +* Mon May 21 2001 Brook Humphrey + +- Static is working for kde and a few other libs but not qt yet. + +- Testing another patch today to try to get qt compiled static. + +* Sun May 20 2001 Brook Humphrey + +- Cleaned up spec some more(stupid spelling error's) + +- static compile not working today so added option to compile kde and sword as static seperately + +* Sat May 19 2001 Brook Humphrey + +- Cleaned up spec some more and added a few more comments + +- Changed spec to automaticly do parts concerning static and Mandrake menus + +- All info can be set in defines at top of spec file no other changes should need to be made + +- Fixed patch to compile static should now compile static with kde libs + +- Test to compile with qt as static also + +* Sun May 13 2001 Brook Humphrey + +- cleaned up spec file and added more comments for easier reading. + +- changed sword.conf instelation to check for previous versions of sword.conf + +- If found a new sword.conf is not created + +- Made a patch to hopefully compile kde and other libs as atatic + +- static compile didn't work for today. + +* Tue May 8 2001 Brook Humphrey + +- Updated package to be relocatable + +- added sword directories and sword.conf to install + +* Mon Apr 30 2001 Brook Humphrey + +- Changed to build staticly + +- added more mandrake macros to spec file + +* Mon Apr 23 2001 Brook Humphrey + +- made changes to enable compile of cvs tree + +* Wed Mar 14 2001 Brook Humphrey + +- updated to use mandrake menu sysem + diff --git a/bibletime.spec.in b/bibletime.spec.in new file mode 100644 index 0000000..717fe78 --- /dev/null +++ b/bibletime.spec.in @@ -0,0 +1,314 @@ +%define name @PACKAGE@ +%define version @VERSION@ + +# This should not be changed but set this to static or dynamic. +# Sword should always be set to static for these builds. +%define swordlibs static + +# this needs to be changed depending on build number +# and weather or not it is static +%define release 1 + +# This should be set to your os. +# Possible values are Mandrake, Red Hat, Turbolinux, Caldera, SuSE, Debian, etc. +%define ostype @DISTRIBUTION@ + +# This should be set to the version of your OS (6.0, 6.1, 6.2, 7.0, 7.1, 7.2, 8.0, etc.) +%define osversion @DISTRIBUTION_VERSION@ + +# This is your cpu i486, i586, i686, ppc, sparc, alfa, etc. +%define buildarch i586 + +# This the RPM group on your system that this will installed into. +# Graphical desktop/KDE, X11/apps, etc. +%define rpmgroup @RPM_GROUP@ + +# this is were the sword modules will be installed on your system. +# /usr/local/sword, /usr/share/sword, /opt/local/sword, etc. +# default is /usr/share/sword +%define SwordPath /usr/share/sword +%define ModsPath %{SwordPath}/mods.d + +# This for Mandrake menus if you have another system do not edit this line. it is for +# compatability with those systems. +%define build_menus 1 +%define _menudir /usr/lib/menu +# Nothing else should need to be changed. +# Please do not edit below this line unless you know what you are doing. + +Summary: BibleTime %{version} is an easy to use Bible study tool for KDE2. +Name: %{name} +Version: %{version} +Release: %{release} +#Icon: bibletime.xpm +Copyright: GPL +Vendor: The team of BibleTime +Url: http://www.bibletime.de +Packager: Brook Humphrey , Joachim Ansorg +Group: %{rpmgroup} +BuildArch: %{buildarch} +Source0: %{name}-%{version}.tar.bz2 + +# For use with mandrake menu system. +%if %build_menus +Source1: bibletime_icons.tar.bz2 +%endif + +# This source comes from sword and will conflict woth sword if it is installed so we will make it a seperarte package. +Source2: locales.d.tar.bz2 + +BuildRoot: %{_tmppath}/%{name}-%{version}--rootbibletime +Provides: sword-base sword = %{libversion} +Prefix: @RPM_PREFIX@ + + +%description +BibleTime %{version}-%{release} is a free and easy to use bible study tool for UNIX systems. + +BibleTime provides easy handling of digitalized texts (Bibles, commentaries and lexicons) and powerful features to work with these texts (search in texts, write own notes, save, print etc.). Bibletime is a frontend for the SWORD Bible Framework. + +This is a relocatable package, you can install it on different target with +rpm -Uvh bibletime-xxx.rpm --prefix /usr/local/opt/apps/noncommercial +default is %{_prefix} + +The SWORD Project is an effort to create an ever expanding software package for research and study of God and His Word. The SWORD Bible Framework allows easy manipulation of Bible texts, commentaries, lexicons, dictionaries, etc. Many frontends are build using this framework. An installed module set may be shared between any frontend using the framework. + +This rpm was compiled on a %{ostype} %{osversion} system for %{buildarch} class cpu's. + +This RPM has these compiled options Sword is compiled %{swordlibs} and KDE/QT is compiled %{kdelibs}. + +Although this binary no longer requires sword to run the source.rpm will not build correctly +without the sword-devel package installed. + +%prep +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/%{name}-%{version} + +# For use with mandrake menu system +mkdir -p $RPM_BUILD_ROOT%{_menudir} + +mkdir -p $RPM_BUILD_ROOT/usr/share/config + +# generate directories for sword if building static +if [ %{swordlibs} = "static" ] ; then + mkdir -p $RPM_BUILD_ROOT%{SwordPath} + mkdir -p $RPM_BUILD_ROOT%{ModsPath} +fi + + +%setup -q +tar jxvf %{SOURCE2} +if [ %{ostype} = "Mandrake" ] ; then + %if %build_menus + #Icons for Mandrake menu system + tar jxvf %{SOURCE1} + %endif + export KDEDIR=/usr QTDIR=/usr/lib/qt2 +elif [%{ostype} = "SuSE"] ; then + export KDEDIR=/opt/kde2 QTDIR=/usr/lib/qt2 +else + echo "Using $KDEDIR as KDE2 directory"; + echo "Using $QTDIR as QT 2.2.x directory"; + echo "If the directories are not correct please set them using \"export KDEDIR= QTDIR=\"" + sleep 5 +fi + +make -f Makefile.cvs + +if [ %{swordlibs} = "static" ] ; then + ./configure --enable-static-sword; +else + ./configure; +fi + +make -j2 + +%install +make prefix=$RPM_BUILD_ROOT%{prefix} install + +# Copy Sword language.conf files to our install dir +mkdir -p $RPM_BUILD_ROOT%{SwordPath}/locales.d +cp locales.d/*.conf $RPM_BUILD_ROOT%{SwordPath}/locales.d/ + +# Create Sword globals.conf for using bibletime without sword installed. +cat << EOF >$RPM_BUILD_ROOT%{ModsPath}/globals.conf + [Globals] +EOF + +# For use with mandrake menu system +cat << EOF > $RPM_BUILD_ROOT%{_menudir}/%{name} +?package(bibletime):command="/usr/bin/bibletime" icon="bibletime.xpm" \ + needs="X11" section="Applications/Bible Study/" title="Bibletime" \ + longtitle="An easy to use Bible study tool." +EOF + +# For use with mandrake menu system +# icons: this is for the mandrake menu system +%if %build_menus + mkdir -p $RPM_BUILD_ROOT%{_liconsdir} + mkdir -p $RPM_BUILD_ROOT%{_iconsdir} + mkdir -p $RPM_BUILD_ROOT%{_miconsdir} + cd $RPM_BUILD_DIR/%{name}-%{version} + install -m 644 %{name}_16.xpm $RPM_BUILD_ROOT%{_miconsdir}/%{name}.xpm + install -m 644 %{name}_32.xpm $RPM_BUILD_ROOT%{_iconsdir}/%{name}.xpm + install -m 644 %{name}_48.xpm $RPM_BUILD_ROOT%{_liconsdir}/%{name}.xpm +%endif + +%post +# this is for creation of the sword.conf for systems that are using bibletime without Sword installed. +if [ -f /etc/sword.conf ] ; then + echo "sword.conf already exists skiping sword.conf creation." ; +else +cat << EOF >/etc/sword.conf +[Install] +DataPath=%{SwordPath} +EOF +fi + +/sbin/ldconfig + +# For use with mandrake menu system +if [ %{ostype} = "Mandrake" ] ; then + %{update_menus} +fi + +%postun + +# For use with mandrake menu system +if [ %{ostype} = "Mandrake" ] ; then + %{clean_menus} +fi + +/sbin/ldconfig + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +#Sword config files +%config %{ModsPath}/globals.conf +%config %{SwordPath}/locales.d/*.conf +# global BibleTime config files +%config %{prefix}/share/config/bt-printing +%{prefix}/bin/bibletime +%{prefix}/share/applnk/Applications/* +%{prefix}/share/apps/bibletime/* +%{prefix}/share/icons/* +# For use with mandrake menu system +%if %build_menus +%{_menudir}/%{name} +%endif + +%changelog +* Mon Apr 8 2002 Brook Humphrey bibletime-1.1 + +- Added to the spec to better handle mandrake menus during compile. Now should be compatable with all os's. + +- added locals.d source to build. This removes dependecy on sword being installed. Will make seperate package for this later. + + +* Fri Mar 31 2002 Joachim Ansorg + +- Made including the book translations working finally. + +- Fixed SPEC files to work with SuSE + + +* Thu Feb 7 2002 Brook Humphrey bibletime-1.0.2 + +- changed compile time options to mach bibletime spec included with source files + +- compiled on mandrake 8.2 + + +* Fri Sep 7 2001 Joachim Ansorg + +- Added the bookname files in the file list + +* Tue Jul 10 2001 Brook Humphrey bibletime-1.0.1-Mandrake8.0.4mdk + +- Recompile because of dependecy problems. + +* Tue Jul 10 2001 Brook Humphrey bibletime-1.0.1-Mandrake8.0.1mdk + +- bug fix release bibletime-1.0.1 + +- adda extra compile options to spec file. + +- Merged in suse changes for compileing on SuSE + +* Sun May 27 2001 Brook Humphrey + +- Trying different variations of static compiles again. + +- Still using cvs sources while waiting for 1.0 release. + +* Thu May 24 2001 Brook Humphrey + +- Trying for x static and whatever else we can get into it. + +- No X for today Got libz to compile in but it causes segfault. + +* Wed May 23 2001 Brook Humphrey + +- Yet another try at static qt. + +- Qt static works now. + +* Mon May 21 2001 Brook Humphrey + +- Static is working for kde and a few other libs but not qt yet. + +- Testing another patch today to try to get qt compiled static. + +* Sun May 20 2001 Brook Humphrey + +- Cleaned up spec some more(stupid spelling error's) + +- static compile not working today so added option to compile kde and sword as static seperately + +* Sat May 19 2001 Brook Humphrey + +- Cleaned up spec some more and added a few more comments + +- Changed spec to automaticly do parts concerning static and Mandrake menus + +- All info can be set in defines at top of spec file no other changes should need to be made + +- Fixed patch to compile static should now compile static with kde libs + +- Test to compile with qt as static also + +* Sun May 13 2001 Brook Humphrey + +- cleaned up spec file and added more comments for easier reading. + +- changed sword.conf instelation to check for previous versions of sword.conf + +- If found a new sword.conf is not created + +- Made a patch to hopefully compile kde and other libs as atatic + +- static compile didn't work for today. + +* Tue May 8 2001 Brook Humphrey + +- Updated package to be relocatable + +- added sword directories and sword.conf to install + +* Mon Apr 30 2001 Brook Humphrey + +- Changed to build staticly + +- added more mandrake macros to spec file + +* Mon Apr 23 2001 Brook Humphrey + +- made changes to enable compile of cvs tree + +* Wed Mar 14 2001 Brook Humphrey + +- updated to use mandrake menu sysem + diff --git a/bibletime.start b/bibletime.start new file mode 100755 index 0000000..156b975 --- /dev/null +++ b/bibletime.start @@ -0,0 +1,11 @@ +#!/bin/sh + +############################################################# +# +# This script sets system variables and launches bibletime. # +# +############################################################# + +export KDEDIRS=/usr/local/kde2 +export PATH=$KDEDIRS/bin:$PATH +exec bibletime \ No newline at end of file diff --git a/bibletime/Makefile.am b/bibletime/Makefile.am new file mode 100644 index 0000000..ecb8124 --- /dev/null +++ b/bibletime/Makefile.am @@ -0,0 +1,80 @@ +bibletime_SOURCES = \ +bibletime_init.cpp \ +bibletime_slots.cpp \ +bibletime.cpp \ +main.cpp + +bibletime_LDADD = \ +./printing/libprinting.a \ +./frontend/presenters/libpresenters.a \ +./frontend/keychooser/libkeychooser.a \ +./frontend/groupmanager/libgroupmanager.a \ +./frontend/searchdialog/libsearchdialog.a \ +./frontend/libfrontend.a \ +./frontend/thirdparty/qt3stuff/libqt3stuff.a \ +./frontend/thirdparty/libthirdparty.a \ +./backend/libbackend.a \ +-lXext \ +$(LIB_QT) \ +$(LIB_KDECORE) \ +$(LIB_KDEUI) \ +-lkdeprint \ +$(LIB_KFILE) \ +$(LIB_X11) \ +$(LIB_SWORD) \ +$(LIBSOCKET) + +SUBDIRS = backend printing frontend xml pics util + +all_headers = bibletime.h \ +resource.h \ +whatsthisdef.h \ +tooltipdef.h \ +bt-printing + +EXTRA_DIST = $(bibletime_SOURCES) $(all_headers) + +# this 10 paths are KDE specific. Use them: +# kde_htmldir Where your docs should go to. (contains lang subdirs) +# kde_appsdir Where your application file (.kdelnk) should go to. +# kde_icondir Where your icon should go to. +# kde_minidir Where your mini icon should go to. +# kde_datadir Where you install application data. (Use a subdir) +# kde_locale Where translation files should go to.(contains lang subdirs) +# kde_cgidir Where cgi-bin executables should go to. +# kde_confdir Where config files should go to. +# kde_mimedir Where mimetypes should go to. +# kde_toolbardir Where general toolbar icons should go to. +# kde_wallpaperdir Where general wallpapers should go to. + +# set the include path for X, qt, KDE and Sword +INCLUDES = $(all_includes) + +# claim, which subdirectories you want to install +# you can add here more. This one gets installed +bin_PROGRAMS = bibletime + +bibletime_METASOURCES = AUTO + +# the library search path. +bibletime_LDFLAGS = $(BT_LDFLAGS) $(all_libraries) $(KDE_RPATH) + +# them while "make clean", use CLEANFILES +DISTCLEANFILES = $(bibletime_METASOURCES) + +# make messages.po. Move this one to ../po/ and "make merge" in po +# the -x is for skipping messages already translated in kdelibs +#messages: +# $(XGETTEXT) -C -ki18n -x $(KDEDIR)/include/kde.pot `find . -name \*.h -o -name \*.cpp -o -name \*.cc` -o ../po/bibletime.pot + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(kde_confdir) + $(INSTALL_DATA) bt-printing $(DESTDIR)$(kde_confdir)/bt-printing + +uninstall-local: + -rm -f $(DESTDIR)$(kde_confdir)/bt-printing + +rpm: dist + + + diff --git a/bibletime/Makefile.in b/bibletime/Makefile.in new file mode 100644 index 0000000..36fd6cb --- /dev/null +++ b/bibletime/Makefile.in @@ -0,0 +1,753 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +bibletime_SOURCES = bibletime_init.cpp bibletime_slots.cpp bibletime.cpp main.cpp + + +bibletime_LDADD = ./printing/libprinting.a ./frontend/presenters/libpresenters.a ./frontend/keychooser/libkeychooser.a ./frontend/groupmanager/libgroupmanager.a ./frontend/searchdialog/libsearchdialog.a ./frontend/libfrontend.a ./frontend/thirdparty/qt3stuff/libqt3stuff.a ./frontend/thirdparty/libthirdparty.a ./backend/libbackend.a -lXext $(LIB_QT) $(LIB_KDECORE) $(LIB_KDEUI) -lkdeprint $(LIB_KFILE) $(LIB_X11) $(LIB_SWORD) $(LIBSOCKET) + + +SUBDIRS = backend printing frontend xml pics util + +all_headers = bibletime.h resource.h whatsthisdef.h tooltipdef.h bt-printing + + +EXTRA_DIST = $(bibletime_SOURCES) $(all_headers) + +# this 10 paths are KDE specific. Use them: +# kde_htmldir Where your docs should go to. (contains lang subdirs) +# kde_appsdir Where your application file (.kdelnk) should go to. +# kde_icondir Where your icon should go to. +# kde_minidir Where your mini icon should go to. +# kde_datadir Where you install application data. (Use a subdir) +# kde_locale Where translation files should go to.(contains lang subdirs) +# kde_cgidir Where cgi-bin executables should go to. +# kde_confdir Where config files should go to. +# kde_mimedir Where mimetypes should go to. +# kde_toolbardir Where general toolbar icons should go to. +# kde_wallpaperdir Where general wallpapers should go to. + +# set the include path for X, qt, KDE and Sword +INCLUDES = $(all_includes) + +# claim, which subdirectories you want to install +# you can add here more. This one gets installed +bin_PROGRAMS = bibletime + +#>- bibletime_METASOURCES = AUTO + +# the library search path. +bibletime_LDFLAGS = $(BT_LDFLAGS) $(all_libraries) $(KDE_RPATH) + +# them while "make clean", use CLEANFILES +DISTCLEANFILES = $(bibletime_METASOURCES) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../config.h +CONFIG_CLEAN_FILES = +bin_PROGRAMS = bibletime$(EXEEXT) +PROGRAMS = $(bin_PROGRAMS) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +#>- bibletime_OBJECTS = bibletime_init.$(OBJEXT) bibletime_slots.$(OBJEXT) \ +#>- bibletime.$(OBJEXT) main.$(OBJEXT) +#>+ 7 +bibletime_final_OBJECTS = bibletime.all_cpp.o +bibletime_nofinal_OBJECTS = bibletime_init.$(OBJEXT) bibletime_slots.$(OBJEXT) \ +bibletime.$(OBJEXT) main.$(OBJEXT)\ +bibletime.moc.o \ +bibletime_meta_unload.o +@KDE_USE_FINAL_FALSE@bibletime_OBJECTS = $(bibletime_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@bibletime_OBJECTS = $(bibletime_final_OBJECTS) +bibletime_DEPENDENCIES = ./printing/libprinting.a \ +./frontend/presenters/libpresenters.a \ +./frontend/keychooser/libkeychooser.a \ +./frontend/groupmanager/libgroupmanager.a \ +./frontend/searchdialog/libsearchdialog.a ./frontend/libfrontend.a \ +./frontend/thirdparty/qt3stuff/libqt3stuff.a \ +./frontend/thirdparty/libthirdparty.a ./backend/libbackend.a +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=bibletime.h resource.h whatsthisdef.h tooltipdef.h bt-printing + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/bibletime.P .deps/bibletime_init.P \ +#>- .deps/bibletime_slots.P .deps/main.P +#>+ 6 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/bibletime.moc.P $(DEPDIR)/bibletime_meta_unload.P $(DEPDIR)/bibletime.all_cpp.P \ + .deps/bibletime.P .deps/bibletime_init.P \ +.deps/bibletime_slots.P .deps/main.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/bibletime.moc.P $(DEPDIR)/bibletime_meta_unload.P .deps/bibletime.P .deps/bibletime_init.P \ +.deps/bibletime_slots.P .deps/main.P + +SOURCES = $(bibletime_SOURCES) +OBJECTS = $(bibletime_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-binPROGRAMS: + +clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + +distclean-binPROGRAMS: + +maintainer-clean-binPROGRAMS: + +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(bindir) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + list='$(bin_PROGRAMS)'; for p in $$list; do \ + rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + done + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +bibletime$(EXEEXT): $(bibletime_OBJECTS) $(bibletime_DEPENDENCIES) + @rm -f bibletime$(EXEEXT) + $(CXXLINK) $(bibletime_LDFLAGS) $(bibletime_OBJECTS) $(bibletime_LDADD) $(LIBS) +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: install-binPROGRAMS +install-exec: install-exec-recursive + +install-data-am: install-data-local +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: uninstall-binPROGRAMS uninstall-local +uninstall: uninstall-recursive +all-am: Makefile $(PROGRAMS) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(bindir) + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-binPROGRAMS mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +#>- clean-am: clean-binPROGRAMS clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-binPROGRAMS clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-binPROGRAMS distclean-compile distclean-libtool \ + distclean-tags distclean-depend distclean-generic \ + clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-binPROGRAMS \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \ +maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-local install-data-am install-data install-am install \ +uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs-am installdirs mostlyclean-generic distclean-generic \ +clean-generic maintainer-clean-generic clean mostlyclean distclean \ +maintainer-clean + + +# make messages.po. Move this one to ../po/ and "make merge" in po +# the -x is for skipping messages already translated in kdelibs +#messages: +# $(XGETTEXT) -C -ki18n -x $(KDEDIR)/include/kde.pot `find . -name \*.h -o -name \*.cpp -o -name \*.cc` -o ../po/bibletime.pot + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(kde_confdir) + $(INSTALL_DATA) bt-printing $(DESTDIR)$(kde_confdir)/bt-printing + +uninstall-local: + -rm -f $(DESTDIR)$(kde_confdir)/bt-printing + +rpm: dist + +# 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: + +#>+ 3 +bibletime.moc.cpp: $(srcdir)/bibletime.h + $(MOC) $(srcdir)/bibletime.h -o bibletime.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f bibletime.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/Makefile.in + + +#>+ 10 +bibletime_meta_unload.cpp: bibletime.moc.cpp + @echo 'creating bibletime_meta_unload.cpp' + @-rm -f bibletime_meta_unload.cpp + @echo 'static const char * _metalist_bibletime[] = {' > bibletime_meta_unload.cpp + @cat bibletime.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> bibletime_meta_unload.cpp + @echo '0};' >> bibletime_meta_unload.cpp + @echo '#include ' >> bibletime_meta_unload.cpp + @echo '_UNLOAD(bibletime)' >> bibletime_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f bibletime_meta_unload.cpp + +#>+ 11 +bibletime.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/bibletime_init.cpp $(srcdir)/bibletime_slots.cpp $(srcdir)/bibletime.cpp $(srcdir)/main.cpp bibletime_meta_unload.cpp bibletime.moc.cpp + @echo 'creating bibletime.all_cpp.cpp ...'; \ + rm -f bibletime.all_cpp.files bibletime.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> bibletime.all_cpp.final; \ + for file in bibletime_init.cpp bibletime_slots.cpp bibletime.cpp main.cpp bibletime_meta_unload.cpp bibletime.moc.cpp; do \ + echo "#include \"$$file\"" >> bibletime.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> bibletime.all_cpp.final; \ + done; \ + cat bibletime.all_cpp.final bibletime.all_cpp.files > bibletime.all_cpp.cpp; \ + rm -f bibletime.all_cpp.final bibletime.all_cpp.files + +#>+ 3 +clean-final: + -rm -f bibletime.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) bibletime_OBJECTS="$(bibletime_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) bibletime_OBJECTS="$(bibletime_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/backend/Makefile.am b/bibletime/backend/Makefile.am new file mode 100644 index 0000000..ca264b9 --- /dev/null +++ b/bibletime/backend/Makefile.am @@ -0,0 +1,47 @@ +KDE_OPTIONS = qt-only +libbackend_a_METASOURCES = AUTO +noinst_LIBRARIES = libbackend.a + +INCLUDES = $(all_includes) + +libbackend_a_SOURCES = \ +cswordmodulesearch.cpp \ +chtmlchapterdisplay.cpp \ +chtmlentrydisplay.cpp \ +chtmlbookdisplay.cpp \ +cswordbackend.cpp \ +cswordkey.cpp \ +cswordldkey.cpp \ +cswordversekey.cpp \ +cswordmoduleinfo.cpp \ +cswordlexiconmoduleinfo.cpp \ +cswordcommentarymoduleinfo.cpp \ +cswordbiblemoduleinfo.cpp \ +cswordbookmoduleinfo.cpp \ +cswordtreekey.cpp \ +creferencemanager.cpp \ +bt_thmlhtml.cpp \ +bt_gbfhtml.cpp \ +bt_basicfilter.cpp + +all_headers = cswordbiblemoduleinfo.h \ +cswordcommentarymoduleinfo.h \ +cswordlexiconmoduleinfo.h \ +cswordkey.h \ +cswordversekey.h \ +cswordldkey.h \ +cswordbackend.h \ +cswordmoduleinfo.h \ +chtmlentrydisplay.h \ +chtmlchapterdisplay.h \ +chtmlbookdisplay.h \ +cswordmodulesearch.h \ +creferencemanager.h \ +cswordbookmoduleinfo.h \ +cswordtreekey.h \ +bt_thmlhtml.h \ +bt_gbfhtml.h \ +bt_basicfilter.h + +EXTRA_DIST = $(libbackend_a_SOURCES) $(all_headers) + diff --git a/bibletime/backend/Makefile.in b/bibletime/backend/Makefile.in new file mode 100644 index 0000000..9372c56 --- /dev/null +++ b/bibletime/backend/Makefile.in @@ -0,0 +1,622 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_OPTIONS = qt-only +#>- libbackend_a_METASOURCES = AUTO +noinst_LIBRARIES = libbackend.a + +INCLUDES = $(all_includes) + +libbackend_a_SOURCES = cswordmodulesearch.cpp chtmlchapterdisplay.cpp chtmlentrydisplay.cpp chtmlbookdisplay.cpp cswordbackend.cpp cswordkey.cpp cswordldkey.cpp cswordversekey.cpp cswordmoduleinfo.cpp cswordlexiconmoduleinfo.cpp cswordcommentarymoduleinfo.cpp cswordbiblemoduleinfo.cpp cswordbookmoduleinfo.cpp cswordtreekey.cpp creferencemanager.cpp bt_thmlhtml.cpp bt_gbfhtml.cpp bt_basicfilter.cpp + + +all_headers = cswordbiblemoduleinfo.h cswordcommentarymoduleinfo.h cswordlexiconmoduleinfo.h cswordkey.h cswordversekey.h cswordldkey.h cswordbackend.h cswordmoduleinfo.h chtmlentrydisplay.h chtmlchapterdisplay.h chtmlbookdisplay.h cswordmodulesearch.h creferencemanager.h cswordbookmoduleinfo.h cswordtreekey.h bt_thmlhtml.h bt_gbfhtml.h bt_basicfilter.h + + +EXTRA_DIST = $(libbackend_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libbackend_a_LIBADD = +#>- libbackend_a_OBJECTS = cswordmodulesearch.$(OBJEXT) \ +#>- chtmlchapterdisplay.$(OBJEXT) chtmlentrydisplay.$(OBJEXT) \ +#>- chtmlbookdisplay.$(OBJEXT) cswordbackend.$(OBJEXT) cswordkey.$(OBJEXT) \ +#>- cswordldkey.$(OBJEXT) cswordversekey.$(OBJEXT) \ +#>- cswordmoduleinfo.$(OBJEXT) cswordlexiconmoduleinfo.$(OBJEXT) \ +#>- cswordcommentarymoduleinfo.$(OBJEXT) cswordbiblemoduleinfo.$(OBJEXT) \ +#>- cswordbookmoduleinfo.$(OBJEXT) cswordtreekey.$(OBJEXT) \ +#>- creferencemanager.$(OBJEXT) bt_thmlhtml.$(OBJEXT) bt_gbfhtml.$(OBJEXT) \ +#>- bt_basicfilter.$(OBJEXT) +#>+ 12 +libbackend_a_final_OBJECTS = libbackend_a.all_cpp.o +libbackend_a_nofinal_OBJECTS = cswordmodulesearch.$(OBJEXT) \ +chtmlchapterdisplay.$(OBJEXT) chtmlentrydisplay.$(OBJEXT) \ +chtmlbookdisplay.$(OBJEXT) cswordbackend.$(OBJEXT) cswordkey.$(OBJEXT) \ +cswordldkey.$(OBJEXT) cswordversekey.$(OBJEXT) \ +cswordmoduleinfo.$(OBJEXT) cswordlexiconmoduleinfo.$(OBJEXT) \ +cswordcommentarymoduleinfo.$(OBJEXT) cswordbiblemoduleinfo.$(OBJEXT) \ +cswordbookmoduleinfo.$(OBJEXT) cswordtreekey.$(OBJEXT) \ +creferencemanager.$(OBJEXT) bt_thmlhtml.$(OBJEXT) bt_gbfhtml.$(OBJEXT) \ +bt_basicfilter.$(OBJEXT) +@KDE_USE_FINAL_FALSE@libbackend_a_OBJECTS = $(libbackend_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libbackend_a_OBJECTS = $(libbackend_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=bt_thmlhtml.h creferencemanager.h cswordtreekey.h cswordbookmoduleinfo.h cswordversekey.h cswordmoduleinfo.h chtmlbookdisplay.h bt_basicfilter.h cswordbackend.h cswordbiblemoduleinfo.h cswordcommentarymoduleinfo.h chtmlentrydisplay.h st31vJFM cswordldkey.h cswordlexiconmoduleinfo.h chtmlchapterdisplay.h cswordmodulesearch.h bt_gbfhtml.h cswordkey.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/bt_basicfilter.P .deps/bt_gbfhtml.P \ +#>- .deps/bt_thmlhtml.P .deps/chtmlbookdisplay.P \ +#>- .deps/chtmlchapterdisplay.P .deps/chtmlentrydisplay.P \ +#>- .deps/creferencemanager.P .deps/cswordbackend.P \ +#>- .deps/cswordbiblemoduleinfo.P .deps/cswordbookmoduleinfo.P \ +#>- .deps/cswordcommentarymoduleinfo.P .deps/cswordkey.P \ +#>- .deps/cswordldkey.P .deps/cswordlexiconmoduleinfo.P \ +#>- .deps/cswordmoduleinfo.P .deps/cswordmodulesearch.P \ +#>- .deps/cswordtreekey.P .deps/cswordversekey.P +#>+ 20 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/libbackend_a.all_cpp.P \ + .deps/bt_basicfilter.P .deps/bt_gbfhtml.P \ +.deps/bt_thmlhtml.P .deps/chtmlbookdisplay.P \ +.deps/chtmlchapterdisplay.P .deps/chtmlentrydisplay.P \ +.deps/creferencemanager.P .deps/cswordbackend.P \ +.deps/cswordbiblemoduleinfo.P .deps/cswordbookmoduleinfo.P \ +.deps/cswordcommentarymoduleinfo.P .deps/cswordkey.P \ +.deps/cswordldkey.P .deps/cswordlexiconmoduleinfo.P \ +.deps/cswordmoduleinfo.P .deps/cswordmodulesearch.P \ +.deps/cswordtreekey.P .deps/cswordversekey.P +@KDE_USE_FINAL_FALSE@DEP_FILES = .deps/bt_basicfilter.P .deps/bt_gbfhtml.P \ +.deps/bt_thmlhtml.P .deps/chtmlbookdisplay.P \ +.deps/chtmlchapterdisplay.P .deps/chtmlentrydisplay.P \ +.deps/creferencemanager.P .deps/cswordbackend.P \ +.deps/cswordbiblemoduleinfo.P .deps/cswordbookmoduleinfo.P \ +.deps/cswordcommentarymoduleinfo.P .deps/cswordkey.P \ +.deps/cswordldkey.P .deps/cswordlexiconmoduleinfo.P \ +.deps/cswordmoduleinfo.P .deps/cswordmodulesearch.P \ +.deps/cswordtreekey.P .deps/cswordversekey.P + +SOURCES = $(libbackend_a_SOURCES) +OBJECTS = $(libbackend_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/backend/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/backend/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/backend/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libbackend.a: $(libbackend_a_OBJECTS) $(libbackend_a_DEPENDENCIES) + -rm -f libbackend.a + $(AR) cru libbackend.a $(libbackend_a_OBJECTS) $(libbackend_a_LIBADD) + $(RANLIB) libbackend.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/backend + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/backend/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/backend/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/backend/Makefile.in + + +#>+ 11 +libbackend_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/cswordmodulesearch.cpp $(srcdir)/chtmlchapterdisplay.cpp $(srcdir)/chtmlentrydisplay.cpp $(srcdir)/chtmlbookdisplay.cpp $(srcdir)/cswordbackend.cpp $(srcdir)/cswordkey.cpp $(srcdir)/cswordldkey.cpp $(srcdir)/cswordversekey.cpp $(srcdir)/cswordmoduleinfo.cpp $(srcdir)/cswordlexiconmoduleinfo.cpp $(srcdir)/cswordcommentarymoduleinfo.cpp $(srcdir)/cswordbiblemoduleinfo.cpp $(srcdir)/cswordbookmoduleinfo.cpp $(srcdir)/cswordtreekey.cpp $(srcdir)/creferencemanager.cpp $(srcdir)/bt_thmlhtml.cpp $(srcdir)/bt_gbfhtml.cpp $(srcdir)/bt_basicfilter.cpp + @echo 'creating libbackend_a.all_cpp.cpp ...'; \ + rm -f libbackend_a.all_cpp.files libbackend_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libbackend_a.all_cpp.final; \ + for file in cswordmodulesearch.cpp chtmlchapterdisplay.cpp chtmlentrydisplay.cpp chtmlbookdisplay.cpp cswordbackend.cpp cswordkey.cpp cswordldkey.cpp cswordversekey.cpp cswordmoduleinfo.cpp cswordlexiconmoduleinfo.cpp cswordcommentarymoduleinfo.cpp cswordbiblemoduleinfo.cpp cswordbookmoduleinfo.cpp cswordtreekey.cpp creferencemanager.cpp bt_thmlhtml.cpp bt_gbfhtml.cpp bt_basicfilter.cpp ; do \ + echo "#include \"$$file\"" >> libbackend_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libbackend_a.all_cpp.final; \ + done; \ + cat libbackend_a.all_cpp.final libbackend_a.all_cpp.files > libbackend_a.all_cpp.cpp; \ + rm -f libbackend_a.all_cpp.final libbackend_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libbackend_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libbackend_a_OBJECTS="$(libbackend_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libbackend_a_OBJECTS="$(libbackend_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/backend/bt_basicfilter.cpp b/bibletime/backend/bt_basicfilter.cpp new file mode 100644 index 0000000..1ce15d7 --- /dev/null +++ b/bibletime/backend/bt_basicfilter.cpp @@ -0,0 +1,202 @@ +/*************************************************************************** + bt_basicfilter.cpp - description + ------------------- + begin : Thu Nov 1 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ +//BIbleTime includes +#include +#include "bt_basicfilter.h" +#include "creferencemanager.h" +#include "cswordversekey.h" +#include "../frontend/cbtconfig.h" + +//Qt includes +#include +#include + +char BT_BASICFILTER::ProcessText (char *text, int maxlen, const SWKey *key, const SWModule *module){ + m_module = module; + m_key = key; + updateSettings(); + SWBasicFilter::ProcessText(text, maxlen, key, module); + + return 0; +} + +void BT_BASICFILTER::updateSettings(){ + strcpy(footnote_color, CBTConfig::get(CBTConfig::footnotesColor ).name().utf8()); + strcpy(strongs_color, CBTConfig::get(CBTConfig::strongsColor ).name().utf8()); + strcpy(morph_color, CBTConfig::get(CBTConfig::morphsColor ).name().utf8()); + strcpy(jesuswords_color,CBTConfig::get(CBTConfig::jesuswordsColor ).name().utf8()); + strcpy(swordref_color, CBTConfig::get(CBTConfig::swordRefColor ).name().utf8()); + strcpy(text_color, CBTConfig::get(CBTConfig::textColor ).name().utf8()); + strcpy(standard_bible, CReferenceManager::preferredModule(CReferenceManager::Bible).utf8()); + + updateTokens(); +} + + +/** Parses the verse reference ref and returns it. */ +const char* BT_BASICFILTER::parseSimpleRef(const char* ref) { + VerseKey parseKey; + SWModule* m = const_cast(m_module); + const char* lang = m ? m->Lang() : "en"; + parseKey.setLocale(lang); + + parseKey = (m_key ? (const char*)*m_key : "Genesis 1:1"); + ListKey list; + char* to = new char[5000]; + char* ret = to; + + QStringList refList = QStringList::split(QRegExp("[,.;]", false), QString::fromLocal8Bit(ref)); + int pos = 0; + for ( QStringList::Iterator it = refList.begin(); it != refList.end(); ++it, pos++ ) { + list = parseKey.ParseVerseList((*it).local8Bit(), parseKey, true); + + const int count = list.Count(); + for(int i = 0; i < count; i++) { + SWKey* key = list.GetElement(i); + VerseKey* vk = dynamic_cast(key); + + pushString(&to,"setLocale(lang); + vk->LowerBound().setLocale(lang); + vk->UpperBound().setLocale(lang); + } + if (vk && (const char*)vk->UpperBound() != (const char*)vk->LowerBound()) { + pushString(&to, "%s-%s\">%s", + (const char*)QString::fromLocal8Bit(vk->LowerBound()).utf8(), + (const char*)QString::fromLocal8Bit(vk->UpperBound()).utf8(), + (const char*)(*it).utf8() + ); + } + else { + pushString(&to, "%s\">%s", + (const char*)QString::fromLocal8Bit((const char*)*key).utf8(), + (const char*)(*it).utf8() + ); + } + (pos+1 < (int)refList.count()) ? pushString(&to, ", ") : pushString(&to, ""); + } + } + *to++ = '\0'; + return ret; //don't forget to delete it! +} + +const char* BT_BASICFILTER::parseThMLRef(const char* ref, const char* mod) { + char* to = new char[5000]; + char* ret = to; + const char* module = (mod ? mod : standard_bible); +// VerseKey parseKey = (m_key ? (const char*)*m_key : "Genesis 1:1"); +// ListKey list = parseKey.ParseVerseList(ref, parseKey, false); +// const int count = list.Count(); + +// for(int i = 0; i < count; i++) { +// SWKey* key = list.GetElement(i); +// VerseKey* vk = dynamic_cast(key); +// + pushString(&to,"UpperBound() != vk->LowerBound()) { +// pushString(&to, "%s-%s\">", +// (const char*)QString::fromLocal8Bit(vk->LowerBound()).utf8(), +// (const char*)QString::fromLocal8Bit(vk->UpperBound()).utf8() +// ); +// } +// else { + pushString(&to, "%s\">", + (const char*)QString::fromLocal8Bit(ref).utf8() + ); +// } +// (i+1 < refList.count()) ? pushString(&to, ", ") : pushString(&to, ""); +// } + *to++ = '\0'; + return ret; +} + +const char* BT_BASICFILTER::thmlRefEnd() { + return ""; +} + +/** This filter converts the RWP #Gen 1:1| style bible references to HTML */ +char BT_BASICFILTER::ProcessRWPRefs(char* text, int maxlen){ + char *to, *from, verse_str[500]; + int len; + + len = strlen(text) + 1; // shift string to right of buffer + if (len < maxlen) { + memmove(&text[maxlen - len], text, len); + from = &text[maxlen - len]; + } + else + from = text; + + for (to = text; *from; from++) { + if (*from == '#') { + int i=0; + bool is_verse = true; + + for ( i=0; i < 500 || from[i]=='|'; i++){ + if ( from[i] == '|' ) + break; //We found a valid verse ref + if ( !isalnum(from[i]) && !isspace(from[i]) && from[i]!=':' + && from[i]!=';' && from[i]!=',' && from[i]!='-' && from[i]!='#'){ + is_verse = false; + break; // can't be a verseref + } + } + if ( i==500 || !is_verse ){ + *to++ = *from; + continue; + } + ++from; + + i = 0; + verse_str[0] = '\0'; + while (*from != '|' && i<500) { /* get the bible reference */ + verse_str[i++] = *from; + verse_str[i + 1] = '\0'; + from++; + } + +// cerr << verse_str << endl; + const char* ref = parseSimpleRef(verse_str); + pushString(&to,"%s ", ref); + delete [] ref;//delete now because it's unused + + continue; + } + *to++ = *from; + } + *to++ = 0; + *to = 0; + return 0; +} + +/** Replaces the token in the substitute map. */ +void BT_BASICFILTER::replaceTokenSubstitute(const char* findString, const char* replaceString){ + tokenSubMap.erase( tokenSubMap.find(findString) ); //erase entry + addTokenSubstitute(findString, replaceString); +} + +/** Updates the token for this filter if settings changed. */ +void BT_BASICFILTER::updateTokens(){ +} diff --git a/bibletime/backend/bt_basicfilter.h b/bibletime/backend/bt_basicfilter.h new file mode 100644 index 0000000..8e44f80 --- /dev/null +++ b/bibletime/backend/bt_basicfilter.h @@ -0,0 +1,76 @@ +/*************************************************************************** + bt_basicfilter.h - description + ------------------- + begin : Thu Nov 1 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef BT_BASICFILTER_H +#define BT_BASICFILTER_H + +#include + +class SWKey; +class SWModule; + +/** + * This is the base class for all filters in BT + */ + +class BT_BASICFILTER : public SWBasicFilter { +public: + virtual char ProcessText (char *text, int maxlen, const SWKey *, const SWModule * = 0); + +protected: + /** + * updates the filter specific settings like colors + * the variables are used in the inherited filters + * in HandleToken() + */ + void updateSettings(); + /** + * This filter converts the RWP #Gen 1:1| + * style bible references to HTML + */ + char ProcessRWPRefs(char * text, int maxlen = -1); + /** + * Parses the verse reference ref and returns it. + */ + const char* parseSimpleRef(const char* ref); + /** + * Parses the verse reference ref and returns it. + */ + const char* parseThMLRef(const char* ref, const char* mod = 0); + const char* thmlRefEnd(); + /** + * Replaces the token in the substitute map. + */ + void replaceTokenSubstitute(const char* findString, const char* replaceString); + /** + * Updates the token for this filter if settings changed. + */ + virtual void updateTokens(); + + char footnote_color[8]; + char strongs_color[8]; + char morph_color[8]; + char jesuswords_color[8]; + char swordref_color[8]; + char text_color[8]; + char standard_bible[100]; + + const SWKey *m_key; + const SWModule* m_module; +}; + +#endif diff --git a/bibletime/backend/bt_gbfhtml.cpp b/bibletime/backend/bt_gbfhtml.cpp new file mode 100644 index 0000000..d575222 --- /dev/null +++ b/bibletime/backend/bt_gbfhtml.cpp @@ -0,0 +1,156 @@ +/*************************************************************************** + gbfhtml.cpp - description + ------------------- + begin : Thu Jun 24 1999 + copyright : (C) 1999 by Torsten Uhlmann + email : TUhlmann@gmx.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include + +#include +#include + +#include "bt_gbfhtml.h" + +BT_GBFHTML::BT_GBFHTML(){ + setTokenStart("<"); + setTokenEnd(">"); + + setTokenCaseSensitive(true); + + addTokenSubstitute("Rf", ")");// end of footnote + addTokenSubstitute("FI", ""); // italics begin + addTokenSubstitute("Fi", ""); + addTokenSubstitute("FB", ""); // bold begin + addTokenSubstitute("Fb", ""); + + addTokenSubstitute("FR", QString::fromLatin1("").arg(jesuswords_color).latin1()); + addTokenSubstitute("Fr", ""); + addTokenSubstitute("FU", ""); // underline begin + addTokenSubstitute("Fu", ""); + addTokenSubstitute("FO", ""); // Old Testament quote begin + addTokenSubstitute("Fo", ""); + addTokenSubstitute("FS", ""); // Superscript begin// Subscript begin + addTokenSubstitute("Fs", ""); + addTokenSubstitute("FV", ""); // Subscript begin + addTokenSubstitute("Fv", ""); + + addTokenSubstitute("TT", QString::fromLatin1("

").arg(text_color).local8Bit()); + addTokenSubstitute("Tt", "

"); + + addTokenSubstitute("Ts", ""); + addTokenSubstitute("TS", QString::fromLatin1("
+

+Selecting a document to +view

+

To select a document, left mouse button on the desired document group (Bibles, Commentaries, or +Lexicons) to display the contents of a document group, right mouse button on the icon for +the desired group. To open a document, left mouse button on it's icon. +

+
+
+

+Tip

+

Drag & Drop Works Here

+
+

+A document can be opened from an already opened document. +Simply left mouse button on the verse number (pointer changes to hand) and drag it to the +module list. Drop it on the name of the module you want to open, and it will +open that module to the verse you dragged over. If you drag a verse number to an +already open module, it will automatically jump that module to the verse dragged +over. This works for Bibles and Commentaries only.

+

+There are two other functions accessible through right mouse button on +the document name. "About This Module" opens a window with information about copyright and +other pertinent things about the selected document. "Unlock This Module" opens a small +dialog for encrypted documents. This allows those with the key to +enter it to decrypt the document and make it human-readable. Crosswire Bible +Society must encrypt modules unless either the copyright holder provides permission for +distribution as a sword module, or the text has passed into the public domain +(copyright has expired). +See information on locked modules on the Crosswire Bible Society web site. +

+
+

+Accessing the search +dialog

+

+You can search in a module by right mouse button on the module name in the module +list and selecting "Search in module(s)". By shift right mouse button on other module +names you can select more than one. Then follow the same procedure to open the +search dialog. You will be searching in all of these documents. +A complete description of the operation of the search features can be found. +

+
+
+
+

+Accessing bookmark +functions

+

+

+

+Tip

+

Drag & Drop Works Here

+
+right mouse button on an empty part of the module tree window and select "Create new +group" to create a new bookmark folder. You can use normal drag 'n' drop +functions to drag verse numbers from search dialog results to the bookmark folder, +and to rearrange bookmarks between folders. There is an import/export function +for bookmarks also. From the right-mouse-button menu, select "Export +bookmarks". This will bring up a dialog box for you to save the bookmark +collection. They can be shared with other BibleTime users, archived, etc. They +can be imported in the same way. You can also right mouse button to change folder names +and bookmark descriptions, and delete folders and +bookmarks.

+
+
+
+

+Button Action

+

+

Icon
+ Closes BibleTime. +

+

+

Icon
+ Prints items in the print queue. +

+

+

Icon
+ Search in Selected Module(s). +

+

+

Icon
+ Cascade Document Windows. +

+

+

Icon
+ Autocascade Document Windows. +

+

+

Icon
+ Tile Document Windows. +

+

+

Icon
+ Auto tile Document Windows. +

+

+

Icon
+ Close All Document Windows. +

+

Das BibleTime-Handbuch

Fred Saalbach

Jeffrey Hoyt

Revision 2.00

Der BibleTime Hilfedialog ist ein Teil von BibleTime.

BibleTime 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., 675 Mass Ave, Cambridge, MA 02139, USA.

BibleTime ist eine in der Studie der Bibel zu helfende Anwendung.


").arg(text_color).local8Bit()); + + addTokenSubstitute("PP", ""); // poetry begin + addTokenSubstitute("Pp", ""); + addTokenSubstitute("Fn", ""); // font end + addTokenSubstitute("CL", "
"); // new line + addTokenSubstitute("CM", "
"); // paragraph is a non showing comment that can be changed in the front end to

if desired + addTokenSubstitute("CG", ">"); // literal greater-than sign + addTokenSubstitute("CT", "<"); // literal less-than sign + addTokenSubstitute("JR", "

"); // right align begin + addTokenSubstitute("JC", "
"); // center align begin + addTokenSubstitute("JL", "
"); // align end +} + +/** No descriptions */ +char BT_GBFHTML::ProcessText(char * text, int maxlen, const SWKey * key, const SWModule * module){ + BT_BASICFILTER::ProcessText(text, maxlen, key, module); + BT_BASICFILTER::ProcessRWPRefs(text, maxlen); +} + + +bool BT_GBFHTML::handleToken(char **buf, const char *token, DualStringMap &userData) { + if (!substituteToken(buf, token)) { //more than a simple replace + const unsigned int tokenLength = strlen(token); + unsigned long i; + unsigned long len = strlen(token); + + if (!strncmp(token, "WG", 2)){ // strong's numbers greek + char num[6]; + for (i = 2; i < tokenLength; i++) + num[i-2] = token[i]; + num[i-2]=0; + + pushString(buf," <%s> ", + strongs_color, num, num); + } + + if (!strncmp(token, "WH", 2)){ // strong's numbers hebrew + char num[6]; + for (i = 2; i < tokenLength; i++) + num[i-2] = token[i]; + num[i-2]=0; + + pushString(buf," <%s> ", + strongs_color, num, num); + } + + else if (!strncmp(token, "WTG", 3)) { // strong's numbers tense greek + char num[16]; + for (i = 3; i < tokenLength; i++) + num[i-3] = token[i]; + num[i-3]=0; + + pushString(buf," (%s) ", + strongs_color, num, num); + } + + else if (!strncmp(token, "WTH", 3)) { // strong's numbers tense hebrew + + char num[6]; + for (i = 3; i < tokenLength; i++) + num[i-3] = token[i]; + num[i-3]=0; + + pushString(buf," (%s) ", + strongs_color, num, num); + } + + else if (!strncmp(token, "RB", 2)) { + pushString(buf, ""); + userData["hasFootnotePreTag"] = "true"; + } + + else if (!strncmp(token, "RF", 2)) { + if(userData["hasFootnotePreTag"] == "true") { + userData["hasFootnotePreTag"] = "false"; + pushString(buf, " "); + } + pushString(buf," (",footnote_color); + } + + else if (!strncmp(token, "FN", 2)) { + pushString(buf, ""); + } + else if (!strncmp(token, "CA", 2)) { // ASCII value + *(*buf)++ = (char)atoi(&token[2]); + } + else { + return false; + } + } + return true; +} + +/** Update the tokens which use changeable settings. */ +void BT_GBFHTML::updateTokens(){ + replaceTokenSubstitute("TT", QString::fromLatin1("

").arg(text_color).local8Bit()); + replaceTokenSubstitute("TS", QString::fromLatin1("

").arg(text_color).local8Bit()); + replaceTokenSubstitute("FR", QString::fromLatin1("").arg(jesuswords_color).latin1()); +} diff --git a/bibletime/backend/bt_gbfhtml.h b/bibletime/backend/bt_gbfhtml.h new file mode 100644 index 0000000..0b3f983 --- /dev/null +++ b/bibletime/backend/bt_gbfhtml.h @@ -0,0 +1,48 @@ +/*************************************************************************** + gbfhtml.h - description + ------------------- + begin : Tue Jun 15 15:34:26 CEST 1999 + + copyright : (C) 1999 by Torsten Uhlmann + email : TUhlmann@gmx.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +/* $Header: /cvsroot/bibletime/bibletime/bibletime/backend/bt_gbfhtml.h,v 1.6 2002/02/17 00:27:58 joachim Exp $ */ +/* $Revision: 1.6 $ */ + +#ifndef GBFHTML_H +#define GBFHTML_H + +#include "bt_basicfilter.h" + +class SWKey; +class SWModule; + +/** +* This filter converts GBF Text into HTML +*/ +class BT_GBFHTML : public BT_BASICFILTER{ + +public: + BT_GBFHTML (); + virtual bool handleToken(char **buf, const char *token, DualStringMap &userData); + /** No descriptions */ + virtual char ProcessText(char * text, int maxlen, const SWKey *, const SWModule * = 0); + +protected: // Protected methods + /** + * Update the tokens which use changeable setttings. + */ + virtual void updateTokens(); +}; + +#endif diff --git a/bibletime/backend/bt_thmlhtml.cpp b/bibletime/backend/bt_thmlhtml.cpp new file mode 100644 index 0000000..3be0374 --- /dev/null +++ b/bibletime/backend/bt_thmlhtml.cpp @@ -0,0 +1,225 @@ +/*************************************************************************** + thmlhtml.cpp - ThML to HTML filter + ------------------- + begin : 1999-10-27 + copyright : 2001 by CrossWire Bible Society + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include +#include "bt_thmlhtml.h" +#include "versekey.h" + +//Sword includes +#include + +//Qt includes +#include + +BT_ThMLHTML::BT_ThMLHTML() { + setEscapeStringCaseSensitive(true); + setPassThruUnknownEscapeString(true); //the HTML widget will render the HTML escape codes + setEscapeStart("&"); + setEscapeEnd(";"); + addEscapeStringSubstitute("raquo", QString::fromLatin1("»").utf8()); + addEscapeStringSubstitute("laquo", QString::fromLatin1("«").utf8()); +// addEscapeStringSubstitute("uuml", QString::fromLatin1("ü").utf8()); +// addEscapeStringSubstitute("ouml", QString::fromLatin1("ö").utf8()); +// addEscapeStringSubstitute("auml", QString::fromLatin1("ä").utf8()); + + setTokenStart("<"); + setTokenEnd(">"); + setTokenCaseSensitive(true); + addTokenSubstitute("note", " ("); + addTokenSubstitute("/note", ") "); + +// addTokenSubstitute("foreign lang=\"el\"", ""); +// addTokenSubstitute("foreign lang=\"he\"", ""); +// addTokenSubstitute("/foreign", ""); + +} + +bool BT_ThMLHTML::handleToken(char **buf, const char *token, DualStringMap &userData) { + unsigned long i = 0; + const unsigned int tokenLength = strlen(token); + + if (!substituteToken(buf, token) && !substituteEscapeString(buf, token)) { + + if (!strncmp(token, "sync type=\"lemma\"", 17)) { //LEMMA + pushString(buf," <"); + + for (int j = 17; j < tokenLength; j++) { + if (!strncmp(token+j, "value=\"", 7)) { + j += 7; + for (;token[j] != '\"'; j++) + *(*buf)++ = token[j]; + break; + } + } + pushString(buf, "> "); + } + + else if (!strncmp(token, "sync type=\"morph\"", 17)) { //Morph + char num[12]; + for (int j = 17; j < tokenLength; j++) { + if (!strncmp(token+j, "value=\"", 7)) { + j += 7; + int idx=0; + for (;token[j] != '\"'; j++,idx++) + num[idx] = token[j]; + num[idx] = 0; + break; + } + } + pushString(buf," (%s) ", + morph_color, num, num); + } + + else if (!strncmp(token, "sync type=\"Strongs\" value=\"H\"", 29)) { + char num[12]; + for (i = 29; i < tokenLength; i++) + if(token[i] != '\"') + num[i-29] = token[i]; + num[i-29] = 0; + + pushString(buf," <%s> ", + strongs_color, num, num); + } + else if (!strncmp(token, "sync type=\"Strongs\" value=\"G\"",29)) { + char num[12]; + for (i = 29; i < tokenLength; i++) + if(token[i] != '\"') + num[i-29] = token[i]; + num[i-29] = 0; + + pushString(buf," <%s> ", + strongs_color, num, num); + } + + else if (!strncmp(token, "scripRef p", 10) || !strncmp(token, "scripRef v", 10)) { + userData["inscriptRef"] = "true"; + if (!strncmp(token, "scripRef v", 10)) { //module given + + char module_version[500]; + for (i = 18; i < tokenLength-1; i++) { + if(token[i] != '\"') + module_version[i-18] = token[i]; + else + break; + } + module_version[i-18] = 0; + //c contains the module + userData["lastRefModule"] = module_version; + } + else if (!strncmp(token, "scripRef p", 10)) { //passage without module + char verse_str[5000]; + for (i = 18; i < tokenLength-1; i++) { + if(token[i] != '\"') + verse_str[i-18] = token[i]; + else + break; + } + verse_str[i-18] = 0; + const char* ref = parseThMLRef(verse_str); + pushString(buf, ref); + delete [] ref;//delete now because it's unused + } + if ( !strncmp(token+i+2, "passage=", 8) ) { //passage after module part + char verse_str[5000]; + i+=11; + int idx = 0; + for (; i < tokenLength-1; i++,idx++) { + if(token[i] != '\"') + verse_str[idx] = token[i]; + else + break; + } + verse_str[idx] = '\0'; + const char* ref = parseThMLRef(verse_str, userData["lastRefModule"].c_str()); + pushString(buf, ref); + delete [] ref; + } + } + // we're starting a scripRef like "John 3:16" + else if (!strcmp(token, "scripRef")) { + userData["inscriptRef"] = "false"; + // let's stop text from going to output + userData["suspendTextPassThru"] = "true"; + } + // we've ended a scripRef + else if (!strcmp(token, "/scripRef")) { + if (userData["inscriptRef"] == "true") { // like "John 3:16" + userData["inscriptRef"] = "false"; + pushString(buf, thmlRefEnd()); + } + else { // like "John 3:16" + const char* ref = parseSimpleRef(userData["lastTextNode"].c_str()); + pushString(buf, ref); + delete [] ref;//delete now because it's unused + userData["suspendTextPassThru"] = "false"; + } + } + +//headings should be processed by the ThMLHeadings filter + else if (!strncmp(token, "div class=\"sechead\"", 19)) { + userData["SecHead"] = "true"; + pushString(buf, "

", text_color); + } + else if (!strncmp(token, "div class=\"title\"", 19)) { + userData["Title"] = "true"; + pushString(buf, "

", text_color); + } + else if (!strncmp(token, "/div", 4)) { + if (userData["SecHead"] == "true") { + pushString(buf, "

"); + userData["SecHead"] = "false"; + } + else if(userData["Title"] == "true") { + pushString(buf, "

"); + userData["Title"] = "false"; + } + } + else if (!strncmp(token, "img ", 4)) { + const char *src = strstr(token, "src"); + if (!src) // assert we have a src attribute + return false; + + *(*buf)++ = '<'; + for (const char *c = token; *c; c++) { + if (c == src) { + for (;((*c) && (*c != '"')); c++) + *(*buf)++ = *c; + + if (!*c) { c--; continue; } + + *(*buf)++ = '"'; + if (*(c+1) == '/') { + pushString(buf, "file:"); + pushString(buf, module->getConfigEntry("AbsoluteDataPath")); + if (*(*buf-1) == '/') + c++; // skip '/' + } + continue; + } + *(*buf)++ = *c; + } + *(*buf)++ = '>'; + } + else { // let token pass thru + *(*buf)++ = '<'; + for (i = 0; i < tokenLength; i++) + *(*buf)++ = token[i]; + *(*buf)++ = '>'; + } + } + return true; +} diff --git a/bibletime/backend/bt_thmlhtml.h b/bibletime/backend/bt_thmlhtml.h new file mode 100644 index 0000000..b469ca4 --- /dev/null +++ b/bibletime/backend/bt_thmlhtml.h @@ -0,0 +1,35 @@ +/*************************************************************************** + thmlhtml.h - description + ------------------- + begin : 1999-10-28 + + copyright : 1999 by Chris Little + email : chrislit@chiasma.org + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef THMLHTML_H +#define THMLHTML_H + +#include "bt_basicfilter.h" + +/** +* This filter converts ThML text to HTML text +*/ +class BT_ThMLHTML : public BT_BASICFILTER { + +public: + BT_ThMLHTML (); + virtual bool handleToken(char **buf, const char *token, DualStringMap &userData); +// virtual char ProcessText (char *text, int maxlen = -1); +}; + +#endif diff --git a/bibletime/backend/chtmlbookdisplay.cpp b/bibletime/backend/chtmlbookdisplay.cpp new file mode 100644 index 0000000..5211f4d --- /dev/null +++ b/bibletime/backend/chtmlbookdisplay.cpp @@ -0,0 +1,81 @@ +/*************************************************************************** + chtmlbookdisplay.cpp - description + ------------------- + begin : Mon Mar 11 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "chtmlbookdisplay.h" +#include "cswordbookmoduleinfo.h" +#include "cswordtreekey.h" +#include "creferencemanager.h" +#include "../util/scoped_resource.h" + +char CHTMLBookDisplay::Display( CSwordModuleInfo* module ){ + CSwordBookModuleInfo* book = dynamic_cast(module); + util::scoped_ptr key( dynamic_cast( CSwordKey::createInstance(book) ) ); + m_htmlText = QString::null; + + if (!module || !key) { + return 0; + } + const int displayLevel = book->config( CSwordModuleInfo::DisplayLevel ).toInt(); + key->key(book->module()->KeyText()); + updateSettings(); + if (!displayLevel) { + m_htmlText = key->renderedText(); + return 0; + } + const QString oldKey = key->key(); + + int moved = 0; + + while (key->firstChild()) + ++moved; //down + + for (int i = 1; i < displayLevel; i++) { + if (!key->parent() || key->key() == "/" || key->key().isEmpty()) { + break; + } + --moved; //up + }; + + if (moved <= 1) { //display entries together + while(key->previousSibling()); //first entry of it's parent + printTree(*key, book); + key->key(oldKey); + return 1; + } + else { //do not display entries together + key->key(oldKey.isNull() ? "/" : oldKey); + m_htmlText = key->renderedText(); + return 1; + } +} + +void CHTMLBookDisplay::printTree(CSwordTreeKey treeKey, CSwordBookModuleInfo* module, const int levelPos){ + m_htmlText += QString::fromLatin1("%3: %4
") + .arg(treeKey.getLocalName()) + .arg(CReferenceManager::encodeHyperlink(module->name(), treeKey.getFullName(), CReferenceManager::GenericBook)) + .arg(treeKey.getFullName()) + .arg(treeKey.renderedText()); + + if (treeKey.hasChildren()) { + m_htmlText += QString::fromLatin1("

%1

").arg(treeKey.getFullName()); + treeKey.firstChild(); + printTree(treeKey, module, levelPos+1); + treeKey.parent(); + } + if (treeKey.nextSibling()) + printTree(treeKey, module, levelPos); +} diff --git a/bibletime/backend/chtmlbookdisplay.h b/bibletime/backend/chtmlbookdisplay.h new file mode 100644 index 0000000..19ba6a8 --- /dev/null +++ b/bibletime/backend/chtmlbookdisplay.h @@ -0,0 +1,44 @@ +/*************************************************************************** + chtmlbookdisplay.h - description + ------------------- + begin : Mon Mar 11 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CHTMLBOOKDISPLAY_H +#define CHTMLBOOKDISPLAY_H + +#include "chtmlentrydisplay.h" +#include "cswordtreekey.h" + +class CSwordBookModuleInfo; + +/** + * The display class to display + * the general book modules. + * @author The BibleTime team + */ +class CHTMLBookDisplay : public CHTMLEntryDisplay { +public: + /** + * Renders the current entry of the module using HTML tags. + * The rendered text is cached so it's faster if it's called for the + * same key next time. + */ + virtual char Display(CSwordModuleInfo* module); + +private: + void printTree(CSwordTreeKey treeKey, CSwordBookModuleInfo* module, const int levelPos = 0); +}; + +#endif diff --git a/bibletime/backend/chtmlchapterdisplay.cpp b/bibletime/backend/chtmlchapterdisplay.cpp new file mode 100644 index 0000000..ecb0d16 --- /dev/null +++ b/bibletime/backend/chtmlchapterdisplay.cpp @@ -0,0 +1,160 @@ +/*************************************************************************** + chtmlchapterdisplay.cpp - description + ------------------- + begin : Thu Oct 12 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTiem includes +#include "chtmlchapterdisplay.h" +#include "cswordmoduleinfo.h" +#include "cswordversekey.h" +#include "../frontend/ctoolclass.h" +#include "creferencemanager.h" + +//Qt includes +#include + +//Sword includes +#include + +/** Renders the text and puts the result into the member variable m_htmlText */ +char CHTMLChapterDisplay::Display( CSwordModuleInfo* module ){ + if (!module) { + m_htmlText = QString::null; + return 0; //error + } + + CSwordVerseKey key(0); + key.key( module->module()->KeyText() ); + const int currentTestament = key.Testament(); + const int currentBook = key.Book(); + const int currentChapter = key.Chapter(); + const int currentVerse = key.Verse(); + + key.module(module); + int verse = 0; + + if (module->isUnicode()) { + m_htmlHeader = ""; + } + m_htmlText = m_htmlHeader + QString::fromLatin1(""); + + //reload font settings + updateSettings(); + m_htmlText.append(QString::fromLatin1("") + .arg(module->isUnicode() ? m_unicodeFontName : m_standardFontName) + .arg(module->isUnicode() ? m_unicodeFontSize : m_standardFontSize) + .arg(m_standardFontColorName) + ); + + bool ok = true; + for (key.Verse(1); key.Testament() == currentTestament && key.Book() == currentBook && key.Chapter() == currentChapter && ok && !module->module()->Error(); ok = key.next(CSwordVerseKey::UseVerse)) { + verse = key.Verse(); + if (m_displayOptionsBool.verseNumbers) { + m_htmlText.append( QString::fromLatin1("%4 ") + .arg(m_swordRefColorName) + .arg(verse) + .arg(CReferenceManager::encodeHyperlink( module->name(), key.key(), CReferenceManager::typeFromModule(module->type()) )) + .arg(verse) + ); + } + if (verse == currentVerse) + m_htmlText += QString::fromLatin1(""); + m_htmlText += key.renderedText(); + if (verse == currentVerse) + m_htmlText += QString::fromLatin1(""); + if (m_displayOptionsBool.lineBreaks) + m_htmlText += QString::fromLatin1("
\n"); + else + m_htmlText += QString::fromLatin1(" \n"); + } + + m_htmlText += QString::fromLatin1("
") + m_htmlBody; + return 1; //no error +} + +/** Generates code to display the given modules side by side. */ +char CHTMLChapterDisplay::Display( QList* moduleList){ +#warning make table colors configurable + if (!moduleList || (moduleList && !moduleList->count()) ) { + m_htmlText = QString::null; + return 0; + } + //reload font settings + updateSettings(); + + SWModule* module = moduleList->first()->module(); + + VerseKey* vk = (VerseKey*)((SWKey*)(*module)); + CSwordVerseKey key(0); + key.key((const char*)*vk); + + const int currentTestament = key.Testament(); + const int currentBook = key.Book(); + const int currentChapter = key.Chapter(); + const int chosenVerse = key.Verse(); + const int width = (int)((double)97/(double)moduleList->count()); //width in per cent!! + CSwordModuleInfo *d = 0; + + m_htmlText = QString::fromLatin1("").arg(m_standardFontColorName); //for compatibility with Qt's rendering + m_htmlText += m_htmlHeader + QString::fromLatin1("").arg(m_standardFontColorName); + + + m_htmlText += QString::fromLatin1(""); + SWModule *m = (d = moduleList->first()) ? d->module() : 0; + + QString text = QString::fromLatin1(""); + while (m) { + m_htmlText += text.arg(width).arg(d->name()); + m = (d=moduleList->next()) ? d->module() : 0; + } + m_htmlText += QString::fromLatin1(""); + + CSwordVerseKey current(0); + QString rowText = QString::null; + int currentVerse = 0; + text = QString::fromLatin1("\n"); + const QString cell = QString::fromLatin1("\n"); + } + m_htmlText += QString::fromLatin1("
%1
%4"); + + for (key.Verse(1); key.Testament() == currentTestament && key.Book() == currentBook && key.Chapter() == currentChapter && !module->Error(); key.next(CSwordVerseKey::UseVerse)) { + const QString currentKey = key.key(); + currentVerse = key.Verse(); + m = (d = moduleList->first()) ? d->module() : 0; + rowText = text.arg(m_swordRefColorName).arg(currentVerse).arg(CReferenceManager::encodeHyperlink( d->name(), currentKey, CReferenceManager::typeFromModule(d->type()) )).arg(currentVerse); + + current.key(currentKey); + while (m) { + current.module(d); + rowText += cell.arg(width).arg(currentVerse % 2 ? "white" : "#f1f1f1"); + if (d->isUnicode()) + rowText += + QString::fromLatin1("") + .arg(m_unicodeFontName) + .arg(m_unicodeFontSize); + if (currentVerse == chosenVerse) + rowText += QString::fromLatin1("") + .arg(m_highlightedVerseColorName); + + rowText += current.renderedText() + QString::fromLatin1(""); + m = (d = moduleList->next()) ? d->module() : 0; + } + m_htmlText += rowText + QString::fromLatin1("
") + + m_htmlBody + + QString::fromLatin1("
"); + + //clean up + return 1; +} diff --git a/bibletime/backend/chtmlchapterdisplay.h b/bibletime/backend/chtmlchapterdisplay.h new file mode 100644 index 0000000..3e169af --- /dev/null +++ b/bibletime/backend/chtmlchapterdisplay.h @@ -0,0 +1,43 @@ +/*************************************************************************** + chtmlchapterdisplay.h - description + ------------------- + begin : Thu Oct 12 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CHTMLCHAPTERDISPLAY_H +#define CHTMLCHAPTERDISPLAY_H + +#include "chtmlentrydisplay.h" + +/** + * The display which renders a chapter + * @author The BibleTime team + * @version $Id: chtmlchapterdisplay.h,v 1.4 2001/11/07 19:20:35 mgruner Exp $ + */ +class CHTMLChapterDisplay : public CHTMLEntryDisplay { +public: + /** + * Renders the current chapter of the module using HTML tags. + * The finished HTML text could be retrieved using the function + * #getHTML. + * This is a reimplementation from CHTMLEntryDisplay + */ + virtual char Display( CSwordModuleInfo* module ); + /** + * Generates code to display the given modules side by side. + */ + virtual char Display( QList* moduleList); +}; + +#endif diff --git a/bibletime/backend/chtmlentrydisplay.cpp b/bibletime/backend/chtmlentrydisplay.cpp new file mode 100644 index 0000000..2589220 --- /dev/null +++ b/bibletime/backend/chtmlentrydisplay.cpp @@ -0,0 +1,179 @@ +/*************************************************************************** + chtmlentrydisplay.cpp - description + ------------------- + begin : Wed Oct 11 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "chtmlentrydisplay.h" +#include "cswordmoduleinfo.h" +#include "cswordkey.h" +#include "cswordldkey.h" +#include "cswordversekey.h" +#include "creferencemanager.h" +#include "../frontend/ctoolclass.h" +#include "../frontend/cbtconfig.h" + +#include "../util/scoped_resource.h" + + +//Qt includes +#include + +//Sword includes +#include + +CHTMLEntryDisplay::CHTMLEntryDisplay(){ + m_htmlHeader = ""; + m_htmlBody = ""; + m_includeHeader = true; +} + +CHTMLEntryDisplay::~CHTMLEntryDisplay(){ +} + +void CHTMLEntryDisplay::updateSettings(void){ + m_highlightedVerseColorName = CBTConfig::get(CBTConfig::highlightedVerseColor).name(); + m_standardFontColorName = CBTConfig::get(CBTConfig::textColor).name(); + m_swordRefColorName = CBTConfig::get(CBTConfig::swordRefColor).name(); + + m_standardFontName = CBTConfig::get(CBTConfig::standard).family(); + m_standardFontSize = CToolClass::makeLogicFontSize(CBTConfig::get(CBTConfig::standard).pointSize() ); + + m_unicodeFontName = CBTConfig::get(CBTConfig::unicode).family(); + m_unicodeFontSize = CToolClass::makeLogicFontSize( CBTConfig::get(CBTConfig::unicode).pointSize() ); +} + +/** Displays the current entry of the module as HTML */ +char CHTMLEntryDisplay::Display(CSwordModuleInfo* module) { + if (!module) { + m_htmlText = QString::null; + return -1; + } + //refresh font settings + updateSettings(); + + util::scoped_ptr key( CSwordKey::createInstance(module) ); + if (!key) { + m_htmlText = QString::null; + return 0; + } + key->key( module->module()->KeyText() ); + + CReferenceManager::Type refType = CReferenceManager::Unknown; + if (module->type() == CSwordModuleInfo::Bible) + refType = CReferenceManager::Bible; + else if (module->type() == CSwordModuleInfo::Commentary) + refType = CReferenceManager::Commentary; + else if (module->type() == CSwordModuleInfo::Lexicon) + refType = CReferenceManager::Lexicon; + else if (module->type() == CSwordModuleInfo::GenericBook) + refType = CReferenceManager::GenericBook; + + if (m_includeHeader) { + m_htmlText = m_htmlHeader; + + m_htmlText.append(QString::fromLatin1("") + .arg(m_standardFontColorName) + .arg( module->isUnicode() ? m_unicodeFontName : m_standardFontName) + .arg( module->isUnicode() ? m_unicodeFontSize : m_standardFontSize)); + + m_htmlText.append(QString::fromLatin1("%3: %4
%5") + .arg(m_highlightedVerseColorName) + .arg(CReferenceManager::encodeHyperlink(module->name(),key->key(), refType )) + .arg(module->config(CSwordModuleInfo::Description)) + .arg(key->key()) + .arg(key->renderedText())); + + m_htmlText += QString::fromLatin1("
") + m_htmlBody; + } + else { + m_htmlText = key->renderedText(); + } + + return 1; +} + +/** Generates code to display the given modules side by side. */ +char CHTMLEntryDisplay::Display( QList* moduleList) { +// qDebug("CHTMLEntryDisplay::Display( QList* moduleList)"); + if (!moduleList || (moduleList && !moduleList->count()) ) { + m_htmlText = QString::null; + return 0; + } + //reload font settings + updateSettings(); + + util::scoped_ptr key( CSwordKey::createInstance(moduleList->first()) ); + + SWModule* module = moduleList->first()->module(); +// ASSERT(module); + QString usedKey = QString::null; + CSwordModuleInfo *d = 0; + + SWModule *m= (d = moduleList->first()) ? d->module() : 0; + SWKey* sw = (SWKey*)(*module); + key->key(*sw); + usedKey = key->key(); + m = (d = moduleList->first()) ? d->module() : 0; + while (m) { + m = (d=moduleList->next()) ? d->module() : 0; + if (m) { + m->SetKey( (const char*)usedKey.local8Bit() ); + d->snap(); + } + } + + const int width=(int)((double)100/(double)moduleList->count()); + m_htmlText = m_htmlHeader + QString::fromLatin1(""); + m_htmlText.append(QString("") + .arg(m_standardFontName).arg(m_standardFontSize).arg(m_standardFontColorName)); + + m = (d = moduleList->first()) ? d->module() : 0; + while (m) { + key->module(d); + if (m){ + m_htmlText.append(QString("") + .arg(m_highlightedVerseColorName) + .arg((d && d->isUnicode() ) ? m_unicodeFontName : m_standardFontName) + .arg((d && d->isUnicode() ) ? m_unicodeFontSize : m_standardFontSize) + .arg(key->key()) + ); + } + m = (d=moduleList->next()) ? d->module() : 0; + } + m_htmlText.append(QString::fromLatin1("")); + + m = (d = moduleList->first()) ? d->module() : 0; + m_htmlText += QString::fromLatin1(""); + while (m) { + key->module(d); + key->key(usedKey); + + m_htmlText += + QString::fromLatin1("") + .arg(width) + .arg((d && d->isUnicode() ) ? m_unicodeFontName : m_standardFontName) + .arg((d && d->isUnicode() ) ? m_unicodeFontSize : m_standardFontSize) + .arg(key->renderedText()); + m = (d = moduleList->next()) ? d->module() : 0; + } + m_htmlText += QString::fromLatin1("
%2 ") + .arg(width).arg(d->name())); + m_htmlText.append(QString("(%4)
%4
") + m_htmlBody; + + //clean up +// delete key; + return 1; +} diff --git a/bibletime/backend/chtmlentrydisplay.h b/bibletime/backend/chtmlentrydisplay.h new file mode 100644 index 0000000..1adc285 --- /dev/null +++ b/bibletime/backend/chtmlentrydisplay.h @@ -0,0 +1,110 @@ +/*************************************************************************** + chtmlentrydisplay.h - description + ------------------- + begin : Wed Oct 11 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CHTMLENTRYDISPLAY_H +#define CHTMLENTRYDISPLAY_H + +//BibleTime includes + +//Qt includes +#include +#include +#include + +//Sword includes +#include +#include + +#include "cswordbackend.h" + + +class CHTMLChapterDisplay; +class CSwordModuleInfo; + +/** + * The display class for entry based modules. + * @author The BibleTime team + * @version $Id: chtmlentrydisplay.h,v 1.12 2002/03/20 15:08:44 joachim Exp $ + */ +class CHTMLEntryDisplay : public SWDisplay { +public: + /** + * The constructor of CHTMLEntryDisplay. + * This is the constructor of CHTMLEntryDisplay. It initializes the members + * and creates the objects we need to create the required HTML formatted text. + */ + CHTMLEntryDisplay(); + virtual ~CHTMLEntryDisplay(); + /** + * Renders the current entry of the module using HTML tags. + * The rendered text is cached so it's faster if it's called for the + * same key next time. + */ + virtual char Display(CSwordModuleInfo* module); + /** + * Generates code to display the given modules side by side. + */ + virtual char Display( QList* moduleList); + /** + * This function returns the last looked up HTML text. + */ + const QString getHTML() const; + /** + * Call this with false as argument to switch off the headers (module anme and current position) + */ + void setIncludeHeader( const bool includeHeader ); + void setDisplayOptions( const CSwordBackend::DisplayOptionsBool options); + +protected: + bool m_includeHeader; + + QString m_htmlText; + QString m_htmlHeader; + QString m_htmlBody; + + QString m_highlightedVerseColorName; + QString m_standardFontColorName; + QString m_swordRefColorName; + + + QString m_standardFontName; + QString m_unicodeFontName; + int m_standardFontSize; + int m_unicodeFontSize; + + void updateSettings(void); + + CSwordBackend::DisplayOptionsBool m_displayOptionsBool; +}; + +/** Returns the generated HTML text. */ +inline void CHTMLEntryDisplay::setDisplayOptions(const CSwordBackend::DisplayOptionsBool options){ + m_displayOptionsBool = options; +} + + +/** Returns the generated HTML text. */ +inline const QString CHTMLEntryDisplay::getHTML() const { + return m_htmlText; +} + +/** Call this with false as argument to switch off the headers (module anme and current position) */ +inline void CHTMLEntryDisplay::setIncludeHeader( const bool includeHeader ){ + m_includeHeader = includeHeader; +} + +#endif diff --git a/bibletime/backend/creferencemanager.cpp b/bibletime/backend/creferencemanager.cpp new file mode 100644 index 0000000..9927cc6 --- /dev/null +++ b/bibletime/backend/creferencemanager.cpp @@ -0,0 +1,255 @@ +/*************************************************************************** + creferencemanager.cpp - description + ------------------- + begin : Sun Aug 19 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "creferencemanager.h" +#include "cswordversekey.h" + +#include "../frontend/cbtconfig.h" + +/** Returns a hyperlink used to be imbedded in the display windows. At the moment the format is sword://module/key */ +const QString CReferenceManager::encodeHyperlink( const QString& module, const QString& key, const CReferenceManager::Type& type){ + QString ret = QString::null; + switch (type) { + case Bible: + ret = QString::fromLatin1("sword://Bible/"); + break; + case Commentary: + ret = QString::fromLatin1("sword://Commentary/"); + break; + case Lexicon: + ret = QString::fromLatin1("sword://Lexicon/"); + break; + case GenericBook: + ret = QString::fromLatin1("sword://Book/"); + break; + case MorphHebrew: + ret = QString::fromLatin1("morph://Hebrew/"); + break; + case MorphGreek: + ret = QString::fromLatin1("morph://Greek/"); + break; + case StrongsHebrew: + ret = QString::fromLatin1("strongs://Hebrew/"); + break; + case StrongsGreek: + ret = QString::fromLatin1("strongs://Greek/"); + break; + default: + break; + } + + if (!module.isEmpty()) + ret += module + QString::fromLatin1("/"); + else { //if module is empty use fallback module + ret += preferredModule(type) + QString::fromLatin1("/"); + } + + if (type == GenericBook) { + const QString s = (!key.isEmpty() ? key : QString::null); + QString newKey = QString::null; + //replace all / of the key (e.g. of a CSwordTreeKey) with + // the escape sequence \/ so we know it's a link divider! + for(unsigned int i = 0; i < s.length(); ++i) { + if (s[i] == '/') + newKey += "\\/"; + else + newKey += s[i]; + } + ret += newKey; + } + else { //slashes do not appear in verses and dictionary entries + ret += key; + } + return ret; +} + +/** Decodes the given hyperlink to module and key. */ +const bool CReferenceManager::decodeHyperlink( const QString& hyperlink, QString& module, QString& key, CReferenceManager::Type& type ){ + /** + * We have to decide between three types of URLS: sword://Type/Module/Key, morph://Testament/key and strongs://Testament/Key + */ + module = QString::null; + key = QString::null; + + type = Unknown; //not yet known + QString ref = hyperlink; + //remove the trailing slash + if (ref.right(1)=="/") + ref = ref.left(ref.length()-1); + + //find out which type we have by looking at the beginning (protocoll section of URL) + if (ref.left(8) == "sword://") { //Bible, Commentary or Lexicon + ref = ref.mid(8); + if (ref.left(5) == "Bible") { //a bible hyperlink + type = CReferenceManager::Bible; + ref = ref.mid(6); //inclusive trailing slash + } + else if (ref.left(10) == "Commentary") { // a Commentary hyperlink + type = CReferenceManager::Commentary; + ref = ref.mid(11); //inclusive trailing slash + } + else if (ref.left(7) == "Lexicon") { // a Lexicon hyperlink + type = CReferenceManager::Lexicon; + ref = ref.mid(8); //inclusive trailing slash + } + else if (ref.left(4) == "Book") { // a Book hyperlink + type = CReferenceManager::GenericBook; + ref = ref.mid(5); //inclusive trailing slash + } + // string up to next slash is the modulename + while (true) { + const int pos = ref.find("/"); + if (pos>0 && ref.at(pos-1) != '\\') { //found a slash which is not escaped + module = ref.mid(0,pos); + ref = ref.mid(pos+1); + break; + } + } + // the rest is the key + key = ref; + //replace \/ escapes with / + key.replace(QRegExp("\\\\/"), "/"); + } + else if (ref.left(8) == "morph://" || ref.left(10) == "strongs://") { //strongs or morph URL have the same format + enum PreType {IsMorph, IsStrongs}; + PreType preType = IsMorph; + if (ref.left(8) == "morph://") { //morph code hyperlink + ref = ref.mid(8); + preType = IsMorph; + } + else if (ref.left(10) == "strongs://") { + ref = ref.mid(10); + preType = IsStrongs; + } + //part up to next slash is the language + const int pos = ref.find("/"); + if (pos>0) { //found + const QString language = ref.mid(0,pos); + if (language == "Hebrew") { + switch (preType) { + case IsMorph: + type = CReferenceManager::MorphHebrew; + break; + case IsStrongs: + type = CReferenceManager::StrongsHebrew; + break; + } + } + else if (language == "Greek") { + switch (preType) { + case IsMorph: + type = CReferenceManager::MorphGreek; + break; + case IsStrongs: + type = CReferenceManager::StrongsGreek; + break; + } + } + ref = ref.mid(pos+1); + key = ref; //the remaining part is the key + + module = preferredModule(type); + } + } + + if (key.isEmpty() && module.isEmpty()) + return false; + return true; +} + +const QString CReferenceManager::encodeReference(const QString &module, const QString &reference){ + return QString::fromLatin1("(%1)%2").arg(module).arg(reference); +} + +void CReferenceManager::decodeReference(QString &dragreference, QString &module, QString &reference){ + const int pos = dragreference.find(")"); + const QString fallbackModule = dragreference.mid( 1, pos - 1); + dragreference = dragreference.mid(pos+1); + + module = fallbackModule; + reference = dragreference; +} + +/** Returns true if the parameter is a hyperlink. */ +const bool CReferenceManager::isHyperlink( const QString& hyperlink ){ + return ( hyperlink.left(8) == "sword://") + || (hyperlink.left(10) == "strongs://") + || (hyperlink.left(8) == "morph://"); +} + +/** Returns the preferred module name for the given type. */ +const QString CReferenceManager::preferredModule( const CReferenceManager::Type type ){ + QString description = QString::null; + switch (type) { + case CReferenceManager::Bible: + description = CBTConfig::get( CBTConfig::standardBible ); + break; + case CReferenceManager::Commentary: + description = CBTConfig::get( CBTConfig::standardCommentary ); + break; + case CReferenceManager::Lexicon: + description = CBTConfig::get( CBTConfig::standardLexicon ); + break; + case CReferenceManager::StrongsHebrew: + description = CBTConfig::get( CBTConfig::standardHebrewStrongsLexicon ); + break; + case CReferenceManager::StrongsGreek: + description = CBTConfig::get( CBTConfig::standardGreekStrongsLexicon ); + break; + case CReferenceManager::MorphHebrew: + description = CBTConfig::get( CBTConfig::standardHebrewMorphLexicon ); + break; + case CReferenceManager::MorphGreek: + description = CBTConfig::get( CBTConfig::standardGreekMorphLexicon ); + break; + default: + qWarning("unknwon type"); + description = QString::null; + break; + } + if (!description.isEmpty()) + return CSwordBackend::findModuleNameByDescription(description); + else + return QString::null; +} + +/** No descriptions */ +CReferenceManager::Type CReferenceManager::typeFromModule( const CSwordModuleInfo::ModuleType type){ + switch (type) { + case CSwordModuleInfo::Bible: + return CReferenceManager::Bible; + case CSwordModuleInfo::Commentary: + return CReferenceManager::Commentary; + case CSwordModuleInfo::Lexicon: + return CReferenceManager::Lexicon; + default: + return CReferenceManager::Unknown; + } +} + +/** Parses the given verse references using the given language and the module.*/ +const QString CReferenceManager::parseVerseReference( const QString ref, const QString& lang, const QString& newLang){ + CSwordVerseKey key(0); + if (!lang.isEmpty()) + key.setLocale( lang.latin1() ); + + key.key(ref); + + if (!lang.isEmpty() && lang != newLang) + key.setLocale(newLang.latin1()); + return key.key(); +} diff --git a/bibletime/backend/creferencemanager.h b/bibletime/backend/creferencemanager.h new file mode 100644 index 0000000..661d955 --- /dev/null +++ b/bibletime/backend/creferencemanager.h @@ -0,0 +1,83 @@ +/*************************************************************************** + creferencemanager.h - description + ------------------- + begin : Sun Aug 19 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CREFERENCEMANAGER_H +#define CREFERENCEMANAGER_H + +//Qt includes +#include + +#include "cswordmoduleinfo.h" + +/**Contains static functions to compute with referneces used for Drag&Drop and for hyperlinks used in HTML. + *@author The BibleTime team + */ +class CReferenceManager { +public: + enum Type { + Bible, + Commentary, + Lexicon, + GenericBook, + MorphHebrew, + MorphGreek, + StrongsHebrew, + StrongsGreek, + Unknown + }; + /** + * Decodes the given hyperlink to module and key. + */ + static const bool decodeHyperlink( const QString& hyperlink, QString& module, QString& key,Type& type); + /** + * Returns a hyperlink used to be imbedded in the display windows. + * At the moment the format is sword://module/key + */ + static const QString encodeHyperlink( const QString& module, const QString& key, const Type& type); + /** + * Puts a module Name and a Reference together in the 'draggable' form + * (module)reference + * @param module The name of the module + * @param reference The key reference as text + * @return The encoded reference using module and reference + * @author Martin Gruner + */ + static const QString encodeReference(const QString &module, const QString &reference); + /** + * decodes a 'draggable' reference into a modulename and a reference + * @author Martin Gruner + */ + static void decodeReference(QString &dragreference, QString &module, QString &reference); + /** + * Returns true if the parameter is a hyperlink. + */ + static const bool isHyperlink( const QString& hyperlink ); + /** + * Returns the preferred module name for the given type. + */ + static const QString preferredModule( const Type type ); + static CReferenceManager::Type typeFromModule( const CSwordModuleInfo::ModuleType type ); + /** Parses the given verse references using the given language and the module. + * @param ref The verse refernce + * @param lang The language of the verse reference + * @param newLang The language of the reference, which will be returned. For example: If BibleTime using an english environment parses a spanish ref (lang=es) the returned ref should be in english (newLang=en), because his english standard module only understands en. + */ + static const QString parseVerseReference( const QString ref, const QString& lang = QString::null, const QString& newLang = "en"); +}; + +#endif + diff --git a/bibletime/backend/cswordbackend.cpp b/bibletime/backend/cswordbackend.cpp new file mode 100644 index 0000000..1686cd8 --- /dev/null +++ b/bibletime/backend/cswordbackend.cpp @@ -0,0 +1,368 @@ +/*************************************************************************** + cswordbackend.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordbackend.h" +#include "chtmlentrydisplay.h" +#include "chtmlchapterdisplay.h" +#include "chtmlbookdisplay.h" +#include "cswordbiblemoduleinfo.h" +#include "cswordcommentarymoduleinfo.h" +#include "cswordlexiconmoduleinfo.h" +#include "cswordbookmoduleinfo.h" + +#include "bt_thmlhtml.h" +#include "bt_gbfhtml.h" +#include +#include + +//Qt includes +#include + +//KDE includes +#include + +//Sword includes +#include +#include +#include +#include +#include +#include +#include +#include + +//static class-wide members +static QMap moduleDescriptionMap; + +CSwordBackend::CSwordBackend() + : SWMgr(0,0,false,new EncodingFilterMgr( ENC_UTF8 )) +{ + m_displays.entry = 0; + m_displays.chapter = 0; + m_displays.book = 0; + + m_filters.gbf = 0; + m_filters.thml = 0; + m_filters.plain = 0; +} + +CSwordBackend::~CSwordBackend(){ + shutdownModules(); + delete m_filters.gbf; + delete m_filters.plain; + delete m_filters.thml; +} + +/** Initializes the Sword modules. */ +const CSwordBackend::LoadError CSwordBackend::initModules() { + LoadError ret = NoError; + + ModMap::iterator it; + SWModule* curMod = 0; + CSwordModuleInfo* newModule = 0; + + shutdownModules(); //remove previous modules + m_moduleList.clear(); + + ret = LoadError( Load() ); + + for (it = Modules.begin(); it != Modules.end(); it++) { + curMod = (*it).second; + if (!strcmp(curMod->Type(), "Biblical Texts")) { + newModule = new CSwordBibleModuleInfo(curMod); + newModule->module()->Disp(m_displays.chapter ? m_displays.chapter : (m_displays.chapter = new CHTMLChapterDisplay)); + } else if (!strcmp(curMod->Type(), "Commentaries")) { + newModule = new CSwordCommentaryModuleInfo(curMod); + newModule->module()->Disp(m_displays.entry ? m_displays.entry : (m_displays.entry = new CHTMLEntryDisplay)); + } else if (!strcmp(curMod->Type(), "Lexicons / Dictionaries")) { + newModule = new CSwordLexiconModuleInfo(curMod); + newModule->module()->Disp(m_displays.entry ? m_displays.entry : (m_displays.entry = new CHTMLEntryDisplay)); + } else if (!strcmp(curMod->Type(), "Generic Books")) { + newModule = new CSwordBookModuleInfo(curMod); + newModule->module()->Disp(m_displays.book ? m_displays.book : (m_displays.book = new CHTMLBookDisplay)); + } + if (newModule) //append the new modules to our list + m_moduleList.append( newModule ); + } + + for (m_moduleList.first(); m_moduleList.current(); m_moduleList.next()) { + moduleDescriptionMap.insert(m_moduleList.current()->config(CSwordModuleInfo::Description), m_moduleList.current()->name()); + } + + return ret; +} + +void CSwordBackend::AddRenderFilters(SWModule *module, ConfigEntMap §ion) { + string sourceformat; + string moduleDriver; + ConfigEntMap::iterator entry; + bool noDriver = true; + + sourceformat = ((entry = section.find("SourceType")) != section.end()) ? (*entry).second : (string) ""; + moduleDriver = ((entry = section.find("ModDrv")) != section.end()) ? (*entry).second : (string) ""; + + if (!stricmp(sourceformat.c_str(), "GBF")) { + if (!m_filters.gbf) + m_filters.gbf = new BT_GBFHTML(); + module->AddRenderFilter(m_filters.gbf); + noDriver = false; + } + + if (!stricmp(sourceformat.c_str(), "PLAIN")) { + if (!m_filters.plain) + m_filters.plain = new PLAINHTML(); + module->AddRenderFilter(m_filters.plain); + noDriver = false; + } + + if (!stricmp(sourceformat.c_str(), "ThML")) { + if (!m_filters.thml) + m_filters.thml = new BT_ThMLHTML(); + module->AddRenderFilter(m_filters.thml); + noDriver = false; + } + + if (noDriver){ + if (!stricmp(moduleDriver.c_str(), "RawCom") || !stricmp(moduleDriver.c_str(), "RawLD")) { + if (!m_filters.plain) + m_filters.plain = new PLAINHTML(); + module->AddRenderFilter(m_filters.plain); + noDriver = false; + } + } +} + +/** This function deinitializes the modules and deletes them. */ +const bool CSwordBackend::shutdownModules(){ + for (m_moduleList.first(); m_moduleList.current(); m_moduleList.next()) { + if (m_moduleList.current()) { + CSwordModuleInfo* current = m_moduleList.current(); + m_moduleList.removeRef(current); + delete current; + } + } + m_moduleList.clear(); + return true; +} + +/** Returns true if the given option is enabled. */ +const bool CSwordBackend::isOptionEnabled( const CSwordBackend::FilterOptions type) { + return (getGlobalOption( optionName(type).latin1() ) == "On"); +} + +/** Sets the given options enabled or disabled depending on the second parameter. */ +void CSwordBackend::setOption( const CSwordBackend::FilterOptions type, const bool enable){ + string value; + switch (type) { + case textualVariants: + value = enable ? "Secondary Reading" : "Primary Reading"; + //if on, user alternaticve (secondary) reading + break; + default: + value = enable ? "On": "Off"; + break; + }; + setGlobalOption(optionName(type).latin1(), value.c_str()); +} + +void CSwordBackend::setFilterOptions( const CSwordBackend::FilterOptionsBool options){ + setOption( footnotes, options.footnotes ); + setOption( strongNumbers, options.strongNumbers ); + setOption( headings, options.headings ); + setOption( morphTags, options.morphTags ); + setOption( lemmas, options.lemmas ); + setOption( hebrewPoints, options.hebrewPoints ); + setOption( hebrewCantillation, options.hebrewCantillation ); + setOption( greekAccents, options.greekAccents); + setOption( textualVariants, options.textualVariants); +} + +void CSwordBackend::setDisplayOptions( const CSwordBackend::DisplayOptionsBool options){ + if (m_displays.entry) + m_displays.entry->setDisplayOptions(options); + if (m_displays.chapter) + m_displays.chapter->setDisplayOptions(options); +} + +/** This function searches for a module with the specified description */ +CSwordModuleInfo* const CSwordBackend::findModuleByDescription(const QString& description){ + if (m_moduleList.count()) + for ( m_moduleList.first();m_moduleList.current();m_moduleList.next() ) + if ( m_moduleList.current()->config(CSwordModuleInfo::Description) == description ) + return m_moduleList.current(); + return 0; +} + +/** This function searches for a module with the specified description */ +const QString CSwordBackend::findModuleNameByDescription(const QString& description){ + if (moduleDescriptionMap.contains(description)) + return moduleDescriptionMap[description]; + return QString::null; +} + +/** This function searches for a module with the specified name */ +CSwordModuleInfo* const CSwordBackend::findModuleByName(const QString& name){ + if (m_moduleList.count()) + for ( m_moduleList.first(); m_moduleList.current(); m_moduleList.next() ) + if ( m_moduleList.current()->name() == name ) + return m_moduleList.current(); + return 0; +} + +/** Returns our local config object to store the cipher keys etc. locally for each user. The values of the config are merged with the global config. */ +const bool CSwordBackend::moduleConfig(const QString& module, SWConfig& moduleConfig) { + SectionMap::iterator section; + DIR *dir = opendir(configPath); + struct dirent *ent; + + bool foundConfig = false; + QString modFile; + if (dir) { // find and update .conf file + rewinddir(dir); + while ((ent = readdir(dir)) && !foundConfig) { + if ((strcmp(ent->d_name, ".")) && (strcmp(ent->d_name, ".."))) { + modFile = QString::fromLocal8Bit(configPath); + modFile += QString::fromLatin1("/"); + modFile += QString::fromLocal8Bit(ent->d_name); + moduleConfig = SWConfig( (const char*)modFile.local8Bit() ); + section = moduleConfig.Sections.find( (const char*)module.local8Bit() ); + foundConfig = ( section != moduleConfig.Sections.end() ); + } + } + closedir(dir); + } + else { //try to read mods.conf + //moduleConfig = SWConfig( configPath + "/mods.conf" ); + moduleConfig = SWConfig("");//global config + section = config->Sections.find( (const char*)module.local8Bit() ); + foundConfig = ( section != config->Sections.end() ); + + ConfigEntMap::iterator entry; + if (foundConfig) { //copy module section + for (entry = (*section).second.begin(); entry != (*section).second.end(); entry++) { + moduleConfig.Sections[(*section).first].insert(ConfigEntMap::value_type((*entry).first, (*entry).second)); + } + } + } + + if (!foundConfig && configType != 2) { //search in $HOME/.sword/ + QString myPath = QString::fromLatin1("%1/.sword/mods.d").arg(getenv("HOME")); + dir = opendir(myPath.latin1()); + if (dir) { + rewinddir(dir); + while ((ent = readdir(dir)) && !foundConfig) { + if ((strcmp(ent->d_name, ".")) && (strcmp(ent->d_name, ".."))) { + modFile = myPath; + modFile += "/"; + modFile += ent->d_name; + moduleConfig = SWConfig( (const char*)modFile.local8Bit() ); + section = moduleConfig.Sections.find( (const char*)module.local8Bit() ); + foundConfig = ( section != moduleConfig.Sections.end() ); + } + } + closedir(dir); + } + } + return foundConfig; +} + +/** Returns the text used for the option given as parameter. */ +const QString CSwordBackend::optionName( const CSwordBackend::FilterOptions option ){ + switch (option) { + case CSwordBackend::footnotes: + return QString::fromLatin1("Footnotes"); + case CSwordBackend::strongNumbers: + return QString::fromLatin1("Strong's Numbers"); + case CSwordBackend::headings: + return QString::fromLatin1("Headings"); + case CSwordBackend::morphTags: + return QString::fromLatin1("Morphological Tags"); + case CSwordBackend::lemmas: + return QString::fromLatin1("Lemmas"); + case CSwordBackend::hebrewPoints: + return QString::fromLatin1("Hebrew Vowel Points"); + case CSwordBackend::hebrewCantillation: + return QString::fromLatin1("Hebrew Cantillation"); + case CSwordBackend::greekAccents: + return QString::fromLatin1("Greek Accents"); + case CSwordBackend::textualVariants: + return QString::fromLatin1("Textual Variants"); + } + return QString::null; +} + +/** Returns the translated name of the option given as parameter. */ +const QString CSwordBackend::translatedOptionName(const CSwordBackend::FilterOptions option){ + switch (option) { + case CSwordBackend::footnotes: + return i18n("Footnotes"); + case CSwordBackend::strongNumbers: + return i18n("Strong's Numbers"); + case CSwordBackend::headings: + return i18n("Headings"); + case CSwordBackend::morphTags: + return i18n("Morphological Tags"); + case CSwordBackend::lemmas: + return i18n("Lemmas"); + case CSwordBackend::hebrewPoints: + return i18n("Hebrew Vowel Points"); + case CSwordBackend::hebrewCantillation: + return i18n("Hebrew Cantillation"); + case CSwordBackend::greekAccents: + return i18n("Greek Accents"); + case CSwordBackend::textualVariants: + return i18n("Textual Variants"); + } + return QString::null; +} + + +const QString CSwordBackend::configOptionName( const CSwordBackend::FilterOptions option ){ + switch (option) { + case CSwordBackend::footnotes: + return QString::fromLatin1("Footnotes"); + case CSwordBackend::strongNumbers: + return QString::fromLatin1("Strongs"); + case CSwordBackend::headings: + return QString::fromLatin1("Headings"); + case CSwordBackend::morphTags: + return QString::fromLatin1("Morph"); + case CSwordBackend::lemmas: + return QString::fromLatin1("Lemma"); + case CSwordBackend::hebrewPoints: + return QString::fromLatin1("HebrewPoints"); + case CSwordBackend::hebrewCantillation: + return QString::fromLatin1("Cantillation"); + case CSwordBackend::greekAccents: + return QString::fromLatin1("GreekAccents"); + case CSwordBackend::textualVariants: + return QString::fromLatin1("TextualVariants"); + } + return QString::null; +} + +const QString CSwordBackend::booknameLanguage( const QString& language ) { + if (!language.isNull()) + LocaleMgr::systemLocaleMgr.setDefaultLocaleName( language.local8Bit() ); + return QString::fromLatin1(LocaleMgr::systemLocaleMgr.getDefaultLocaleName()); +} + +/** Returns the version of the Sword library. */ +const SWVersion CSwordBackend::Version() { + return SWVersion::currentVersion; +} diff --git a/bibletime/backend/cswordbackend.h b/bibletime/backend/cswordbackend.h new file mode 100644 index 0000000..2ce5531 --- /dev/null +++ b/bibletime/backend/cswordbackend.h @@ -0,0 +1,215 @@ +/*************************************************************************** + cswordbackend.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDBACKEND_H +#define CSWORDBACKEND_H + +//BibleTime includes + +//Qt includes +#include +#include +#include +#include + +//Sword includes +#include +#include +#include +#include + +class CHTMLEntryDisplay; +class CHTMLChapterDisplay; +class CHTMLBookDisplay; + +class CSwordModuleInfo; +typedef QList ListCSwordModuleInfo; + +/** + * This is the implementation of CBackend for Sword. It's additionally derived from SWMgr + * to provide functions of Sword. + * + * @short The backend implementation of Sword + * @author The BibleTime team + * @version $Id: cswordbackend.h,v 1.22 2002/03/20 15:08:44 joachim Exp $ + */ +class CSwordBackend : public SWMgr { +public: + /** + * These are the options which could be supported by modules and by this backend. + * It's used in @ref isOptionEnabled and @ref setOption + */ + enum FilterOptions { + footnotes, + strongNumbers, + headings, + morphTags, + lemmas, + hebrewPoints, + hebrewCantillation, + greekAccents, + textualVariants, + filterOptionsMIN = footnotes, + filterOptionsMAX = textualVariants + }; + + struct FilterOptionsBool { + bool footnotes; + bool strongNumbers; + bool headings; + bool morphTags; + bool lemmas; + bool hebrewPoints; + bool hebrewCantillation; + bool greekAccents; + bool textualVariants; + }; + struct DisplayOptionsBool { + bool lineBreaks; + bool verseNumbers; + }; + enum LoadError { // the values exist to cast from the char return of SWMgr::Load + NoSwordConfig = -1, + NoError = 0, + NoModules = 1 + }; + /** + * The constructor of the Sword backend. + * It creates the SWModule objects using SWMgr's methods, it adds the necessary + * filters for the module format. + */ + CSwordBackend(); + /** + * The destrctor of this backend. This function shuts the modules down using @ref shutdownModules. + */ + virtual ~CSwordBackend(); + /** + * This function returns the list of available modules managed by this backend. + * You have to call initModules() first; + * + * @return The list of modules managed by this backend + */ + virtual ListCSwordModuleInfo& moduleList(); + /** + * Initializes the Sword modules. + * + * @return True if the initializiation was succesful, otherwise return false. + */ + virtual const CSwordBackend::LoadError initModules(); + /** + * This function deinitializes the modules and deletes them. + * + * @return True if it was succesful, otherwise return false + */ + virtual const bool shutdownModules(); + /** + * Sets the given options enabled or disabled depending on the second parameter. + * + * @param type This is the type this function should set enabled or disabled + * @param enable If this is true the option will be enabled, otherwise it will be disabled. + */ + void setOption( const CSwordBackend::FilterOptions type, const bool enable); + void setFilterOptions( const CSwordBackend::FilterOptionsBool options); + void setDisplayOptions( const CSwordBackend::DisplayOptionsBool options); + /** + * Returns true if the given option is enabled. + * + * @return Returns true if the options given as aparameter is switched on at this time, otherwise return false. + */ + virtual const bool isOptionEnabled( const CSwordBackend::FilterOptions type); + /** + * Sets the language for the international booknames of Sword. + */ + const QString booknameLanguage( const QString& = QString::null ); + /** + * This function searches for a module with the specified description + * @param description The description of the desired module + * @return pointer to the desired module; null if no module has the specified description + */ + virtual CSwordModuleInfo* const findModuleByDescription(const QString& description); + /** + * This function searches for a module with the specified description + * @param description The description of the desired module + * @return pointer to the desired module; null if no module has the specified description + */ + static const QString findModuleNameByDescription(const QString& description); + /** + * This function searches for a module with the specified name + * @param description The name of the desired module + * @return pointer to the desired module; null if no module has the specified name + */ + CSwordModuleInfo* const findModuleByName(const QString& name); + /** + * @return Our global config object to store the cipher keys etc. + */ + SWConfig* const getConfig() const; + /** + * Tries to find the config object for the module. The second paramter will be the found config. + * @return True if the config was found, false if not. If false is returned the moduleConfig object is in undefined/unknwon state. + */ + const bool moduleConfig(const QString& module, SWConfig& moduleConfig); + /** + * Returns the text used for the option given as parameter. + */ + static const QString optionName( const CSwordBackend::FilterOptions option); + /** + * Returns the text used for the option given as parameter. + */ + static const QString configOptionName( const CSwordBackend::FilterOptions option); + /** + * Returns the translated name of the option given as parameter. + */ + static const QString translatedOptionName(const CSwordBackend::FilterOptions option); + /** + * Returns the version of the Sword library. + */ + virtual const SWVersion Version(); + +protected: + /** + * Adds a render filter to the module. + * @param module Add a render filter to this module! + */ + virtual void AddRenderFilters(SWModule *module, ConfigEntMap §ion); + +private: + //filters + struct { + SWFilter *gbf; + SWFilter *plain; + SWFilter *thml; + } m_filters; + ListCSwordModuleInfo m_moduleList; + + struct { + CHTMLChapterDisplay* chapter; + CHTMLEntryDisplay* entry; + CHTMLBookDisplay* book; + } m_displays; +}; + +/**Returns The list of modules managed by this backend*/ +inline ListCSwordModuleInfo& CSwordBackend::moduleList() { + return m_moduleList; +} + +/** Returns our local config object to store the cipher keys etc. locally for each user. The values of the config are merged with the global config. */ +inline SWConfig* const CSwordBackend::getConfig() const { + return config; +} + +#endif diff --git a/bibletime/backend/cswordbiblemoduleinfo.cpp b/bibletime/backend/cswordbiblemoduleinfo.cpp new file mode 100644 index 0000000..a8ff152 --- /dev/null +++ b/bibletime/backend/cswordbiblemoduleinfo.cpp @@ -0,0 +1,195 @@ +/*************************************************************************** + cswordbiblemoduleinfo.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordbiblemoduleinfo.h" +#include "cswordversekey.h" + +//Qt includes +#include + +//Sword includes +#include + +static VerseKey staticKey; + +CSwordBibleModuleInfo::CSwordBibleModuleInfo( SWModule* module ) + : CSwordModuleInfo(module) { + m_bookList = 0; + m_cachedLocale = "unknown"; + m_hasOT = m_hasNT = -1; +} + +CSwordBibleModuleInfo::CSwordBibleModuleInfo( const CSwordBibleModuleInfo& m ) : CSwordModuleInfo(m) { + if (m.m_bookList) { + m_bookList = new QStringList(); + *m_bookList = *m.m_bookList; + } + m_hasOT = m.m_hasOT; + m_hasNT = m.m_hasNT; + m_cachedLocale = m.m_cachedLocale; +} + +CSwordModuleInfo* CSwordBibleModuleInfo::clone(){ + return new CSwordBibleModuleInfo(*this); +} + +CSwordBibleModuleInfo::~CSwordBibleModuleInfo(){ + delete m_bookList; +} + +/** Returns the books available in this module */ +QStringList* CSwordBibleModuleInfo::books() { + if (m_cachedLocale != backend()->booknameLanguage()){ //if the locale has changed + delete m_bookList; + m_bookList = 0; + } + + if (!m_bookList) { + m_bookList = new QStringList(); + if (m_hasOT == -1) + m_hasOT = hasTestament(OldTestament); + if (m_hasNT == -1) + m_hasNT = hasTestament(NewTestament); + + int min = 0; + int max = 1; + //find out if we have ot and nt, only ot or only nt + if (m_hasOT>0 && m_hasNT>0) { + min = 0; + max = 1; + } + else if (m_hasOT>0 && !m_hasNT) { + min = 0; + max = 0; + } + else if (!m_hasOT && m_hasNT>0) { + min = 1; + max = 1; + } + else if (!m_hasOT && !m_hasNT) { //somethings wrong here! - no OT and not NT + qWarning("CSwordBibleModuleInfo (%s) no OT and not NT! Check config.", module()->Name()); + min = 0; + max = -1; + } + + staticKey.setLocale(LocaleMgr::systemLocaleMgr.getDefaultLocaleName()); + for (int i = min; i <= max; ++i) { + for ( int j = 0; j < staticKey.BMAX[i]; ++j) { + m_bookList->append( QString::fromLocal8Bit(staticKey.books[i][j].name) ); + } + } + m_cachedLocale = backend()->booknameLanguage(); + } + return m_bookList; +} + +/** Returns the number of chapters for the given book. */ +const unsigned int CSwordBibleModuleInfo::chapterCount(const unsigned int book) { + int result = 0; + if ( (book >= 1) && book <= (unsigned int)staticKey.BMAX[0] && hasTestament(OldTestament)) { //Is the book in the old testament? + result = (staticKey.books[0][book-1].chapmax); + } + else if ((book >= 1) && (book - staticKey.BMAX[0]) <= (unsigned int)staticKey.BMAX[1] && hasTestament(NewTestament) ) { //is the book in the new testament? + result = (staticKey.books[1][book-1-staticKey.BMAX[0]].chapmax); + } + return result; +} + +/** Returns the number of verses for the given chapter. */ +const unsigned int CSwordBibleModuleInfo::verseCount( const unsigned int book, const unsigned int chapter ) { + unsigned int result = 0; + if (book>=1 && (book <= (unsigned int)staticKey.BMAX[0]) && hasTestament(OldTestament) ) { //Is the book in the old testament? + if (chapter <= chapterCount(book) ) //does the chapter exist? + result = (staticKey.books[0][book-1].versemax[chapter-1]); + } + else if (book>=1 && (book - staticKey.BMAX[0]) <= (unsigned int)staticKey.BMAX[1] && hasTestament(NewTestament)) { //is the book in the new testament? + if (chapter <= chapterCount(book) ) //does the chapter exist? + result = staticKey.books[1][book-1-staticKey.BMAX[0]].versemax[chapter-1]; + } + return result; +} + +const unsigned int CSwordBibleModuleInfo::bookNumber(const QString &book){ + unsigned int bookNumber = 0; + bool found = false; + staticKey.setLocale(LocaleMgr::systemLocaleMgr.getDefaultLocaleName()); + int min = 0; + int max = 1; + //find out if we have ot and nt, only ot or only nt + if ((m_hasOT>0 && m_hasNT>0) || (m_hasOT == m_hasNT == -1)) { + min = 0; + max = 1; + bookNumber = 0; + } + else if (m_hasOT>0 && !m_hasNT) { + min = 0; + max = 0; + bookNumber = 0; + } + else if (!m_hasOT && m_hasNT>0) { + min = 1; + max = 1; + bookNumber = staticKey.BMAX[0]; + } + else if (!m_hasOT && !m_hasNT) { + min = 0; + max = -1; //no loop + bookNumber = 0; + } + + for (int i = min; i <= max && !found; ++i) { + for ( int j = 0; j < staticKey.BMAX[i] && !found; ++j) { + ++bookNumber; + if (book == QString::fromLocal8Bit( staticKey.books[i][j].name) ) + found = true; + } + } + return bookNumber; +} + +/** Returns true if his module has the text of desired type of testament */ +const bool CSwordBibleModuleInfo::hasTestament( CSwordBibleModuleInfo::Testament type ) { + if (m_hasOT == -1 || m_hasNT == -1) { + *module() = TOP; //position to first entry + VerseKey key( module()->KeyText() ); + if (key.Testament() == 1) { // OT && NT + m_hasOT = 1; + } + else if (key.Testament() == 2) { //no OT + m_hasOT = 0; + } + + *module() = BOTTOM; + key = module()->KeyText(); + if (key.Testament() == 1) { // only OT, no NT + m_hasNT = 0; + } + else if (key.Testament() == 2) { //has NT + m_hasNT = 1; + } + } + + switch (type) { + case OldTestament: + return m_hasOT>0; + case NewTestament: + return m_hasNT>0; + default: + return false; + } +} diff --git a/bibletime/backend/cswordbiblemoduleinfo.h b/bibletime/backend/cswordbiblemoduleinfo.h new file mode 100644 index 0000000..4209af4 --- /dev/null +++ b/bibletime/backend/cswordbiblemoduleinfo.h @@ -0,0 +1,96 @@ +/*************************************************************************** + cswordbiblemoduleinfo.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDBIBLEMODULEINFO_H +#define CSWORDBIBLEMODULEINFO_H + +//own includes +#include "cswordmoduleinfo.h" + +//Qt includes +#include + +//Sword includes + + +/** + * This is the CModuleInfo imlementation for Bible modules managed by Sword. + * + * @short Implementation for Sword Bibles + * @author The BibleTime team + * @version $Id: cswordbiblemoduleinfo.h,v 1.5 2002/03/15 20:48:00 joachim Exp $ + */ +class CSwordBibleModuleInfo : public CSwordModuleInfo { +public: + enum Testament { + OldTestament = 1, + NewTestament = 2 + }; + + /** + * The constructor of this class + */ + CSwordBibleModuleInfo( SWModule* module ); + CSwordBibleModuleInfo( const CSwordBibleModuleInfo& m ); + /** + * The destructor of this class + */ + ~CSwordBibleModuleInfo(); + /** + * Returns the number of avalable verses for the given chapter and book. + * + * @param book The book we should use + * @param chapter The chapter we should use + * @return The number of verses for the given book and chapter + */ + virtual const unsigned int verseCount( const unsigned int book, const unsigned int chapter ); + /** + * @return The number of available chapters of the given book. + * @return The number of chapters for the given book + */ + virtual const unsigned int chapterCount( const unsigned int book ); + /** Return all book of this module. + * @return A QStringList containing the books which are available in this module. + */ + virtual QStringList* books(); + /** + * Reimplementation, Returns the type + */ + virtual const CSwordModuleInfo::ModuleType type() const; + /** + * @return the book number, values starting with 1; 0 if not found + */ + const unsigned int bookNumber(const QString &book); + /** + * Returns true if his module has the text of desired type of testament + */ + const bool hasTestament( CSwordBibleModuleInfo::Testament ); + virtual CSwordModuleInfo* clone(); + +private: + QStringList* m_bookList; //This booklist is cached + QString m_cachedLocale; + short int m_hasOT; + short int m_hasNT; +}; + +inline const CSwordModuleInfo::ModuleType CSwordBibleModuleInfo::type() const { + return CSwordModuleInfo::Bible; +} + + +#endif diff --git a/bibletime/backend/cswordbookmoduleinfo.cpp b/bibletime/backend/cswordbookmoduleinfo.cpp new file mode 100644 index 0000000..a769657 --- /dev/null +++ b/bibletime/backend/cswordbookmoduleinfo.cpp @@ -0,0 +1,100 @@ +/*************************************************************************** + cswordbookmoduleinfo.cpp - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ +#include + +//BibleTime includes +#include "cswordbookmoduleinfo.h" + +//Sword includes +#include +#include + +CSwordBookModuleInfo::CSwordBookModuleInfo( SWModule* module ) + : CSwordModuleInfo(module), m_depth(-1) +{ + //checking if it works as expected +// qWarning("Book module: %s", module->Name()); +// if (TreeKeyIdx* treeKey = tree()) { +// TreeKeyIdx root = *treeKey; +// root.root(); +// printTree(root, treeKey, 0); +// } +// else +// qWarning("treeKey not valid"); +// qWarning("%s has depth: %i\n\n", module->Name(), depth()); +} + +CSwordBookModuleInfo::CSwordBookModuleInfo( const CSwordBookModuleInfo& module ) + : CSwordModuleInfo(module) +{ + m_depth = module.m_depth; +} + +CSwordBookModuleInfo::~CSwordBookModuleInfo(){ +} + +void CSwordBookModuleInfo::printTree(TreeKeyIdx treeKey, TreeKeyIdx* target, int level ){ + if (!target) + target = &treeKey; + +// unsigned long currentOffset = target->getOffset(); + for (int i = 0; i < level; i++) + std::cout << " "; + std::cout << treeKey.getLocalName() << std::endl; + if (treeKey.firstChild()) { + printTree(treeKey, target, level+1); + treeKey.parent(); + } + if (treeKey.nextSibling()) + printTree(treeKey, target, level); +} + +const int CSwordBookModuleInfo::depth() { + if (m_depth == -1) { + TreeKeyIdx* treeKey = tree(); + if (treeKey) { + TreeKeyIdx root = *treeKey; + root.root(); + computeDepth(root, treeKey, 0); + } + } + return m_depth; +} + +void CSwordBookModuleInfo::computeDepth(TreeKeyIdx treeKey, TreeKeyIdx* target, int level ){ + if (!target) + target = &treeKey; + + if (level > m_depth) + m_depth = level; + + if (treeKey.firstChild()) { + computeDepth(treeKey, target, level+1); + treeKey.parent(); + } + if (treeKey.nextSibling()) + computeDepth(treeKey, target, level); + +} + +/** Returns a treekey filled with the structure of this module */ +TreeKeyIdx* const CSwordBookModuleInfo::tree() const { + TreeKeyIdx* treeKey = dynamic_cast((SWKey*)*(module())); + if (treeKey) + return treeKey; + return 0; +} diff --git a/bibletime/backend/cswordbookmoduleinfo.h b/bibletime/backend/cswordbookmoduleinfo.h new file mode 100644 index 0000000..c2b4560 --- /dev/null +++ b/bibletime/backend/cswordbookmoduleinfo.h @@ -0,0 +1,63 @@ +/*************************************************************************** + cswordbookmoduleinfo.h - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDGENBOOKMODULEINFO_H +#define CSWORDGENBOOKMODULEINFO_H + +//BibleTime includes +#include "cswordmoduleinfo.h" + +//Sword includes +#include + + +/** Class for generic book support + * @author The BibleTime team + */ +class CSwordBookModuleInfo : public CSwordModuleInfo { +public: + CSwordBookModuleInfo( SWModule* module ); + CSwordBookModuleInfo( const CSwordBookModuleInfo& m ); + ~CSwordBookModuleInfo(); + /** + * Returns the type of the module. + */ + virtual const CSwordModuleInfo::ModuleType type() const; + /** + * Used for debugging + */ + void printTree(TreeKeyIdx treeKey, TreeKeyIdx* target, int level = 1 ); + /** + * Returns the maximal depth of sections and subsections. + */ + const int depth(); + /** + * @return A treekey filled with the structure of this module. Don't delete the returned key because it's casted from the module object. + */ + TreeKeyIdx* const tree() const; + +private: + void computeDepth(TreeKeyIdx treeKey, TreeKeyIdx* target, int level = 0 ); + int m_depth; +}; + +inline const CSwordBookModuleInfo::ModuleType CSwordBookModuleInfo::type() const { + return CSwordModuleInfo::GenericBook; +} + + +#endif diff --git a/bibletime/backend/cswordcommentarymoduleinfo.cpp b/bibletime/backend/cswordcommentarymoduleinfo.cpp new file mode 100644 index 0000000..6832efa --- /dev/null +++ b/bibletime/backend/cswordcommentarymoduleinfo.cpp @@ -0,0 +1,31 @@ +/*************************************************************************** + cswordcommentarymoduleinfo.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cswordcommentarymoduleinfo.h" + +CSwordCommentaryModuleInfo::CSwordCommentaryModuleInfo( SWModule* module) + :CSwordBibleModuleInfo(module) { +} + +CSwordCommentaryModuleInfo::~CSwordCommentaryModuleInfo(){ + +} + +/** No descriptions */ +CSwordModuleInfo* CSwordCommentaryModuleInfo::clone(){ + return new CSwordCommentaryModuleInfo(*this); +} diff --git a/bibletime/backend/cswordcommentarymoduleinfo.h b/bibletime/backend/cswordcommentarymoduleinfo.h new file mode 100644 index 0000000..965fb6a --- /dev/null +++ b/bibletime/backend/cswordcommentarymoduleinfo.h @@ -0,0 +1,45 @@ +/*************************************************************************** + cswordcommentarymoduleinfo.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDCOMMENTARYMODULEINFO_H +#define CSWORDCOMMENTARYMODULEINFO_H + +//own includes +#include "cswordbiblemoduleinfo.h" + +//Qt includes + +//Sword includes + +/** + * @author The BibleTime team + * @version $Id: cswordcommentarymoduleinfo.h,v 1.3 2002/02/22 20:55:12 joachim Exp $ + */ +class CSwordCommentaryModuleInfo : public CSwordBibleModuleInfo { +public: + CSwordCommentaryModuleInfo( SWModule* module ); + ~CSwordCommentaryModuleInfo(); + virtual const CSwordModuleInfo::ModuleType type() const; + virtual CSwordModuleInfo* clone(); +}; + +/** No descriptions */ +inline const CSwordModuleInfo::ModuleType CSwordCommentaryModuleInfo::type() const{ + return CSwordModuleInfo::Commentary; +} + +#endif diff --git a/bibletime/backend/cswordkey.cpp b/bibletime/backend/cswordkey.cpp new file mode 100644 index 0000000..871c8b0 --- /dev/null +++ b/bibletime/backend/cswordkey.cpp @@ -0,0 +1,90 @@ +/*************************************************************************** + cswordkey.cpp - description + ------------------- + begin : Thu May 24 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +//own includes +#include "cswordkey.h" +#include "cswordmoduleinfo.h" + +#include "cswordversekey.h" +#include "cswordldkey.h" +#include "cswordtreekey.h" + +//Sword includes +#include +#include +#include +#include +#include + + +CSwordKey::CSwordKey(CSwordModuleInfo* module) : m_module(module) { +} + +CSwordKey::CSwordKey(const CSwordKey& k) { + m_module = k.m_module; +} + +CSwordModuleInfo* CSwordKey::module(CSwordModuleInfo* newModule) { + if (newModule) + m_module = newModule; + return m_module; +} + +const QString CSwordKey::renderedText() { + if (!m_module) + return QString::null; + if (SWKey* k = dynamic_cast(this)) { + m_module->module()->SetKey(k); + } + return QString::fromUtf8(m_module->module()->RenderText()); +} + +const QString CSwordKey::strippedText() { + if (!m_module) + return QString::null; + SWKey* k = dynamic_cast(this); + if (k) + m_module->module()->SetKey(k); + return QString::fromUtf8(m_module->module()->StripText()); +} + +/** This will create a proper key object from a given module */ +CSwordKey* CSwordKey::createInstance( CSwordModuleInfo *module ){ + if (!module) + return 0; + + switch( module->type() ){ + case CSwordModuleInfo::Bible: + case CSwordModuleInfo::Commentary: + { + CSwordVerseKey* key = new CSwordVerseKey( (VerseKey *) ( (SWKey *)(*module->module()) ), module ); + return key; + } + case CSwordModuleInfo::Lexicon: + { + CSwordLDKey* key = new CSwordLDKey( (SWKey *)(*module->module()), module); + return key; + } + case CSwordModuleInfo::GenericBook: { + CSwordTreeKey* key = new CSwordTreeKey( (TreeKeyIdx*)((SWKey *)(*module->module())), module ); + return key; + } + default: + return 0; + } +} diff --git a/bibletime/backend/cswordkey.h b/bibletime/backend/cswordkey.h new file mode 100644 index 0000000..a5ad99c --- /dev/null +++ b/bibletime/backend/cswordkey.h @@ -0,0 +1,64 @@ +/*************************************************************************** + cswordkey.h - description + ------------------- + begin : Thu May 24 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDKEY_H +#define CSWORDKEY_H + +//Own includes + + +//Qt includes +#include + + +class CSwordModuleInfo; +/** + * The base class for all Sword based keys. + * @author The BibleTime team + * @version $Id: cswordkey.h,v 1.8 2002/03/09 11:07:14 joachim Exp $ + */ +class CSwordKey { + +protected: + CSwordKey(CSwordModuleInfo* module = 0); //protected constructor, because CSwordKey shouldn't be used (it's an abstract base class). + CSwordKey(const CSwordKey&); //copy constructor + +public: + virtual ~CSwordKey() {}; + + + //pure virtual functions + virtual const QString key(const QString& = QString::null) = 0; + virtual void key(const char*) = 0; + virtual CSwordKey* copy() const = 0; + + //implemented functions + virtual CSwordModuleInfo* module(CSwordModuleInfo* newModule = 0); + virtual const QString renderedText(); + virtual const QString strippedText(); + /** + * This returns a new object of the right CSwordKey* implementation (e.g. CSwordVerseKey or CSwordLDKey) + * The type is determined by the type of the module. + * @see CSwordModuleInfo, CSwordBibleModuleInfo, CSwordCommentaryModuleInfo, CSwordLexiconModukleInfo + */ + static CSwordKey* createInstance(CSwordModuleInfo *module); + +protected: + CSwordModuleInfo* m_module; //module pointer used by all keys +}; + +#endif diff --git a/bibletime/backend/cswordldkey.cpp b/bibletime/backend/cswordldkey.cpp new file mode 100644 index 0000000..f9c5582 --- /dev/null +++ b/bibletime/backend/cswordldkey.cpp @@ -0,0 +1,103 @@ +/*************************************************************************** + cswordldkey.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordldkey.h" +#include "cswordlexiconmoduleinfo.h" + +//Qt includes + +//Sword includes +#include +#include +#include + + +CSwordLDKey::CSwordLDKey( CSwordModuleInfo* module ) { + m_module = dynamic_cast(module); + if (m_module) + SWKey::operator = (m_module->module()->KeyText()); +} + +/** No descriptions */ +CSwordLDKey::CSwordLDKey( const CSwordLDKey &k ) : SWKey((const char*)k), CSwordKey(k) { +} + +/** No descriptions */ +CSwordLDKey::CSwordLDKey( const SWKey *k, CSwordModuleInfo* module) : SWKey(*k), CSwordKey(module) { +// m_module = module; +} + +//CSwordLDKey::~CSwordLDKey(){ +//} + +/** Clones this object by copying the members. */ +CSwordLDKey* CSwordLDKey::copy() const { + return new CSwordLDKey(*this); +} + +/** Sets the module of this key. */ +CSwordModuleInfo* CSwordLDKey::module(CSwordModuleInfo* newModule){ + if (newModule && newModule->type() == CSwordModuleInfo::Lexicon) { + const QString oldKey = key(); + m_module = newModule; + key(oldKey); + } + return m_module; +} + +/** Sets the key of this instance */ +const QString CSwordLDKey::key( const QString& newKey ){ + if (!newKey.isNull()) { + SWKey::operator = ((const char*)newKey.local8Bit()); + m_module->module()->SetKey(this); + m_module->snap(); + SWKey::operator = (m_module->module()->KeyText()); + } + return QString::fromLocal8Bit((const char*)*this);//don't use fromUtf8 +} + +/** Uses the parameter to returns the next entry afer this key. */ +CSwordLDKey* CSwordLDKey::NextEntry(){ + m_module->module()->SetKey(this); //use this key as base for the next one! + ( *( m_module->module() ) )++; + key(m_module->module()->KeyText()); + SWKey::operator = (m_module->module()->KeyText()); + + return this; +} + +/** Uses the parameter to returns the next entry afer this key. */ +CSwordLDKey* CSwordLDKey::PreviousEntry(){ + m_module->module()->SetKey(this); //use this key as base for the next one! + ( *( m_module->module() ) )--; + SWKey::operator = (m_module->module()->KeyText()); + + return this; +} + +/** Sets the key of this instance */ +void CSwordLDKey::key( const char* newKey ){ + if (newKey) { + SWKey::operator = (newKey); + + m_module->module()->SetKey(this); + m_module->snap(); + SWKey::operator = (m_module->module()->KeyText()); + } +} + diff --git a/bibletime/backend/cswordldkey.h b/bibletime/backend/cswordldkey.h new file mode 100644 index 0000000..38ea007 --- /dev/null +++ b/bibletime/backend/cswordldkey.h @@ -0,0 +1,102 @@ +/*************************************************************************** + cswordldkey.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + *************************************************************************** + + *************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDLDKEY_H +#define CSWORDLDKEY_H + + +//own includes +#include "cswordkey.h" +#include "cswordmoduleinfo.h" + +//Qt includes +#include + +//Sword includes +#include + +/** + * This class is the implementation of CKey used for dictionaries and lexicons. + * + * CSwordLDKey is the implementation of CKey for Lexicons and dictionaries. + * It provides a simple interface to set the current key, + * to get the text for the key and functions to get the next and previous items + * of the used module in comparision to the current key.
+ * Here's an example how to use this class:
+ * @code + * CSwordLexiconModuleInfo* m_module = new CSwordLexiconModuleInfo( sword_module ); + * CSwordLDKey* ldKey = new CSwordLDKey(m_module); + * ldKey->getPreviousEntry( ldKey ); + * qDebug( QString("The current key is: %1").arg(QString::fromLocal8Bit((const char*)*ldKey))); + * @endcode + * + * Please not, that the result will be invalid if use the operator const char* + * on the adress of the object, use something like this + * + * @code + * CSwordLDKey* key = new CSwordLDKey( lexicon_module ); + * const QString keyname = key->getKey(); + * @endcode + * + * @author The BibleTime team + * @version $Id: cswordldkey.h,v 1.8 2002/03/18 00:21:12 joachim Exp $ + */ + +class CSwordLDKey : public SWKey, public CSwordKey { +public: + /** + * Constructor of CSwordLDKey + */ + CSwordLDKey( CSwordModuleInfo* module ); + /** + * Copy constructor for this key class. + */ + CSwordLDKey( const CSwordLDKey &k ); + /** + * Copy constructor for this key class. + */ + CSwordLDKey( const SWKey *k, CSwordModuleInfo* module); +// virtual ~CSwordLDKey(); + /** + * Clones this object by copying the members. + */ + virtual CSwordLDKey* copy() const; + /** + * Uses the parameter to returns the next entry afer this key. + */ + CSwordLDKey* NextEntry( void ); + /** + * Uses the parameter to returns the previous entry afer this key. + */ + CSwordLDKey* PreviousEntry( void ); + /** + * Sets the module of this key. + */ + virtual CSwordModuleInfo* module( CSwordModuleInfo* module = 0 ); + /** + * Returns the current key as a QString + */ + virtual const QString key( const QString& newKey = QString::null); + /** + * Returns the current key as a QString + */ + virtual void key( const char* ); +}; + + +#endif + diff --git a/bibletime/backend/cswordlexiconmoduleinfo.cpp b/bibletime/backend/cswordlexiconmoduleinfo.cpp new file mode 100644 index 0000000..666033c --- /dev/null +++ b/bibletime/backend/cswordlexiconmoduleinfo.cpp @@ -0,0 +1,122 @@ +/*************************************************************************** + cswordlexiconmoduleinfo.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordlexiconmoduleinfo.h" +#include "../frontend/cbtconfig.h" + +//Qt includes +#include +#include + +//Sword includes +#include + +#include +#include + + +CSwordLexiconModuleInfo::CSwordLexiconModuleInfo( SWModule* module) : CSwordModuleInfo(module) { + m_entryList = 0; +} + +CSwordLexiconModuleInfo::CSwordLexiconModuleInfo( const CSwordLexiconModuleInfo& m ) : CSwordModuleInfo(m) { + delete m_entryList; + m_entryList = 0; + + if (m.m_entryList) { + m_entryList = new QStringList(); + *m_entryList = *m.m_entryList;//copy list items + } +} + +CSwordLexiconModuleInfo::~CSwordLexiconModuleInfo(){ + delete m_entryList; + m_entryList = 0; +} + +/** Returns the entries of the module. */ +QStringList* const CSwordLexiconModuleInfo::entries(){ + if (!module()) + return 0; + + if (!m_entryList) { + m_entryList = new QStringList(); + + const bool lexiconCache = CBTConfig::get(CBTConfig::lexiconCache); + bool read = false; + + if (lexiconCache){ + QFile f1( + QString::fromLatin1("%1/%2") + .arg(KGlobal::dirs()->saveLocation("data", "bibletime/cache/")) + .arg( name() ) + ); + + if ( f1.open( IO_ReadOnly ) ){ + QDataStream s( &f1 ); + QString v; + s >> v; + if (v == config(ModuleVersion) ) { + s >> *m_entryList; + read = true; + } + f1.close(); + } + } + + + if (!read){ + (*module()) = TOP; + do { + m_entryList->append(QString::fromLocal8Bit(module()->KeyText())); //UTF8, Latin1 or Local8Bit?? + (*module())++; + } while (!module()->Error()); + + if (m_entryList->first().stripWhiteSpace().isEmpty()) + m_entryList->remove( m_entryList->begin() ); + + if (lexiconCache){ + // create cache + QString dir = KGlobal::dirs()->saveLocation("data", "bibletime/cache/"); + QFile f2( QString::fromLatin1("%1/%2").arg(dir).arg( name() ) ); + if (f2.open( IO_WriteOnly )){ + QDataStream s( &f2 ); + s << config(CSwordModuleInfo::ModuleVersion); + s << *m_entryList; + f2.close(); + } + } + (*module()) = TOP; + } + } + return m_entryList; +} + +/** Jumps to the closest entry in the module. */ +const bool CSwordLexiconModuleInfo::snap(){ + bool ret = false; + if(module()->getRawEntry()){ //snap to the current entry + ret = true; + } + return ret; +} + +/** No descriptions */ +CSwordModuleInfo* CSwordLexiconModuleInfo::clone(){ + return new CSwordLexiconModuleInfo(*this); +} diff --git a/bibletime/backend/cswordlexiconmoduleinfo.h b/bibletime/backend/cswordlexiconmoduleinfo.h new file mode 100644 index 0000000..b240f7c --- /dev/null +++ b/bibletime/backend/cswordlexiconmoduleinfo.h @@ -0,0 +1,72 @@ +/*************************************************************************** + cswordlexiconmoduleinfo.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDLEXICONMODULEINFO_H +#define CSWORDLEXICONMODULEINFO_H + +//own includes +#include "cswordmoduleinfo.h" + +//Qt includes +#include + +/** + * The implementation of CModuleInfo for the Sword lexiccons and citionaries. + * @author The BibleTime team + * @version $Id: cswordlexiconmoduleinfo.h,v 1.5 2002/03/06 22:02:41 joachim Exp $ + */ +class CSwordLexiconModuleInfo : public CSwordModuleInfo { +public: + /** + * The standard constructor fot this object. + * A default constructor doesn't exist. Use this one. + */ + CSwordLexiconModuleInfo( SWModule* module ); + /** + * The copy constructor + */ + CSwordLexiconModuleInfo( const CSwordLexiconModuleInfo& m ); + virtual CSwordModuleInfo* clone(); + ~CSwordLexiconModuleInfo(); + /** + * Returns the entries of the module. + * This function returns the entries of the modules represented by this object. + * If this function is called for the first time the list is load from disk and stored in a list which cahes it. + * If the function is called again, the cached list is returned so we have a major speed improvement. + */ + QStringList* const entries(); + /** + * Reimplementation. + */ + virtual const CSwordModuleInfo::ModuleType type() const; + /** + * Jumps to the closest entry in the module. + */ + const bool snap(); + +private: + /** + * This is the list which caches the entres of the module. + */ + QStringList* m_entryList; +}; + +inline const CSwordModuleInfo::ModuleType CSwordLexiconModuleInfo::type() const { + return CSwordModuleInfo::Lexicon; +} + +#endif diff --git a/bibletime/backend/cswordmoduleinfo.cpp b/bibletime/backend/cswordmoduleinfo.cpp new file mode 100644 index 0000000..f66c210 --- /dev/null +++ b/bibletime/backend/cswordmoduleinfo.cpp @@ -0,0 +1,258 @@ +/*************************************************************************** + cswordmoduleinfo.cpp - description + ------------------- + begin : Wed Oct 11 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordmoduleinfo.h" +#include "cswordbackend.h" +#include "chtmlentrydisplay.h" +#include "cswordmodulesearch.h" +#include "cswordkey.h" +#include "util/scoped_resource.h" + +#include +#include +#include +#include +#include + +//Qt includes + +//Sword includes +#include +#include +#include +#include +#include +#include + +CSwordModuleInfo::CSwordModuleInfo( SWModule* module ) { + m_module = module; + m_searchResult.ClearList(); + m_dataCache.name = QString::fromLatin1(module->Name()); + m_dataCache.isUnicode = m_module->isUnicode(); + + if (backend()) { + if (hasVersion() && (minimumSwordVersion() > SWVersion::currentVersion)) { + qWarning("The module \"%s\" requires a newer Sword library. Please update to \"Sword %s\".", name().latin1(), (const char*)minimumSwordVersion()); + } + } +} + +CSwordModuleInfo::CSwordModuleInfo( const CSwordModuleInfo& m ) { + m_module = m.m_module; + m_searchResult = m.m_searchResult; +} + + +/** No descriptions */ +CSwordModuleInfo* CSwordModuleInfo::clone(){ + return new CSwordModuleInfo(*this); +} + +CSwordModuleInfo::~CSwordModuleInfo(){ + m_searchResult.ClearList(); + m_module = 0; //the Sword module object is deleted by the backend +} + +/** Sets the unlock key of the modules and writes the key into the cofig file.*/ +const CSwordModuleInfo::UnlockErrorCode CSwordModuleInfo::unlock( const QString& unlockKey ){ + CSwordModuleInfo::UnlockErrorCode ret = CSwordModuleInfo::noError; + SWConfig moduleConfig(""); + if ( backend()->moduleConfig(name(), moduleConfig) ) { + moduleConfig[name().latin1()]["CipherKey"] = unlockKey.local8Bit(); + backend()->setCipherKey(name().latin1(), unlockKey.local8Bit()); + (*backend()->getConfig()) += moduleConfig; + (*backend()->getConfig())[name().latin1()]["CipherKey"] = moduleConfig[name().latin1()]["CipherKey"]; + moduleConfig.Save(); + } + else + ret = CSwordModuleInfo::wrongUnlockKey; + return ret; +} + +/** Returns the display object for this module. */ +CHTMLEntryDisplay* const CSwordModuleInfo::getDisplay() const { + return dynamic_cast(m_module->Disp()); +} + +/** This function returns true if this module is locked, otherwise return false. */ +const bool CSwordModuleInfo::isLocked() { + if (isEncrypted() && config(CipherKey).isEmpty()) + return true; + return false; +} + +/** This functions returns true if this module is encrypted (locked or unlocked). */ +const bool CSwordModuleInfo::isEncrypted() const { + /** + * If we have the CipherKey entry the module + * is encrypted but not necessary locked + */ + ConfigEntMap config = backend()->getConfig()->Sections.find( name().latin1() )->second; + ConfigEntMap::iterator it = config.find("CipherKey"); + if (it != config.end()) + return true; + return false; +} + +const bool CSwordModuleInfo::hasVersion() const { + const string version = (*backend()->getConfig())[name().latin1()]["Version"]; + return version.length(); +} + + +/** Returns true if something was found, otherwise return false. */ +const bool CSwordModuleInfo::search( const QString searchedText, const int searchOptions, ListKey scope, void (*percentUpdate)(char, void*) ) { + int searchType = 0; + int searchFlags = REG_ICASE; + + //work around Swords thread insafety for Bibles and Commentaries + util::scoped_ptr key( CSwordKey::createInstance(this) ); + SWKey* s = dynamic_cast(key.get()); + if (s) + m_module->SetKey(*s); + + //setup variables required for Sword + if (searchOptions & CSwordModuleSearch::caseSensitive) + searchFlags = 0; + + if (searchOptions & CSwordModuleSearch::multipleWords) + searchType = -2; //multiple words + else if (searchOptions & CSwordModuleSearch::exactPhrase) + searchType = -1; //exact phrase + else if (searchOptions & CSwordModuleSearch::regExp) + searchType = 0; //regexp matching + + if ((searchOptions & CSwordModuleSearch::useLastResult) && m_searchResult.Count()) { + util::scoped_ptr searchScope( m_searchResult.clone() ); + m_searchResult = m_module->Search(searchedText.utf8(), searchType, searchFlags, searchScope, 0, percentUpdate); + } + else if (searchOptions & CSwordModuleSearch::useScope) { + m_searchResult = m_module->Search(searchedText.utf8(), searchType, searchFlags, (type() != Lexicon && type() != GenericBook) ? &scope : 0, 0, percentUpdate); + } + else + m_searchResult = m_module->Search(searchedText.utf8(), searchType, searchFlags, 0, 0, percentUpdate); + return (m_searchResult.Count()>0); +} + +/** Returns the last search result for this module. */ +ListKey& CSwordModuleInfo::searchResult(const ListKey* newResult) { + if (newResult) + m_searchResult.copyFrom( *newResult ); + return m_searchResult; +} + +/** Clears the last search result. */ +void CSwordModuleInfo::clearSearchResult(){ + m_searchResult.ClearList(); +} + +/** This interupts the search if this module is being searched. */ +void CSwordModuleInfo::interruptSearch(){ + m_module->terminateSearch = true; +} + +/** Returns the required Sword version for this module. Returns -1 if no special Sword version is required. */ +const SWVersion CSwordModuleInfo::minimumSwordVersion(){ + return SWVersion( config(CSwordModuleInfo::MinimumSwordVersion).latin1() ); +} + +/** Returns the name of the module. */ +const QString CSwordModuleInfo::name() const { + return m_dataCache.name; +} + +/** Returns true if this module is Unicode encoded. False if the charset is iso8859-1. */ +const bool CSwordModuleInfo::isUnicode(){ + return m_dataCache.isUnicode; +} + +const QString CSwordModuleInfo::config( const CSwordModuleInfo::ConfigEntry entry) { + switch (entry) { + case AboutInformation: + { + QString about = QString::fromLatin1(m_module->getConfigEntry("About")); + if (!about.isEmpty()) { + RTFHTML filter; + const int len = about.length()+600; + char dummy[len]; + strcpy(dummy, about.local8Bit()); + + filter.ProcessText(dummy,len,0); + about = QString::fromLocal8Bit(dummy); + } + return about; + } + case CipherKey: + return QString::fromLatin1(m_module->getConfigEntry("CipherKey")); + case AbsoluteDataPath: + return QString::fromLatin1(m_module->getConfigEntry("AbsoluteDataPath")); + case DataPath: + return QString::fromLatin1(m_module->getConfigEntry("DataPath")); + case Description: + return QString::fromLocal8Bit(m_module->Description()); + case ModuleVersion: + return QString::fromLatin1(m_module->getConfigEntry("Version")); + case MinimumSwordVersion: { + const QString version = QString::fromLatin1(m_module->getConfigEntry("MinimumVersion")); + return !version.isEmpty() ? version : QString::fromLatin1("0.0"); + } + case DisplayLevel: { + const QString level = QString::fromLatin1(m_module->getConfigEntry("DisplayLevel")); + return !level.isEmpty() ? level : QString::fromLatin1("0"); + } + default: + return QString::null; + } +} + +/** Returns true if the module supports the feature given as parameter. */ +const bool CSwordModuleInfo::has( const CSwordModuleInfo::Feature feature ){ + switch (feature) { + case StrongsNumbers: + return m_module->getConfig().has("Feature", "StrongsNumber"); + case GreekDef: + return m_module->getConfig().has("Feature", "GreekDef"); + case HebrewDef: + return m_module->getConfig().has("Feature", "HebrewDef"); + case GreekParse: + return m_module->getConfig().has("Feature", "GreekParse"); + case HebrewParse: + return m_module->getConfig().has("Feature", "HebrewParse"); + case DailyDevotion: + return m_module->getConfig().has("Feature", "DailyDevotion"); + case Glossary: + return m_module->getConfig().has("Feature", "Glossary"); + } + return 0; +} + +const bool CSwordModuleInfo::has( const CSwordBackend::FilterOptions option ){ + //BAD workaround to see if the filter is GBF or ThML! + if (m_module->getConfig().has("GlobalOptionFilter",QString::fromLatin1("GBF%1").arg(backend()->configOptionName(option)).latin1())) + return true; + if (m_module->getConfig().has("GlobalOptionFilter",QString::fromLatin1("ThML%1").arg(backend()->configOptionName(option)).latin1())) + return true; + if (m_module->getConfig().has("GlobalOptionFilter",QString::fromLatin1("UTF8%1").arg(backend()->configOptionName(option)).latin1())) + return true; + if (m_module->getConfig().has("GlobalOptionFilter",backend()->configOptionName(option).latin1())) + return true; + + return false; +} + + diff --git a/bibletime/backend/cswordmoduleinfo.h b/bibletime/backend/cswordmoduleinfo.h new file mode 100644 index 0000000..8173401 --- /dev/null +++ b/bibletime/backend/cswordmoduleinfo.h @@ -0,0 +1,197 @@ +/*************************************************************************** + cswordmoduleinfo.h - description + ------------------- + begin : Wed Oct 11 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDMODULEINFO_H +#define CSWORDMODULEINFO_H + +//BibleTime includes +#include "cswordbackend.h" +#include "frontend/cpointers.h" + + +//Qt includes +#include +#include +#include + + +//Sword includes +#include +#include + +class SWModule; +class CSwordBackend; +class CHTMLEntryDisplay; + +/** + * Base class for Sword modules. + * This is the base class for all Sword modules. Every class handling a special Sword module type + * does inherit from this class. + * + * @author The BibleTime team + * @version $Id: cswordmoduleinfo.h,v 1.21 2002/03/21 21:58:37 joachim Exp $ + */ +class CSwordModuleInfo : public CPointers { +public: + enum ModuleType { + Bible, + Commentary, + Lexicon, + GenericBook, + Unknown + }; + /** + * This enum is used to give + * back an error code after unlocking the module + */ + enum UnlockErrorCode { + noError, /* No error occured, everything worked ok. The key was written to the config*/ + wrongUnlockKey, /* The wrong key was used. Module is not unlocked */ + notLocked, /* The module was not locked so it can't be unlocked */ + noPermission /* The key was not written to config because we have no permissions*/ + }; + enum ConfigEntry { + AboutInformation, /* The about information of a module which is stored in the config file*/ + AbsoluteDataPath, /* The absolute data path stored in the config object */ + CipherKey, /* The cipher key which was used to unlock the module. Not necessarily set.*/ + DataPath, /* The relative path. See AbsoluteDataPath*/ + Description, /* The module decsription stored in the config file */ + ModuleVersion, /* The module's version.*/ + MinimumSwordVersion, /* The required Sword Version of this module. Otherwise some things may not work (compression etc.).*/ + DisplayLevel /* Mostly used for books. Gives the level which should contain the connected entries.*/ + }; + enum Feature { + StrongsNumbers, /*Use for Bibles which have embedded strong numbers*/ + GreekDef, /*Hebrew StringsNumbers definitions in a lexicon*/ + HebrewDef, + GreekParse, + HebrewParse, + DailyDevotion, + Glossary + }; + + /** + * Returns the config entry which is pecified by the parameter. + */ + const QString config( const ConfigEntry ); + + CSwordModuleInfo( SWModule* module ); + CSwordModuleInfo( const CSwordModuleInfo& m ); + virtual CSwordModuleInfo* clone(); + virtual ~CSwordModuleInfo(); + + /** + * Returns the module object so all objects can access the original Sword module. + */ + SWModule* const module() const; + /** + * Sets the unlock key of the modules and writes the key into the cofig file. + * @return True if the unlock process was succesful, if the key was wrong, or if the config file was write protected return false. + */ + const CSwordModuleInfo::UnlockErrorCode unlock( const QString& unlockKey ); + /** + * Returns the display object for this module. Normally every module should have a Display object. + * Please don't use module()->Display() because this function does return the Sword display and does + * render the text, too. + * This function performs some casts to return the correct display. If it returns 0 there's no valid + * display object. + */ + CHTMLEntryDisplay* const getDisplay() const; + /** + * This function does return true if the data files of the module are encrypted by the module author + * (the on who made the module) no matter if it's locked or not. + * + */ + const bool isEncrypted() const; + /** + * This function returns true if this module is locked (encrypted + correct cipher key), + * otherwise return false. + */ + const bool isLocked(); + + /** + * @return true if this module has a version number and false if it doesn't have one. + */ + const bool hasVersion() const; + /** + * Returns true if something was found, otherwise return false. + * This function does start the Sword functions to search in the module and it does + * overwrite the variable containing the last search result. + */ + virtual const bool search( const QString searchedText, const int searchOptions, ListKey scope, void (*percent)(char, void*)); + /** + * Returns the last search result for this module. + * The last result is cleared by @ref search + */ + virtual ListKey& searchResult( const ListKey* newResult = 0 ); + /** + * This interupts the search if this module is being searched. + */ + virtual void interruptSearch(); + /** + * Clears the last search result. + * This does immediately clean the last search result, + * no matter if search is in progress or not. + */ + void clearSearchResult(); + /** + * Returns the type of the module. + */ + virtual const CSwordModuleInfo::ModuleType type() const; + /** + * Returns the required Sword version for this module. + * Returns -1 if no special Sword version is required. + */ + const SWVersion minimumSwordVersion(); + /** + * Returns the name of the module. + */ + const QString name() const; + /** + * Returns true if this module is Unicode encoded. False if the charset is iso8859-1. + */ + const bool isUnicode(); + /** + * Snaps to the closest entry in the module if the current key is + * not present in the data files. + */ + virtual const bool snap() {return false;}; + const bool has( const CSwordModuleInfo::Feature ); + const bool has( const CSwordBackend::FilterOptions option ) ; + +private: + SWModule* m_module; + ListKey m_searchResult; + struct { + QString name; + bool isUnicode; + } m_dataCache; +}; + +typedef QList ListCSwordModuleInfo; + +inline const CSwordModuleInfo::ModuleType CSwordModuleInfo::type() const { + return CSwordModuleInfo::Unknown; +} + +inline SWModule*const CSwordModuleInfo::module() const { + return m_module; +} + +typedef QList ListCSwordModuleInfo; + +#endif diff --git a/bibletime/backend/cswordmodulesearch.cpp b/bibletime/backend/cswordmodulesearch.cpp new file mode 100644 index 0000000..404b332 --- /dev/null +++ b/bibletime/backend/cswordmodulesearch.cpp @@ -0,0 +1,189 @@ +/*************************************************************************** + cswordmodulesearch.cpp - description + ------------------- + begin : Fri Oct 13 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordmodulesearch.h" +#include "cswordmoduleinfo.h" +#include "cswordbackend.h" +#include "../frontend/cbtconfig.h" + +//System includes +#include + +//#include + +//Sword includes +#include +#include +#include + + +CSwordModuleSearch* searcher = 0; + +void startSearchCallback(void *p){ + if (searcher) + searcher->startSearch(); +} + +void percentUpdateDummy(char percent, void *p) { + searcher->percentUpdate(percent, p); +}; + +CSwordModuleSearch::CSwordModuleSearch() : + m_searchedText(QString::null), + m_searchOptions(0),m_foundItems(false),m_isSearching(false),m_terminateSearch(false) +{ + searcher = this; +} + +CSwordModuleSearch::~CSwordModuleSearch(){ + searcher = 0; +} + +void CSwordModuleSearch::percentUpdate(char percent, void *){ + cms_currentProgress = (int)percent; + if (cms_module_count > 1) + cms_overallProgress = (int)((float)((cms_module_current - 1)*100+cms_currentProgress))/cms_module_count; + else + cms_overallProgress = cms_currentProgress; + m_updateSig.activate(); +} + +/** This function sets the modules which should be searched. */ +void CSwordModuleSearch::setModules( ListCSwordModuleInfo& list ) { + m_moduleList = list; +} + +/** Starts the search for the search text. */ +const bool CSwordModuleSearch::startSearch() { + backend()->setFilterOptions ( CBTConfig::getFilterOptionDefaults() ); + m_foundItems = false; + m_terminateSearch = false; + m_isSearching = true; + + cms_currentProgress = 0; + cms_overallProgress = 0; + cms_module_current = 0; + cms_module_count = m_moduleList.count(); + + bool foundItems = false; + + for (m_moduleList.first(); m_moduleList.current() && !m_terminateSearch; m_moduleList.next()) { + cms_module_current++; + if ( m_moduleList.current()->search(m_searchedText, m_searchOptions, m_searchScope, &percentUpdateDummy) ) + foundItems = true; + } + cms_currentProgress = 100; + cms_overallProgress = 100; + + m_foundItems = foundItems; + m_isSearching = false; + m_terminateSearch = false; + + m_finishedSig.activate(); + return true; +} + +void CSwordModuleSearch::startSearchThread(void){ +// pthread_t thread; + +// pthread_attr_t attr; +// pthread_attr_init(&attr); +// pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); + +// pthread_mutex_init(&percentage_mutex, NULL); +// pthread_mutex_init(&signal_mutex, NULL); + +// percentage_mutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP; + /*const int i =*/ //pthread_create( &thread, /*&attr*/NULL, &startSearchCallback, this ); + + startSearch(); + +// pthread_cond_wait(&finish_cond, &dummy_mutex); +// pthread_mutex_lock(&signal_mutex); +// m_finishedSig.activate(); +// pthread_mutex_unlock(&signal_mutex); +} + +/** Sets the text which should be search in the modules. */ +void CSwordModuleSearch::setSearchedText( const QString text ){ + m_searchedText = text; +} + +/** Sets the search scope. */ +void CSwordModuleSearch::setSearchScope( ListKey scope ) { + m_searchScope.copyFrom( scope ); +} + +/** Sets the search scope back. */ +void CSwordModuleSearch::resetSearchScope() { + m_searchScope.ClearList(); +} + +/** Interrupts the current search. */ +void CSwordModuleSearch::interruptSearch() { + if (m_isSearching) + m_terminateSearch = true; //no other modules will be searched + for (m_moduleList.first(); m_moduleList.current(); m_moduleList.next()) + m_moduleList.current()->interruptSearch(); //interrupt the current module +} + +/** Returns true if in the last search the searcher found items, if no items were found return false. */ +const bool CSwordModuleSearch::foundItems() { + return m_foundItems; +} + +/** Sets the options for this search. Options include theflags and search types of the Sword searc interface. */ +void CSwordModuleSearch::setSearchOptions( int options ){ + m_searchOptions = options; +} + +/** Returns the percent for the given type. */ +const int CSwordModuleSearch::getPercent( percentType type ){ + switch (type) { + case currentModule: + return cms_currentProgress; + case allModules: + return cms_overallProgress; +// default: +// return 0; + }; + return 0; +} + +/** Returns a copy of the used search scope. */ +ListKey& CSwordModuleSearch::scope() { + return m_searchScope; +} + +void CSwordModuleSearch::connectPercentUpdate( QObject *receiver, const char *member ) { + m_updateSig.connect(receiver, member); +}; + +void CSwordModuleSearch::connectFinished( QObject *receiver, const char *member ) { + m_finishedSig.connect(receiver, member); +}; + +/** Should be called when the search finished. */ +void CSwordModuleSearch::searchFinished(){ +// qWarning("CSwordModuleSearch::searchFinished!"); +// m_updateSig.block(true); +// pthread_mutex_lock(&signal_mutex); + m_finishedSig.activate(); +// pthread_mutex_unlock(&signal_mutex); +// m_updateSig.block(false); +} diff --git a/bibletime/backend/cswordmodulesearch.h b/bibletime/backend/cswordmodulesearch.h new file mode 100644 index 0000000..241f4c9 --- /dev/null +++ b/bibletime/backend/cswordmodulesearch.h @@ -0,0 +1,159 @@ +/*************************************************************************** + cswordmodulesearch.h - description + ------------------- + begin : Fri Oct 13 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDMODULESEARCH_H +#define CSWORDMODULESEARCH_H + +//BibleTime includes +//#include "cswordmoduleinfo.h" +//#include "../structdef.h" +#include "../frontend/cpointers.h" + +//Qt includes +#include +#include +#include + +//System includes +#include + +//Sword includes +#include + +//class ListKey; +class CSwordModuleInfo; +typedef QList ListCSwordModuleInfo; + +/** + * CSwordModuleSearch manages the search on Sword modules. It manages the thread(s) + * and manages the different modules. + * + * @author The BibleTime team + * @version $Id: cswordmodulesearch.h,v 1.11 2002/03/09 21:03:16 mgruner Exp $ + */ +class CSwordModuleSearch: public CPointers { +public: + enum scopeType { + Scope_NoScope, + Scope_LastSearch, + Scope_Bounds + }; + enum searchOptions { + exactPhrase = 0x000000001, + multipleWords = 0x000000002, + regExp = 0x000000004, + caseSensitive = 0x000000008, + useLastResult = 0x000000010, + useScope = 0x000000020 + }; + enum percentType { + currentModule, + allModules + }; + /** + * This is used to show the selection in the searchscope dialog + */ + enum SearchScope { NoScope, LastSearch, Bounds }; + + /** This is used to so show the selection of the searchdialog + * + */ + enum SearchType { MultiWord, ExactPhrase, RegEx }; + + + CSwordModuleSearch(); + /** + * The destructor of this class. It cleans uop memory before it's deleted. + */ + virtual ~CSwordModuleSearch(); + /** + * Sets the text which should be search in the modules. + */ + void setSearchedText( const QString ); + /** + * Starts the search for the search text. + */ + const bool startSearch(); + /** + * This function sets the modules which should be searched. + */ + void setModules( ListCSwordModuleInfo& ); + /** + * Sets the search scope. + */ + void setSearchScope( ListKey scope ); + /** + * Calls with true if you want to use the last searchresult as search scope. + */ +// void useLastSearchResult( const bool ); + /** + * Sets the seaech scope back. + */ + void resetSearchScope(); + /** + * Interrupts the current search. + */ + void interruptSearch(); + /** + * @return "true" if in the last search the searcher found items, if no items were found return "false" + */ + const bool foundItems(); + /** + * This functions starts the search: First it creates a new thread for the search and it calles the the + * function to start the search. + */ + void startSearchThread(void); + /** + * Sets the options for this search. Options include the + * flags and search types of the Sword searc interface. + */ + void setSearchOptions( int options ); + /** + * Returns the percent for the given type. + */ + const int getPercent( percentType type ); + void percentUpdate(char percent, void *p); + /** + * Returns a copy of the used search scope. + */ + ListKey& scope(); + void connectPercentUpdate( QObject *receiver, const char *member ); + void connectFinished( QObject *receiver, const char *member ); + void searchFinished(); + +protected: + QString m_searchedText; + ListKey m_searchScope; + ListCSwordModuleInfo m_moduleList; + + int m_searchOptions; + + bool m_foundItems; + bool m_isSearching; + bool m_terminateSearch; + + int cms_currentProgress; + int cms_overallProgress; + int cms_module_count; + int cms_module_current; + +private: + QSignal m_updateSig; + QSignal m_finishedSig; +}; + +#endif diff --git a/bibletime/backend/cswordtreekey.cpp b/bibletime/backend/cswordtreekey.cpp new file mode 100644 index 0000000..5aa9f56 --- /dev/null +++ b/bibletime/backend/cswordtreekey.cpp @@ -0,0 +1,83 @@ +/*************************************************************************** + cswordtreekeyidx.cpp - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cswordtreekey.h" +#include "cswordbookmoduleinfo.h" + +CSwordTreeKey::CSwordTreeKey( const CSwordTreeKey& k ) : TreeKeyIdx(/*(const char*)*/k), CSwordKey(k) { +} + +CSwordTreeKey::CSwordTreeKey( const TreeKeyIdx *k, CSwordModuleInfo* module ) + : TreeKeyIdx(*k), CSwordKey(module) { +} + +CSwordTreeKey* CSwordTreeKey::copy() const { + return new CSwordTreeKey(*this); +} + +/** Sets the key of this instance */ +const QString CSwordTreeKey::key( const QString& newKey ){ + if (!newKey.isNull()) { + if (newKey.isEmpty()) + root(); + else + TreeKeyIdx::operator = ((const char*)newKey.local8Bit()); //don't use Utf8! Doesn't work with umlauts! + + if (Error()) { + root(); + return QString::null; + } + } + return QString::fromLocal8Bit( getFullName() ); //don't use fromUtf8 +} + +void CSwordTreeKey::key( const char* newKey ){ + if (newKey) { + TreeKeyIdx::operator = (newKey); + } +} + +CSwordModuleInfo* CSwordTreeKey::module( CSwordModuleInfo* newModule ){ + if (newModule && newModule->type() == CSwordModuleInfo::GenericBook ) { + CSwordBookModuleInfo* bookModule = dynamic_cast(newModule); + m_module = newModule; + copyFrom(*(bookModule->tree())); + root(); + } + return m_module; +} + +//const bool CSwordTreeKey::jumpTo(const JumpType type) { +// switch (type) { +// case NextEntry: +// if (Traversable()) { +// (*this)++; +// return !Error(); +// } +// return false; +// +// case PreviousEntry: +// if (Traversable()) { +// (*this)++; +// return !Error(); +// } +// return false; +// +// default: +// return false; +// }; +//} diff --git a/bibletime/backend/cswordtreekey.h b/bibletime/backend/cswordtreekey.h new file mode 100644 index 0000000..8b8a04f --- /dev/null +++ b/bibletime/backend/cswordtreekey.h @@ -0,0 +1,56 @@ +/*************************************************************************** + cswordtreekeyidx.h - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDTREEKEYIDX_H +#define CSWORDTREEKEYIDX_H + +//BibleTime includes +#include "cswordkey.h" +#include "cswordmoduleinfo.h" + +//Sword includes +#include + +/** BibleTime's implementation of Sword's TreeKeyIdx class. + * @author The BibleTime team + */ +class CSwordTreeKey : public TreeKeyIdx, public CSwordKey { +public: +// enum JumpType { +// NextEntry, +// PreviousEntry +// }; + + CSwordTreeKey( const CSwordTreeKey& k ); + CSwordTreeKey( const TreeKeyIdx *k, CSwordModuleInfo* module ); + CSwordModuleInfo* module( CSwordModuleInfo* newModule ); + virtual CSwordTreeKey* copy() const; + /** + * Set/get the key. If the parameter is not set (means equal to QString::null) + * the used key is returned. Otherwise the key is set and the new on ei returned. + */ + virtual const QString key( const QString& key = QString::null ); + /** + * Set/get the key. If the parameter is not set (means equal to QString::null) + * the used key is returned. Otherwise the key is set and the new on ei returned. + */ + virtual void key( const char* key ); + +// const bool jumpTo( const JumpType type ); +}; + +#endif diff --git a/bibletime/backend/cswordversekey.cpp b/bibletime/backend/cswordversekey.cpp new file mode 100644 index 0000000..f6b7642 --- /dev/null +++ b/bibletime/backend/cswordversekey.cpp @@ -0,0 +1,172 @@ +/*************************************************************************** + cswordversekey.cpp - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cswordversekey.h" +#include "cswordbiblemoduleinfo.h" +#include "cswordcommentarymoduleinfo.h" + +//Qt includes +#include + +//Sword includes +#include + +CSwordVerseKey::CSwordVerseKey( CSwordModuleInfo* module ) : CSwordKey(module) { +} + +CSwordVerseKey::CSwordVerseKey( const CSwordVerseKey& k ) : VerseKey(k),CSwordKey(k) { +} + +CSwordVerseKey::CSwordVerseKey( const VerseKey* k, CSwordModuleInfo* module) : VerseKey(*k),CSwordKey(module) { +} + +/** Clones this object. */ +CSwordKey* CSwordVerseKey::copy() const { + return new CSwordVerseKey(*this); +} + +/** Sets the module for this key */ +CSwordModuleInfo* CSwordVerseKey::module( CSwordModuleInfo* newModule ){ + if (newModule && (newModule->type() == CSwordModuleInfo::Bible || newModule->type() == CSwordModuleInfo::Commentary) ) { + const QString& oldKey = key(); + m_module = newModule; + key(oldKey); + } + return m_module; +} + +/** Returns the current book as Text, not as integer. */ +const QString CSwordVerseKey::book( const QString& newBook ) { + int min = 0; + int max = 1; + + if (!newBook.isEmpty()) { + CSwordBibleModuleInfo* bible = dynamic_cast(module()); + const bool hasOT = bible->hasTestament(CSwordBibleModuleInfo::OldTestament); + const bool hasNT = bible->hasTestament(CSwordBibleModuleInfo::NewTestament); + if (hasOT && hasNT) { + min = 0; + max = 1; + } + else if (hasOT && !hasNT) { + min = 0; + max = 0; + } + else if (!hasOT && hasNT) { + min = 1; + max = 1; + } + else if (!hasOT && !hasNT) { + min = 0; + max = -1; //no loop + } + + bool finished = false; + for (int testament = min; testament <= max && !finished; ++testament) { + for (int book = 0; book < BMAX[testament] && !finished; ++book) { + if ( !strcmp((const char*)newBook.local8Bit(),books[testament][book].name ) ) { + Testament(testament+1); + Book(book+1); + finished = true; + } + } + } + } + if ( Testament()> 0 && Testament() <=2 && Book() <= BMAX[Testament()-1] ) + return QString::fromLocal8Bit( books[Testament()-1][Book()-1].name ); + return QString::fromLocal8Bit( books[min][0].name ); //return the first book, i.e. Genesis +} + +/** Sets the key we use to the parameter. */ +const QString CSwordVerseKey::key( const QString& newKey ){ + if (!newKey.isEmpty()) { + VerseKey::operator = ((const char*)newKey.local8Bit()); + } + return QString::fromLocal8Bit((const char*)*this);//don't use fromUtf8 here! +} + +void CSwordVerseKey::key( const char* newKey ){ + if (newKey) { + VerseKey::operator = (newKey); + } +} + +const bool CSwordVerseKey::next( const JumpType type ) { + switch (type) { + case UseBook: { + if (Book() <= 0 || Book() >= BMAX[Testament()-1] && Testament() > 1) + return false; + Book(Book()+1); + return true; + } + case UseChapter: { + Chapter(Chapter()+1); + return true; + } + case UseVerse: { + if (m_module && m_module->module()) { + m_module->module()->SetKey(this); //use this key as base for the next one! + (*(m_module->module()) )++; + if (!m_module->module()->Error()) + key( QString::fromLocal8Bit(m_module->module()->KeyText()) );//don't use fromUtf8 + else { + Verse(Verse()+1); + return false; + } + } + else + Verse(Verse()+1); + return true; + } + default: + return false; + }; +}; + +const bool CSwordVerseKey::previous( const JumpType type ) { + switch (type) { + case UseBook: { + if (Book()<=1 || Book() > BMAX[Testament()-1] && Testament() > 1) + return false; + Book(Book()-1); + return true; + } + case UseChapter: { + Chapter(Chapter()-1); + return true; + } + case UseVerse: { + if (m_module && m_module->module()) { + m_module->module()->SetKey(this); //use this key as base for the next one! + ( *( m_module->module() ) )--; + if (!m_module->module()->Error()) + key( QString::fromLocal8Bit(m_module->module()->KeyText()) );//don't use fromUtf8 + else { + Verse(Verse()-1); + return false; + } + } + else + Verse(Verse()-1); + + return true; + } + default: + return false; + }; +}; diff --git a/bibletime/backend/cswordversekey.h b/bibletime/backend/cswordversekey.h new file mode 100644 index 0000000..7afaab8 --- /dev/null +++ b/bibletime/backend/cswordversekey.h @@ -0,0 +1,119 @@ +/*************************************************************************** + cswordversekey.h - description + ------------------- + begin : Thu Oct 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + *************************************************************************** + + *************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDVERSEKEY_H +#define CSWORDVERSEKEY_H + +//own includes +#include "cswordkey.h" +#include "cswordmoduleinfo.h" + +//Qt includes +#include + +//Sword includes +#include + +/** + * The CKey implementation for verse based modules (Bibles and Commentaries) + * + * This class is the implementation of CKey for verse based modules like + * Bibles and commentaries. + * This class provides the special functions to work with the verse based modules. + * + * Useful functions are + * @see NextBook() + * @see PreviousBook() + * @see NextChapter() + * @see PreviousChapter() + * @see NextVerse() + * @see PreviousVerse(). + * + * Call the constructor only with a valid verse based modules, otherwise this key will be invalid + * and the application will probably crash. + * + * @version $Id: cswordversekey.h,v 1.8 2002/03/12 20:43:13 joachim Exp $ + * @author The BibleTime team + */ +class CSwordVerseKey : public VerseKey, public CSwordKey { +public: + enum JumpType { + UseBook, + UseChapter, + UseVerse + }; + + /** + * Constructor of this class. + * + * This function will construct a versekey with the current module position + * and it will setup the m_module members. + * + */ + CSwordVerseKey( CSwordModuleInfo* module ); + /** + * Copy constructor. + */ + CSwordVerseKey( const CSwordVerseKey& k ); + /** + * VerseKey based constructor. + */ + CSwordVerseKey( const VerseKey* k, CSwordModuleInfo* module ); + /** + * Clones this object. + */ + virtual CSwordKey* copy() const; + /** + * Destructor of this class. + * + * Clean up the data variables and delete objects used and + * created by this class. + */ +// virtual ~CSwordVerseKey(); + /** + * Set/get the key. If the parameter is not set (means equal to QString::null) + * the used key is returned. Otherwise the key is set and the new on ei returned. + */ + virtual const QString key( const QString& key = QString::null ); + /** + * Set/get the key. If the parameter is not set (means equal to QString::null) + * the used key is returned. Otherwise the key is set and the new on ei returned. + */ + virtual void key( const char* key ); + + /** + * Jumps to the next entry of the given type + */ + const bool next( const JumpType type ); + /** + * Jumps to the previous entry of the given type + */ + const bool previous ( const JumpType type ); + /** + * This functions returns the current book as localised text, not as book numer. + * + * Use "char Book()" to retrieve the book number of the current book. + * @return The name of the current book + */ + const QString book(const QString& newBook = QString::null); + /** + * Sets the module for this key + */ + virtual CSwordModuleInfo* module( CSwordModuleInfo* newModule = 0 ); +}; + +#endif diff --git a/bibletime/backend/st31vJFM b/bibletime/backend/st31vJFM new file mode 100644 index 0000000000000000000000000000000000000000..ffbbf5d90f177b1384eff6fc2427ca8a753781c0 GIT binary patch literal 8146944 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

<%`6l}4i>p2Xc4B?Bs;;&mvXDL!2g?ch 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%0D6p6Yg31ghPc4(ZzpVPi9t*InmsD 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 z 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

@;9FyABMh~rIh+v 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%0D1^+2p^_7X+x|(6j61&xXU!Dz8YloU{ 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 gE3KYX#! z_A>cv9dpKB)3wQfZI+vebT}t#<6H`vw~bahq_ruDhi)F5g6^Ixc8`V|Jz>%XxRp2F z<|ljjN_IofT_e*YC46$!WE5W;wX?Ew=MSDoUaR4<@AiT3dW3N{X9nghOtKnYGwBZY zTfRx3@7~U<$@)A`g5SU;qdbs@CkWb2KO$w%4$q~N?RoCZIb7=$?ajxn7s8`sr}yV) zJ!{VRO}$0RadYfUSV*|JIa78wGY=(R4)E){ac}El$>(wn5AA$@vdc|-oWc}T2!!& zUcy_Zt>qP-A+cl1TX5orH;%cMw-r5%Tkz1S#{^K=LYGz3`tyXcT{yt&T&8>7$y0AY z7T4{Er#dps((2e)+lsr+w&04=6S6{0UYoI?X9!2|+YJ!Nqy~eQN z6x5{_zG+z7nNjPowDVBjO@pD5t*B~{M{;ITqApg}4*HGV*v6SPt&b-p;-5>S=+J|)d<^s`(qZZyw_G~hECk$i*M_je86ZHCEa=`azpQ=3C$DzK|=y#Viu)Z z>*7OaC<#x2%&P17(pP9(&M`NG67S&wn5K<~#3z%j%%%g=;_&cIXr}Hsu@#n?G}9Z| zddvrL>Vr$W>IO7N_(NUC*t zN@$ve2>u%MHp`F)h|PYAd>;2qi1jedM%GqvMzY^J8imsAIW1o`ogzVR&46j;ea*z^ z$?(i07vbzRu&I)Yk8Z=vJs3W4`R7kY+A;Vk(n_vzOZL)cD2lVJbRfN_7ptUzX5*;Q zY=;{PW>ZMvsQqjTNiSN+!dq$bvd`41mWpV5V2!dN;}c|ZPMwcmPP0_;txd7#A(B&U zft%x$E8}}&msHBirpBpqo*h`o>=95U-loipKHOvz9gy)EFWbXLI!&8C)9r0D^7V*F zmcDv5gQ^FcR0-wJugc( zN`oxCIBU1HPftNi^#HQ?CK^Xa@h&1fBAbjNTh2(O(tFZwGaW;zn4EUSiz6tR0mz$y z)0B_-@e^HCRAkdtU^aScax^$ObCL0}o@C3^6i12-*Zh`OvfPJQFBc>=7viT#k8#GD zHhPY6laIR0GPTj{?2{T^oP|%BKCuDGi%!!Y49b~k%MqP!YW%=!GtI_KSNuh~%$n#^ zC4$m9cL`0#_ql@UHhn2KUApH5Lh@$S^m#Jz?JdE!t}s?wmM5Qp}>Y}C(NR0QO@vXni=&{*vW{ycEU-4 zEP3f>7K3ZrM_2M)!nb*5I9A7GL-O>@Y>1VU4tNq|wyn#{hbe1f_EaJml1E~uPr6&p zyYgt`^yYwZM6S(pw#JGV>{EL!Wi~p&%1c@|OZmytg4FH}+~(tR9I}06x~3l-;-Aj% zO3v11Hpvq2yYJ<Nb5F)r^xe(rpIz$ORTCranuhQ(WyIKA!=ZYI_-`X(-5|;^i9F zdyHTxYN`a&0<0NWBy-h(YZu|3o)y_@!&d*W-NpTNpC=nvhK;zD%84AbeiNp^*B z#MUcNvEcp0bY3b!(@Q>s1WpsWxSvdzBY;%&=FdJmJmtst(p}Z!utZv-ZlkY@YW4 zoA24hpbgWsoKyPk8HJ^zEfVT_Ga(!sL>CTk?=x;yeczAp*L;$pEIX* zdV_t)Q}#!U%L|>?%%~*kko4WRY-3h#c$tVMdqGgpRCS!-Z|B-#myl0?-9nrZ?W8es zFTxagR|?3rWhUN^qy;m86#;u;b<57>Qpdb=y zX15Yht8DVmR*&m{}cW-az#T+O>xig|lxH>1xGtbwYw*l-y2Q z)S_%7?ab&bea)fQ!&7Z`6Gz7T+;UfOWLwEj6<*Y#Tuwka?^<1(bkB#}p-^8J{Bq9f zY@o)1tduPlCAWcOybeUqMQaV@VD#A#KVu!NyOJ@Evh5i2*$PZLokpc0T+R17TQuJ7 zI5l+kGAKXa-2GPeA&=_8${4Ldcl8Y}g-Y9Xw3OG~Gudz~RBDz3ozq1|I?YtZULWfOSIV<7cMVZ0p2s^8q>)fUv#g8p zMKb>F8iSdYI%DEmgMugm5p(({L;J=h(ac(_{k^w`wOQXEQnlL@L?`p^0XdB&E{0k4 z^psD0*t$WL*BH3Lv;xucJ~RYo;WRfv`D`a{Zm8m%eQeZBdxhKYczwd<@f&!mE9#;1 zY1gb6W2(y4;ss0M8w#?$|5Jn1XF&-b&p&+VJPGK}&M z9-9?f#oQ=z3sk$#K!scA3VCixHp^S**d1cBR_$s7u?le|gq}TrZfTy-C9%gAbfInV zTr&kcH?7YHiRD(ZT?g{qQsy~l3ryqcSn){M0&5csW*FApPF}q~%_+r)`w4qthC@Gr zUCp9z4SRREX!YDOhD?#`^}cVht@17)pC7;zwIEKte&pAsRg*i6s+c@I=fnwSYMfF& z@AF7?ch&2Mhe7ekmi6aYz9d}oJPTUoj2SztnzDsy+AgbEU`-rXT;Dr`<0`q$tjeWc zb6n}Y9y1yzcp2K?}ME`)%s4k`KLIql3U`cRauLoCk014-xo*9hnZ*#o-q%b z-KZxXHn7NZ&lvBIUo*K4kOT9%r+V~kR^!ZcK^dH)dLIPURJ|ZmT|8ISmiRVtBb%<# zzCXUrg$A46lKa%Ho`Qcc|E4firrjavWIQTGg&A6`%mII%xIn&0SZ|(>*Y-JPR-7g_&Tzl)M03#T0EfYC0%SIUIF{?Zd{=BW=tzA*K{j*p0-5gPOCX=_qvfv>`YP#<^!nIIGS#u%L}@b z?lbAmjNC z)7rtX(QV@8a2({lQnkm4VNtKz(TA*l>-c;;eOw z3oC_l+6$VrS1uQrGhS`M8_{$!xCxt7Tnpr9Iu;g8JFJWDtq<|OY_RMxco$3y#XEDF zaPGa}!37UuzM0)`-hbLPKrHN}axx$KLno6FeiP6wJwO}ft(JiFl850YmW za#Q?13*G$z%S{oAyir2d8Yn2$OT3Ve3;Fm#%16=ZaLuP${iXWtUHFo4O`zPox^O48 zmRI29n2AGEJ$MU;(kTul-m>zH9wnHaDGS4=vhXqS*^QY@3+^v`OyYb`eE_HVm~bbH zTLHYnh8tM0aHsnS$IO8RCwCSG!Ut&}lun=)T)E&%UhVhcb46u-`4vPeR-)7yCBn7T z8?|8M1tWi;jJy!9wrk-76D14tRrijh=BsUOgba-fq7bJOTviJqx)7ots1S80me2Wh zp&FYLTQ4n~S2K2AEnHV)uB&Ccb{gUnyGZ2ro(HYQUaP-zCDX}17EH}D#e(VMLC#sV zVA;`(Sr&VO3pamb!*pDl@#~YM`?&XKJM>Q!EZ9i4a49ZaitnT1-_1BzSn#5qWLT_d ze}L|n-AwlajT>CHBPd)h2FYr7ioZnovgYUbD$YS9I2f zdm|U7*22{KkeFJzcMKQKlbJbBbZU09PGdrzyW@Lzn1}f#6_|)^$(go=Y*@&K4})x| zWq5ECZ!;c^@(ioTiu}#Zh1a0IVAl@=yW$q(#rER&Z&Rj72b@rFvv;wqn=Cla>`cO9 zSvR3_xM;<$xZwS`gSC%l%PZBDWnIzTyqI1i5N?RwT;`>yy2Ts0^d^CnlNZ-t*!_Gn znKCb2jpM!v-Ep|!L0!wA{ml&v9vtVv{OTb!x;eXf->aRFgOu~$(s~#@x+xi-e|7g9=Qj8n5`F@`C-0*beHz+Tvb?DsX$?$N&2(vxaJ#s z`*kK6F6W=CR?cO&h(=n2^V4ipbb{Kbb47ZSRkOI6e#e~2YjAlCvecPOF0I!a1LNd1 zI6|C=u=!QIAQzm;Gq`*e%r*n8LPxm?S~nxC(P&YtWews~N2jz2ex4bWKf6{bpGOUV z<_Mq9pbI9O7N$ta`PIe@uL* z^#o~$M~!~VkN85DE#q~etyg6wppU5R-!yyTroJ? zb^I9^H;aYYvV~cmFt}N7_FH&3G2K4A9;b4;eRv_W_~KG}YtFP~_bgu4SjepR&-J^I zS>q#Q1~lQ^o>RZY3sST2ocQMaW~bN9D}=aJXQ2=#-2*a3@5xM75f?`6`?ryOMje=2 za9=!nhg;4U2Q>K9@B4N^j%bLz)?nE0J;}`&blu|rXYXB`+eWgqLH`tWbc~~{z}f_O z5hbeJ;c{QL<1KeMR+6094zF7|111JPJSsK-CC z-{4;+@mVbJYo!{X5TFoljbK6{Kp{XOlzFzej;EjQ*$}hs_AliU2!+6<6jW*$S!M6P$9c)7iRL{bA^fUC?>+^WVY5_0*6#?t-MF3-^Nf((nJZc=Mvx} z*k-%r3^Xy~3WzJD&9;YxCVmu6Ox5nnFdI=FJL}uwlx4shEOuJnn8fINq||g za%yygSUKEXW%Ny7?%|wl%50vjzGUSmwPS6b8|I_!EYg{GDR>XI^qqENEuw2mwke_u z{I%_ zsE9yCMB^T}N%Zculu>d5JO|K7TtP^o?({Az7HAe|_7)EDU~#jrdzKaj`86Cm7%S0N zjW~zsyB#+>+1cL$VMd6>i}~g-krntJg^85?{<{Q%brw# ziJBP5_z6W#f}eUp)T94V4od!as6Qnz^%^miUFQQd1vCXT)i9c32{wu2q)@F44ycuZ zw*1TtL=g!F>Ovg&)>K-wmdbiw5C#&4wxI$nz@3H!@DuP8@YAELV(X5GH6Roq)b6ST4<15M6+%sffiq$7Z5w=(=$F@%i}X5MXi-(wD^Ld=h$;Xp0IP3I@`R|`Ojq;buQL(B zG1XBiNBWq`6>bVs^^7K8qITxE%zd{<3Z~0NQSPDDm;Y8@*y%EDfTGdx>-J7p5e-z$ zrg2f`+2Xo?KBe5SvHVAT?_siDv?UUtcH&eod+p_+wLEl`l~K4wSZ3+sva-wIHrlpd zU1zDfuP>t&q8@42!FiD*ULFeJv}xekwiv|HF6u_g08$2!GSGO+0C}_XnmfBH>K;?& z-A$3FpVPcZtA6ls9@R~U225>qFZb=9Lx*_(E>Ln9?V(3J>UZzbaqwga6bP$q(}40E zA>*1kSu{7MsuQ4|vN&c(_1oaKP;L{b2Z5Ys0y!@coFvP$0g46!x~tPOf@Yj`3DP0Tqg%S#Cwm1{fM%ckk%-!jMjoPJUYhB5Jm2^i@%_5yTS25)!L#v&NN@@&FJ} z1F{{gmYGIeWvg?I

FUt%M4YTd*s_`v~tNynk2d!-Mb^f~u%m0E}e|fN(%P;83Xs zKm|YrK-GqN1Rb{1modpyE6vCZ;K^O=y5SlX({!xYpTRzV| zmAS)e@J5EG*jsAf4fVA1|bMm=7bN{GLl+YqwyU@>!9jZ?Vcf#F-E9nY%eaMc*2N-Eel(=ySA(LhKun2oJ zk4N=S4|~*09kY3M7VBFxQf6sU96KG9viFw%gV{Wo&9jvpWzn5ek_&uMG0*1NYI1ul z=6y|ucK~JRm%tgz(tIP_J7IX}Fr;YN{$4 zV1#XEc6mvmb8UnfS5q~mB0d~4fErZV6PQwJd z3kv(%c91urlP1U;f`ltuo7m}nQV2&A#Kg9p^GNALN~c|54s)!N<`^YA#c_TSe@^r4 z>Z_{Z8IO?$fMya2(g2VK@F~gf)kxce8kj^Rq$V#Y#^pG$h0vLZy8AE(10g<>a+x1v zmt}SX84@2$(Pf-GpG6qOAL8=pO;3Ju_$ug8_wfl4xv8V&UgYZf;HO?d9qj_~&#*^r zd-ttxLi$2{KRJqD$7P=$GH?vfk=}~*)?1=-UL?MW63Bjz+(v`Ro(LTD?QJ5cm-rD9 z8@GKYrd?^+s~Tg0zUSWk2_9q>=zE*KDQ4_pr|GG+ZZ4P&?M)L@0xGQfSV2HRKow7; zD3C-6tR!zG${u7twCuK)6-`#-I4QKpAXJ^V*jNgws^z8f5m5XR)DCLD+nL?=s(;UA;WChSuRhBoCqx*}tb>;+yDh9m$nJA8Tc>qO zw{pHik@H<$ljJEUT7mXK`%i%OuTvE*;Si|7=W4nz;qzz+L62tA-!XSHva4_V=TnO7 zj*BwS7T58#Ex8#N>2P!K`hY}-MDMyp*Wu`}3P;PS4j^t2ch`xVvg=aQ zz&Z>MDEAj+4YKY!Sz9t21nn(SjGUqEz>JqY5iXUy4z;V~p)u@9pA)9NoG4028_KJ@=@e`QDUj{OwKaJGxNfB;iZ64YTtPQOFRIoM)Z4flD_8{&$L9akPW&Rcr!<>U^0@Dw`1*|k{S?9ZX}rek1{;i z8Z*|XGvzrB(YaHTiHZ&|(VhIkr`TPOMaU=EU4OevJ`_j>uSjE(=1Eb7(`2OxoJ#2F z_B2{10dL$L4)pzI9;w6CTFg%IV}f>Tx%EIQmx+yd%zZl zF4@*4>(vUn=1sj?i0-A6>kV>HSOl|Zp<3sKjcV~mulTr}*VJuXtu;QgA$+ZM~@#o2G~ zmy4_H`sib+;w)4xSwy|7Y?dyPd3yBIAPT})K`-b>le2VMX3Ir!Brfg0qR)cE(d6~# zD|7GBPs3pRDhQ+T#GX#tuV!b2eaZ<{Eo%DQ-1qeTSg%6l0O)^cf83yI1{@A3C1BtD z*!I0NdTEv|jLM{udaAnz{m#ia{^!5rzyI^sznwa5Dbk~$?$(;CXce!Se*FEk%8DJZ zW8S<)AiIwQ@&me>Kal?|5+CB%vAse2(Zt+3nf$s;jN@`p>t#Yex8JufJxe}U8#8=$ z#1{(Bt*$L%SiiAqMl`6ZZMhkde)Ij2eZ%B`|Eqe37jM=@{w7;Y zXY0%KP4Q)!U($b1lj)~4fBk9Kx0mTvLEq4(i;D#94u-U6KNkZ*jN%`P6nlmc=~Lb3 zZWz!35fO?DH5rMAX%duACQ7GEbR1KVu6B*CV67vMoc_U^qVB7XTU@mJ zu=P^JVauPJT+P<7e@|wDmW|j6Od; z`%PZ7w;v=733yDJ_2JvSw?{ADl{Dw-VqK>H!-E9Xqv*`Uqv$+tig~g+w&!CV^GK{< zdpwr-{B3YsON`?(U#CHjel&3Vv>ENC+Xd1RtNn7i*uDCmTc<|^FSeZM+Q*jT5VL74 zY4(Tdmk%-UOm#Rfx97FNcpty6Qj7UWYY65eY2OXz19`Y553qB$bZ9q4Ft`?6Te#Z- z-$Khd@@1}-ia35JU6gr}mBleP(>b1!6;!PaeT9YYhXJ4JXfCTB%=Ac?<_X7E-d1~6fX%z*eq{3%T?)BNa7 zD1a|dy_2$xCn((%W*a+(>5gP}j?TB?7p@>Z54e#ifp&pW!l8N1idy`&j&|o%*-W2w z_vDL^g*5hMv)9>$?8&l&UKB2fDli%m7*)K)WX8Av8@j!rAhcLYotkS#5gH}$$!|F! zNRwCvJtKmiH-)%eWDIr1Jx}ROkh`}XJC!=zE?-nrM0Qe1Mlne zj$2D#74}27*OF?=-Vd#)D#M3LSd`%-2ueCc?OQ-nmB(fu`M>LN_Zey z)ICfqln>XpQLzsnES1Qa;x2j6+vPqsBmsX2kz0Wsw*@poS6l``d`1~|(=w!LsjjTq zfAI-%hr29Qk?^SiBv+UgVZ;csrw}A7bF#76Mu=roMGhKpCq*uLrCM0}^7r&BeK%hv zc`8B*)Ww$yPJ_`P7*BTjvbcDaX3YzL$`zI6Slc2)*Ud!QpL-ehDjM%bx`&qzEj1nI zu+NETZb&pb%~L|Nwv$EGL|0B0P@$Bxph9xH(*fE%9od4YZ^voA81cB*amC^wy8WDI)0Ncm!efWIR;ec7RF=) zaxJQS9Vi{x2sG8J?gw*-&L$y8-#^5&^s1aMsbPz(C?aBnX{y~XFbbR-1)A*g?D`Yv z&Ws}7F%)$P$?#i2^{SlM|WDKd=_mzmBC3l{tAUr>V$ND3@IdgQ*j5XJdnf5#!cqAq*t~*A0$}m6 zz@oAEnGj*MfDj*x5a-z%kC_7U$jkx-xMJ)Um>quu7Qu-3%KIu&r=j#6D%4AnqjZ#rK20yP?Kd;@hs4Hz0KZcrX2wfDq<>+7l(-uj({%S0{nTjOT zi)v!1y+Pd7Og1kXQEsm6^-hhGL|0~@G@vw3D9toX997-3hyX!$fH*!O4qE{{URAA85g+;vU%vgp;@PLqt=(RLa% z37YgsllJ@#%C0lM1JmA2_zsZziPTSDEszPHLdHSHd6jV=V#;$UzfxvHR%Xd8`;U$* zj3}jn+@@{6)CLq=Ad{I$LPst0F~|*ahMP z@%bdacdv!bdq6Qs6`nkxKvAc&38%|NQSNo6_Yvh3c5K1OEJUYSukjY464S+Hr4UgQ zfSLerH3257OiB=h214^lXf!Y&x3T^~mB(;ELDicgPd}%5k;bNmLyx$tKIsau=}xIc zr>Z*kP}hOfEuYygl{%DjsCcT*0Y#vmmT>Br&DB985rPV4qJJ}y8pdlok-!w-JK(!V z_^zF$D0)JZ8IMh7r2mTp&Ho%(?2fap9TI+k`{l9kr8GVcdjXUID9oOO1J+*)LA`^wyA5AH-Z3yar_?2on1 zsy(Pu%f{7!Foc*?v$f+gU#CIu?cUpfh7n}bxG3{%aeX}fl;nZ@JLbRRGEcIy5TCyd z;`lPXO4hS77OB#4x%ITYx7}(S7F;ZsGlZF7Y5KG@JJBc15~S%L>tv>I;<)OiffQXt zIlM+Wy2d9pz%j1!Tfit_6t9f(k1{;ig0g)YM#KqI(fRu_bT>1I>|=)yJMF+4Pujo6 zu1U%oqCo5#-gS@ObqGgemn+YnO92kysC^~<^C{`Z@wT%hI8UTpZaA$ZqhJ-EiVmZAucJOlN75>wW_Vs3Sqs9luR?CRdrM zTNudK$Hlg8qm2^d~-Do6VF0K3%RCdamkNCV6*P={~ofFgt8OGHHzla<+uwwG z%J<|bejS%%{iFdo038;0yM5Sz&oFenLSLDhCOP=9%5XazQF>5}?Vcv(GIx8B)pl3e zSlDiFlAoe49=MU7T4Tr7cdw|Zu4*m^s;eKOLw!Q@0ZrvabdvFq6beR!y()YZ_9%Yz zQX>b>Z3R+rt-3(fOHY7cvN75`>?uESHQOBI?3$c~QTRETt7gn%GUWPqcDayO9%AK(5 z?sr|~(T2Us^j4KQ*lqW_%_&GG<(?@VDA5z15jdQw8awP|hl!GF6N^2j*Ew4qf3G||Sy=aj&;!CDjL(#%edJIiNIncLj`le}M*i_e>%7IBW1xq{p z!pZ>)*ON)yahrv}VR6nPZu7(i6SEFO)$J9|NPo4~=&k(Bdn}KNm-5}aN{9x zLv9vdvJ>akf%77Hx!r>j+}06or&DDJses$M!EM`J2PvuD;7n>ei2OYt`Fq~RD+Lwpw>^q1Ga-6bUIB`RdR(9g#oC& zilQTG@PQqq9b{Dnj*^rlD|e!*oP=pc^n$?_DP~h!#C~SQO0^b7ykY#oM&}}IpO#f| z{CTQ{Q(t*}`@>))&>Xf&2_$#Tt%QR3RCUehOAoCsKERGU-*FBF3d|e7o6VL}>fV}U zW#O-jz5AAS?w{zk7_%CRy&W8rc% zNefjE=e@W3KUUjB_Z#f~iC{6GjWcmxK3J^k9~$+zMW582WV7uKSDncxKx@H2#Veyf~CLmWvZ}8K`bxb8%p956nZ~)CQ>F z`3l9?8>+JwP3Tu)v#?K*1=%W-buPyfpjhXt8I9`jF{jW!8+DB2A*bES=~^v{kInV* z%#P7)$Cir|bID>HAB2X4hE(Xlzd{H5x@6x5j1C-_+XDlO`N){sU<8MlMueDa&RG-S zuex`KeKXui+MS$#1icEq3cacw5B}wzL#E#lCq8tbk7qjFfsP%R|K;MuTp}S@o|HUA zopa%vr5rT`Jsa5qr}_cDS^p}>>4EuQE;OV|4at_LOvvw7Gj!O}lr;-5FQGhPUc$WG zNcL4E0a5Hy6a$}j4WA0P?c_zxaeEw}UQot-n#POeWr~^=XJrMxOF*1v|8oU|?*${F z-cLe3s#YAcg0-QJpA07JS|Oh<4LkZ+DzlSH<%@75_4e+n6$*OVI+iATppK<5vao+X zrA{W}?E=1#zla9674S7?=E2|8HLJntiNU4o-$&~7!2B;4egu~i;qE$?s=aqOpynaE zj%B>Njs>a~(bMLDY3?&@LIe0lNeT=Jvq+dp~euE>EnghZ$HM|HvAJ3Hn{> zLmksk9a}DV-6gL>op#K1*u-+dVlG)sSIFpmT{$y?vcORpV-j|Mc;JTbLK7tIcVIN8 z&ms$%v~T@_`_d!#PjpJPU@=kAW~PiE(G18NAU0;2=!2Y6G|YGF`sih9$k6zGSM1yLkeUQP&iJ8QdQc^cpp^n!j=n>I19 zda(?sKu%@plS~lPs}0LnaGIu9qX@2|d=$Ygu77Y3YH?&(#V)O4IG&pD=TPo8q1XXNT`KmAP-f(BhiLQ+ih)%# zKBSs)?S5iwl=JeTWoOW`c8_uYND(5yr3ipM+JxGImUTPJab{5XdN3s)TJ|LR`n0PBb<=?IY z#OfFt!hyLxFtAv+=7TdP{^j*#M>c~&##Xf|#b^+ifxBr(PzrqCExt!!1|D5_biI0X zMPR1p)I}aW^5|`U8eGL~brs9Rr4KRtih0_i0mD=~_vb&GdO3KR;AMiBX*)&Dzct`6 zECeVFC=4j<846FrcjRUI5U3X^2@Vy6z`~OkCgw^mK{PFNmj~uMXV3QF z{%{VcXny87D-ubD?ue^uujI9V6^_j9k@=PhI4`&7rP<6hEgVuu!ea2JFz7|SK*e9E zN<5B}!o+5*)@H-1wHe*Xj-`H0-A3f{G*i2)0g&dKz3}oI5D?e z1(y<7tbs6H$E1wI<;sC>x={-oq|lHqVFB0|?7KPq*&+Kju(^OVZXu0-iGUMxd1Cce zW~?EN-Dx#38&yrrgxx8Ji$kwk{Q;edJ^x(PvE_p4T{1oNDpCWH8t64O5SHgw0(r+& zPREuD4G9hDb_W1L8^B2&lQIsM%a*5%c#fa165j=Jwc>j;X+oEf*TwrN(Z+mw*Fvdtm-CJWkBziHTf>ssPRH0P+Cs^5de+ zv&Hof7l-+-TCsuf4=)y#Y;QYvUb4(4h|khlIxWMZJO=ZEd0m!rd99LkD!)3)ynEiI zj{Dk1_fLG@l;E3mab7M(qONVFDK#HU<>8_p`$ZUWd23IXw{re4HB95~qw#dPUX({~ z!k@wcySn-j{Xc*Cd-|2Wo3D~Q72oy`f{!>u4jm6N zgQp#yc3UjN)81B3J28H*G66!A#ycci|E@7O%U!z0nuze@#7g*cyGFD)F_$MMhi-j{ zr+J!`X>G*7NOnXHqbLXmLqK$q*$C=$NqtQyIh>f=69Ys?k~fmPFB;kcKy*NK*ZxrM z@=DGXr=(TOZHCHqxw(`%4i`3D*baSxVAgsqhC@lH#|uqo%f*H{O^svg6Z;VHf^K)L zhW&f_q1#>Rc0{~T9uhTWOM-RXvTiqpEvNug&^grM5TRpaS&XTk4bJO=ymcvWg?)XQ zQeD&XYdu;mhpy=Py|AreTX#;&K~%UD6|k*gTf??)ZZ@k!jNa9}AP8``0=%0ZmX0xk z!{x%ZhHXu0#L&9UZGl7X)v@b*xh(ZenGww|)lusa&6jzpMxG)cTt;o6@uBfM=Vx#z zGhk%H$cDP_q`HTZT|rf+64Afa+Og#VB)J4hlkk_<+;e4?UX}A@VMBFvQK8wkpf;D( z)>SRhF%ju>xhT;@iDpCfi4e9BwotjQt110k5a3&ve5)aOo?U+eCZ8?0Cdq=_T#_3w zIhlF>Wh5{;j~oZ z)#?236};t8?>S6&26-KmlunlmZ#lf>@Rm2#gu*H7`iGD{Fqw~Mc5GWawp^T;ON4+b z5mbp(sdwF!;T;oT4wp++B7d30XR(NNS%x*NX;{;+riCHlklPUFnl%(o2F7!V@tUAp zoET0F@o6})pSJ@W)-nvG*8Z^$=XLUI8AYCnA0$)VNS!G#z5>! zxjB@(P1vU$TQ1CLnA0$)VNS!Gj!!S*GEe3FE+Pnw-^2JljNglVZGl6aq|NEi$!wh( zYdSPp-v^OtVR+Dg_47@!O0xWTx?B|Hp8a~q(@#kr(3F8}aUJvDBoC6TEX3z;gE+oS zuafnwjFVb;>bT6;Y0!JS_coX(tK+sm(e3(ptgPEtrfn4ao0QAk^^@t@o)_$%0-pDI z?Gan;y*+|s43054#^4x(V+@WlHdXzHd*B#@V+@WlIL6=@gJW!EB^o&NTQs4@I<{PB zU6)!{JH~!bzZ$pLK)A*F!(cQ-x(N$+keo}BYeJ^s#N3`3dLcl+qZa~tA?Sf7hbI0) z=ARE?>*JXn1G*hsE>6s)%0=}Csy8Y>K782?xbq##TWwWOm$PMV?CPPks}F)v1iKn` z^%Bu)M5__4uC$y(0o;U-sbk9pK6i=Fn;+Cn2kh!@ z+SNSb)|k~JQ^het?|xxXL1nm98C`{X9m6?Jmy38c;?;;(BVLVowcY{$P}ivd_rF|# zB$puRBplb0z+UAo> z{Vx|Fy)lr!(Py8cpYAKc-7%mhgV(ifPXi&QvvROxv;QY zT3C1Db=6m`PetEorUs8XJn9khUVzYn(1Fl_&^10q-iv?83xw_x@-`7#a(H5QB6QQE zi7`5|UVzbo(SgyC^@4#0O#xJR(pv>UjyTI;fxlDtNv&7FwyIm1>s-gaqk z>)uTB1iSc$H-N@pQQ; z$~|hDoK54R%(KPy@$^%Y2lDTj|BlN%$;v`}{x*o?%k(N)&&pVg;x?>vT;}UE=)K*0 z8_bi{aoeBhc73z7DBQj>ZKD}=?)u5}Y|jgJPXW*Sy!ME#=+wZm&SaEl25?HQ;_N*y z7#!ke0VW&!YQ;B*UogAAvOwRm>_?a>6WD8!-=i$W|4J%}sMP{*9a z9a}DZ+Ae+CU9H0b6@UuRgP1(dX&Ntvj{P!On)A?HX@#Ic@0pp}ykQljz-R z)y-s3gXh5HQVK&rKtMR=W&fJesbU8v2POw52PW5DGiy-9hkEq!Os5jDV*=d&a&clV zK@t~by0;-Lq(21GpDm}G0X7h^OCoN<^^6m9dtyNPK>9%XK>9%XdIvnSn{0Kr{CaLYy?!A6ITuF~#m9M>^VCIo~_0YQ;S zbWW}E!aK$b9a}C~*DdS%H%)w;n2%?6j1fAvT%4Foz9nlKr70z7$|X%T;ikfgxjiue zZv@8>97AwShlXlS86U#d$1^*IWIMK8oR~|MYdOOY$Qf>`#e<)ELDYK{sIrwl{nZOX z@!#|@)vdfnF*$~eVaS*OD;<-dPL~VB4#W<`4#W<`u6MwH1j4BR_rF{qcGrk~630nl zT0V`fESAGpKfg2}9)pU|SQ(9#rEcz+%yhb3V02(~V02(~jZooL_YZoV3UL3+1x9y? z(UHyq;0@pn;0@pn;0@pn;0@rdcfdcA1@Lx>WSdB$b$DW&&N7KV#OZuhevPw5R%Xd8 z`;Qqmc-RxZa*^8t?>Im@KsrD=KsrD=KsrFWhN$q41Eg>CkAipHrA;9Qm;Ii8ji<}` zN@uYghBAw#e-I2JN-#$~=sD^^J2w*mg2JVsKqHp<3fLUj9M~M#T<-v|Ij}hu9@dOh zrw;UAUQaI4>uh0wxjj*sOFx0kfy`Y`-t#ZjfXso+1(F0IxFrOzZnxT@HxbeI!DBw2 z=@2+Iv8^3jE>6s)q^&x&9QLb%&qEq0d{e}y7jc=VX`Gd5o|Mb{c$H-N@pQQ;%00U) z{qgiuk_SbZXN&8Y|EAlLtSrRmZ-Y3#Os|sltc;VH-5C71%-3nqd%O2Gm?x{_wm;GB z`gls5+gGM-6#FYq%IRYF_=r3&*gXX}-2&gQ?{u+zUh+SIWLEHPETz+rODfN7;G7P8 z6E65Ro4O({&9(HuFTuHQ1EpuLLKAzbz_i)FSixYF}&89q)ba82AnIN$Q4aLz=T%eGSiAJZ(1r!Gq z2NVYs2Nc&k;6KC4sQ~xCTtIQRQ2gC%*)p6GO8~+F!U4ho!h7*qI!mWzSd^6OKj5^K z=={A)vE!$R0;<9789|vNyL+?T%m^LpXs&`R?jahi9Y zeophk%JN3ucbQtb=}r^7d?$4|T`aQDyeHu~KQEa>8X)7_RZ=cER)~SBv;=vhUh+m? zf@hs2(t~HgvtFy=q?X;=r!;+JdkeoN3^$jCTN8EPI5D>;h7=Q|m>|UjDJD9>0@>dF z!#wbAyVYTxIx(wv$${n6ror`aYJaQYic`NM%x#$44Vc?#iGY>}e!C{Ywe88ZjW$GR zX5zKq893Jq=fc5VYI7d$(yp1BI5D>;1_w7B+;DKi!L2nS9Ne99mm;Q2B?p~4F`2$? z_cIxyloG84(OOXI;Eo0VoGuqw99SG!99SG!T<<`qkX;i%6z(sV?yp+13Hq6!p9%Vz z2>js`)pksV1B3&F1B3&FYX}O5c*g{||K$RNy9MFg-+R6)znTu;ha&U47lelxA}@3i zD9$Ct!BFp7(CoYfEC(zHEC(zHEY~~WALn+=4Fr(n5+sQ{l_L93s!(~<>&be|K@b9! z1C^J^SV6`LP&rUJP&rV!#-wnT1C^hb-l?EthKa-F3RFH%ZsHAOj^q_2uON9vKoN)B z)2iU`fyaTzfyaTz^$q}!1CJ9lteGSZRj%}se@RxxOCGA+m8b_VIlScXl1K28 z1C;}n1C;}nYfM@LBR;Ygd_2=3XzH9>#lI1O6LXona$1h{yvre_jz)H4?Ed+bJ{lKg zo-MB9>8B)*%RI@-BIGZkK^$N1?6a+K4CY%GrYYr*Zsm*`|I)~Cr{`0Xtxlf|A<(Tx zOUN0YuYkLOyMeobyY&wE*I`h(Zt+Z~PK^7hOtM9h=4HHIWPhxyW@{=q%) zF0wl&uN*Gdjzpz@tdp6k&ls3MR5(V72CQk0I=W6m^B=T@YImvHkt&8%F`eJ*Jt-Be z>y~x9DQrOnpaRFK@BSIVAwY*U?X)VzyVi1e^i7n1LA<&YueLS4k=HqdIX#U_8ed{X zqdjvbY}p8#fpx*U&l#3?RoH@W!MD$uZ~sw-2V2Eded1=Wr;5(syQK~v z+~(t%9Wz=xwp^T;Q?5D%vnEI{vFitrUg9*v#-(^Y0keWxU3&153+AmyFG5W&3AIyE z#;&?ET&k*Wb?vf4P4&dh;VTTe!H^r|YKo$-=PMwPt67URKW9Sl4@KbOa_Zu00E+lH zF(1za-#QN0z<~BxM zlo5z8A-;rOAiArhf9VBbTS9=l72y7f7ANNN#1LOXe5r1PfP)+G+Pl=eh%doq?UJ70 zvi9hcKzs?z3TAbQVEr*GyR3f-qbP`a2eQ@HAP8SgPzr%k2$Vvg6rvZOrL%NehDAxa zXz2EV1_BPDO)VP{E-$x$p_?uaPywjGaoV?kMsR5BP`a1Hr&-{Bj69UO3mB5dC8ePe z0-ETei7v7ll2Y#hz1(#(-& z4sZ`}&!VuKP!X`MYp@RB9wwe+n)NTb9EusysPHOVTq-Ocg*{pPNrj-{xQF^r0m&dG zASIr&l%RJ9Fb6OPFc;dOQwqMTrW8~zRPJ+DxxVT@!?42lhXdey;QMk3$2%PF!1uuS z!1uuSsw2Jkd$#l71l*W%ANt}-+j=B#4Bn~9bbCx)8;$z+r z<_&3W04II}#ST!pP`S@p<+^s_6Ud(}zodD5K~UdL*+G|fq|d{P4=+Bv`0(Pxiw`e8 zy!ee-x(<`EyPB)ju`O`8T-N|!k6@xK9YA_OdO&(WdO&(WdO&(WdO&(WddyU)bU`gc zt;LX@eD>?r3O@U|v8gZ)iJ=LLykpBnOxJBp7nQZMN~m{?7dp0Fu&!Iy^`ArJy~u^>2-lb$8=c7 zmJ7ah$+xZ{J^Ad@Ki0`C&XdJ;YD#MRrgcsf4qp9yQ>>CKKaNi?;xbRuI4jdUp>8V2 z;^XOZQIvc3+_mHBrz8)GGS3#*G5<}sC0SXB&))`de3@P)>sh(sDL*drbsF^E?!67> z$?CZ6PjtJ!Sy~isUzxU1L?XmVIbG}?ACcz;yQcuBTj2Zkoi3KoOa3PS$Hr1F{kV+s z%mB_Qz&FW)W3#C%;?n#||N9a=>ug(nvjBKDaJmJZJ1@nz`vh_UmQxGRKX0<|O~+8Z zK2$FhFBEUpw(N%uhMGMNj`hK@0Lu>P)wj}e3JDl^`Cc%1)(g+>)6pGGPz8!AP*j1U z3KUhKRnl6=LcJYZE+W$|BhyV35cxPUAJ6OpG*vGKE$QZnmwaxu6*N1xa@yw2GYsZ$06LSfY1SFrla36N;!V{gwED#VAQMRgKp?eB= z-sjcLASS55Z9;=@F@y7RdtNGx{r2c%`BNB0!T8nBMHs~&;_~QCPka)N`mcgsa5$RK z-kS!#2UL8eZU}zr1yS!+ApRMJ^n`uun~=T`-%pO>*RdBLk`Kt`3UxfC;% z_9cV(=RZpenN4D7-^lik{!p3@v@a*)92!q{h|C8y+6LX1a2{-%L(5^fatO{0j?Ut%ZtBw&E_|_!u{h;?7RG`|N zKYL?_4O}W%P70lt8AX+y8}(oP{8A-i((tRU@Sl%$c1%=uY`Hiwm#`V;F2+-_N6AAZ z13}}>xVb|~3v<_18FBfD`i~Upls}9a}EYvrF_WTJn5OX6v-Bhplm} zkr>BXU6bVL5i~RGW0y4`wI~=k+$D#16-$8%Kn0GIPC8`+3C(<+ma!=fGjU;V*CVSD z!y&9>mwKpE6w+16-Z6utW6SlSH+?*_W82!X<>JI#q9>t?FVgF5VRSGx#?v}@+=HhY z{Q#T_2-w5*GF_*e>mTI#kiI^i*|BZy*m7}VZgsHkg%?%5@WR6ZbT4$TQ^5e;3*B4R zi&7xTT}pEJt-6-oA?)9DacNnGVm_YPF-GXv za&clV`BoahR+N{_Uua#pogG^JHJ>ZE*CqEt>!Q;nI!%h%C7tpu)+}DATc}&8TSR%w zW$tMXEI=1PSLb}}4&4$mlX<=>zv^7(zMQhq3&KNqnH?&hPNA@_T2Br+qlqo(*m8X+ zOCQhd*tT|Txi~SGkVz=uBKuEj^e;^|;!YZaAcX#f{&gxG;BQ7%5vqz%RWyw^sKBX| z>6E1-^zS^mi8pjGT+eVlJ47GQywJQGG8cA~OFOCwcMVR=<%tQ+8^@og#`0Cej-n`t z`ZRDs&i5U{3U;W6I)%-^(_O34@9K#`vb&V*U8REOYX#GMUxzO*Mi~}g5;MlIPa~7a zr`-!8w1#$>%>!+Yso(HsZh14I&0R`!X!EY2@Ke+VV@$BSfsF87!*>neHE`Az&T?on zHUTmmE>~E%*`i4E(s-|{DTGn452rPp)(+_nW-i3ru&Cb^RC>Izw*`^ycVZZ;mF6bRVGB$1|aO9YarenZ0?L|51hq z@##fe=4l#dWtu0{P@_-W4D^gR5#mG+J(V>f=2AtRf?3@WDokCNx*kp4^Aj*DnAK&T zXHBiZnsMp&hZET)p+d7lvwGC5BJG0A*P`l{bBM}<=t8&>U78yu7#WQ0k&)p^Mg#~E zpzcM0;7Oj%mRpHf(7cERQGar$WKc8tT|OC}WQYEKz+}K=pD-DoWH75s;a^WNfG63d z&aN^X2R*cKhEu8m9~v0gB?H4L1*a68Qr&Y(xo=+eQ^-9i2O(lhP~%YJP3T3ZMvi~4 zj1S=D9me57boVD zZ@ndYRD(yu!vR{i!!PDk%+yMGAQ4Q%^V#xCn#UKU)NP0RQDTs*Wtxk6MdbNTbUe@apf#-qeJJav8qs~+SIsiJyQpUdv(V=319Zr2!Ap{@< zp0f~u9S%Djb~x;CvcuCq*2yf+lf|`}eKi=#BscC=7$R*Q1!!);0{rXsjusBVJ@h*C zI`lg9x(SXSSekr-+=6BQzGa-4%M)|$UMCBE^5X2b56jE- zEIs;Is-(B^tDlRoKl)P`^rBus^=LybNLzkcyk9P^vg@Na;ZI@zfIbWQQE)h-A~y4} zm_R_&t@rg6VKk>d_=Z||q^eTvkqhLHK ze$Q6)lSMjRm)Ym^*KF~-xU(08hjh(oK-c`9ew7cSHPV8jvG}=JR+RdieqXMX9y}gT z=F7`PGEe!QgJAS381=*r^zmg{OskIvJzh3_Tz*|yS06;`;~Duh%+&|I0e^g%<>|D{ zmJ9wuyvISG-(#NSzpq!-hXY=Cx|l96Gx-pC?J%N`FS9~i8AknJ_$oLUiRIvS55T65pna%QWA0!J#CA<%&0F=LJLr^nAT1J1;pDYZWhZ zW?q8U7WN{sI9mNYTabx%M(qZtpN{ARm`uW+prtrY3f%)~C`V+7aT!DENBGjv{p9HM zz1djNJ4x@dxwq<{6b-2ZgWRHMFed!FdGBI9o1LWjl-6u+rxMRArj6dKqv^?K`iZ|x zwtm9$kkL;}j!xcBKZYlVXTSZGh+~#~J(<$~$>xf3_-#L;*-A#E<93qk{qCNR3^^J5nni>3k8GI%TBW5zZV&iuyO1S^-z1- zb-w$FtjLp^?^=8f?aM|2`|3PPyJd&l;@#n!#GE|Mo@csO6r%50vjzGUU6 z%k(OtfA$>*VVt5{52}}s=+NFav*mwd>8nX_Bq^BWH@E*H+Tx=MdmA^3TLho!^J(7*B3IeX&RD$jU>6tYftTK`_{D+`{~;7 z90rl5wQyivY#vN3Y5n%lx`dziF}*R2Ig-R~?+UH9M)8XK^g9m6uLM_wH8SUm^c5q? z5mJ=XR#zM>wxUMj|6--2cJDxP2J0tvK(v(F$^Mme70GO&YxGT0sMT(YYNz^@KGeyt ztaA0ml4$Ddubr>b0{VJIG7JX#a#yqLMAF8|#mV1E7RR53Jl>CLhd#|yqf-8!(;y7Aw1#&c5KU(YC|ahaE?sVk)BeNs9L zaZ7A$-bbvXMlSEgOIRE<)*4WtCMn(fHDZb5<%%Av-*l|$#k^_1MlB?2PLnS+IWyLB zhN+m>L<+v*{R#iTsXPGlBf6uJ;cL37MloVl8#fUc5>KzuN>==qXJv9huvSyRp}MX{ zCGvO`09IFym5!!YmEw_fG-)8x;*}5`+d7)*oAzoZmQkagIG!2QG1gLxm9n};++mZ9 z+@P_fD-BTi>6IAk*9he@ozc?j8?R|gv{)8DQKJTeLi0>-%b}%(#i}yCVX#39$!ccZ za3rs(5kMTTjNGGVs!KLbd_LcP%EtLtDD6{`v8r|NfU)X6?-1 zU0$AA5Y+sXBwcGW3E@eEDV|ZIhtqVv{G8tMn4^>WowcJrO$nM!ci(DbMsf1yIReG) z4{Q>cHRK5V`~jV$D=fA77+8ilBrzvbpW@zKT` z4{OAeD$TL6U@E>kslDm2Mo;vnXO-o0`)dwsBxV^q=9cXr+9E7%`Ivhm`=$68hBZRE z66Vw|>#M8O^gcf{8crM{<+zfW8l6{rQ}3TyeZH{^HM%o4nOWKP+tkR5wvDxlHpI+r z+b>k3E8BQ8_iX=Ejiki!*eL5zt8Ixrr$Ug7Hb{xB$l6U(aB65a%`SMmM>PuC{-rve ztHkH1MnjU*YrjUY&SI`nop{pnY?o6)X^z91e|kOPhHw;&*arQ=VjHajd1`-hLol1WCEftqlcR_H7<Gz1Zr8_{bFMiN=JbZ-$JM?=M%-|J~ zx&NSLh*zF$P)htO39NWQM!!uT-=-Sk#rsiB8TP8*3co`_-c3Z>4x>XN!DEPseKyT>z4#b_LaR}M~l?-C@4^fshHxe zHXZIJ!=Msglx_BNF^E410%j+v;M$NlSZ!%Y417~mgl7}^Q6M~&wrmP5P78^|m28qp zZQ)2hr&?G5Dq6hxwk1m&VTWpk$UTb7g zd_)v~Q^>9{ z>Y?u#vex<#uhtvCP=lcl-a_)a-Xf$Y{KKR>#P)s{ms$`bA|@;bCiWzx9ucX{c#*|; zQN?(4CsTx46#wq`zz?S2d){I(8vlwpIg7>m6^n^wF$LZ8S01=9Db@NG3(;C6kKca* zx09~=8MdwEpY)owz(b#Yc02HJ?_CgkZBLNu_a%3dAClkeVGo?Vm=Th(gvoB@QIRF% zUO|);QZw&6*(tsH76X&?q9uN}ohPNzhgf>0YGR>p0Zl0uzWb@C?=7iAtf`Jpnqpc9 z-fNl6-@JjE^7|G;_K6`?P)w5DJ=R%Ec(E4E@cSaY&KBkeEmj*4t7)yBQ4ny$dkJH#3ffWDdpVcu~r(kc$J{y`3JQIsKxW3?ltGWG37k{hX%2k>jCodpv{}tZab3$_9AA(`bzs$y7&%c!~FVMSbA3 zn0wvF$Mhx9p7;K+t{cDmm}mqt%k%HSOF|)&`zOtf_~$$b?pw`Rjim8?2#v<459)%V zW+t6hO5psY`n#sljAS0#QlN=t?Ai*cRW&&I?p=M@KKysKxf7Gsy7&~=xJ4v~h%}D- z?aAh&<@r+7o6q{*FDUj(EY4;VTH8Iy{ni!T;~8Qd1QIIPPGobB`yX~t{HtpJEZNlv zuk0AY+UL}Tdvbi9+7evl?%bOSwh3153g`bkgsT3V0|>7ttL18g=I{T4{EQlD-v1Fc zBp$J4q+}vNVqt)Nw=}446B&ZvvcptPkC4C*__c~WN0unR_k(Dm-~Ec#PqNq+WI&0Z zQm`l!ix#lMg1pyH)cgi2(@5;nh>($V*xk=WyYD+rlA_42jp0I!a}Um|(}5uMl8R}I zDyG<1c}w@^#D~eTe?_5i?ob+HHZ_h9mFLvZ8t#czq<~Q=Rqb1%mB!gWc%T$~*je6V zA3ugli{v6bLR;ZKroAWYMfS(q5YYp4(mc&gT{%PFdvMl0US6=BvTn_r-(NWtl)d!> zw`+Imee7uywq+Md75R`HK~ALYkj8|zehB_eC zp<*{;iR@*4fH`r8C)?n*1It}TKPw%o5BRN0?;Ti9vmbdP`-va85Ymq6A7*1UvKI-3 z4|?Wg$0_Hl&txt&<2ECDofh^jGtVX(XLGP>5~kqfK$FY?ixCF|!`=%xNLxlFfSiy(roU~+iwx9i~A z+Y%;e^vA^}XzaBq9}K?Y#E~M5IJJaJN`49txynGnD+<69dNd!(k~_NeGAR@KR49Nz z*4NqMgGTxq@xh6sN_@~yvG`D-+)Zi0+;huUf<`Mjrx{yiWC{^4;)+(J`kqf$1Zhc% zZ#__~Y4YODy2#&Ti|K5AnZ7Bgz~Ykrd$zoO{b|=%B$5mI=Ipm$m)GJ124kv8`nebv zUkeh@bRQ=qhV&^>D#{h8QEUi;H9AkPDpE9mo} zk5#;j{-SfCvk+Hu$)9|#coVrKI#c>m34i*F{R{SG;%kK_)z{)~THS9+zTlEj`3Sj@ z%49v6rgW98)#LY_Oz3)3u1C)yPpZ0xGgj#XbmUQkmY za>5+Mrx$UVr&SP~N>B%@B+H|7Mro8RvFn- zjYKsJn1}2y-B1n8V{A(ggH$`iJY29+F;Bgk%%~xW#Gr;|Ds#F{IV^*?+^gC~S>hz2 zjkSpoLd)s))^W*OwRKi`A$D%JD@=$hCOR(st9Fix!9j87@S&WWDU(` z(Wf7K;@c}{4_#Zy*jfs-Yao2XJjuGX<_t_)G9piZk+5!~ z6coAn^^Om`Y-!Iak9qqznNok6hVi;Xh2{uuD%+o?V6VN$^u5W) zPRo#*xHR#5C1bVZS| z_#ys1{Yu}>IfYJqOHK8uPYGw3j<*`tFs&L;LwK1$%~+Gg@Z4?6l6Q?nnXiT_n(zdA zXyJcbykmD`AU-|gtCx@zr*}t~y4HZN!P6sU?wR;C@So0>i&XcGV)EeJQ|S>E77NIu zh2-&A_74p_D)Z%6i(I%)l*mO}il7!y3lD|T(j{LmxrCYIifV$!e~~dI9m5bX-%9s+ zEd4VH+57h)o~2jid@0)Y$uk7nyDbSyX5reAhX(P2KCe8x{)7WlS!?0>^qcu~kIP_Z zg29x4B+t^7kd$2N3`Gh>suby8CN%CqFt#BS&_^q!@Z-R8K_9aG5d=~eZI=3vNFbk+ zndqFvFplEgQqzz#S|D-R0k;Xa=n+I0M3?kilZ_}u7kQtR+#s(wRU$Y^D?%<_WO;jf$bivTz;!E(fE(M1thjFKQ4hj&KBxcz37ER%*m~w#epdo@-9N7#<}f1S%!tK%ll$pxSAevcX{k$vMI` zLSv9>qyh>7h1kxs4?I;{j#Xk=VzShEsFPI?Xga_*;o)s0o0sO|HSsQca@ZcM&Ng}? zcj4TRJPp}*=46k1V9?0T`OmHKu>*)lG356*a6M8o93XuTdcpufLd1MgtqL;Y+|Y%mDxDT zmL8?m`$CNfrX%Iix+2k0AZb`%w+tzJ)Djlbo?xohGS!EeGEK^_2o_ja9B8F{%^tvZeA;9F}R3 z$AjY^EgC1=!#5Hvdl@wNV~EVPHqs)*R=T(}LJRSZR;Ddzr{xHFWGzhv6r7aX2*CK4 zN96UpDQHY=nitjdz+>HtD@M*oS%`5q-#NCX>ZP{NlU4wU+X{(gwC%w3H9epV%Jwiq zg9xZ$xCN$YH{hc2#~N`VmAJL~+(<8A;+A4!YJ4SJozi+akU6z9%bNPA;>_B6W`%J{ zA5ii$B~XbTw>Yx4!Z>0xs&0sD#|HjtF@Jrb(VD^weIUoBAmr2Hkk2V%scnpLi#GbQ zWG7xPvOjc3rUMh$IiRS)O(ER%aOFI30G zPxo26hU4v7)c5S~X0u%S$2yrQC01o?Ba{m2pc=}$KsJ7MDy4)G(M}`cA7yy3r6d~| zDS7I1Mxz=qX?p>cgxV_!}CfDc9nckcc66eX{TJ^ISo2u=xsM$nRAD_gzk|s{8jFhG#}r6Ux41EQB;oXQcNBu^ z*$67aQE{AK#MFu)yHYLjscsHFl2-aiL{Evyi+Qp-_652EZm{h3>3eU3geM**jgxe|z+?J$QJI-4Tsq`z5_zrN;Pa4D4Mdyu!LCN1 zeY$<%v{&?F4W-f%=R-3lhTdE>Du06SXaaRl?;Xhu_Rztcp86Qgs}D_B?MWWg)8Z_v zx9*{-SUV(-iRi66;IQb^d0}FRr}Hu_`zQ4lpog*oiU&y!qNjCq0^*3NwKSw@uC>20 zqz{E5U45VADffGNN~cYb{5maT1DRyeTi7#QlcM1hJaVg1TG*2bq$XA8DV?qiRD?YP zijUQSFeH$Hg`dJI@jFi9Rb3W+)_;9iUan{9-hMr8*nCRW2{LUsq_#_xI2@nRWb2|#7Soh-myg~= zKZ$tRQCx=o+M**WarNcRl*`*Lca@*N-dLoSjTc5H+a-+1y&&@O_|=FaTeE&vjcwUW zVN=!4RmGhmld%v+WKfE{aJi9ji%6kuTPgfBlv1WdA#a^XEN|C&Z;BsN^R-xBri}=r zjVgv+;)rb3dx|64Dnfe*1XY9K5NbDZWm$( zl!Sd!Z%T;qX73bYt$CsLZ?_P1{Yu%=_O^Xf1(lHK(=tNj1jkhR)r`oim2DY;7a082 zC%94!sBY_1np~#&(VI~2G3jARw|!E>H-%Y#gR=T4=mq`AhFSee#r1XBLr8DHFze7P zvD#su!wBvMix(j?Q`^=gCDt}2D)7~>ltiDDggSrTUY1*Jdzsd5@UG1Nex(uyq!Mll zQyS0^@Zk!J)*Yeng6!a1MUMkZ(2v_oh0WCMNqHkV_(RMz#-dp7lqp3B`(j{D`;I!K zG&xc;t95rmVLrDvlf`m!21dBlm!?b87fq+ngJn!V(_Oh=taFiq6E?nahw#I z3M=(IFzT7^l3ozKi~K&1=f#m2w;gM#t7G05y^)n79vDR|Hc}c8?O1->wo;Jfz*4kY zXH*>g=(N|gt`K`d3EZ;rLP#`Zw_XT|y7=Fr{*;j3YvE^W2Ze3ePHtOT`0Pwp8Cvlf zd9rAQwUN5LGNGOMblTjz^x(~6g zh~^4l{#MpP2ctnS-dR68tY8kIXi_UI5Q_2-!^y0{OlM zW{*H1k7X2Hrqq;l`L!ldq{*SPP9aZPC{G@XTu8v=%Vnu-s-ek34Tof2$p{#POlyVA zB&6IsI>K3cRnC`%b&P<0-)?O92wFiOSe{*f!in8`lH>Jz`#0IPB)Ic`b>bu#4sqDMa-B z(*#1!dZ}$jr18OmR1N|n8juQPN?oR~149cHa&N=By2q3=4aFLaew>6x*2~}} z=L~55VB0^VZjPnYTl$pI?OjJ$vruq`W%M1RMK#T|g$->Rg5X(YLqPksQ~Tbrq z?gx-|C%I8$VR3|9^lua>vT|g(wO#rDSXmu+;+lE3$mZ+0hN%=Pl`xg!qd3lXiquC* zOcy?0>V#Y;7LW)?#I|`qa5INAH&$=qE$?omDIJ9C(1S9?rkLBchBo2V!6rW zx@PY+(qB7dxqRe$P~TaVJy~KkU9OB5yQ+pjs#9xIogN_?M-4m`wb*@=hX{4F)gAH( za8D43Dg;uN!2wqiiFR8djoVQb;#B-0D#T&-wJ=7;B~&7xizY%_M~4GztE+`^0{1|p zq97j)^A4&K95FD93QEDZE#zB2WI#`SlnT^?s;&oAcRp<`5+(Y8G-#nTsI)lOJIVZP zQ?xC6F%VzvDCNd!w)8aZz8N%e%0M$ynj}y)xbd!5(~lKOfs|~g=S}ug`4Efgo8*Je z$}E{>|IuAl4#@dT#w%(?TMR&iS4y{q&`t;G#8llO;P!4S^HIH~Jpq1P`HCp)gJWy! zu_^!1xN5dHCRfp;Md_wXY6QR6L_m;Ybq)R)B6h8{dgU;V#ii0WB)E{#(8`PkV+ND3 z!V$IfhzJJcH5^cRoX6w_yeabZbD9@vY_dOe6R+x%CdB^}%Lk!mY`|D;$5>T^)G_&d z+QSMB;-H2>7ucfRu#4IS7~F+qFUd+vMHx##45-C1pi@M>+Zgp0(N$U4 z6R#K9A8Q>~J*)yfhgI_?ICZ9<65R#znE!qo+$JKA%Y2;%y|*-<^6WRe$S1g1E@yD; zv^iIoU6s)}4SS2IQAjq8sYP|RxbCxj4af2yu|)~t{RFSgbSaMuS9aoF|KGm7W##OksD_6NTNPxNa-zj2_GnNYBD9TB7x#Np2|7dS(uYsArOs zqMj%TeoT?{bZZ}jM-op@cSj+ro{gv?EEUK3MNGX4vMb$Be|!Mbxt*r7=;1PXF;7;< zb{@9CB*AtX_Cv5rz-c#bpH2z?36F>pLs0D0|F=gUOK$T?fV~K#_(NPCz3G|0pS|F4 zL^Wuts442{rl65%0ZI{A(GoQ3QTD;Ue9Dg2pnZD4z-g1|#|&S=M8)sr_0O;KAEk^|+X6r&U?eLAm9O!0JH zMkF}Y8;3@rERw1khd!m(C44Hz;KtMCTmylyva3U3S65dgdCL8vp4bjtr)6valq`*l z!m7#AK;)u5v3It5t3_eeIb5dkJf(M);mRm9pe~fzDo^Ph*<-IG@qC(3i$kjud|K~C zr)IY}j6#FRLuzsO#Kf#VL<40*>RtE5-jNT~;zQ1ec}h~II>M**UMxN5t5SLAB657l z2LIvV6C}{8-%u3Ekgm?%drG8AM_O;L#4r2gs5Xv2PZeB^OecpZBKZFDr!b0wX!yj` zi0e!Tnsi%rb&8^TCF#@Qhtnsfh9>r4@F=P*HEJC6q#y;mG5vS`5KgJ+>DquO&3kZZ zUNZzZvFiDws9pm2bfhrI@WEuL>qDcc-rDr(5QlqYBc*!1QRUOwFEG=CnQ6P?HtK7W zSC(Br9WvP{SdIE7i&+({KAl(fBtiPduzYfUbJsgYP6xX*vM6CmNIf-Al!wk%QQ!FPxP${cc6FyLo4lap-s_x`dc$EaAbe3AMpxOaOmqJDO(;G- zcoooh(PaLWDk!e9Yw>yiAP5KHEBai1ReUXWd^;NOx1W~t^!@g&ha>({-u3b8D&^-= zOR`r%7>$GRWVtG{<>K#RH3ff1Y|y7KMM)>J z=nut8%TM#!)>mV(Ol}#pSg)*Sa?FF?aS)1?$_0s~g#95ebTAn6D_o`*Yuc5FR!^Dg`j1t(tWaTF%?x}6E!=G{dFb_G+V(c^!#dwp=yVw6;roxGp&P5tVo*)qA5H~ckIEx)3Hw3SqcLv_!fx`%$~AA&Le zEu@Sgqgup{sZcT(&Q=t_H|ivF$~K-li#uJTr{3f)*Z8r|yf>`z(XUh|G}~gMBQVdj zZaso|>igkVm34-BMm6U7+hV%Bq`@p2bV}qjkXDS=UQk1I%3&FFP}{~+%95At z7S~ypPmz|k6{Bx4_7c|_(c?vcc0aVtA1YAVb)z(zgnvTZD1OgEdmFcX%yfm<(0UI` z!EIcxtt`qSWn*1BQ6@*?S1ftHao7JOvvq22m6}oCs`t(kX|yNrg>UHpq&fk6C|wui zovCk##m{R`x5qKnj-&|kF0`?uaFzL5LLcMTB6+_47UDs(>cWke z6kn%*nCEPNJ=t~E-1lIX&aZPi>z$+^FWCJplSxYTp1Z#-zRZ(pvHLr67x6a*jaK|! zQWiDA7L>I}=IN328cIhjyY}8)T;%Cz{jsDkYI?PzEOkLmM1@3Q5+^JdC$CqGNS6^cFuiPFFFw?go39hR{(3Tb zk;v5xzw?NkjXxLTXDwCBZ2CnK%5tq^vDT4%uvo164Y^t_mS&N| zs}!5Se{J0(zpr+JE;UOQW^VdEnSM&m@z72Y=j-z!AFEip{NdvLqU4hpXdk&G8?_w8 zW3(FDy_@3fH~IJ@J~Z+uOJ^*7J9wqMvEhn zmMYaNp0KTZZ(AHaPr4e#woWEe+)TU6C51NC92NFG_Thz>^dXVJ_J@L(h>B{@RgV*o z<*DrYvBX-nCs5dgvmC4y@tt%B=eL*1Vk&NB4P{@Wznd&eX1Z$CL|E11|1Y)d`n~Fw z$ztPHqMdKus&3(5t$vg9#_Bh2?FC;>H%(V&p`3&Dt()j_UZnL)L{xX*Brd0$>|Y|P z_|{GQOP}ZZj5vb3c}INCn9Ibx?BQ(7f&P{2iHc#AQYq z8MD${Ak8avd!;nRqfg%(?O>ju4N36|HFZX}Y^yW-0YZOCO*HwHJLXF&m#?KPMJDJW zosz@^yi3Z$d_DPZZo0j3i}`ZNgD}owoGe(fI2w_WV*k?0W-Xqv-NCKc@jQY9nN5ZyOG)wC_Sr!>5 zH|QUcRHN4P4-R+7C;vYC=f{8k`(KP&g!@FT?=qd{sSw2K)X8g-iHrE1)kS2y-f|Hy zL|ybTPgo`=7c+e}#B0(RXBUIIN{Nbpu??braVSoFKN5}z^-{Ye3Z0%j4dHlD7k)H~ zL_Tdq;;G_qK0D!WP*<~*Qa?)<%BKncg8Kfw(lzQ?wg?k+AiN6dS|J7W!$=2<3xwm~ zwxt{uH~E^$HM7ET+B(?XG{UYuCprqbH#h;ifmDs1nW5z^_Tl{BTJNe~FuY=}wh!lD>6d?6vUj9eg+&f;Zr?ts zjVr|k!XqW=Oz;r(ijlOyPnZd!wm9>IwSw3tMm~BIl)x1LNJu(L7~wnn_R-s(i4h?I z^)q}DHcK-xD6$vri?lO?Zm}tAgSq=Q4H0u!npNw=14BsC|D>$c|CVQL)0Dd1+^A_r zNFNebCnrN;gYz2>Y+9omr3t6@g~ zQrR6yVlv-ZTd6KkidNseCE4nZAktfMHT<#i+tAi)vQiG9N*~izMy=3Q_EGW^lm|&X z!TxSPtVB0mru;`cE@KMPnPo=sjYZ z;MFIqS#^bw2K?!Y9j;;(1PS$}bFHj+&Yk|y_;n5xhv*;Jpx%KkGK5Ji7x`j`>r1() zekGy2UVWfGpPV*Gdi>ST^lA}#Iz03_b=x)7bE{ORi`{!mZJpUeCbrh@w<70zYLk&v@5KzJZKgp1&}Peow#ZuEGp=wdH@nj$@FpV@XU7oQ+P-!qk(l z6Y(dReK$oDot#|~Qs=}sodWr6YTcy8?n{>v%WvVAfxK}Fdj<9Dj@DwoRWOA1n?eGR zHqNDuGMl+SJjdo}pULNneRjUjBu`{VVMWzmx;;E=iCs}L_SUU+D5SFKa4rZ~hagB? zu%8WT(6JiS#H=GZw9lOKi+y&y&m@*rr*}ox*kaeRqatPOt?RvIRG~WF3;M0aY#}V% z3k%hCUu?FDAP+>+8#dehW?P;A)rLcYc#t4!`heJC?c5s%Bj7q8VHSryX@qlDjXmJQ zqhuwS#wD_rAds92Brl^Ep1HlwxTIl|U81Jo zFfG9C>pt9%mN@msCQcdcyaO$9IK9ZnJQ~-+zzh@-_@s&hA)aBOjjxhT3K&w$FFg*E6a`P++5(iL_{De{!E@AT9t zl&FUu2?3`f0YHHrK!J32^}$Qx1gSI^NYE(~B)5rEo>Qq2Gz=3bI102 zVI9LF;IP(nSXvvz#T=&QnQ|P++emnqBE4f}F0Q4d(r0Qot2i}ekvKPxU7s51HXcZ( z`qQZ1u-qTD81!bM=g3FVtV;C$HF4#Rbkw6o?}P9`=zl0bgc=LTePBY)#@@JGcw*Hc zJabLexQC<}JB{cnx?OghqeLBQaVj6T-6F(Zi|L?B%jCi|(-(}MD!n77S(}>CBz{C( z`&Vn%xr>dsg&ILoDVVSOuR#U`yEwq2!#YzpDs9u7*JDJOMS18$@iJRA3{h3r-DDi8i*DNjg z&dxea%DS@-o4nLnXE@-_E;j{@6+3p?U?$LHwYML5Zj4j?5;wJZ5x?VZ70UB@%mLuz z>5^L1?)iGZw*mFtm)?)#`dWmTAwK4IzwueDo8j_)SQGuquwPqqL<-hN+?od)NcneO z>yS}>{(57Pl|UJo7VZOX;m+cO--{BMTC;f87;V`|Ay{jNDg@4e+nI~*paX7}z@1a& zE>a7h)~vm4`zSU^xmjtuxInf|+a->AvLSWi(+d(nX&NtS0I}j@(vP8DF*R}nA^Q`!+0JyO&^m2 zmSoFQE^dmNfNMxlAIV7`##p0ORqBl=V@Me$tS=h-YnE8;Fpd3vBuRV`GBdSpO;TWO zQ=$T0s%AtOJES7i`LhkiEY`M{Y3&AYw~8U-vC;@U)#RqAOra($FS7So(YNggMK6IJ ze5>hE_wS_r<31!Ur9%H*6f4V9a_|T0gj@>DtanOx;1rU(l}F9f;7QG_*7b!;Lr>=_ zwvIwi7#(YY$wrEQa8J`g*#~QW^^u{1>VHg_fHSX(ff>dm!GrDkpwP93z0?m&sb{)N z+8BBl`F$SGbt5ruJJwQH$Gk6!opq#(wwS{wQW1-dlvuYN%WvCON-t5RXld)TanPC# zYg$*xJt4%wp$5UiR#$RCUE84sTjV`1vu@Z;90IwiEOK0h{42!ZMtEt&2g7(}K zQY*rUbwiH_^+{4=ea||R8iuZUXc?K7girJ+M*31W6Xh8n{B2*f5tTDDccEw#Pa{ee zPW7?Yl0&DdT@9FxVXvYL|CoYah=VC^lRj>Xj!0DhA*S(16hX9Ms)%_?NyHJkqY~#w z<2;h}O!XGss5+})f1~F|dfl_vL_l2Pe=(D+Mj$eLtvpa5kh@D!&L4?D9?K}AjFB>5 zeytIVG&!{W2zk;%dGc7~LINgVE@ej%g1R~@g+lZc3RAvgXrXV_yFHeWnS_*zMn^bH zugdvS&6*R(2-t9Ef#PEySe{*f!in9dr1Wu5>`btj@;vbX;wxdlk&pzVwUW^uN1y&> zLP>9ew<}Tsfq+0{rX*Q(fG~gE|{$0%k9!v5+q6iVgYBYh6vtDT% za#2f2&a>ukiY9!sM<7m!ue$gmhqNY5il`H5_Nn(R%|nJ1gA@}LPFl}Rm$PNANriG4 zm{h2^iAKKlEQ9t|3W#)&M0mmC7uY+ti~xTS`<76C|E zO-2(axNa~KEyo@!K5^F()-4pAVHer3Wcj#P0g2co@_{=z=vgk* z2cfDw9#VMGDkjXzH0Oa9jikl~P56}eUN-YH`=X!=)@K{jopveOk6aJxJFBuMORT2L zmG)u}t7-@&+d|E7gpv7CQ#kt-|=yO6{wNh@9<~vHcahfeXO}lT#uqsU& znbIVIs$q<^F_c1D6nxcMzWNYT4odlze9&2$C9~{5x~s~FoX=#uqE@uUuva)8bXy4J zbfBzC0Ul*{2o#04Gsi=8eYi-kvxPo3%U8smcpx*|sLPCFU{p2Rqdc6)i_*y+^bN)8 z8vHRt>{=Ut5uz(q6Go}`Jn{%znucZzE9jF}CY=ag%4;~F@;Hyk4R}-J>E|>r(%58w z=q6s(Crya|W)d|T%LkDyeqook)Gif1yHV93bwoa&_OL>OIOt{2;E(Vj*Czv_h|3e@`G2@PjT@pM50QseQU1T*_nmX^nJq1)_;`J}?d1OMcfRwT?K|h5 z^PS}`;g^nPh91x25hIQZ&@a2A-!-$?_*viYnpq(9tSurOmnDWzV}5DSRkzjnYT}IX z<=I?lnZQEbpcZO5C3ohn^(=mCVGBeozuabqqtD*qXl7@8)V7K`moPI2^emnO>YAA; zc(%?IH0#Em*w{$&qA@$K+7L|iGz5n?%@}q12IKY=$TNx0t}53=o|#RLC90}1Sam)J ze0JrMv#anW?4g+v?6Y{e+%vtW2g|o@rAu5i79XR(3tpdl9#EKGPv^fjp;)B3tmG%?J)@O7_L@d4S}|wi@CnN`sm8<+smfI%3bxju@K1L)eK3ie7hi%rtQ`OD+@_1$^{r*=MIG2EPkw`2ZAK7M?XEg>JyBlR=w`{H} znsuHzgZUtqXU*iI)3hG!BDa|>TK{JTAhrh@EKX{aEy4ejP14_SJL2DY?_<^fQ1f*7 z=IBgQ^?#E5ItQNg-@v@;vBa%2EZ^_g%awlzOf{)E0@p97e z;h4%``tI;cCCnhtzzOJ(`ag2?byG0ec32kG;Z?ibV|kl`eQiy!p`2>kW6YNxK50g+ zID8Vrmq2sD;h{}tqm+Mm=;4%H^ikzgxUs&}uJ;JOl`s@r-a&`q>Y!JSlMWBFR>v>Kpg)T<><+U;vPgrf$O1jQRMsiP!z*EILV4=H zdH;v2weN0EzdFp`7S7Q_;c7FzYu51{W+^Q=Xo;yk>=ZW^+tKIiZE&tbxEeiq4m#_r z!m>*D@G06uztE-GIpZl@oxid4Fv_>XY8>P5uJ@Hc7`5Rbp~I?cL7V0?yKu?3fQPFO z-vQywcI1QJj{Nu0z-D)Ye>j}KDe&-Vh-dWhp!G0lr^5NCogO~gap=1@GW8G+>(JZo zCO>>KY^FLLbag7R3pX6LgJ0c?efa2!Oz=3nSi|99ZS&z~`+mk6kzj;*xLMK$js`-vM}rp#m&wjS>{)~ zr)@^JraLj(>2lBLR$^dU-74Nc6%MO8F^sb^uz~7uGfN%9#h;Fz1(rN)@R-T6>2i39bTesH$IFRb5pRY39;ltV)h93+o7RF^F6m zoY|d0vl&QT7BM48EG~#O`Shg)e9cRD3R>j49-6%%~0F2uAR_ zEROMQj&`*MvZb%?hh$B>kzn>XjFmZNadH{o{n+-IO{k2FFG0KfW)LjjiylhF`&&~Z z1IcY|NqZDgIHLVr!`Io`*BowH5^466*W6qjxnSuOBi9_IFMGgMIKpPY_gyoj$BgjdO{@Iw6)Z@iu&o{A>kUe-5CE2ufg@2nZ_#$ z#$@c0M%PdC>rU}=7d0Z8$+mXyOr`tRruxT*601iBQc*04NB%56i#I6JuFQF4JF}4Q z?5Nj~9Lgrr>qoQ6)JR7CLE91osZ@3(l|_xI=B9wu$hLK3!@c+#Wi(thn27h|^x#Z1 zQZ<}Pj}C5#1J_{D|L|};6Rm}NZ#uEFGnE|4W}7nU_~|k<%#gNm`u=*-9NUcXp#};9QEx{*XmHO& zhLR(R73oBLdnRgfmjxytUA5|N=q#xq)2%@kbquvjvR#^o;+QoS$DmZ&ORz}_ihXO= z8^aayhK3z%TmfMFR4Q{y$bJe@5YfJpA+!Sy#1z3AymQ*q=~UV@O3>59x|B3n`YMW^ z5w2R7QkH5UZN}KpG<)TmE$;b|mMv2gSs1RWj#T6Qf-+j%EIv#o`3f4g8p<|57R%NN zS9nXfzOY4Pq$SC|&cW|~{9t^$e}U2)&`1YwM3fpj4pg!H?MBmzlXqPckH~d2k{yhb z@zO=6SdC;_r-|5pV-4wvi!>+M0fBV8NT_`D_9N7_6CtMBL20Oxg~#QEVkj&95lwS4 z({9%I+qlk99QttUA0zB`r98hNU0cFLiAOv*|dO(#ap zk~$=;0k(~U5E92JHo8Lg;ANx}!>Jw80fG$eZXHNA*{T!Ks3vPsOZD^_#?-zS{wmY5jR?=uMhDmC}(+XRK;)p>p}MbUdwzKNUaO_;wpn zGgy#5?KDC4B>gx|!l1ep+8uW9zI=x=fofG8oW$pYf|2 z1nf6I?c4`~^DFxF?O|EvqNsJ~pBmlbH!aG?d0Huff<6r)jLOp%go6jNaeSi8q)FSZ z{Wip<6DN(jiVNa(FwGYP#ceM0AC1C|jP&TBIxgKL3a z-U!MLE75Ld!nKWlr?U>`rNzy|F&&)3z=XZ$7zuIs8IEl09YCsJYiKZLC=5oDBR&b^ zMwq6ugTq5U38OoZf{{io8%rY*U0g`^$9c8rGm?PHD+2(8sRUFB9SM?Pa)1&`3=V3S z#%h{Mj0S`*ib4jHrK~V{Q9-Iq3~azoctvBO{f0$Zb*xuq1Mw46TDU~GxvHTCLq_cS zj}41Kgq9CeEa+x8BGV&vbnVx%p)E2@i?hgZOw%X~BBG3SP$J3NI+XgZOzWx*YuB`@ zyBU~8)w+mACB0j{*x^_m3eI?Gr>pNl3mu;;+^!x_o*D+q(Rjc(b-T}Bs1bE+@g%D_ zXkeD1T%^2_0wL5R4^^ZkAZY=IpNZu(qPDuUM$}dtji{|wji_fObEATgZ4C6z2>9WZ zDzxdtqU?J1RLTajAK^wL!qtt9REeNo)tgQX^ypcv8B6MS2mg$+I~1N*TaXnnyK~@;Z|%i$xV1zN|D; z!>s93Q*Jwp60s8EN*Gf_UNWO{+DB+~mJ@@K>)Nj}c~Ts={A5a=(fDohj7`J{CNkFG zh{CbBo>B;zszz+YL|q%s>y~f1Ni5h^)lylpyDgFFODDyyYqHAi@N~609+yODJ~zPz zGHAvwA%`EZ7&u)bfa>CiIY-XTx8YkOIHHXHP9CFlZ;bIrvfUoCkGxb#o^9akJj&&l3v}C%n;ih3M z8c5`AOAK{jB=%EuIgJhqF$`+%{~QlprT6PFb!WYaL>qmLU6Bcd+O_OZUI8$|=NoAN+LtZhI>f7Ek z+K=d9wgag)^wlGs7$s)gcOZu)`G($=7{$RP$n}2B1(P0mS9PL&VxW>CK0mj=_D3Vt zwZ80@v203|PO{1{cBY1snL%(ihMW9Ix2lUSXms!gbk&U; z5VQ>iz?sE3g!+0Tl@zm#EU<{x7nDtQa1$c3G9BNM#O`>jGMiZGP#LY5#+t^)`f6zC z=5Tlg+TBcM(^@3Cp`jtdc3>rx6j~IQBCe^ctF1*rH+!px(SJuKab_94I#>Vj3Wv*3 zDh+Kj`BGEGS}H^|)^cAzGPD~@EY_w*QUckQjt<7#(0{{63nVRQ7dH%|l^IM8^*fG` zu$~&1$RncBOb!g-HRN(OV)9j`Dz}nr9^458IHCZbd=5*tjrdz7RI) ziL`ly>bLAjCHu`I^}N|zv69}+O9?%hgft1-42laJZk-p4C#t zOi<|BB-Y0Jlmx|=ZbwER(WWFvY7|GRI@c;dTi;k+jXdpHx4LzGTYIdfwY7Z> z>Pus7O5GrzZOE4^pYdAeLxVi9Y0fI4(I*&= zfFNBcdTR1{y4kA=NL`8SSb790tF9K7cI{o@WD$8>J%Tq)md?@xinYm#H$K;hduJTV z%*R@NWS^6db@GUovI}$Bc-9oGN@0CqEw+h?Yda=P@t}gF!-FT4(}SijjAot5*6t4; zRYn^uAavAhK>q_>0X%A&J5k@&uRhEC5nMI-bhX}v9wv(di!O|5=&@^@Tp*uNbX_~T*Fg)ND%-}jA#G1;E8e&aiM=h}? zu%nJxqt{VStTF3o0EYcZHPYiz3BGm_gT>pu-GXd$h5R zFaxhMfrlA-oe4e6;Ok8AVTNCC!Vfb77<#B^#-QHBAi@~bn;1kG1Jn&oJ7a*pygo1n z^(OTZ#-QHBAi@}+=c8F!x%J}7}PKZ4H|>)F@CIu4MBs(LJ3_UG-^zwXMiV-$|`hll)q7cZO}V> z^b(y6K6NJ0jYhqMnTL-p!-!M{{rqT+rm6+qHH>^l2NTg6O;#s6yjmqSSwgTiQKeu3 zZ#s#Wd96mVb7(9Rt)awYBU|?q|recX)Gd9 zqu@2@cuSzQ=w%3~iyF1Aj~bP3h#GZnj2cyLiW)WMt9&GC)VMn_oa|GAhO!1Dgs9Qv zc7B{BYBYJJj9Ai9qs!-wp`RkFC^eBSS&k_rL(z2-up(-7xHW3@w=HUPw>@h0HfnTs zWz^{Fs;JS`)ls9TuZS8QJvVCfb4}Ff=Gv&y%XLwslk1~K7dxXy2hT$%QR34THEP$5 z*OgH4-qJYtL>o2E8>5X{7@MMvsvlV3sRi-MXrpG)mS~fz!3qwtFh$DIX_JP*7ZFzO zq8!o9U~U*5RhA}`SDC(KvNf6R8yk)`nF!Ewmg!63$j2s)iKw-T))-MzLI_yxtg@lh zVGKQOI0+2}YpI3Q!eBNehtPEiM^wg03d=*W&`{obw!unBb)qdDeMn7)R1n*2QMIu~ z5yLvubm=^F-);~z@ZAY|)lhrWDXjJEWzH9yf;jBiWFM+ZSsy%2f*%x8_8(a63;Ki4ONP2-vxaY8XVIvmgRjd9T^xHQgw z&X`OzsteDk!D)m5PE}%%2IE5mc-9z8It&w1Y!n+^S*hHr6GpXLkN_;mV*gpHxk;?m z=|0itfuRJ(b4ICKu-2N&XEeISDR|R~Ye5eQdS!ZXE$x6B&sIMpOlPfKLyy>wnT8%Q z9kX^P^oZ%4wFkjPO#f`P6{4BD+6qxcSe++Cb9S{WL>q+m4Xe-()@ZKN6k-G?d9vQf z4{Q6d-pCKD60CRSn_k~~Bf#|g);qzO&YxJxM=|h%HzRPRs{B?N-TvB!q0@$0dn zY7~3&Le+ToIKg1>%i?^c@fFdyZdkRxYh5%F(X!5Du;G0ak6Ndw%Fu*}X?o(;t7c=| z4bZeZFa%N)A`y)uR_@y-AYwY3SaT0eh?t&c9K5ERiPia9B_gJ)iRvn$o6bPOgl>8R z2{&}pBY*%uIMXFaS|OT+Nh?I-m&_BQ`IvNtXf`IYgV6|9*E9dPuYf76)%;5t`KCLN zGV)E2Amz$89Rm!(RDk9phG2f2P5+=jxdSFav|JI>M@Z?LCSrODV>V2U-Ixi}^cu$8 zFii(y%n8JFC3ah1TGZLW6vjgl)2rC+@@qWDMz)Xe%|X)}N24uRWWAHdDLa0n-M42{ z$Qbx?z@a!ShHAwTwNvXu4Wx8oVG#F&SRu3ox8fzywZ2n^{k(^(HmA}A5m*eeEhGKJ zHC1A0Q3$g2R7;-q!d^#cykZ2Z{u)U1y~-11zzojsr4u$)btkd}sNCyPqk>?P#;UxO zk|Qv2SX@)J4n0cYVaOr?)t8H@gvgwNu~diLW|U3q@VXSJNMSc@q5Wc$4p+6IHz5$V zj8s-ojS%e<%qU>NlO@zut@VW?R0#?Lw7k%0afAgZ3p&H&DRuPGZzB3i7=| z&qUTMFaeb(jOL@YNt75}AZ`UMn1azk5OMOrfh7e7{`oS2eI-4X8O#$%BMYo{q}$x+ zjAs!5UfWe|2@J!-_8Gat=ZJkq-tf7`J|lPdTx*}}^tsMH*Xwh=eQwa_2K(Gtg;@*x z(8O5_`v65~O{X#$|2bT>qAeNU=08WOI`WurvYi(ySI+FKLE_?N+nb zv$}m?0NpcN&uBdASsh!M7{S3%oTR}+3yis#9FU=0n1l`(7S-hIIAf60n?gJS547ZF zF_Qx8kNU9$YUBnOYGE~pU=wtNMy5_KOrsM*?n?Fz3PdG?xlSOJ<-DxUbzv?E9hx(Pwf zXgW!3?%N$N_Cz8+Q?m`7(s+?KLvP-l7{Xx@Mb1i=T<9thQ)U9_CYKPmA_1CBj5X1U zQZcs~TEaI7tp5;7S#;d^E26p>Axn&W(_nTa-=ooKGPmI;c6rj&}N^KhES zjt6|wSKezy-jy@YwHX7GOr{K{*-(U<2LTRp=9x;V))s9!RBoll}d8|EgvMil>@W;2tb1gi6{a8Gv||8a>s8A7}_= z#Ru9^uCxG$uH_Pl_MeMAK+IznlGz|*_{>5NGu6?S*pcjGer`^5>Rt>D=O7yEc zT6LZJ#QO`gA^ac~W+BYNj2e*oV10*4yb6|buA%0unsV8l)Y+vv%*nGC5FauU@q)uE zVKqn5Alf%W4LY69GMKt5EJoM$EP#H+1(&RZ@x5!l_`)=M%tjF=o0~W^drErMTta@! z${Atzb4eC_3?+M)ZR_hhgZE@jV?Dsg*sf)frA>89YyCweLzp|wa*@cU)&25vK zuz03+vA3#aUE7*=Lq#H$YFFv9pHRbvK5|DocV%Lmt)sVDr}C8vZI&=0MZ3mg#>rdR zYD6Ou;tbVbf@`?>mBPT_b-|*7L5RxX4pw2{@)>32DjD(`KJUEN_3OLZEI(t1^>uZN zz4N-Z^;#<8s!2I7#t!#L&uGWkh+2(IIE*liQ#Fe{tbI*ZFnkdCbpSpU6B6h{3ca2va0o|XGuW`YyB;$JK!HPqv!cOc4c0cOfCi$#p%!y* z>d;6OIMlIoC_y$6ox6T@V;8%L$kEsk=%wZE9Ngb>xV(5gx-Vcz^c|x7%jt5 zm8lVX9#VR@U{!p(-1&z>b~j*3=l*Ev2Cu>xcTyoGTQ< zG)I^k9@(wKl)9>JEDGu7w|Q=8Hp2SGwx0@hsUA`B%Q(TcxrtjWwKw&~m^ zwq3BxtFzB~a0A;#d0vss+SXAfr==N$5~}O^u`F5+E(4NEfQj9)qFs;!^$VxT~QdiGK7;1ZLqwqzyy926<_YKl&+9&F${}nZac8h zLYvwMmj`BQ(KF?SlL)u}vk{13s|ou=WNeG0GpQRC%py-)D~%s~v>{d}tV{D5nl&Ic z!#LW&G^;o-#fD*58;Uy{B58NYz-Ha9%1tI^<+d`Rkt)Y@UPL3&V4}yDfqH_r8 zg6+hxKkEv^jw{*Zndj)r;c!pn05nGjG)i0`;Yw-bDoYbWp<7-E*0CT2BX_5&yq`{A zsHqFa!I#)e)mNg~(C+Ui(8x%gFbt|3CXaQGKoaX4lk$lGC;=q+;jPYdz~(~bhqXl} zSZqZ@kF8=&KAV)g$VQa4X*3>D4UBy5XR&JFd$h6Fj&51`HpH+l zda;2>uzjW%}x! zmUDVWAhgoPAuny`VEYo626bB>>>(RJP|-lTeJjcNO;7?kT<`d(6g9)zi#T;s~kD)m} z`jct>f{$(H!cZhz3VAOg7AqaO-xmuavCJ|5MODI`T?|JlRCHgm=uN|S1RdSJ0(L6f z#)Ex<&L+PjBIl2pw6ijr4b-On5Z8Vza`Ib8xJP|I)GRsIO5>HkNw~S1>BA{ACf0C; zPtXds2xNFh*0Rh_vj`KzJhTGXFK4GrbUFVDS^3Rnm&3!f#$jJ4=Sy~>XN}pIDzVQd z`?y0Boy#6G1;g%L&j<>5yBuTFYSt`bFpqBDNXnjVvys20LndQ)SP6*S;d)iK)Y&7_7O_i9?d=s#anh zaE4h=8$;m{J<|VWW@PH>{cYH&9C&%yEx*z!#tbTE&*Y##Y^ffOWiXx8H;77r%}>IB zc}r}sMBf}s&bc2L8P&>KCysT}zi#CIkEm{T)1Gva%Rgn5#jY4Sn&|8YM?=-IAC8wZ zeWNSNjo<83`j2QV&`b9pQCoahQxp7++C@hbVgGb(Sa#-?c0%K`w3$4t2T*3dj-0S~ z&=APxrafeNnaZ~C(jxa0ngqj+ed%EQ6k*R@Y59z@2w`8&3K4I9T-hxS_7E@S;a}xt zH8%mOMqxM@2Nbs=XuA`7afj zaM-E1;=f3NwS2S#rN^iQ+w=S^F})&r&zFxH7L>^=5=qe>lFEY=IWma}Yc3N$n`%kA z$zEhR0xKRkmCO}6m_?)yOEaRmW5yO?Q}s+|ZcJK6!(qmOY#QCMqGS}$QPk$fFl!ed zqifV-BMiqsjr65=V~@VH_mHE7=?)ZtIb4P3k^P2l-B{%XK8I^6ynXL`gth3enr$=t%6pt9jCDQ4! z(QLOgQziA?_n1g2(}B%3ZJa1?^N_{S_s0hOv#4d$i8!ecYR z9;uFn*~@^Bg3}I*_T-{7z(X?`uGc3W0rmnC=>MV{@QShFQQHZ?vN&jHq6ZuF_=?9g zY$kz`h#Uz416xMkmso7#znA!?sXbXWrl?P{)$U^zZ(7|Ouk zB-)7hXm_cR+dk0{A$YA9;aaV=R=lWfK8cwJerl=l7*u4?p>{L~QDBKWT`XSO3mBtt z+?{wc?T<);)|PAqXr|$*do~d~EdXs*v2bOyokK>B6`|3lu8efd7mw-y1*KxFOn9S8 zOQ1CexykRCo2)R$G8(2B%^M%B$Y0@yadI-6m?f*a@1b#nfFnHHYONb|gEBt07Tqo2c&8T6%G`wu#zI zt+jOD6-O}Q_=^I;`6}BaeJ_b{7WgL_JyU^&CcQ5UT(Jg1@HXs12uUM@v z`daOe0#skIMIn;`zm5WMhzZQx4aVbA>*%+_kYY3$NHtjmOYg+^l8m=Oqujutm6b?U zwxl27H1B`mWYfi07#^sC0(>3E>p_@`n`;|;cy@GN4hf@C!P;uzTiasiv}rl$1rBTq zV1p6Un8UA{YWPk0MtIhX@q#WHUV3SnO3;KGg|%L2Y+e%KQ7=Itg+5eCO)mz4s2?76 z5`@w*Hsq$mXsDkMoB+x`mf=t1bZWMRe9Y5Oi46Nxh7qg3F^IRUT4sJv5%Fes%CO1- zYORA<3L3Dpw3bA8V7Fo7tDzef0N=6N3D{!_qhVOpvNg8XM!cfatA%m0qP^0w&1Ndus z^mSy)w`Yi%R^t=`bSR%+Yecna@K!9Taf$(AWx<(=UtR~;=qE*MP1i||4D4-c^kepD z4KR^e84h=Eigm8)*mtt=dovT@M2 z0cEo2jgS6BAM!8IIWrj<3jP&#NlR&Jr~2*!{|WD~~HMaWbC?fPCo| zA$=@K!@e3*7`rT^ttT9VFqvVNs4|M8nbUaX2$ZOlVc5xN+h;`%n=^Om7e~FaA7{?~ zr<-Z)tecZd+Um)-0nqMQhN1$Zu{<>jnKsk4R7lp-h#874V{2)b_cBT%u(T_eTS|1> zW>ppvT(>1K57^8A8|*`>eno6-3N+6s%`b#PX^uibT3I$W1imzwZEdKg`(X2kYQWgX zM~4CqGs_o?jmr3n>BTWimUUQ;LChn%FY6L7-^}g|4Pbc1#$uU9TKBML2iiz0SM_2L z$1D+VOA^B*X0Q}MS)pE_HVUUtM1u=rlW<~}qjI9Ppnu`?iO?GmvCgJM)Nr(7Vt8A+ zs9&%kg zL+%kloUm90bC_{}5m^kJ7=V(Fb>{GZ!p1Hv9_xWDfg!UN`}tJPa2`7knQ+)8o?yqR z2ZkN%h#cuWw!>ksG17UQfTz(wDj; zYQQSp;P=}aY`=|)k;g4;w$ny7?X(q6Ck*tBWQR)Xo^=`Egn()v$1|`C)DOkPE`w}^ zLP%*2#dc!T9CpGh4F!WD9*QBx*zPV0#Uhq851}c+;h|JA(4eQthoRW0Q6@CYMos;; z+8?7~W2VU)Mnqm-5;@5njV5zPhh^-Q+JP8AA-}lV>~RJyC1+bquN?=IB{=z@nL$I; zS(%#ply)Mp7=;k_+U15woy&Yhzf=mYGmfI zqJG}X`~e4n;6QFsFVz6o)!JyYL$cpKNYgG82F4dno(0Sz#F$$kjvSpl;E=h{i7lsQ zy$ziB3Nb+j<7@F!Ji2h>Bf|@gDTfyw+8IX7{mE^=I?$k|ocsuj6a&UWpJ^r$iSe@(3a+LxOr^Hzl;ZTLvxuu92kF$XFrpv zDb#YXB7!E9jTPGEMPTbkO@AD`{-A-G9b{ECUdcAfMyhs$833iqt5}0$Z83?;D~wW> zxx8qnoOl?M1*A){_c?`aP5*(LIyU#oc{(O~w)d(-`5-0iTws1Pla=~pvWWdw&Vr-d z*}*fD=E`Qi9mRB_A{TSvG@lXezJWtqXAzW_e+(6yQ81jBL$yV7XdR{f$utbevRc#~ zZ5T{DAT+desyR~QElC?hXBcN4wEpW%o_rC^)c<~cSuzw%6S4_F(~I|>j&@B`p)YN} zTGQsHx#Fqt#-V~I+*!<&`O<)3&R{{ixQkc#XtW)|9Vm*dhn647~ z#`$FJDRBg8RJbFZ8itv~8R;Tcw$+rh4|SGHJy$Cfh(aFZi$c{vo23K2=_O?_NVKss zWl&)7E*lS2O4ql>KoC5GsxD~)i*c6>f_j7itJ|apjvG_7{kPLhBJ842H1LG z!lpHxp{dDJ9|WR)99s=v(XQbPepFBVl$0@?fzh_iqMH&K$7bUg&cLe0D4iea3{Ph` z6ZZWY&K$1&7|tBdX$)rpR~f?@7{rn=z2VH^n$B?MusMa{7|t99*Ko$&^I9|f$cS-K zDuqlSuobZ^w&x)QR8(V@)JVpOSE+2qE@Mnhj^#yW00KLMt^>-K7;(~Q7*zRv&-<}1Ay#(rr*B=t zYu#3iX{<}ag;vbB0Xo*DBDd1kr4nqVtV<=>N?Dgmu$8nffzPzbHWQ_RWuMwumxRMN zBpK^cKG9g0T%v2X1wBu7P3!1b6T#h?a?G~yp)J2r-lB3VYqs@^&^6n}T)Qn~>u43t zSE)D85`5M`>JQ#asDgpP7apySn=!C8GnO~_!jIK+skPEzmpAx=J+D`;?9&*0(MR;( z2}lfEZP(xnV=|U1L3D6WiiVgb4#Y^=C*==2D+00L;ago}a?}C%Jup}5J!qGt< zt8QOEvDm7}md@7hKKT>dTpi~BF#pGTp=PM-GBqM5i?CJ>G+|5VAX6?}wC~eV)r2u( z89^XJ@GMg&)9-ZFPaEi8dvyM`m%sds8cdiB#o|NTQar{4+HC?0Ypp~kX<+WNiH%fS zpCRIUD3dKUJL9{j%bTR;4a3aO8b1=!j!2mM$r4{eek`9tGQ^UBPsWC;V_fzrXShTT z@#ig?;yBo&FOH9(g%7D@$w%}cJt5P%H*hA-bHK&|o>`jV&@Tl!9x%#1c=kjBeTh z#FJsmMrvc2qLv+XnjtaFj^M+A*+ir_oUC3N>y8b;&?cE4UCC`>@)|i1e1nKl8uPiwDNk`%HvD}m0nk!R4l$b z3#)&AG5XQ6s@xspcWQ=)(AMmy7|YcFnY=@F)Xq(X6f0~urdGpP@-1W#J?ZWHd!jAkQ%`Qin zS+xChI%#NCaekWr9j>P%%I`ZuC4!f;TZ!G~w*1T8ufcwOcm4UUwtg2iIcZd~GLAt{ zft4T-8=%-)_BgP8UA{)k!(%Wo;vk?_M;koRhOg>F{B^#r)ZrS=|=fQEJ?Yj}zlniVr;KVr?Ca;=9Tq z${3ywmTgV7B%tr@p?W5F02^etJ} z;1kfhS_52Eg)pI0gSjPCjvaBH(2D9p5bbD8axUlSS=V|MGY zz~Q8IniJt1j&a6#SB49h(ODTtMW4RH;enr&y-kLPh-EP8 zGUyjcKBF1&^v3&jaO&Z_l*-gVW80KMSqnfTSFjop)L=S+^xoxEWFrMSIcI*m6Y?}9m#m&~19JAZO)LDOHdmGHZC?`PyE%Hx!5?BJ6cs!85=b;lA<(@f{6_fKPdiFKlG4Jx* zz}Z*S+56C3yK*%unyI=S(&y({LQH4gS2 z3-;Xk*kt=-oew<0fLCbz_HH@u_6KL}J>h*Mf?*Jxo^b5BbN=KWK23ByGTHOk#M_7q zISQZOKbszooH&d3LdVITeUt5Tn&;2Eq62|Rf+oDliizd3_a^Q$$z~wWqOe9xWx29E~L%K)T6vkRF4d|^m(=E-}2yKN?2k;{Hz@`4BM{)&`G zVcaFWxh%i2ITOF1Y@a*t<8vlYB-i8%`FHUTo4%1=68gc!F?^c1?>B$J4SAwDFD#*N zOvwGg+xG78njTG8PTUjz-X9;I?3p`JG4JD#ND4wv-jkVT(ocR znX9h&UiKw>R~&i!1GDzdzJldEc@23dUNCVj??}uhNz6_9G#}Y<{>1NJ|EF<0?>u#H zi}*Z2eTo)b@x6IhY^J{4K1aEB{P3>l&@(Sz9P$j3=DN=kLg*~A&62+p^7l7C|J##K z8huPWAewNEsb+ru-PQiY0+GINZ~GIS&?7CFiLXsw^2DAeL)q0JA;C@}d*d>N{rb23w)tRb zx+`-;=*gzL(tq9?oB#U1jDxh}w0xD2Wcw;I@s$VDw%OQu+{7b6BvEtWF;C|v*Y2CV z4kEoPel)faj(hIkw^52`;wy!$55D-C$yumX6PJ;{&~@Uqv+ru1!<2umb*_i%w zZ1_TZGbotsbNAf&L}!{gJ|O zCr@PMN9<3A%Z2mH$6ea5SvQqxD)wgPT=97Jw8@@FCM))KJ~F=R2`|g`tIO892ai&H zd2;!_i6bW4_f5>gpULI3Ct7D4a6GA-XHQ)4#N;`QximVZ(}&MDbVE1TgnMjapFrB0 z?#OOMeVfDs8daqBvB@KwR?Hb&KGE~gWMp#1?1}1$j@gqJJXDx`Z31UaNG=pQPK-T* zCU~O#iRSiwV>j(hd|h8DP&AX@$hoI=nfC3A6tYJump67S+qUCDP=%bhPnxTV$Axze z%f5Z?T`O1&-p!%xQGPbx{gsKwaawh2wDRv|Sf>Ji$N_|QcdpYDuQp5B(|O~ywm z(GyDJ8=aUwVB7FfGlZd*m(U_Cs%JZzkg{#kpt+Zz-K%=N4~q zoClZ&3E!Y5*S3+drQC9t!is~X*`)_F0be8p!_I@9u-3R1MCyO@%yB{H^e^47H9K!w z>fpSWn4Kym=-?))N*2*mo3JVsnWr*Sb8!Ccl+D5U_UCTOrT;0<l(yCc=DU$Dx!wV|Xnxyp~k;r)P*NArfzcd<#Sgo-BA=gFpS_$p z_?=>&XW`E4R!0_}r8k88%kd-s{`jiFb0mKDqCAdQ?8UHoMe(zk&v%0Fmm4$;J~Q08 z_|@a*rsJwJ=6jXkWjdG#HXX}>ZQKC8n>Tshxu2LvD3=XuHJ*rVGXF4VzIU>+^$(`QCCo+pE%mM+^A8=g#-o1-6$h-)3ZpEAM#lSvT@pJYo3!d;#B9D-3s=FIRxi zO~?G|`CcR3nU3e-XVdZZf^f&nggXZbb>nw=8NQAJzN^acO&C6#j%&cToB^22PY3wi zbgV);ZUzt2@gn?eI=)vR@1D8yy>YnP%gXz=0(p->9^EL9TSBdz| z2cH{1FRbN3dH>+Z+fyj-*!kWR-0fxKcWHsVt&rCVCdxYjKR8P}FoH_%#;b$rIdk&UTLpQG;BGG~Z#MYc^e%@y<^|=E-^x4H z$g}=CA&>cDFXk;T))kv4d>#kiGWfNZ<>MVy$-kDrY`%9Z0$U8qiTE*G#)ENlCj3rMq|DNNBezd+sGC%7KRzhXWk{asDJJnAC+pOoKy!c+_ zMZH{z_;ldTRPjgm81B?Z<`kc=z`YH>Yt8fZxZ8_*^-=qPJD=|`&r5JW3ID!po_VAD zj|-k3EO@R!lF7sOE5m;Yp0oJmf&a{H^inBCE~bOc-1 z5sZBf4(tUnZ}7lJ-D(S${@pmrBiR@0!y*xH0Q;qTvIC8Q6mF9*yJ^aMN}H7sSnn97 z>@f+6?PGW>-P^Vfx$ZT1LOCtnFnN04y>0*?^Cx_!qZc*N6X6?2#wSzzAhBofiGO)s0CxNb8uhbd9ULA`JVSdbH4>Ve15>(J@E3m+T2%}`&M(GYKMCpY&spd zW01Gm+<$ED-b$q}GWT8PevP@`ycX_|@v3#W!@!$0_gl@q5w=|FQ5)|VbPnB|i zIM18n9p!TloyW&zXCU zcgXuH?&N;k<_xv%5XJK)~#!*i8NML)>T(ml4AbW z*Vgi>zP2es%GRSVZC}$73ZbCP6@mpPc=Eh`$1&EPhh*Y9-8;ua!8w<#Pnj=E=O!<} zICl7}ZpXPX5? zl@HFkCY+n-Sb&vKCxIDDhbHG==ygu6SpMWa6L-jZzkQP(^Sd@qE?)qOt_r*RD@Ad_ zYMIH_`Q4MtPvEk^`JH|Y_k3kRcbPc)(##qho5uNw$dhApeGv!he~$RW-^VUI!7h-} zyuotS9nKoIOXgnj-ESJrN_(cZJKV%`;(gT8m{39Jj_nxGZOOO{RC%Y+~o z=0153R*y~WUa+?ZYu5Hnwj95)yGzJ>?mPi&t)84Swh*^wD3j-n9i6uzP$Prv!CE`; zy%e`;_$2fN!BQ>Bb6JCTi7eagnLk;vXV+|R-sM*^#uqR;U3RhET*QIV+c+PEy>W5{ z3J>98^&q1KhYKq#Cv$tUV}X?XMihLttm`DDvlfq)e5`bM%4>&c%M%xJ{VY@ld1Z7# zmsL*eGfBB)ws(!AKaOZWct(iXWVP|Kn-Ob9WZ&egk5><_GnKWIN(L1?@aX#LXLUo? z!%}*y=0>;84N~0jF1y8#PQF84t!bU#h5Eo+qbtoM%@PI{4q`FtDI!<6@gr9bQ@;HW;nooS)n|aY3H9#=+M*_?Heox+37Ob?_DkU+UoN9Q-KJr6e<}DP!H)}03qA_X%(#~ke6nC#$?@J7JSKRH;ExC%75vYF-yrxF!S56N zQNf=Q{4v4b5d3k$KNEbb;6Dofgy3V32-3U6!HmZT_{Urpw}EHeOIDD4nc(e$`D}SU zDs)mjFLNaM_3g-K%dFBu!#5AgS1@}-s7EiL-@gjx9~=MQV`^#KTPyTeok+}{8|G!uHyQUX z5&ZuIUoLnaIxyqjHw1s@Wa2GSMw?F|et88QrjV86Ua#PX&<7s(h6U5jhWjG)g~z4$ zNNPY&qCvP!N#4Z{exrjw=-_{K@Q;AUIj}I74eQtFq>g*&%;NfY^litbx9@qs=pcUB za0hW%fd1LI_v#}0H`fPo`?-TTfoY1^=hulLY@k zFq970(XSytln&R)f=?A36|8yKB^aH0T-ybs^4%!-9N`%eyj<{=f?EXNAb5q~&kJr9e2?HZ!M_pQ zF4()6;i^8oSg`7OMDQx%Su0q}u3s<)%ecl-jmN$71YakZqbAS$q+pJOJntKVHweC8 zFq9P6tk==+M!_ct-YmFI@cDu}1;1KwQgA}>xZpv-?-2~;!u1)!7YV*ca9Z&11Vg!S z9epXo-643fU=%*C4#6l8TnWL5EUrrhj|+ac;5~vrBlvQ`_X>W4;NJg?s{cO`yi(|o3tl65 z-d@H*_4ZW3n}mLr;6A|{1gnl+D0o=tdjzA=!u4Lk+FpHHu z*XAMn#yzbsiv_>h_z3c|Md&CTTo(vNB5=J1*vjYg2lxlq$Ast0g1;*GHo-p@oD=*9 z!M6)O`pt~Poq|sm{8hnc3jUhl9>I4B9ua)E;H!Xb9IkgT9c_GE{CS7xUI)884?Fau zu3_AcqqBFa;Fk&JA1lB9E#y(1SqE(6(<}6mBL3sv8t_yDm#Txm5W4ow{v!AlBImhp zC%@{98;6rYx8b_<<--3{@q51D`vs2){;lA*2!2>F|JZbW6m%=|_YOYm9Rd9^2Y&|G zwrT$+m{xGTtV}*x{0qnL(su?j(++m|UHpav;Q5xr^SpNj^3Qj0*1@j)n;rVUI@sm; zeHr?5uVp@*OIEpTdbhrt^p^^4>^;QV7QOSmLEQe?!8r%hla=G*$I9@W{yxfIC1G_5 z*7&?$u(m(93hoh}UkKhJ_@&p=ueJl51jmK`X2HFJ?-D#Dc}dj&^@hkvXb7vBt?%M8cw9o%$t zK&L^(^1REz-vqY(Ls#Z+h5iwdI{U-q(YEV;!P-Wh3unChMCV_NWRH8B1%E(rT<|vp zCk6kP;32_oSTFoo5VzI9=KMcCfXP5qdhyGay zyF3q;p&#{$K<4Sdw$I@Dz4B9}_mbqj>C?m)3V#1*h;_{Vv(FO$TGF`hbAilbKObOv zvT1Sg3h<13H&=*Ihv%X)e&68GuXpgjIM|hcmqY&<@VFPTL6wZpwOI= z`d6eJZxMW_;Kv2uF8H0OqT}8%v%~}blq%DqyMj1;(!um&`JX65ul{=A_hMk%x2(CF zSnI{3g0-LU^>2`VnndTb-y}X=@IQTv_$BB-S2B{$1d4*}>p>L-!DCUv%Dgi3cQvBfdvGD)_I0 zcM10Xo%C_R&-p&_)q+F+j~E>jTz?h(UcpD+NBReqF8CI~p&ycth5^?Tf}w!8p7UeU z!HDaxf~N#O4pkfX9uWN4Pl)S8mwtxs6yh)VUa*dP=Lr7p&xl(U|D0G?*?#>O#OsBA z+b@Z`1>gBAVqJOr>HCS#7y74uO&k;a5d=Rjs|O?+e%^lUH$k5N+`%vYZ9re^;64Xm z=HMG0%n)qZmBU{u!~Y|P{wD{!a*lg2h?`4)I=Hrs%t42KorAybU^m<+9D4X6=J`L+ z+3Obk62bgq^Jj<9UsObQd0hNf@L%S02XcPu&|m&LhO6yB*Tcl$5*={m{P%y6-YSxg ze}wo|g0K2L@!R|mY&<{wXz6etDMNR|I`a>K-`6?V<@rt-y32FiV}YDH2cPF)mw!9x zm5us%kw$VOW7)aJUirv`)3Eceiu9^ zjl^hwz%W_+9rA zFBAUDe@cu%%w_ZEM$j)av@bjOUI)|J@*g=xIjVan2yPJHHG(?@zXI6Gbo~yNp}(#S z-SvBI8JfU&xo}z@snQ?YuUZ*j{*MWQ5B%yE%|f%X~Yi;ek(RE+Ojx% zIkCQf_qG!McLn44;Jvee@dC%ycK&SOR|@7In{QvgV78wp_dD3-@m@{8Cl~pBZ7lHX z^1lQ0aal2hy)1&O#BXPubS{_7@KKi#YuX>anpo5Rqqh-j8rN)l z4zTL;-5()7QDpw>r-@Z&-va@@;w49bt}>So5v$DGKR~Q9KQnnWu;$yPzkV+8D$KyDwJz*9fmrL>O_ju2r`$XYoix`kmlGW9 z^3;Qlxh+YrOV6Dg`2CrKU7o*yKJM)7wfgX)aNyVFuLj+Y@m~-jZjx~SBv|ugTLbBe zUwJ06=JRXXh&7*gttQrdZv6qV=JV&Da}2QhZ9F=_HS>s7PXBSlDkpUUvC4V(EyOCP z<_E+Ji`tWw4;|y@=K!$PPdAM<4+lJ54jy&zn;h)={YV-5ouJ#i`pAC~pCkEp!6U@y z3vPatcyCdh*M^Suc z5pNW{=oI2t3x5AH;%^qozpiPXpI2W7wrvX;t!^)G4tO>@c!z^s{yAe70@^@uO?-d@Ge%)9Q?!N$! z%L-Rzvwpv}GvJwW@DmPpWxi+^k~L$`Q~$X_U7!FgK0 zHlFnRRPZA3za76M!dhhPRBr~p5twE19)p9jQ2H&PGoSwvKVHnY=iz>rp?^xKq@RLP z!rC^_mjg53eqk{4?RO5wV^JQG#%oIc>K_;9%FvlE)|gqZW4aa#R~_(;z)V+*!A#e= z2G18R##wn@3Howi#yMedsj{9j{&-`!tic)ZFEVRg-YoLN5-xe#V9TXUUOD-zf2MF- zXr3vD_$HB4FVuTQPQA$aslh?H)ce-EHq4;}^hQ}@P62J`YpoVZ#8GcO@FS4Ja>Q^; zt~T$gimgCLU#fIn>85e+1AUR9V@M`fn>SH0s1P!*uFw%A`6nyJeEJ(JF7@%7Dy)7o ztN>34KHJE@*Owm=eco*781l)*aP_Uou&%Cnt1o}DLR)mw-&pY>pZ=zbTY=L?&OTpG zv+R8!TN_qulIJq;EXUf0BT2-SlfU}M;hsf z;-7Nph1ljB>7{Vap_jrREfEJR$K{`L

7&6|X7$o+|z_J>sIC6Mr7@S%h5Y^%LM5 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

A~M7D zLgg9Dxg@|7)qp)-(HA{wFQc$ag*uiYhy(}S_3H7N-X~r>MbEp2qhUF#OTS!|(VvWP z5`p{HsD=gUzl4m*NWXwM3XtrN3bC@pGPP0$3%T;<9O+egvg~8TCWK~t z^V#Gx*&QIld2pW_9-E-q+jJFY0Z zf-Cf=rBWz=oto4HsIdFNCih!xfM( zIStY&r+#Ds$8v*`2G--3Xj4{#*3q4pq?#jG2Ck(^|5}=de)Q|D@4otmdy?R0IDbMi zC|YvTA9^24`1L_JmtImAL?K~tQrMKjF_)3&*&dmR3KUay9$(O-JK6~Gcccx=q*@pgVwZ!N-FQK^&c1fhjFJ?L&bxuZ@TvVn&VBI}7LE-T(_QX|+k}dai{Z4K z2|^aeGwLm->)u~~KCKp)9l%xx>0io48^9sXagJPeui)`udC{{)uP#pH+9KASoOY57 zbX!OepAZi%9Mge_aLPxb(PACxgBNi(oQ0IT@*8GMF)u>tJ0cOXe$cyu8{r9zgP0)G z@oI|R7!V~R1+rWi3aFt}n+%gDDjj7CYwA?to0@({T1D0jvpH2Pr?MLKy31eKe^tcc zze2;f9vEvTt0hvJomC)Apif3jZGl82^UfBbQp>@36av(Q2PLJbR*#?R(Mpz6M7o&b z!h`3-Plaj$U5~8CbEXd|RhXgd5%bTH!$quhrvqGb`ccS6i|G>a27G0(8FkAhMSWQd z#K+4;tzqY!TFjf}$y8c=+Nw^AbuM&`Wj^OBuu{%I1(FP1`}7qSL@0twf1$Hs@XAiZ z;HAh6rff1A>Kn>0#l@Kphb0w0Jw!>V0LL3L7m>39Sd{Dx>nGy?5bY$>W8Xuv-S@zx z*)e{b4T0tIL~{uz5hJ?QWJtBs{#^0o(PvVfC2S~R`jTwl778489n7~GXL-#5UnUIRt*~ggEja;6hZ)iyGjp)H->ym zBwt)eOUpUdlVYAEQbT*LEx?R)X=B(*EuX%{3H>hm10iE;kI!{8m02 z@a16UpxGe{jDZd$n-_CoAsxJOkLvWq+*_gYw`ioI=W_ z7lYn4+0A2wX!vaMiWh58!2Do7*2gd5Sz~GXHl012w~FAV+ZV)H zRcSI#+3j9Y*JOSK)4Lj48vKz~5c(6z`_;Wr8!@?RvYrY%i5aB zP&5b$x!h?jJ7D_`dBm@b_N!J7%3PftG$-i(F9|ObwSPGsx zhRLtmOjq1$GhKzN%}kX!OwX#t7u7m$g;zWqq#<2BrWeJIi!voXKINl{k7Fr#(^c=f z&U;432mF07jO%iTu-jh_`vW@AzWnwx`A#W_8#a`J#nEtLCcn7POlulW;Qobc*xUfB zGYuzC#bd&rn!`lgY=mTPwv(eyYz3Ym_$HNn=;o(;ie=UD!SAFkO$#CssdXapB!K05 zr`!=por_WLl6o_K2J2B8z#PCiNn=d1bk6|JPEkUWB<|jD+xTI>KPU~7PqA8$oX%nS zbnxdn76tCWR7)!0VTr3NxJx!Tuh0E-esMwHt#-#xiVjOej9E;2`exjJF`bMj^Uxb_ z<6*fv@7c6BF0tcS(*_KN9%JtbDq`E;!(mdF{siTjw^ZTFG4JHaHBlfi0+MT772w3P zcON26*0#h+c$#EXR)k213Gagmpo$ev`64V{r<_;xtZ%wACK{5H1FR7RVR>}BYo0~# zz^_!HLEmKgX&GUgfjY#WE*XRYh9fDGV-*XCG-1n`O20%GVrF$IqG#McQJh`RW3jN#07Fn)a34j>&BrM~pjQhd(+Ob` z7e8c)dQjkym(X=G@HABz+EOYB(ugT7oYHAX4=l*0)f6J#!Nh)7$QO&(%s&pt{1W&E z%EN|(j1U-Js3E*x@@_FYkX#MHRYP2m1bGZT9bSUkhP^TF?0q$y;fkjHEO^f?Iz!DM zrtVs{4#51$#nGhu#9^viqF8_QhPUOW8g>YAYtC7|UK+XPtsP+!nhvWP9^`gsJSlOd z%?cwCX9tn`GO2GKWeNz`SLlsN2zZn`X>TzjvinFKL-rrV?p6m5)k-9q2EtsprxK)D zzEYdi#x;oKDg#MIAdt|k8&S{@-m>kr=vbz#(E)TI)G0|h``jcGwMZvl7#t|i#H$o= z7AETILa%XDZK1TXBzNCY_3h1!xnTM$_LMX>n9z5JejrczYq(2j=_yO`{zbBqy0)q) z-X8lzlaLl5qpNk<&Vyuty3YjyD0x3tdj_uK4dW(g%m~ePyHk;I7=^MPB3fKoPxTNC z$EUL&a_kfgbAqa=b@a3fGnB8yDltcAE#w3ONu2P~zA4HCrZW?&==FGHVA!VVYV*%y zj-ozPxo|Qx)jnjLhm3{cKbGOcY9ASXObhp#5j|1gmR>~cn4ao20t!qK^>hm)!0{-- zdPYEv-GB4+h#B*6dqx<(dA2=0;>CQ_o)OSu?q^RASh3TJo~~Q%a)R!hglwoWzq6Nm z^0@y*`zW4LC|GIPDrJ~Vyw_1ln82*k30gLgQg8t#x64C;CDvxw*??ejFWF>{yt*PN zP-21Bc(ZPyFl7XX3ShUeS&e)45D)tgDvrl>BpBjHb zWgHqmZ#!Ux7U&UGawe;~0DkZdp=uuoiXTuxM^fSEC3LV_2N zevH8+cPhs~9D<)qI9joH)C7v-)Tu&)WX_Q31$~H|-$RZoX(Eg@Nz>t))<+na7@3JR zFa+PqC$xr}QK)VbQUF0juIR*cLS^SG&c4o`t7%|msD%?o3B^2F_$|Xw2zt-nLENn3 z03n|Jpb5IkouHevCt+zG@>W!}zOG~7K~#eEkiKcPr1J~WA!G3CRi{s0@;>>h%<15A z@S67ccX~5PRv5ys$_kslwzFB#n&fznt*_VTl&;jrB(g8#AwvgI(i-qm_=5V?myLDR z(?suj)nC-Pym?HALPwb9U$&uN|l1W1Kv#e*&1U)QmSY>rB;g_zcMKRPQ zt#ty8N)*d3D^c;f7FMFK8Hwqu-NWL+lF{zP8#J6HNma>;eBFBYp2{rRPB<$E4abXl zcVVzwR5&drqfIiSvzqy?$E4OiLJ3GPDa}_kh7nPo4#te5p*FD84Jyu~nrvOJrq!v6 z^lCUd@AszS38(`2zM2D#S!*C72KKr{sX_%^>fy{6hD!CUQlzr1<3tPk5KTs{G=S3S zCU;BeVfa|@3(9RoG76Mbp1V|1Ao6HFUWl-g6|Gk`cceuu2P>d_6IPB~jlj|Jcx)Vm z$SqqiX^G?@yEb+}TsCfSqJ+!q02V&aEHYLexhBq;$R(3d$r$Z}P*+!9gvzck0I6v3 z5(`zp5D(bIDfVK?;)j&@Sj*N3Ypp2_>v=sGT}vELTuX$xyq4Ag3QG&dmk&mlmfGbj zs;=!EV9LEA4AsmIe#2Pb9hfXb-Npk9`fKZP^0xlS(HHijvf$qxSi%+r*e~c0KzI~M zc1T$Vzb%lUZv;mgT!}#CdH@mVk%kQ}O$BOtl>Mvnr{g zM6Zgfes$(YxH;&61%g@ZXr5NKGZ#B;$6lH7z1S;Owxf2j)C$Z7s6jI@sEaGs&dE7I z_ia(q0>6S>RZ@Z53qt_Rm^LwFqr!D?J?+c>RdjyAWr@(TV(4qc-~@>Gx7(mE-qEQ=s$}(oLTDh4V87z^`I5I=gDuF zk~`Wkx&Covde*^|-L21;`CO`RmEoAU|Epv+KGy!>K86iM;1U{q^n29Hwlm%4(EnksX0)$=M~6Kjv3`8FFCB zQ`CPbu0``URvr-}T7$8~Tf@SY0Ge!R4K1w6TwqA-x^g4CbL?m%JNo4mWTY9+>Dp!kssqshzzyoH<4ggj z3KZ?s4Pa7oy|uGYR^7!^4P5?~x;Fq0CC5F{5)~aQZf$pN3i66a=z#@`=oU@xwa{Ic z3YWzts>NHnBt!zIplNCr0gf}kU4k1_mVO2bz6s&V-ZKy4kD5%)emAAp* z&0hx%5 zV`ikuSldWGVlqIty)@P?lHma+oHPRqkQvfTq!&kC11cIa@XD!Hh#7PvBS-p=8v8A; zL4Ph`d6gtbhb)6bm7{}DMMo{&Ww(+X9k`CKcYdxf>k_RTI6sw(@eVG!h@(6KCdVoW zlCB4Y(E-SGJg?gAUJheAN9yUr@xy zP)2sU`}exVlSlloFe`kLJEAH^53?bGL2m(n`=@TWVCE=Gs$irXMc7IJp%0ePZa2Kn0okd5Q4d3WelE0;2L$wD+ccN5a&RXWs=)sJ4K#K~)P z-ZNzN$1{gVcR)2K(kC4OoDxCZMY&MX7L?$~Gn2Z+1?mcIUz7;7n>K2T%j#-oQrGy1 zu8Z*`$stl4DpqTfW6KPVX3lfBM1VJY^PA-rH8KIS?tCFrkz=jRrzgvWlXZ0qCl z3dH*>SHnJJqS5+34x9v(85+75xHG{LGC(~U1tw+(*M;`f(n8wxa4aQ15kTey@&U^! zDt1DSK4HM&#M3dJX&01-wsg>oso+(pgz+jAj0ppO3ltV0Z<2Q96=3>~F?a_K4^^Lf z1~)%W6T4dpbuXejv{Q;6%Z+TN-vKsmuK%icLOLOf11zF~%-|fMg=C zCwQ~h$pX`p=gVED;2y3G0>! zYdw{9uiH`-$=;oe!eQ`i1Y7e@HTk2kPQXYx@b79jy&^wDA0Vv#JXne=p?AY4)hV*O z^ZC`4lXGg4vr}X}(kfL5CSVS9^?L%4t_#@{fW}xN^v7_rFF4s38oJlrSDeU3Rizcj zjelyuk%*H74C~2W)k*-N55S4G+zIsK(w#t5wSZJ{gk8;NgV#=7RNZjX0OnekmtLkX z!)i91UDY0>yz1g60xk@&cNmQm-BtHT?Dj3NgR2VNk|9KGk{$G!M^|JrxaTCO4hhax zLxNA2Bm_j*WE{w39N1(W*koWrWy%8#ysaTf_RsKCylImO7%AuLs1`uz113XTj*}ty zPAQaXA}Lfd5`-;Kscc)ZX_S|)GV+5UCM00;gi1pKa2ZR4P8nhj1u=()m_tR3Y(7<5 zv1x$nsjccJU8K?kjMVeR6guG*`5F2E#AwSAF%!ftb2?-wQjtkf3Qk{{5dHD{wtpG*4j;Y>CSSass(@@?4Ip(BOwl9)t{xCur(fDy=Z=HG zkCPG_5TtWQ%#a`Whn7eQn!9DRA~|0PMvR`T$Z*ZVaUlUBq+7;mxw|DO0aPJCYT82O zA;EdEBm@dGDnAk`KQbymQbfs4QKc2*!2qs}Eb`(64C~1j&`JQI51?{wIU>}=68CvP z;4lfI+Xy$7kqBb~qCasO;li;dx0nn^2~7v?sz_N_9MNSYQ7i}n{5?8`+EhrH3NtJ9 zBT489Gj^gEpiO0zsSsGVqQgR>O)#1EPwY>nJA~CQ#{PD58R2jk9C~-@b<-t2Ug12 zX$3bPiebtigIFINP+ZJlyWywmT;ZoOW&IhropIb_;kd`fagWJy8I-32U9>DRBx!3= z*GeF;E+#eYSyDGN4MwXCc5VSx0UJCS0)fST)~-OVwDNk;r)hk^xrW@Dz3jqQCq752 zFe0^(hD)AE#4o?&VRj{|flweo@dcR1Gw6gvncH^gf(ictbf5&0Emg1}@b-Ic6(&=e zvT{K*SIANKEtH?I33_fh7+89121CZ6BgAZ1L@+AaaKssc;Sdssb8O(lXxJ16Bfb)L zQv4nmOkD-0+E`dDjHTPXIPYHZIa%lz$81_qd<&_x{v{DuB|%@ndCJj(oQ{dV=$BTS z#>6bp^szW%SX@-lWA*?v9e#p{p-6h-4+Zg5pxv|wn?;31__Pb+fB zt|6$Pe%^9NYhZ&WQ=w5JFZHsb9uO+^z*lb|GVa~GAO7$AZkPY+U;TdnK3rDtS^QcU z=lAh+gg|okyk3Nb&frV6KmBrcem=OkNr$|m)JI1^8;P|)F_a(6fZlUuE3Ux6*-<=jtD22?hO zUjZ<{rb%?}1xL!6l&Go(+}?|Y#3BO}(F+9HE`fp_+)?226C7YC`6+sV6%KriJoLNP z0k-n?_#bTVrN4})7To7UO;HqLa}@UYWgitqAqBDwlC?x}sD%~!mI6^;Ta|~Xt*n|~ zv@c}8f&%{yJPQu|x2OSDJ~Tum2nwD&k`EvDo(@}_%IvcPp&G`Y{#o&!ECP~}n3>JxlQ&&4hQcEV4P z50DdnD*5Qo&?(0aoWSg#JCh4~lTnq5Ljr;hD5Tm4y#fJ{)J}k~97u9S?P@iXw1yP3 z5KtckiF@|gA277QApx`q1}bQQgQ|$xq6H9?Cq%@|PrQrey&>@n?WvsxNXASZVsX}kZLJL|2qku0y>6y4cSXEaM zzMzw}RT0o^`X*_Uni(sKj>|9TZ*9dYD#XQs;`C@pU+KfBtyjT`I2Kq9sMc!eFsm)2 zMUJ+@LSbnP2Jc^EGd& zK(Uydk9$|B2qFRI9kHTWa7%{^Cm@t}TDo2wLfLUTo201$mt2wT5Fmv8-9T{6022?6 z@^lixV}qLc-4N-|Xhj_{AJ2 zp#%l{ZQMH{fmDdL~2Ax-VVKbA5H0 zYS3mVpP1FLA?>e`3FBuRV zv7%HR4MgL_0mBC|5AakT+zy7!Kp`SRuhEXGI)O?mqLm~fvQ^fbbP8)1{9^(4cC(9g zrP37Bq46Y&;}rLTlBEeyMCp(zS7jC$-&{D_dO$+UU}vGy(p2zW9b32>-yCO&IqlH3 z^Z;v88~dOC2um!zkbYi9{}t zs6!JpXkEwa378bch$jI1u|#OhwNz}95hK3YR&ckCa0BWc%;IMSzXBqGBp^u6mA2w!mEbW$C1%-{0<%E!$oln8 zoKbfp{*B=TzMv#<@OmYBweL%zKsqd{^#C~J(_rtW*7v6Lw}AVO=Y5jTiGoZQ}l>NFi|VYBXX{K(;p#JAi|IZtkX(WB@Vwq#5Dm zwUU(agdFyCAMxYD@D+(bNr?wsyQw%=`GYa>+yqX;LG`08qUs*oHWFxofqgRnnXvB zj!kDqYAd83Bao~hOs>PpT07oXsPi#&K^A4JSi-Syhq6J5&K;w3K%nltTggKABQh?oX39|{i+#7-OO#DKW-RF# z3(`T6w=mu$9TPRUoJ`K)_y)5>P+Wc~b}xFv5x=!|&w7$~0Di{k;^tv5U;f z!Xv!eWz78mv7*o|EJZX!rqCi=trnw(0f2IE>Z&&$Ub8mzNhU)9k;Nqr(hL3uen7(# z>;5$Y>XtmQJxr)3RHKAIJ)J7nog{U+-dV|3G`x?cN8>eN8eoeykl2{AcDuM=`fI&Bdw%dL zIr<-sT9)d<5QRekQ~)aj#W5v3dHG7xad3d_72F%=LBMuif#)L3|NIK(sU&0VNb(fX z(T$~{Fj=S-0F_0CMV3gVRhrr5hhRSb1parDTuk>J{}~iovo+Xv=(epru?fO2VOC6r z0s^>XWDWs8sUgRYii!>EAOKkg$y%asLeb;SM}gp%fEh%}NktpiEz(7seNm0*-00_cp000E?kz|TcQ0O!(A?$WS9;917%zd^-<3jYnn zh5XPL$AxYMwR|h6#jPL$6=s7k4#b9qC8CXzZUZn5ECnPGgwj_)sMa);z-@mHf3P@S zXjq^Zn8p%kbwsP@Z%h$xe!>L~{-an*vJ6q?>(k=qY9{C|&mBLOJ=U_O=jRG%!0WMned*gL#s1(qah3kff<{N)7xE7!zSce>*XQ zqyqMY3MeK(nq zx5Y#rm|IK}?Zr#WXS|zvjP;^|(lS=x%|uahS1@bit5R3ysYsy8G$p?=ODL#wj4zmC z$O5)nTa#HPWmqu$jp=8Rr?W&? z7yq9eteC=R!)sfz?*M-1N+cYI!IR(uwa>8gqeLv|Ji{Bo$KgML%L3>FNfWqxp_Jd# zo1qIv0;)q_Vj02g{)%qO;#rZ$h2&A#@kLo=YaJw(x5cF81^hzf66FrVOTB9h3|v76?@h`EAMI~zRM`vdL4m3b7^YWoxmr6!Q(x{oZ;>ro0w1D6!r z#rE@0yE6>59(pm{ySI>)fP~0W*(*1~DJSICHzY56gZMM+;3AsNx@?`S`d(2s`6EC0 z0+}O2Vv{&xuny`C8YO7c1qk}BAhn}UyTpsmkamwsA^b|tKh&OFE}@E!{+19Uv~LC?H_UDUNNc541AThxO-aQUP{`|f_uI3-JLN)#^P_%btutB633w75H1#QtC!s|?UBO*| zn*oXS2!)#YyTkBWguwU8aVO^Qr5mz+ezSgrdIZ8KZ8}p3GBH&zIN$id#Rm}0jgV6V zB4Ki}RV!SMYP_&H%o_RJdbE@4tS@2Qu72utJ-H^2DHjz%X<6CRdf+!}UZ_e18tIGb zA(`oV(9ZlI@<9W0h9P5RED^jc2Om3`&w2=v`H_OSnTWmI^TF!?=^Y?U2iTtB9Twt7 z7~f6X?!TBL@KeHgc|`0&7sT5~@I)E-0tdZW2UalOw~l%p-@Q>~3f-8xvDSv!!W z^_Qzjlct8Pw_jFonGfMsCPr@JL|+Ys7Zj$05nQ3JldtcOo22h@c6NR1J`S`$9OH4% zt|xS7y-RBCCwi^S=NUiMT)`LNaFQ>!WP2HaV0t+jvy5tL&)|zNtGB{o6=gnBB^Wp` zC06tsJSNa5>Zs!ZUqH8a2<;dog-!dD8VJ(ynsn_s6*uUz06}l`&JAEm*?>6I3f;e$ zOkW``PA%Sn;IjCuVs{Vfoj?eI+1Yf!pKgsZNsl44_UeGjkm@pQOaZrgfcPfhq)!2@ zs24_cHpE66j-29zAPxc6(UdTcbZqFm@e(v`erbLaUc%n!vA)*PYS=Qw)!8~w6VU`M z%;n~wIb4&mT00Eae1$!Egt~6Ha_+e@l^9Jj+<<%vMj=iSuW$k!t%fbbU7c;i4f8{O zEwp+=&>XJubPkv3mlm-VTU~O-Cdl>E^=4e0P@Gesh%C9o1qcFnAx*n)teilcO{@bV zeGbS(mC$E#Ypmz4t2rg!4x?wVdReaOE&QdR!OG(u#(tms@Qmez`@Fh~j1TaQ*Ch_r zASjyVKH!D3UHvW*NO_zdE*MGw1C9gLYl#ocbh!=Vb9vmy;=1sqoi zkm83kXpPH>j^fyy4I^OA#G*7UI^{Bum5^mz#)tucXhg4;0Z1=!#w6{rE@~&9RObd7 zTu$Pf%1J;cqh5yHuj`z@Q=A}3hwVZVa8*be+`3+`hRk8Rz!XUJ!`5Cb4x7H}!TD{n zI-hivqH)q~?}@Fb*u)pI{N>RKW)w+3FVTKc>tqb!M+OrSZTsZ}d?HDp%f)sz6K zo&vNNOKac-o(Q^)Gw42cMgvaA&bulG+1Vb7)Q!EY8+*BO>|wfi`$WbraO>u6HDnok zm>oc>AG`LVe(Yfhq)1p`f_8HSh~~`|;r)oOR)>V=wSCn`)azD&-EkpgXM+N{4h`#I z6A|{bkix1*gmq*Q6Uope&RU{9NbEEbn>fR%Lr0Oip%3fk-y`)e@jpgfQ@T1-s{#Et zf8UbSS`C@Qmbh!$!&ThRBl-iYQT#rrn|a1yOUd7!&S5i{ADMX+sT=7d+_0^C$c6)M#-#9UK=+j;-61@z)jt2OeN{R!%siLIHCr<hWM5SwzGI?(hcw&j(J@!P^5OKrbH!(ZScVzKc2n zxL8F1_Dl%jI^#pr_5EHAnFDW!=>en_0Hha-<369v&qf0md~M8aW#D0M+Rpe;q;A&F z>jr+la^PW}+Rpd{Zrz-(hRlJV1oZ)s>Ibg9SRA-ees%OG3w-Y+C=@5o_fVv6^wYZ0 zPgjlpBuv(cb3K7uH~Q6(W%OZw0I7cT+6#>S%aWJ#2A6|r#l$;VV0I^AYEGQlp$G?E zBp}SdTS(FY$A;WS4RciNIinMp9Pk1NB61;#P&rtH)pH(1I6B;#vW)N^`%pFP_7>P0 z0_Q}S&e#f+S{|^d_0{Igu#1iPfWx#Dd(P7o=<BspWyIbXCXi=G^l5rMJ)p5s}5kEss z^_pSJt-Mr=E9kAL4m-{b{S7+hD78FnF<`30HY09n*wOD$&}U%7u3xOHz{;?rhk=0V z)_SnuVkaKxumjB}Mod9RMP>Za(@@aWpyNlW9(@Z1 zJp?*%0lGZ!RbX}4abkkKU)P12QP-|?dL^pEk5fd?f(^fp)2T&OZQO0OB?Lq-LqQ*b zA)ubutp+S8h&}~^s-yd0sNG-_%};FLjkX)d?DRSa?)porRqHsg`cyf6j7z`6*98s~ zUiluHSCVWTHN_r&O)j3oo4>yQHo&dAssi}6TNBd zkLO*^&3K*h;MKb|f(kd;9d-D>q)&s_{lPU4SKJD>Tf-sl*(cEI{LDC?3P9Wp#Jk4* z*M%amS>&)3;_nY$Rq}M_na8Job&y{Pz>1w}JWq8qEUw;IE$3%A8~~&tAjT923$O{zy5!5P{gxlVv7U9m#<4GWU3k=& zNnqCTT=C%n@1o((B(7!@$43Y~^|clV|N^?wif3O)@a=2esU(KA-azyBb-X66CCG1c$p6?6t@EyipYz| z@nZ?D!qWtD`Gq%XzGkqH39d6qE!?NUWx=m`%?wA=B~evDmgn^842=dCo@rMwQD-{5 zd=XOh{*-UH$~77c4XGF-M7Q69DcZ~ZlL=c+20l^EvYX-#2hH;!+jIvnVdP52{{Ev~kIEvLy1x#0#A zFPfq+?!&-0OroHQDmcz_wdz4v(N%3#A)1Q`5PdG+4pF*dek7^rC?ts^HpUgnL%}Q6 z8i8wXzQ#GC#X^1r>;|gOdQOfrM4J!@SGb{p2pYc{7LS$RL~5@e)O;K{$N46P$8I^C zpfLDb*OT-4C@4USx#z<&Af=jz!(lvb{Pg?JP-KL=k`xKx&6JM^_g>;yzWl%$c`U6M zVUVdNGReq=UrRxf^+|vxq!WIDxLD8RAik*_Tv1QT8jqB+My}pb1*RN<*Cx?&`|0;z z3m(w!4lYY;-#eYoKm1GouG3n@LHP=g_N+pzMoX>F#l6K5l#p;VMRcy^ zC@M0aAf4AMtA;6iG{UJvoiJ5s4){_i?#YxQXj`Jy>{wja^qMJrPMk9eCVazuK-%I9 z4II4l@$`EEY;&iL5ZU^ihStHnK(yA@kz}0~7T|@K$B!SW19(_IEaloM)QZm;%T?j3 z87RUHg<1AfK7ji4dt6gus9K>((Gbdmt2cca_WeQ{@~{G~NU%%l$Cus-zvVY&k01~Q zX@fKP+6(guOFiMLE9&XEor=+35Js1SS&A+?a}CFI<3@zp_=Ig%X(r5V_wlz+zkK%P zx8LaC!LO;XG9nYSF_OEAbyJ^OBKxH+x#!CHWEIY5Q9S)VK(ld&-!cI%%2~&jsyujYmcoLTJcT11C<;xFFO$ z6j1j(tAn-6pxLJ&h$JlCHD3M$yJV_hi>g6KL*#i9HdTjqA z3it3buMR~=8fXm&!whkX3CgG#8$vP<&MBo3=S0Uq)Mx=NMyqN;I(9XK!8_#IJ4Yce zo8#R?=>RG#i<9;`h#Q70)Yd7dO=}P2wzE%es6`(eYOHXO_2@MTQybPPChB~G|1_OK zr?g57GrR+9z`^52<}=QRmGreOy;nZ4gFA^{8gB!?37i1^t)M$W)Xq_?gJqVqVEYde zy;?@Fa~z9m_yzBXV*L%5vo6BAqbUZg=o!Pix(+tU6Q)s|9nsn0M*a zyO6ho;3>&S5vwzhNeW`8NGK4IPXqZ?TiPiSvcqecD~lzx2J~JHtySBJ38*tic(->g z1}(@JC4?l1A_T+J&Zdc1DuL6Isw)Zg)agppL04)^CcVBw8Rz!e-6C{IIui@@N8JKI4>&fC z2y^g(;Ul}Uc5&1GUdP7+{2||%E550$#22y?Q*oq-$ww(dlJO#u5D;Tl} zIPaD90gFz|@Rg#ae1+@y*utncm`%2PD?1&furqin5Kb5@LO!wlUt^1`oIQZUY;(8c zcEfe_&BDF?2j0AU`u*oJX0h@Z8#%aLMFl$BFdR;?a zNfge9Vs==!A5SO!L0P($!X5;*g1SO~_}FZ~$B!ybD=u(_A)ir3X)VfaE^cc^7LOcuv!azQ z^!*?DNNO+NgDsfxmZ%~>RKief67s!;AwiHByTq7XPsCTON@^^E2yQ!W=V-ZOxt%>1 zo>`$VU)_-%Qm0YY8BR)W=U}&cnq--{+Q=2-=h?P%GKBK5$(VAt2VE*SvZuINR(|^r z?}M4!N#1v2=6i9-#a{q#cgqCysb`nT+wJV~GM#SW;OlwF77k=3=QnFmCeBQGj2snK}e zVhYfm%N1lFWm~wnw8cXOv8Mq%H|cdz=J7SQUe$^$NujE!;y$u`1Ho4I0&zEZc{6Y;$yrt{pRJK2kK~}00~*^qrp~R=cI}ay zw8PG<3cEdozji@ZXKU~dIS&j{*2yLE0}gmwgq-UCxWOfF)uxKwLEMPK$x6uZtr{1_ z!{+vDsl6#H;;96k>@7r!D50cIQwl8307;jj0?e<0xrR=#ZL{5^6zbqDW<39<=Rqun zf*=i=l=}`n%>0J+`pvp4?%+-94W3oHy(9jQts)f)T3N~#wnFAnd_-!SH8hX7dsWVE zZx;J^cAJ2@m2-;wTeyc7SLl{WtCT3WuIs@4w89{x+mI1hUYB?)5qCo3O=df7(9lZT z^cveNyd56H+%{z@l4sNj89?WKPi+(It|=zEmD9|nobXXRx3^t-U`nW4*LBLUtLxbt zlVTQC%I*Sg+dN<}@?N5y2Df`P4AZiG%nxJ1-7kIrF^p#$$?IY|k&qkIc`eeIe1#cv zN1y!JzR59d-a@9!aG=d^?QlSAXTAQ9&I53va@$sZoRF>SI+@n1o?rYps(N6z%F2DR zeN=-xv3%ytDL;Bu5vg+9*wPmWu~u~_Z1^D5lTCUzf567~=6t0a_Pn~g<|r{eGC}a> z6_mvho->!1vw!%234%)b!s1phx?OwQE>`t1FKvxOxj9xLlyN;TU*LK6sF~XPFI!0+ z4KY7Hgd>4u^pMq7sUmTb6U7#Dyk**9b2GbTh>-cj`{Utg5hU}L4dG+v;ha9%|FXxi zWdAEGRNJIbJu74lrl*AQC2YC2y#BI%6KKD9! zXy?y!S2(uRX?r!8>JtMzMYwfGgtv@)o10uNP}tF^EhU?B5)OB5=?FTv$|26&3^d$O zlQA>9c>M07hu7t_sh}G@z+0w+-96qRv1`h0IC0~{qF9mb=wWQbL#G}Sl)@3ZqLuca zHU#Hr&ZuBOuFm`iIjUS!QW>Y^}B9sk1g*QF=pGu*t9)8J{&YD(BIHv+~3q zMR;u_h7W0$#r^(A>Dvhc6nvn)1XBOlIUg*d73S`R zx~o4dq&6A$DV;DFUmxB0g%moso(!&CV4aA-IvNeexJo0>Hp@$qI0@jt^@-pqUg5I> zNAh%YIT&3G%NM5_p?_B%*dtuMk#iEo-U-B>GHSHNEw=Akn>^p#-AAiW9yI_oGR-J; zFqnphAgu4aH|seDb*qJM8g@<_8XdNFUdp>^5C_GciUxTkr;!$Qv$AtJ?VZIjHa4^= zo{)%#;)=b>)DOOIa)-_V#e zVR#}xcw7x@qKQ^*bm3)7wuGlZ8o;D1J-+l6##V96HPGU7JOIYojq2sCgXh^BKnSU@VV2wp6j;D?gjN%y5se zJLBPqN(r777EX02PYG?Z5rN-<+-4i{0I}&$k!$zCPfP&9>*%>zC zY18=G>};EouUABh^wp~dx*l{=MU+3kDvM+Dh>9=0V(}&KB{eZA&xd^~`8F;d^w7mo zIj_lvYYuE~c{9;hb#8|HBbW`OAUYku0X0s|p zGO-OKeWOTFJXeCy6nvj6sBW9*a+}3_l_4Z=R&Aap6aSu4B%j4<5K$G;v#-ulx1lyI zdMc_LUys7LbW>!LOYU($Q4sf4MQEZG=Y{Eo{bIjKHDQ4aRZnPQXpztGWtxU&DV$_P ztetREph#Z2X<~70`szw`O87QUgKKq(HzZHbG=r=PcfgY%&5o|hA2uwBIa3K^NFIsV zJnA0zpUI<*o3jDqiab!h*$j_n#~1Wddo88W_L9*x$v-)|z_ll(>wJ8ULynJZR`r8J z{EyXB$;ClqMwWQr{TzqsvS@9iYMiu@9y72~(K)I28$TsH$TF+iymA7}a3a?0SIETDpf5bAsP`jp~mSjTGci)PmrrhxKye04Zv7wF1IDtQ`jKzYGZ+_oGoDsw1 zV2i{>*dXmn1C_Bf;_XOA&lY#|qj0eXQ0~go4JlB8Go7#h=$jhphL;z*F1JD53bW9ojd-oj)B~Ja`p0mR;jS!A&5aHW z92fd4m^+>5{TGA&k6k>YJsM5I9k=7a?0NZllX^K@1zJ0|^qm=A;ot1j!!gDHPhFKo ztNV3#Ja|1j{Y0;r?aI9aBwpiv&yc8>H<2ob?DbKxUA@4W9>+O0mm5#>F~*}_RY5~U zQe#mGDApSTEv)UJPg4fX4dJ_yE--Xkib@3Y#BO+;)=yebNIEO64Ri zdQo?fwlO@*TyyD7@Kl>c;wTu;trCi(XeTFC7^p+3oCW2+YwKWDoDYei&^;9Ra?k2! zMU4d6DcdYcqJb0)2cq|)wFh!B`euONu@6Qi$r?x7c8&RF4JMOLrP2WIS7)6gTAp^? z8oGHKEq3f#f?JhEKS+9D%2`rye>tyP6`5 zjXozy*BJ)0a4WRM%lye9fu@FHUdJ)qob$dP!D-n=`>nzwO@mDmxeyr8GVvf5EruMx zlx!7Ngtpv<9^y<=Z?Kvy-RMwV-HV~~4AtChc`A3WM1TTp`mhnQ};G-rAcy0!N z4jjw1WD5uK(PHK!CkvQyUF>)yWP!bjOboNG>&g2+Y|^Cou%ECOVz}}f*sUV^)^K)* zn^qq!VTg&`?N0rOZHuvh+&+LODkG=cz4mZvtt5s~3&zt&j+~&TMw9Ymwsjz`YJ|kB2J_TsQy$I_c|DjPFZwvK`R{%_Tie)+1ClOY2L;6A)_QJ@}QKD8x_Id`DNK1j%S0* z!PMT|b@9B}3j@1Ncq#8R0(B>O0l39Tzm@9^tt1+6i_vn`(aD13!$mhDl&}7NhfWggSf&iWg{nN0+gR^$efV6A$ra6b2O1-H_1{(2=N;4!>`6-5X9HG@$Tj!Zw6wDjX!YwwwwjRzw>Dl@{Amn6>4sH}2!*a9rfQ-?GPv zp;7NwsI~RO?0^K@`eC!Ki&=3}!yz_&taqckW3vOIidO3eH&zzzX=j`a_wFqaXAEt@ zh-hjIwxN@XYk~Ak$3iCBSyyClcZT<6gJzG#n~4^Jw{e`%_RchzX%O~i@k9TIw}k;} zWL@fsi&WJVCt7>gH&ffYIO|RansQCL&oa$sn*A+lHuFvK`()Yu8}m(Jii{{Bdktii z>Lt$nG4sdYl0S+}hig8S>JPe4&frTzm_UiVn%zl*-90!t8gXc<2QNF6);N?HW#t_` zN>Dpf5{6GD`cuwdg(&k-)E1DTRXSwZ+M z6@*#?DpO^qN{06P@LW-a2fqSK#ZHtuqlCHEdZRKSXF~o>2|2S@JGJnev68I5>e-Q0 zeYK;F;GuCt6zp_`%PKR`%tU`vChATsxA}FW8ix}H53=*BVdqtLT`jq;b}j5Q*e6br zNc5f;gWmaIdV0T5V;>u)rkP^H^mSQrR%Mc%H%ziP6TA@l8waN2){KWwlIi2wpOY{@ zk+I+)S#~LAm*RUA{AUGig-nZflOgYD|Ay|DvqH}TEh}7hA}9nG1823^V#ZGChRH;n zi8wqD@|zj{nW6qR#|X2-W!d3k3>6m!Rj%==9%rS|qs_>0uS-!v6QkjtF?)csv z>@W{f0Yj`UciJ*<$h_f0;0>Ju4{qXZ#_M^NVD(y&zqy&c2Hi}q9|E}|ig7+({QeGQ z3U|N_1y_6Xwr;ZF*w~$fysevHIRsj<5EqP(TORyXvAfsW+tnT2IV zS3M*nj8l(qXR^&?``g_*$gDF56Zox_3CWb1L}n7d9g`5{zjNzsIPOi~bT8&( ziO#&?7|ffEOno+)jKZOQz7mkUNdXs6+*xBpbM^K}9QavrxG>BQIRNPy_1mrLu#nOM zhTW3%XV($t8)y5~k_^H5w`!DIIV~cQ4&eMW9Tk(HI_g%T-gs3Lk?Bv(nS213M_HuK zWKwCj+bfNd58w!KBtqv`_JUe)CN~g#6~xv6RKcS}g4V+b2UJ>AYdHWr)zv9uf}f{> z_M01((s`5s7>>|+1A`DGcDwzN6NYb)>w~8av`EggxnR`K^Z;Aj%iFNb&&OdKJ`TIv zeTs1I{aI1Y@-4;YZz(pixtlk3*KF(_aAUVAL;Nd_0p&yoa=^ z_gnZsGk+YsLEhDMZ#wWRzK~_RM+dv@PTi6I!{oB5gqLso>4w7%NB_^qEE_v!iJ97q z{4j?YY<3^N0p%ud%+_tp@`l0J-TridhZED|!-vt7)8oULXYs|QG-}SKd3O^pYh<4F z{#?JAXDzRg25>^#o~B=ZL8=MQi674Ik0#@)K!`_mvOriB2V{fZlSXzCvl9FM4zf2i zft3yS{OBE`oaYM~eCqeT1;`NzaXu(#)5)8P#i08Zet#?53(MM277y|$LFQWdZHD*9 zud;Y}|Kb5IrRiicvyIEccy#p;8^QJhhFnU|QX)%<6|5jji7X{nkVXSurB0!q@X_F6 zb~Pyz)^$3|Oe!;}6_l8nRAy2uNTWd}H632Q$Xx0M;ViSkoegemY_}Rb6_Wk2i^_qj zQct^7rQ8Ce0U@O}FR|Jdn1?TY>yMMD+{ zSs<+3!OQ|73xq5XX4B#LvfF?0jsY=0bo&=)2}B_9Dg~}u=w-pfqiiD7o?89TXEUEJ zdw+~7pDwG@nHuo9W)tBzF%e$&Mstr6c!=xP<~<7WHV)+_&3py8;VZzW**2@=Gg%Vn zeTBTQFnGV=A+sd@O(ZdHyPIKlgnR6i!$-SEc^9YtynPl7SukY5kOc!=A#L1{`HObi z^(Uk7YUvTe1*nO3gnOcQJ~=r;#FT71WZNO{>*Qy=-gVa^d+`ps>#62LS2KNICpiLk zgzKUC2-w;u{XXrvKR!?7{3|`E1O}EB+N{uKg?7Da(tz@o zBlj&YyR~eqa-1gftrb!`t6SMun|-zK+gH0z-AWIA93f~#IP{SfuVo34uMFiYL)W9s zz&<1fmh6=y&`sVe&+e{S>#e@rlPlPi!>iu)tKsa0VeCVGH>`=Uv-vo4oq%t^mR@T& zR(5p5m2K?kX8o&fda?nT4als2eMtJ()o?t#nqT>O#c*!`5z8|R%PcJW?z8VcA4d7u zYzyDaz3RQL3WqEbvPj4xA&Z185f6ebYrjB$93O(uZ)mQ1vM%qc(hFn7n3^Fe_V8TplES&0pt z!gyA=bbw=_3~|o#4Wk@YWlc<_916Lq^_XuME!*lj+}8UIwNCOr(echu$S;DWeK?h@GeesF&%=%XA%^O60LpO$sz3$V&XwaV( zI4CjZy}eilaXuE7&X4hb(3C4r1OxTxWYV zpbA4Cgg|OE^ys9^{pmN+pT6!6uC8ZqaLs!-8}>%SzYhoNaK9Vs zl-Ps$qGo1WYj&)&3YAr;`dbMNcnIZI2!aTA`;)6{GyU4}(%=D4)n$V(8+_T|TN_!r zft8sJzGZ{2)B5yY=WK8}96PIu_Z1L9C$p-oSY^fPEiZXyR<(Fstr34+*b!{w9+f%L z+qkaqx(v6TbC55&JM&;RZ8|*CZhtZ^XSZ{xujWI2WlYZo?}4Ioz^~Pju3C6db=dEg zv*~brx&K2SXT#e1qx;T}$u=S_^8u(@J+%>BHv+VB4n1Eh!*+{UW`ps0w9B&FXxV<< z^eNTN-!DTC^L?bciED(9Gy*g;r$qxVwZ$@9s-y0FWFQ|I$VUd=`;h^7v!@kzcD&Tx z#?8Ce<#h0JFf9i$9(;BlRZWNYU~1>+3@F6*B8{I)yfa*&c7q~!et zDdDyM@>S0Rl$>aQk{nEFjS7)H=GkMOJ?3k6yc@9ip5#bLIZ{%Nl$0YS^`>}Kxi_5Q z@ju)?ZymgULs!Ci569(TI_u8I!#~eG5amgXm~?{3B(F;eijl9CRQ*x!;W%2pR+6uk zEXj(5?$RI@avXSfIflh=e@qyMDtFH&lTp4}lDFR0?XTp6mHA-hiWSm?A%?e?sn@iA zc(lpKm-G2xasQ^e<>1fr-pCGOoFKfN-Q&r@IG04bd(N|CE<5J3W9~gW=CV9!@I}v5 z9#nk|F`Pvf2w5Pk^$TVLAsYzq&p`NMRva(+JojQh!-3D(8JkHo{4!d}0 zFmr~prZ_{YKUVw+`8sU<5vzQiLr5{Jj7_b`eD7@e>~B^XyK4=&2Hf~RWR;=nSu=lrd3bS^D5-PGg#Qo0ZTQ=X`epf29 zyUgz1AG^!u+j`}r0gE|1{hM^0W~YCX*nL(+jmD!=w)S$gw|tCY&3X5%(PWM0{b@9h zH)_Bs!|U`%gWl9`fgPXZXyMgh0{Q0G^(byUWpH0aNY za#rMvY7OqeH#C9yfvLp@rZ&y-5G1%inU80t>J@ty>Moz5$Y&_lZ)0SeG~1-_&n9hv z?~Nv}2Gi~txL;!E<`*26Z*k=p9NZh3joWP8)*D0HW!z>im$}?({Wf#C%;mP0%fX<_RsRNYrtbCfzG7!WK_)wPpxGU_lH=9f!WGw6H1{f00W)fu_p3kyqb-(V;PVet&%E{f` zJwzYxfXKr=TE-%`^1Gkx?INPxuKX73Btaf0nY#QdWYjcDudO zJqCqE-lDNo;8x2W^ATYGGE;k|_Vv!}5B+d$X4$si+z5AV1ZYKD|Nq&0)8@93EN#?3 z#T^|}QC8r!32+xx>TtQ2+wqpFHIjSkhQ1&m3X*Y)TLGY#{xHA&o|79Aq$FE%CIwK> z^hCEz0$}3o`#}VeB8Wm{|DJw{r^~qs^oG=Qs2UJ^5s!+6u!gX1x3Cr|yN}6ioz^Mc zs`(B@&3AQ8lBZl~1=k&(6(4coCu|ab70Af`?4);3ig4T3=B3TBwP9=Ti>*yU8w3qoyBD{epgAToUzNHc zI*ep#RVN6?utku#*^|Ugk^RSv!H(1zY_+x%Rtc< zI_n-)HH2YARaUa}JA|zQTc!QB3YC64tWFm-xW%Vx&;r$BaimdAP(VBeamJRruV18?rAl}tua@^-G>Q&9tw$va6V|Dz0t zTWiL;gj3$*5M4NRnW*Ui8{H`$dVknRdUM-DDnkPk-PLrJ?2r6Nw z+kT8pg1vEnI@E{R3wy(7`UdufN9bCDmGWt}pFd02U_kAdmzSCKnn2||cU3X8NCFlW!@ffwga`Wx$ z$#quE+vuvgd(2D1boKq2uI{*AQ#nXgku#<*A(lY1@LI19T*nfqZ*jU@FHFr`S4~_+ z@D0H?9v%sXDXFj5(1MuAFk5~~^Z1h3=1P~El2L{>F>l#&M5=dGjOSXr=#gsOF4zOU zICROjE?KWu&?R^7jrUO_;bYSvCbMlTDCm-Hm^fat4faUx6deu&N?y!Q*X+Rqi2hh7 zvp7!{H>RqzD_fQ2I_xeoA|A6*UZ@0$Wm|~4<{aasRPCZ+2jg*3dWPuNG~V`DCNIu^ zd$(L%XE%rMOOAA8*(d=+$pZZtVhr)9QW6o=x{?koB%7!M|| zKVF-A4}Tm4qgO!~jVAVX(r&doBkWR5s2Wkz<>9_(??(C*q6R?!L&xKK)iB_&MtyoFGBJV6UTu~M{oFyX0w!*%uJPRx<;2OM(){2-LMh^y@cP!-#rSw=EAN(r1=(Kz9~K}^DFxAX)^tg=C428_U%=AUC=iKba9cO-QIv;_EXUl#3=ruNU>uGkv>)V zcKVADL_{bq)MO+crb$pfnJAquQF#>liy%zocl%x9a|JbV>4ZW2T71kvQTJ8o78l)) zY<(1gZ25DO>)E>a!04fW*BXp8rqy+MS}fQ3G$qC^)-=bGI9A;yi?NB72`w7?>ZVyz zly9fgv=9r0=|h@M%$G2p)g=OH^6z_)^7m|3rui>fQ67>+iCB32B>tB`|GAja=SSzi z$%|ed1PPl2ye7^1@c8BN;fuE=?YX*Km+AlTB0=>i!kKs!;p1~LPgY0veyk&2i4|Q+oeO>DT2YZ;M&3+2z(1I z=aw&XtyIMETN$FvldLR`c$m)7l)R|&rPJSZ>u7lP3OFuAUL3iOMHrvQG?lMR7SojN z%)>VkM=HoujLWcFgIz=sbU(9*T<%1!x3{``^6L#inFs{C!z!A^f0AoVF$e)&>TdxE zt>QdR41lEUVnvEF)>w>VI!r_=q{V+ye1xJ?ik@OHWi8+hirP#7aBPyvMuj&e1x*e? zINN}lOkUKO@5oHwTP&~A)>sO=u@yoJ8a~iiAX$HQ8JBsQ#thI9=7VKt)yxN#U|?pY z@Q^eg2;jHc4}j{|EDAu#f)Hn`ZnrU1_Lhl`906%#2%@`HR{*FMP;WIm03i!POm@N$ z(OZ8dncZQC0CXFmW79s1pI!D*r@C#QaJukSCRsunRt%R|8&5Bz5jgEE~RM{+_bob=T zkcBkhvN`MQQqE+#gTIiOH5{L7XYB!00p7NQtH$~Gm6ltcu#)I1wop` zD$_F})AMs7ZWk3pZ3)j)ITPgWU1+CPhr8vA8j8q4Dv~ddDl^3&_4t%fU$s<5<5Mrv z(>#fpmO5AL1L*Q?w#O(Y=q?oVORi8@q8FC9KRXsQR{&^O#fC*2{sO9o9fJuqCKcivjY zssIl?UQ4Pe8y;FwRgMp}uqekz5R?pv+P8qDDv=8oGr>;X5ydh|+qM8yRq#NvsC_oA zP(Iw>M$JBqSZa|o&0P}F+wDHKNdo>5BDXSj+&0hzZ3!6!@i|r4P0NtFrP^|4|IH`F z9qy`BMZu>sAi2Y|2qU&2JIaD&Wlla8`v|cds>n$Lo}|c4uha`mU;dtcq3`CaBu_<3 zfu{IU!)Y++1*6Gru`F(0rCsyFK;@3ga-@BczUyHk&9A)-I~9$$quj&GgqE6)b2#Tj z3^ybio#rW7vv!b0^+Z=e7Eqy-w4g!?yAu!`QXv^}&5uQ@aN2aXT+|tb!U|eki)bVm z1&m_SPi`5dy@AQAl-ie#(4ARF zK#mv0oqut6F2tP{b(Flj76Ca@yAXO1dfs$xTOGW=OsJP#Na~7Zz$jo8FiLHeQ216b z3a5hP{w?<8hEORcjR`y2xgFhVmGV)H^;8Zg)%Ytbj7leD@S{&D+0R8=a^HtgiBO49 ziMOdlDw0r^W1q?&h|Rl$V1Nh{iXS`%He0P3r^}h?e(O_D2eZs581Pa`WYUmHLnf`3 zNfT}tCor^8xf@?` zdLJRyB2u74WY~OW*zTo7JL1!)3NfXnX?ie(qw4iQkkoyU^giLJViW9MAtC`|@u`eO zE=u^@Mkhb9eu8WvVNzL8)jQL!8%ZoVShk`uk9G4Oth39y!|UA^waaU4K26?JPwS z>O~DP)X^ZGY9@yl4X8F(&U&Z8Nn$E9tTb3@o~$%8FmX^#&msZ@*}=r|Y2vUKz&mc; zj(Mqwx!T$ZVn*k4bQ!jfnASL!##@#Y@ z8Z-%-^hlHT{tc?GGqD3R-b};}Q2L3|PhTUD$v%aQgN*Yk<4$6#b11)1WkXhG$t?Si z&MOS4q=CYvn1KrS!n1oJvRZl-feO|SR5Dm@B*3NtWVrlgxWuM`%k(B&XyU6fMO4@Y z;sf#dB)+$=h0i;roTN%m4k=O8>T1I2a#55o+cNuzY6@F+U{n@j(yZ5fi%^N_;;K@J z=m|hifVZ9ilT{`q2tos)c_cJi7?9hx{;;ZJ7*bO8bCIVX)4WJy)5D=x+*O~n#jt5l zt3<21I$ol$1EpI&t6eH}DECnDR-GYbp!Q2Rwan*gp_2$f1vk;Zn@9uWwVz1F6wG&+ z?;g!}9V|uD6Xtn%oaZ6qUz`|M5wM}`_3s2B_MXG|_iOx9h@ze!7M0t+Dz`a;JCVb};`Ji? zW38)dhgE6Ws9F$)6q6dZc2wr;H0T_^JPv3XK{kzxGS3z_N7D~U9>~9A{yQ%7Br6N? z`Ed}(SLt=Ko|UmEm5$4;r@cIG*Wj?=a=Dx#%>+-=r>EJ9IboI{P5)RYGi4`^s#zK+ z(M6WSYnG#Jd{Q$wMpbtl~MjthQlpWwoA*1xL_)}cvpt*b_S7u?C@b{EjZ(8 z^Uv5eNm;Wfkh?~7-D7ke!qNEUDzfKNfI~RySV{L{O1g2h9V`j?i>P;3utXq5#I5Y< zvLiWY3h{Wv<2}dYAs?T)d^Arl;-gzk+W`!CgTF$7+Pq&wa~bh#yXrZ0@=cdXq6GMUacT|?X~rYzk80q zL-v-b0VuCkP4RiRx`86L+7+L7 z^CQOAAq3yX5d64mwHk|2!fjW0n9!M&smGS|18QAAyQE(B)EYP48gmHL;hQ?32%!jD zr3lFnjN|+=rV0AlwKX~s`48kjyyZW{tj@`cIn95`=E>^FsWgZupZ+ubbLZzm71nFcwAMujR#a76a(DTq+I515m|w| zs>TAiy-9w`zIfn9dTNaw8$Z3GqPl9h9H_32M2Gr>=mVO{i|8chAt{s@5q7HdQP`pU z(GS{k;M!JL3a(WbsCwziAed~dHV->0PF(Fa2RXYYXWZXj*=>Zp?38AFL~^kPSiuV`*efr?j_ed=sH=7- zK;1pmRUK{Esa$W>nFDCMhc=fWnUZ^^a9D|+>=|K)GgSk^ULZ`AT-#6_cB)_!ttf_x z;>ScW;<^f=(9Tsr+Yhvv$ZdHonoXb=-Rnh*tRb&`$!jX$G@Am$PzJ8dsz6Y+d#Wb! zVJ#^OL$wV+cMJpMUO>LF8;-#anc_>PSWD5uP(}>RKsnI2Yx<^bU;wIXpmJhTZNbt3 zzpx6xBJ^YmcidJXa9W(Jh?~4|!Q`yNP)&P9Fw$SIHD)V6^V!O65eXA}_Iwy_%+ZC0 zcCDcy7@oOcu=KD>3c`o3RsXpy9CP?I3v)8T2=CBa$sfezGZ&M$%qR}SjaBuqPF!0j zB7R_v=?%jwH;3qfzvzJ%Ek$iWKmA!Y2B8e5CAgzBi#?b%jF4w(-(;rkiKHw?k+|`Y zxS=qMFWCuvwE$lvFSln)rCxaI!3P{@^pl8y-9it#oF=L|xx$Fj z05o1j(Gd;!00aqwEbhQjl9FWSPE@s%FwKZrFaVKaHU%P%Gb>iAjWA+>@dq1|ivT_? ztK#_MR12rBiuiU1!9ZAZ0Fx3(?uJ_l1@WPpn$eXJTHSmAh&zWkrvin|8^4{+mQ$ME znq+0+Z;HM9k#_E%=yv2@+lJ)%p6UmDWqMck(ey)-2Su4@i<_AL*6hcB(=_E+IiIlz zIhvw{YKHU6WBng%Y@&MryMH2B%;(@t;L8V#Rr5o`u84`m=W(_u%49L6dALP!_$Fdo znv#*^tafYqG@`JAmmY>Lq1yF)Q6JB2dW6Pbvx1j^(#COtF_($z9RL>ybBiz!b5nOf z1N1OEyg?CX+!ci?mYVQvuy7V}XtwZRAuZ5okct_5dJ zg1?&H9d^xfC+T-`{Sovk^eXhK4m|jmdk&d?L!9`~fj*w;6ap`>pw>76k-04i#UQyiEw`(OEum*?9uQL z-N!Pzy^jT|7TMF?ML!`2T*?8|7wsaV3RUZtX8l_m4l#CXeGzmfbS8ABX$Ec;Lqlgm zXL6;W_aKEsCDbyE-QDZbQ>$-iO>x+xVMa7*m;datZ+dI53p6b>Ei^4OZHe-vYWPY` zb+t^*AOPgjnTB`z4f)QNaY)OK3x;;d&^z!;fH1cR^B?^H##~~o>WArB6aUB?g$w#k z1^2B-?w{zCYQbWnqs?p?KLWno$#2~gL)}crrZ1*PL*|QKd=h_1ldCj8 zd=tuSXpaU0s>EoI<^g^#YP~S%H$}f`)e7|8mIYBHSYB=jce`u5VtHEN6m)`aRNFSu zvu3gMs6kFu>61(l+p7)BSLQTruSOGGMfqrgTikpn3~G5~c*QQgVg#Oc5y?Sp*DcNZ zPh~m8*k#Do4`XObUZ0FAK~xE%N)T0o))?TLb>~p-?n1G{77D#&!6Ky-}{qhnAf|%i1%>{acC<0WL)V{Lx*gEofP{H0xi=IK&wI(e>;O1Kc5$ z!NzD_6`MZ%xi_^Z`!GX%JQFNNBM~FJA_U11r}-g=z*YX}O{&yIQZ94tiT14y@ji8k ze=e%@^eV~nqv>){lrL>We|HW%a9`@;{)ukixNSpaeOG4zUp|VRsPX~T46uo}@>Bl( zI+$23vxa~$w+I7^wQD~(+r&S=p4?K+U@T*+Ta|J&NX#JIbW2hSeBUmH{M9sf9 z;4m!&Qy8W&OkvNa@FaXoQKpl4wcb#u)O1b?wG%`fT0+II?7Kx@%?_JNkOFX<0;svX zK7i}vnNIDAmYF~Pj|+^sWUsO=A=uQqSb!+N2qL3$-^+y*p%f)5;h7V82$1|P2w0{S(Wyb}^ z+;SB{N?@@ar0H5FWgH$?E_Bm_TG%0lhIDBbfPKNfo6DaavhNOn3zNpJN#kE40AnsO zRv%@?8q)Zk))2EnHN;H#opQN2^r|%<(5cw-&qXaeE|}gW(?hSKG!UhMUP}Yvd2SVu zw@l@K#FNmN#-Kq{G zHvQAALs7g7Zx}4*lEuiqtnnDCelUW;F5txoh9-|-P-ZX9<5e>kD5(<2W>HlHNM=xX{=xHTDi-2|$=zg!#AOfiagD6SWLg1De|fZEi<|Fm4)fi$VjIHWeOPp|9k&i&vdt!l&(m2tEyJQb0`r1-UAA(0?UHmVzgo(? zFTG10_q~nopZL5f!8hpwUoJ(W?ro(lHSbFm;i4J)MHq2=Ye%=Ya{Vw3OylXJ@pQRf zl!tG^AHzO}y1EhlKY#gq`h~umuaZ0!-*!hqFM1UWdckON>zb>9HNTYBTv21}NcY9| z9WOFNq#coVTP!2e-qc7tF@C3V0YbFKJ0x5Gp)mx@U53VXk>Ll%O2l*9Mzp|~ON_~- zTPN`}Pm?mOtr!@{iO6Bp4Z>a@Cc3C>1ogS3zFjCeV9YJXV4|bQ8%5riI|2brbeQO_ z>C4r75})_O07LrJLD3r%Os#fCdggJbI(`;hU1 zZg;GP{YUws+g<8*WW3NG679;D1natG-F6CFPywi*bykN%3mq%VVr=!?;l3`&TbJ@y z_}5n{^))TO)U(xc>5AUp3*Q>Pb?dYoM1@OH0pA+FHGJ#c?Phgoqqns#2m;)#0B>i6 zrDcrZ@VM};;agJ~F|_XPK;V#jb?!P}E=#>rW9;1iVE$v z1+}@Pwzg`CmWfEG$3=@KS~Pdmp9ow|-xsOF_+&PHC#B&E~iB3h1UIilse8baZeb^V)=K5Q}{&ukf3TXtMv z%%z2ZE)jHzRHb+Al;JHCU=EKx&_97G32Kaz<%BVY`*`5#V zo&ugXzFrbry*xfdU<`pV1jY~;LtqSnF?Ln`r+W|>LtqSnF$BgC7(-xeWfdAYj9ctN zjkWB!(7G zCS#L-A@|RRu=VlGmKnM&J1#KhQstt11Kk@{93Qdl9fb28%3JMKPnWZ0Zv5)L^s7g~ zAc9{Fzj}#mHL}&nR##fip#a`RjHzYEg?;YQKHmj_`M{WuXSR$HT6SDu%q8E#uZCY; zSsd`I+v!*Hid*AW4@?)w0JHmrM+KGPQf0K&)N7fYpp>!IrgzoO=-Q7(qfKj4WC5&69K3jHNXnU91zO8vn zPywjmId7i7HRYz1EQFRRg|6yvU z0^I*`;bFP-uCp1>IF7BY;@S@sCvOdgIyV@h{m7TJ6~HzQw0rtYPOs5&fmSnROaVX?zvhsCbs0OF|^C8Fw}f*nx7^YyVXN)@A2 ztIjz8!Uq1fOMhF>W|}9TH(YDe;WR@)f&($c`N%xXb&~tb77_=XJwiv zl({@wC0TwnT`r39B@Io^rg2f`+2ZDC`XR{!`FG5J$7P;mWg$L44&wMKy-wD%G8U`2 z4eK10`8o|c$1jhAd9pfc`V-xrZw!@VxQ$lGuu{299+m zqdYT!Q*sr!_k3V*tUCoLxmEo458zpMc7G*0SRQV=lRB(s}!O5}(A=oE(K!K8ji=;a_7DCwBbEGPjn=N~g!g zL_(|Vz$s)~Rm0F$Zw(l8?5m)65`2r^NlLxc7{Q^KL9M4LSi|Uw(!a2QXYJCnejjSz zno2l}R6Ey$A$D-VpN2mTe;WQY{Ap3N0nNSx^qnCU0bQ3WsKnPxbUap zPgfOk(7Nr?y3(6IyA<^%+M6ClRjPW_ef86U?4lfWDQg|a!WC?X=P0XT#5SZEtcr zZRq%+zVgW6Ko)2mqfga&@(XR7GtpVVd=xthouio zUqiry9pS`Jg_a!`tm~F_{ktYUFy`Z#En|e19TymL$+zT9qcx=j zO}V70U4*HCF}E0l;f>@Nl4D4Y>C{jyDC0xe`gmr`EZLSF7Z`J?a;;$akb>c+TRix& z6GWX?fofan(qEk*6#q>hQ{T#KG?Qb=7?z9)W2I#h)ah|yvBP4A#SV)d7Q2Rk{|tmv z0q*~}u-IK&?2|Z73N!L)WL2?@U;XrhG2*eP2!oX|SXt`kmdQ+~$Ayg!8yz+}Y;Z>4 zvrOWXIGwM`FLAcW$}E{>|1rx3#~l$X7qu;jj>AZYkq#prMmmgi80j$5wTX)8IE?g- z`B8|DyYwl<;ifGKXdEdh?!tsRqj&mbtJb zK?rUM0j%4uap=3q==w!;1mSDU*G9r8DH{0 zfn-+jZ7ikJ_e(0zY~Y*@d=oDCHk-O4F3q*{zdwL;j{~R7;F}Sg9+oM=_kqE=UO4yQ z_z=--)PSP~95vvm0Y{w)>P%2)qN^-w>2)7*Odro|S$Mc*#|6gRMzg8TBwbutRVFAb z!9Z~g6c<)V%S5Bos!~`WKy1)X}-u}}(h;F;pVXeZLHM?YJ1+{5$J%ZX_8@S>$?g)1q?)DDc zZHz>~NCdxAlMveW6xzlZA`CO}I`0ge>xFX>;4Za0k8o+*TuoriEyfVwMt~auZUnfs zMnr(SRpCmdS7!;V{Bsgu@8eCMW{pEfe7Wj|(H*tr5=i zz2~d)i<$5}7M0(fARJ?fywF9UIF}R$N4;%Hvx^dDIm~jHz$%AT4yznixwc6WEQeKoQF^C>mN_O4 zk1MS5dGa~lu*^}sg5nhvuLx7bA-C-!QQ-8ru*YGK!ybn{4trcf0QNZSaWV~SE{Q{x zE2HF}l9h>)hpKiZ>L5yvC^@3!5u)U<%3+nmDu-3BZPJ=C;-hN8$1@!oO|1*7_;(_J zF_*O~XXQxmyX;fxXk-t@?p{pkqft@j+2SUien|4T%#*AvLjEG^#qrgxbGDTogZh#GF0__^KgqrdB3U)W_ZrI(hyEO#->oBNXxAsh{Fvjy# zCfTA$^D>$U1|8bt`qJKDgLMKf0jsv<9%I8bHe6RB0dTBCfn|rS8~|2x>`QE=cP9w3 zCJ$QHHZpwi>;bKbTP|nVOfSP3$d|Ou%>>5WVhlwk2yP>|jo`Kp?bZ^XK7_50XSOU_ z+_K{WV=h(h*}D?OA629W#UG2C?}UMOk=-(RH1#pMX6w2x2)SvVGAk%6*w+^_s<9p4Rm2frK)Pz)Gj;KR4?4@zrvCmEV)6grfB+l zz5)WZnzdZ>b0!4;rU*h@PD5NfFhzV|%*Qjqw~o^_aGRW1bwG0F~W!u>P2pL)JfrQ8$P>Lpf@z zAB3+aXoWy41X>}`3ekzr(^)z#!=j{GG)()z00D=lO|2RcAuqQELpwtppaM{Vi*WPqU2s5$aItAz(-vmz0J<2pFP^A-bq)NJ>qmI!lxM@K6+-hvN<=?q?`7N0~Xw%wgQaxMxw=PE!$PUE9n$8251T9Mi0S(dAIg zh(U$d+2Tss;!)U<&7af=8jd>X{}d(}qy(hIbCweH?l8<@n8Pp^+MrbmzOAklR4!ER zb5^;&`ai?4vhT+|*!QsS%OwKu2)x6-hkXzG9`?PONbkL#0`@)Zd)W7hqcLKW=;zmy z>2kd&O&mXxc0PtU>Ny0EIFLBcS>hmwk9|YfH>9-zg7`aVc7V!-%6-l%*L4t|jQrX1 zQ<}$@Wa`@`JDAdr@_9t@5yeLoA5nZn@e##G6n|%)uES#Nw$^I33)OEAE10NC z2PQpCdYJSu>0#2tq=!illO85LOnU58sB}TCLao6jJ;m(Ts}*AQ@y@owI3$K$c;qcR zE^@kVbGqoPomE1;WxUX`w~gg-Wxzq3#!Sl2D8@qI%G>x+|%@dlYawI;UE*C}l(%!pvH2sj|K~d(};wI+5 z>9!;*3-S4J5XV>Pb+Vq78^UcztaQn&xMv;jSm~wj9 zmy9CM2X;>ZPC?-N^_?D;@g@HgfMa7Rm%d*{d1e6T6yTd=!LixY6>({PrT_f_JnIas zzF7b~8#o0)>+q%c_JE9B7|W?;&_8do@J+{1y*^Yg6fYESHMZ=#9fq1e4vzJ~u`re$ z(yMQ!<WC3uXsCxe9iMbx`%GKer?ClO66iR1h- z{+Q<3^%pg*Bpi>iLWuWfK-xgsJZEWxafBF0h;f8^s-6G&eolRJ|Ht*A9(_EsWngXD zae*} z_vMda)D1?jek#H!K8ef2Hy!awIOx6#I>C4_A=sM%zC&uhQa1!Yc7mw$DiHsSLVCi1 z^-V}$i0>zd@$1-249SPd<>Q$xvt(O#Twu(l;oa8q15g2|;5o;rCz0uo9$WpZ{F}T<(7w>|=d}vA^&jjB(wr^{y2N-i{(~{ln z1E6hrCRi1$>N+e{lU6MwFz~G@-22YxH>g03Ie+%f3_G~gu$&aSEHjEKKR4>W`soK% zh)K(@+QNT6&e<|i*|OsTV=m2RxVuc# z@fmkI8JE*7dNpjx`eNSgUK2JUxVFhJWm`2c(t-1Bbih z@V44gpaM{VK5wOWvahsaX1YiAik`(%C-!wEjuov5-y_> z!pF^PN#1TX_B|XA5NLL&fc(oyFtbbU*oFH5jG-N=brru*!Y;*3HRQQl4S5d7ymG}0 zZ}`BTk7u?_G`8%xz?e%O-i4{)17kj(*)m3G*>Qm}mwYQ7U@OZ@?k}`1!p;u8{#wix z-0PBip>;875|bvy?vhr;7Hb|a)GgF4)Ge~Sgz|(6ZzDP?kQP*)p)U?6|;~OOr_`;3E4^YVkj=lxdZxBlPb)`5bTPV1%9#dUj}iK=VTL zZpd8tQ7-+cU4(0ZF_#z1-ak14=>oE9%_|s2A*zPkA7P* z2FdPHvbU8Ap05{7`+Xh0yjW#ed`iq3!!E5%qL_9kh%g%3Wi=19IktWynz>9Ca#I9jyZP{54UB+D)84iytJlt$iq$b;bw{Xhb>ZrIbagLI!K`3bmvx>swE}O(W!N7fJ_c?M-KL~aRc9BONA<07|&aJ5T%Lb!S(z2*|Q$Sr|cUD6Yn)gQCI4@K$obe1N$9yr(2 zi@GsX-6n#PT)4R|-P~P7(|lme$1_{T2rWA;*0SRQV=npDTcJm_cr+aMFuEOaF{fgt*2)8k z;8G&MnMTPbN;Xll`Sa_^bh%!bWh^~fA5IHL!+sD#okN{Nox4@KHH*e6aN(GzD7i+- z^)BpMhkWbWF(-9CTYgIO_>z>m9dJKv&2AR>d2UrsI~9XN9&4FM*u`;u@R*Nhf(m>N z#{tG%N?O;d{OxPiOxb${! zdD!!%r_Y4QOo)={zURM|k2 zLz8c$un<{uYb^VZEdygNG3GkFP9FN?#rbb1%d7P)J$zrPqPNkjpNgXhc^{(nXnnd0Uow zcDXLoLOg=59li>}L5H7_=J_(`k2^v1Dv0`nU^FRy&sOx4MLJ!V*~j#kZ1KCevlE14 zx@OR$Ykp6^$cNDx=|Is){M;-nO8rf@Cr?Tb9*rjR<<%mYr+m*S7`zGw9dQGFe3cf{ z>f>IAk4+z!Usl%D!$^HRqnL)ddf4gl$5&aNPRne$;4j2`47>au^CbU$y{bO!@xjx@ zba|D@hsbOD5q*4>72?V;>IMB*!EhjsmnWa>FTz)c@krzCwfa)R_;P)1jy39tmk_Y0 z&l8^1Tx9eD(X!XnQJq6-PubRqrHEtdtO@j!f= zF0Ru2whP9R2$m}b&aD>^5zzBBOm4koEY2!k=G?ploh|GTsOV-o{XAQci*`=q2B#km z2?IG=G&zY=lG zk}s!I`ad~bQJ%cdmbiI|Kt7)sm${Liz#kBxQ0ga z)Q-x;IXUDD2XvueaC+HER{VRB5eb{XUSBV@C#duFKOYS3>u=Ihi4XPof!a65PaF_N z2n#}}$a_cjy~WnOwJDOPWjLO%XJs}|R-dx+!&Q2n&_BD5lQ2%LTMw$2Q8c!}Wi)qf3q(VM>x13Pbyr^R)cGB#QOLvXfbo&gr}U z`ET?kpD$!$(=;Ui8c1@N*PhwecCBkC_S3cFIS3+6Yhlm2*gTk6()#VbbqPQ3efrrj z=0Fm=4HY_Vjp7ye>38gpUJ0%UYh=zB=_>}3Bcv!NP*)r*Kv5&{Us)+B=nW-juzpeq zqNCI>`&ZIcB(sIC(KktlMkcG0>Gz&9YNT z8>g42eZmeOl(fn^R~BDOgEBq(%%Ml0qJ1`_2tvNwBPu zL#A&07vXqLiu=nsl{7B%GBtgLG`vqrXCZEhjm`UrbJWP?op=e0gGO2d3ad#<_il|? z;&{2Dhw3*SX?ihl+O1IwiJG(IQ%%l{w47lo<};Cwu6TdKKX4`yV17hTG%|cmH`ORc zoND7HGKR#{YqXLTzvWq(T#{LJb@yf_OdZxN$1LO1g_ER?STUlvi zO`{rK{|LkL-{RAMo&WRwKmYZsIA#s!Z?CS-EEClHlq6jXm}KEe3sXF!Mh|D{eEBiG z<1vS)^*d{*K1<0oo8Eq_Z8HkYo975C?x1Irz$CxzC5$W;N_#p}vP--{jUWgLS`f>Z zwBWG$0yVObul}v~_G=WPUjB}oyTnHuZ``jDPpUM>#(}B%>a_Nz{Te;do1Rym%iXWp zuaTJL?3i1&e`t%awC7{)iR_nRH1unPbS>PepV!ydshNE~HX2SKk!oDYO^q%p*wp7| zR-bP`p+%!w1*bO6rr9Nfdr+gG?O&?fbCviU)M!X@dhOT9th1PFP$!BpAQB#I+^_Me`z=G zMf_GSZOW6ZERM7^e0dOv5J6HdbL+$7m&ZCZ)a{TgEyDOb&K5|oN_ z<1*~lp8YMv{d(hZWEmJG(Ct*Bv)dsVC|z|v$K>!aKgJQXhaZvX?e(PgVu}O09m&$H zT)G`1ZW#`c=ZhZ&j>n%+*bd!JWoGb+$lZU`F~loRHYg?jg#=c-AgAA^kFQe=@#4d% zrVKmPZ-w6=A@3(5?S~PPNbndU;+V}gIXw8cZ^PJwA96Q|QCL$<1!EEmiT^Z-@#$~F z?Sp^X+4&^_l7D5N*U=$0JqijGVk)M5t4)WulVMN^FRC{Csp!Qgf`BC72(-Lei(=dr7fF6i_=0PaV48%QCm2W{u{RT3=3>g`Zyj7CW27t7nBJpgn zLVkgHWsWa06+QAdzxTML+hU`1^jRZ|;v=H?&xN_9h7#u9N1mHvUL?`)fK_Bsu<)V2 z4?uPzyRzvdwoYP(083Q!^4bYzcJB)b_1Jd|S!-O0}-VLUb0%;}1W;-K492hJ9=KC%tAZ@zAB8-A+6_7zzT`_6DhL zS8^xCA^E)?_rS@E8Cf!xFu7fMRAk9^uOLcFshRhk+$z1g76X&?q9cB@pC_f#Ni3sM zHL=jO3{5E(zWJ$V?<}c9tf^2ZT`{c#A9PISZw8>I{I122U1CU;6q984fOFOgUaUj2 z`F)w*WDE0y7OVA$)wI^mC<(aXz66zf^Mm#G!SUgPUYU*{;nuS_iPAul&{(?uI=58cC_+$()3r_^D2f^FmssFJ1m^$XGQs?2iJ;|8DJAW8x z=}DqgKt&oTzb(v1HJbRFd0I%cdGa~lc-VuWL1($nmnMnc?OEKmYb;HQQ<=jUPg2v_8F87Zf!&>8w%$7pK+VHH~H@bKjN%yEw*eppaTs8zB0j!K2L24u4;E4Oa=`MUNG7pxz`j`;)WJlK;Me>xRnsFR@FRY$ zBF}*(${+k7I_NjQqVm%HWdm`D!ZW~(RGWuB=P<_O2ReEn| z1EN#5DRgxs}HW+>MZ zR$QH`q^@`wmb%VP;QV!@wi{UtP3M>5+u5N7*i??%2r;g#y*9emCCY`@`xp6Wu9Efh zEA&!-nOvn?uSF(;?qG6=_q%m)?QO{>+3Al9AZXibQ$85`iVH`IFyhh@ZYlYZx+bX# zMwwTXfG6wGd?;J)=+djCOenf86hI*R>um8sD}9al;KETQKIo@de5h3JrnF%0x#KHA zqm`V~jIAm%g@_k zaNAcTk_-Cg{I_40Hv$8_G4&+59ni+@1nm5FN6zmCAa*^=ZZIxM0V;i&i|>!0U0`B#uAOTJHTa)HWz zC{ejeD0^1&r*As64>MG#q(2A`p9|`kq^~4@3A~B>4!7_|A1f}Rza$TdD;XgnH4~U0 zSLieUW(?4k3QP1C;etr%?wiGTI!DHrij=Gu#xD70rQamr3b2kd5mxAVUcQUn1>ryD(0zolNmK6EitH} znW~(wQx3}@ZuhFdC|jJQX=4EqLTEYN1|7G&RiLxl3jw*?Lt#Q(G0}13Uj;d81_#Am zlwXP6G2F!D4Fx#iRms0^^Qx5ROP0e4m3);yMnm?N_DCOHf^7(fn!+;^tFX=1u@67x{sGdR{z-s?hJQhUmN6 z{pcN}&rW}k%l-pXjqIV>Z2I)$PkjC49HDE2Go#_0j$g1-nq;;vOOrL#+^10sQ zPDkNJami5Jk}X9Sr#2|!Z_Zc2)>p9m>qeDqn{V2gq?poptl&h+C5Ej`r|@5-7NoFZ z*s`!{+MBS5YTB6ubT=Dt8Jb23M5F}l(E+<)ec343Kwxo&-JPUpWIK^!V=2(?f$(kS zN!G0mXJFEj8F~7Pgmn|8ps3BSPki8GOMgz+zBi6Isq|;pX1tzIp*e!bI5Z&uL*s0% z;TKG3q!LtB5dDj%N=SXo^Bsgf76Wi?0P?F)J>e7iLDHDD!TNM(sq0^ci`2Ybqj`Ch zgwVVKiqcJJ#@U+&N48khU<>|BtBHzlpPcM=tsVqK$ifi*Cee>6?UC@=F70U!lM2S5 zfRG|}w_*KY7iLxvpVR2UX&KTGmtFiG#jd<3K(+&7U9!ultdwUV@z@z6ES6JTWlBZj z@pQSSkqA7-jE6E%xuU38Jc)l#ztDGcE};|O(olVxQ^FOdqpg88OsmGIA$ysOnvo`p z{)O9;CGQ%EDqjs%>>?8AVTAu(`HtHM12OhYtX`U=z}`J+>e>Ll9b%7^xo6_nhW~W7 zT%>w#6q5(np2~=*@K`_|4J41J@_%UIQJF8lSmeTeqC_s*Qv|huT6igxmM-~n$t}zz zSJV(R{)?O`85o9u`C7TpQ|X^c$kD%(c$Qw5^Q9QuCvgaC@2(;!S%qt79(HIiXnf__ z%?BV%Rjq{=)34UkJuQQs3kFjHk|ImjLQ-<8GZZNlsZykWnb5ie!PtgSKp%~i!cSwC z3;K}lk06k;XtLCQLIU}i%*5m*HsdJYEj0}VqlG0dC*bZPEP4ph1<@tr*5o4!(M8c` zCATQ9Oda(!-eAB3Hemw61hP$_>2gNe>Bp31{{LS4sE3q>dt z&4yFeY?~-Ff?j4Rxh_EK2HWl7`RL|Sq#ETuKAPQcTH>FK)9=Gz%`pKAn<}jDL!sq5 z@a_cdI)EFSY02M*N@;5g!wDvK8+lP1!2*Q?XvF&`T{co9&a*`}U-MpbipB6M86i-q z7zYBinF7@=!;}LKcTk)oLL;;WsYWWG5KxF6JUij7+H$QD%Mw$i&P$!FhCnj`eisqm zomBJEUc6nr%S*Xz4_;>zBaye+x$k)!vhT{t4$r`#m7B|z3S6sgX2gOhscme<#S_FM zX$6X+6}>);vv0i52NI=;66FaDJwYF;t44VQ+#w_iu=~`^A$rZIt3&kIf@&H_HQX8{ zJUP=9LwEzanp)Y)_5n9$QM-@BiO7ZsOmhv0puyFbeu#jc`V=jtebcc6nrk-AL4P+` ze~SgRtjNjQvOBYhscz}a1}YnhN^ACoS`kbr<<+{P&{0^@@V@R?Qud@RETlcbRE=e- zlb9+^$}bde&dMyAW&cr=QPdh~^nW(k@(@8NJ>x+J8T8U_Iq3m29GaO%7Bd_!)0>Q! zfwLN`LPKIzC*);A<)uKD8Ii|}}Zm3O6gRexW zQ+h8$SyS8L9UHI-nrage&I%Kf9#Zi$6;O#8w?J8gQAXVjaSd&diOrRX#V1;=DWcFr zxh@4Mp9ZIV&X7xOVvbvk(U&bd@p_T{p(ip8O=4$AS%c4o2-hQ&^T-Xvb|@#fTrOt_ z=QOz*mx(>PpnYKxP5#KHv0OjhW$7A@ws%oKaK4+(a_JxIWTuo@RjrLwDyV~cDC+{* z#M!Bp5>7-jorr&w;c!by?qH?lnePt6i&NjfzyCYJOc}{6FG9HuCUX*g4m~%6dCKZzuTZn6nM1%mTENj{2-P+| z(h0_>14px=rtzs$5hrm!naBYSA@iQvba(6EJmhl zdnCHHQHhmji<{U*CDvA|{zw2SrEF?lghR!6>! zu7C$DyM6l0;~?RUhe^52kIsLqO8k!x-lR%v);RH&}Wx!?>U_n{Zvb-bjEpX*2K`8i$Udk_>Lw~w}0CpBE;E*q@hS**~d|03FK?C|)Gl zi}nk3!o(3V`nA%Rrn(+swNDtNH?0N;g&mo@)%AIM z_M-J^N&K>VN40VMajJ<{c_&df==Mct#QvbubsYn_cGYyIup|8(-5R<_VB0h0GqHDf zhaK6`Oa2Ot0NN`%g5#C`XAN*%KMak3EBiC{hxpNJ_vo6$-O%5}>dp_tdiN^GaI=W) zfkT`w_F&|SPQQhr4BPCVnd;uIkwRSt5%$lZflPn2OyBOI4MQ1-**`K7xtpp7H4IJa zZQqO>UjoF`bnjc7+%>=`o?`VohM{u8`@x=tHa);?t4omibe|$Lu3@I4ui<{hv0Oum zIC85a4U~1?Z0E|(24$t!$$F;B0OFF80<)w{#g=Eeqi?hODGW`K1hqfyTNKK}n5vN0 zg7BOw3O-SL1^{+Hy-i-kZ@Gw9Ofyq<((o^u@FY&P>Q;63COrXq|h`_iZ~6Glqpfjpc94V&BFJl z_%S_Si{(|i6JfN`#c-QAB471^;)sBJc1a>NO=EtMu$cl%x{{oviO9xK0!n1Mwuz)M zZ*(i4HRg183o&Dqgk4f^N{BJAZxv#Vd7;Al!7FCmZH@9~#s3cVr)2597IC&_P}qj= zMY$tG&;Rfb^KzAH=#!;J<3Ct8bd+vjaYg!`btZKIuNO2I zB$P|R$*B{5-ASxFqPYW@zm>hv!Jrq6Ztb7#S7r`b(WF*JS~vIIjtKFeV+cDHW$Yqk z=wW2VU5OHD)t|)EJf(D}ZKhJelnzl#GZpx|x;sZK2G!^=!w&IBdfju1O_;bO9Hz77 zqD~;Ph>*k7AdqhxVDEXIRZ2rimtSfUMYJ;*%f%4?3$b|$vFy0~lJUP z2>0%!-uI=~O~ew&6uRcOP!t|8%F~? z6}8xNllw?@G&LOZ1m>O~5Y-5zJcA*35{YqJA+6g{9pcpdAv(n2_BAj^#w}E$o{Kg@ zTc`uVni^_hJAr4QQB#nQfqBEK1xGB*qJ~oNZ3Fq%4;j!?pQHnISoQUQ>Mo{@wM2WiZRk0#U`v7fCMVpEbjjCaLBMKEgS(a|Pq(Sg6caadJT-^?T3>mw|dcATP$Kp!q z8xmZoXlP_bgK>jNSOG;1MG=_+dCd-}BF-ZU1AZ>@^kbSAX>6)L^boJ=lU<1aJ*x+y zVQjFmnr>rN15!s6^Jxw%?9dL{vC###Xtvo!;{uG`g<|7|R-aUM7Yc+Liz2eSMBr0< zF|z7btWkqu&{V^KkXBR?>XD34>(%r~-Ze6LM>wMvh`5e7xTDQ=M~hF%N=rqVOF#~& z!8xEaWWAf1^%mJx+1L}W7ug?comU-KiJoyaya_>_>4!v5fjr{BkAu5JplBFj(DA!TAQ)VH1ncGgohd%9`a?CR8yg-)dR&L%`6UajeIIwkb9WL za-OIovv%-G8f=<+Ac5KPQ<}$@w2)huU6Lw*(r%>Ec8z}3={Ft&;m=0ouU9MZ`{VQP zI}Nsi-^+B{OWNZ_C9V<9CE#2n66eX{MwMqp9n;tybwp#gXs+AJI%5X&Bg(S?MN70k zw#W@FTF)#15p_&)Qq&PG!A~iY_P6&jcp~w%zYv9}dN!hpY^gZTFJqcjkX`F}`lBIS z=VrRjVus7)#XMOZ*>%{$CJDC7upeWq1YCCG_UTmcpYVz(u>{2~{Xaf@U-FnwGT4hS zicjM5@J+|e{pR>OxtqvQO{G5qq79 zXKd~lhgKNeulFLX*&`04&{*UljX2yhF{_biOxciT*X`LmGD0mrcqs!|@&xXfZm8V97gZ9d#;4r5D$sZyp z745GNh}OJEx907J04G*Ie-zbQ0QW}%eR9bfBRuMPv33dIv((s z@~-z^Rw+N1Mv}b>!e|tXCd*ZsEf;?mrz!Y5VuLPyIS^&W(`@x2&9}ad`U5UPzPY?6 zv7IgCQ3nCNLboqYT7H<%w!RvPWAezL#d>8ulXD*Qj=fNvR31niCF~CPpuOIRU*Rgf zToY6xIz6TM4&%On>TB`wH^T3ti=# zy0yT<>FE47Nipxk%hNDC|4m|rs8X!rewU}DlAthqWHTn{joiuqY za{1j2M}HrlmEm|!mP1Ab?4PpogA(^NHre6NIDVLinq~p}zoxTv6F-OIo2)`P;fy~! zh$fnrCU38<2&wOv689Q$(qm-NFgeUl-%a_ZZgtaanOw;m{+g+gUr|r`N@~KPx~Es& zLqGHn!I=LNQpS)`En~-2D47em6%Ft^4U#!!8&8wPou1LtY;u=peBWi>>(}_`7wQw5 zZL!fIm}gq|9>F|yc(_$%tzn))jd}jIm@cnqF^e`jrRCI)DtcA5vjn{K+B z`pQ0gn95P%wq?=IEbrUyVm2P}K^RuA{?A2GQd`jZG+AiZhIY2Fa}vEh2rW107xHM- z6@BTo((loGi|Z`Ur$|fNi_y0je~J5y=c&=cB6EfM0`TrD1Ohf_BL*N zpXm;-zV#lKg4?)Wds$RP%FenBqNumBoh8x;ChtUS=>Mj= z0J|?k7ZjbT1H@wI$^ZVBc0ymgSr_@6Y%!g!uhKWgr)7Rc|4s823JOQP{y-tK|B-*o zuvw2HMAQsFm?!_=GC$-HkPeq+3-f`BlJO^zx<-b^=KN7teWU_n>zs=IOZ_7hFbezp zBZu+W{PgQ-?IIng;R_}5`7gpIM``$8j=ofP6Ix#rd+A@GU=v-Wa6*3(h!5_(PkbTa z$#?Z7g^4F}#~=6e$>-^+tL-1Bv}PPHSA;utspM2eb|MrW$2S}p;$P5lAyGVEe+%)T zS#{yYONy`4Kg@HsznBOXoK^;rdomkQdzkEt5$~{hqgfTYQ=))8h8;C|tzf z6tr6LcS%_^1Y1znBAKU$GHNITu^ifadwH3sAN9wQzG&#ximKEFH4zmOg^ecSK;px& zFXlEJND`H_7RL#57JnsqpZ_9CV7lR-7g0NLB!OXhIC;HdM7oTqf$3%Ydhwx_+5K^|4UoOM(!v*{N}D9f{s#90UO!Q!y$H{@x# zS(-%-pOQF4o_FgW`F#Zmy3`z5xVh=OWcndB=pjfE=WF~>j8z<6{&4YbQ8FfaIz}$Z zMjc1-7@dZo_qjO#O+NmRkwy_^8H}ZGd#_Y9mLj?q1XS~(cpZYCLKi1I{yQ2mU#BGf z!q7VN*}J>G5x}ypRP;dnrXj`+EDFQ?6LEakqwfC^0bSE0!a1#bAI9gBx3EZ)s3Bky zNR{dpPuSMIcO8zNCqs<_tdofp`SKqxG|V(=x#yt>JDop;K_}`2)cwFQaoQ@76a{fA zPdy2FNTazV_K&O{gl^dXVJ_J@L(h>B{@RgV*o z<*n@cvBX-nCq(0bs~oHo@tt%B*SD9+Vk&NB4P{@Wznd&eX1eOsL|E11|BpI${a$s; zWU+B8(azUyRk!f3R=>%0WAz)iV8NHuP1BV*DA!1r4G@1x8Z9bwD z+i1dCh)yUkpkBOs}*gq}1n2|z5oCmph}_!=UP zGMk!=La7_XOjLu{j8rYtrDhOdWl&!6F+2xyLwY18f6O*{b)x=>Kfx{3fkiD$dw~5 zGs?)gmF5EJUa8wFr70eL_ReSr^91ckidU$qGrDD4o!Ji%`b%n}$uB%HUsAbzE#)aP zLH7wu(k5UiDG&4Y93>B45#_ z@*mm7RZpERS6}{~FXxJ&`r3^V^e$4}k{S-!&6W2EHtUlBkaWt7QOEm1Bz${Cvvi)* zWsz}lgZ>doHR??N;BZ12~!ZJCzoN3$;uT>!ib(Inozp@Xaez7kweh`U3gnFslBnn|qVnYNT)P?Vj zB9TuUka(*2n{g-N4eDx^QtD^vLisciUr^t_Q@Tby%NAjR4n$NzT`Q!3ei-Rsae)XN z+;ub~>jRwBA*}V0gt`Z6oK`^wU2r**nmz!Xk%(+qE&Z zaizFGM5H902_B+ZF_ISe2{S>|7H6KaRuEuf%SQu230z?S2}wrc1t9ZJJWIn;SLF z2h!cPd~kllo=t0XqjcdETqxwFB>O?nCNtvG`gMv&dp4z6j^<|? zN@X{c#ALp+K&dWJidNseCE4nMAktg%H2krO+YsnAS*ZX}rH|<Tq`TybEiKvah;*!5d8xi)Z4Q~hH#1HAz$1Q`cfgP zUq~pgS0^;*lgkE4kH7kfUad=!4i9rq-A+yQJSx@cVP788SZ9uq3DDZ}R>dbYP1TyW z%6MQYqpr5hO7aJU10bHVZC?85f?_Krx%zG-&~S8B${TE#fkeH%`r7LH&B7wSc!uh7i0dB>-vT zT-qqNndifEZjRtgF;~FZIh;wJ$ce&=s=Z8mc-9iTqGZ6G-vYBu$2w0~eNL+B7 z4QkM_8q~zBGdTojF8KwV9mAQ#vYPa+$QmGaEjubw25eo!maPgk@m|nxEoTd1;a*s% zsrv%hDudh?MQ;GMdth6W{}sR?K|DwhwS7QzNA*d18>w$pX60oNg6fSAlRF|kNI7|x& z`?^o}V6gnd)1%7%JyO0^IP&s-!_x>uLbBCg?H z^OE3o>;a0ZXSF&_b+SP;LNs26S?2=NH>YtybJi9&-HR#F#7O=lrdIhpF7t#Ms6+lD z>c#iX(%)FLBWw}Vq6b&id6-NDwz$PyG+j|-KvmDe8}wED?L{Z)4m*?-c`Dg=iZx0l z>ZM0Qz^P0CvRi)IEnMTSzIaJskXmzL2|Bd|eOd3+KMYJY8dD@4>kFvBVJ)*oz+rAn z2VBcSE@i4M;$jX{`%F0x~a-7*-`_|MA!nIRJy@|13RUu5&rx(rnI>BW}fXR=P#ZISgsDm{{0V zOlj)97{O(}qP=2ja-N)vXXZ=N6j<8pC6;8#se$TYQ6wh{($UPdG;NP2dy>GgX1LNQ z9=TDAXER#8xM~xwkS~-{QbSyMA|1_W(Qptk2>lNghfr$)c@9j-)z}-Ci%6_mglDd) z2KUh6IA}yy(d}~L92M%&h*SBv?GYjNS0N2@Jjd=`QqPq9*qCaRa<=}zWyJrzohXX4@Y)_f*47E1h@nKerXzIU%n>PAA9-tDY#`;|MQuVx z_4(_KLskN%Z$`NHd4xNQ6Mio$U~0_aSz|N>kV3H5kSYXDpU0Vt>7accmcWx!B@}6d zPh-yBG&l+%=`wVNo0xdi7;p(xPd21Ze0E6!C{5$V@+#el40`!hDMZ@qfl`QIY`+J& zRt=O(Jf&Z;6wl$8l8L7Y-ojChd7)c*tTCs%Q+n}s0}X3ZYEphNtZ$WHjd`EuLtDr= z-JVW5A!OCsY@lknrzM22fnu_;b|dd@x48m2)Q}-aR!Y%}PhuYT&I99l-86kn3RsdY zZ@Ktf)CAm)1offZP$*^z+`_k- z9(C~{!H?&VG?WVcPf@HqPszb2GzqyBHnWD5p1>(2cOy~F+u%vftk(5|OGi)FDmIQn zPuV)w0+XE-|HeIS2jv*7`PC;j71aD=vI)5Is_2h{Yl01p^Fj3y|!QXbp7*V-1^ENBmJF?kMz3dsEIIfNjQj|WHkbj>1!2%0)gD$igNKp1oBi)(G{&N%a>nj z1S4Gz?LR`EG*F&A6}gar$(KtxQG`rgU6n#9dP;?<*fF%w*ZSR_O2|w?Dn%m{&eH30 zzEr#B1R7yB+}oh|)CkM7n-9R)Lt09o7Gvjv#Z=^p7Z6_y|BZws7_E_v_B8tRFB2+y z6TDrK3J3%QA}b}yqZ0%|Tf=!jJy#Z!oka_N;o{#nOyH>`{}YN3v8+ZD2nFkvwxJNU zG|73_{O4j9vDrfqC&X7>d{IDJlO|=g}0TygLn0nIZIDw8igi^ER&a<0@rL`^M81xhPf6ANZCzB z8z{JMFcKrjo+>|a9}4Rp3UJs)Hmvy&lmSvQwF`!9Xu|M5hEz5;n@_N`+sKW^7G@Mu zpFNafBQ4Fn3ZYHW3_iu8XN2)ru_1U-TcgfXy}6X*~D_E+Z644?g#Zn%d(Ihm{X9dD(AmMNel_LjKbl=2J3ptCYdX4!xARFwe*pUHVeuV{nKUJ-QAV!)1DtEi~G!SP@U+fy`{8E;E6FK{afT>TsSeODAX0?A zdWcu`$u7kIZVEMaRu3Xa{K7A7s9!2#c7tj_>VRTC&0&Qd+Ce`AJN&T&-gE@lqrn~{ zjSG;Q-O27kv2o+=E))ng7Dc=>l>?tD{4$hPw;kG=h~P_;kyca@>Y_ z>4!v5fjr{BkAu5JNi>+jy(&MVzvs@f5IAWpX}{*muNEcDLzJHif_! zf0$U>=`J8})T24d6srt%)|Yml!4PYvAx7fQp%GD`UUqgs#6iSuO~l*-8=R&{==SoF zPB+pLc?h{?3b|9KLQW!oGM%M~o`g*uHpqkB73AF#06zNs@7~EtzU*~oYHdb3(@f*J zV3jmDe(1w08C6rEsMQ0~x|!12wMk0#L2?hXT+TDnSvz9h=sG9-NX zP5QMO;amdFMIv#YEN*mp)~IUi9*M?o(OkEcb;b^vUw4RLvqAk#> zIB6tWf}c_(?XVqj$Gwli6N#t&g(yVTvk_HfOT}@18PlwS?AmIogX`Q#*ICS+n7o)L zt0TJ>P}n5Fb}8UvY?Xk=GP`{`75pc>H&HA>IsZ*AQK7njk~8m1F*1Nc^+g!PCvkcB zreg+wc7pL>Lhq`o!AE8)XjC5xI->dmIiy{F5$dmL1n=v(?9wB8R4eJFd~&Crl*vPn zt7S9v@?z5PKE7p@zT3aIq%eqw3F!3HCmDS`u99tgiK_kLE_*ERSZB!k!I)wwKPY)j z`O^J)XX1+ec^Os$la1k_W7Q~ShKKIc>ynKsR^i6e{7*Wa~8tanVeh_uJ!eP(e*`BX9uBL~}Ql5Q!R~0Y{JC#`{OIG&jB{^(w((#1O z{UTQjh5PklgtpqC!?06X=c7uNy)|&$NM-YP!A5DjqoC>wOylP$%-nyF{?8MW4zGJ}8#on}F z*Sc`SP&>b}7khu`L?n2uF4i#A&aZA`-Jf^$CPXR^bKfHAu0cjYCA(uX40UP^3hTZB zwW1VjyU&oBb)RB4uBlDOW+~VMFeU4m%Id}?1$JkN>I@RJwcXPO+Pa@1L0jK2fJo5R zcK=iu%5Y-X?+4UCwQpf5hsB?kYga|`sKEmuyS`VROZomI z^7~(tdCFD5qhRnV=mgzp!llDhm3;Unlpf+M`jAV5i!TL<&FZOdBIQ9+aX~ybpTFL? zZu0u$b#>v7gJAS32&0i*6c>_DA+|9SH-r&+@Ukq9&pSChdsjVM*y`q&bci>qvd1A+ z=BVQ2JMO-sw$Cz^&nV0jq{*+GV6iWHwoI&0jM;iYSbvovW@peK(ziZx5o0 zdA-SG`*7O6<5%OdA-+owxC$c{1LpQX?hy~<2Xr-mP%p2p!Q!B6|1{Ms$zL~br5Q#g zd*m-4^fqpK`!UI8$>nSdC@SRJ9Rv}bn+|=@w{I<}A+%s6s(-I5u{a7SL?_-;OmjLI z*f-H3|C$QQm1h;?Cx?fGT^YMk_w(-!?OTg`ZY9Jhz#fe3dnW(;Uk19w5m`~bJO8xI zuTGX%>sk8G#r5)#O5zDVuYThHAwv3G{5M~Aw0Yg};fud#vog*9wJNjaqLB9ywWZg~ zWw}_E#4#Oi3Ro^~eqGNmX&dEX7<@>RD~cx+hfy$J=Bp3y6Z*SLMgQ}8QXKZ^`^!B2 zbh^wIWpUV7|9qD$%4|lErQbOm1UGq_{{D74P5GK(P^Obyai7As{D3(38WEtiQm*uGnWUInfQHXPUyz!wL&4LG+v`vFH_ z_>-e0G@1Cd+c9v=3eBV3&%=Us!F2StpXL^YvTw4a&s&`VDu2PM-KIy_UG32R;gT@-e?Iuhh#c z+wB{0I{5Ej_%yl7m)1?cBoDc#On%n~mCiyWY}$K%>ff1xx#Z}t z-XRXhKV(5gvh7!IJ+*;ihMx|DuI5>pbh#HW>* z_)))-eX3}ScUs(i=6jz~5$Jb3gpcyw52C>XWkM^;)H_Mp^;JQ9`^yQTE+1E&>oMYs z9+YS(^W?R=p={Bykx%zySA?vl>zs;~|9|%01U}BH+#f$PDNwM`AgcnJmar5iILZN6BHm0x}zGIYy3d5qCq*YOIWKI&Yd8POddn z88aw5twg&y5Gt?s2Avfl4qv*XdUA>dCfq&8Oo-FZP-4dX+a2FEJw~T7HD6e3)XvFuNL=9!>k2!=QL<{ zGcl{xtBYt<`qybMb~;vpf-_zk>FRmVg^r&qT%|prJarf-N8YyiCle5#^=1HKM%KXheCb)`&`0GB+v+*~UP>838Z6 zT!l7zSd?AKkxJe`b|G9MT!*#0>T0TlU#}|lAcpc$P`bKs8q(5`wQ?d7GFt*Ew@N*% zpa8D|<`p36&^?v*AS;hD(ZtmtqwsoV6tzcZ9V-`x#7+iIj*g7m384^|2Bi_gS``-n zMc*Zk=9kS8B!4ek63I`PBS|NOOW_TT2cnE=Ogv#H-P)gSJmHRwe8bOR4F5pqV4|aU zO;4sDJ)ks$cnN}Q$kt0Nq1Rxv;_%l`Wj-lw#R$C!m1V3rEtfLDN@)hwNXi&Y&KxOf zg)91V@xH-pL40hBs#MN3z|1WFL3WLl^;2 zgK#`Y+t;@w$^d-1vyTA8Pd@Rtz4jkm0w>DFUId zt)n(nSyo++CG&axaSTWGKAVmu@-8;3w?F<_PWrnLPc$xxIQGM3iG6xkd}U8Jyfk%j zA5VLM%ErWjNdlW-Nf9>v#4@V^UZ6AO+Pa{(58H9#GNTvS)Q$LP>mtL5sEf0;R+hA4 z6OqG}o>(mgxe>&!p)1~3i+%Kx#Qg4k$!v<4J9?e zq#E*!uHN=l3;Q|{9qe`>)rLO1rx~-vMB{4Yuq5BmTVj3qFbQ(KL+64?kMvc|XrCCU zWQfPl>#rTP;nH$X_VmF-uPB{lm0@h|?TQa{g0nhQ<3&1hTEys-;X?NTl_?8XReI7| zVgs@M)v=CHZDmCTW?g>3LJrqr`@6Kt6KUDYYQvS`P`Q^8bKBO&yCtd>;qows>P8N- zQg6ny$ywPiKgEEHt<@D(UQkjpehHS=RD~+M@SsJ#14veRsHVKEl$AqkhO6mlWMhjL ztm}(Kp~7=wt7EJcnxGR5Y2w`6+c(%pl@J?7SE~}D^M;odIaI-zuj`6M8wLkZ2aqJA z9i*Ms+uz;RH3PbfYNM5dPKK~xYrgO!%W$jU_jV0$9II@ZvI^0K-lmB8k+RU{!UM57pYcN z%u0vKXvI{QRaaM*LPJjvg=V1L9T-?V7fG(FstU6mmuif){DvPb zkhGv(T+oSDrn9%J!*PU!dDOUA1`&;Be8mcMLoR1EHebaKC4;*!8qJ4c*HmAou_NhT z*oK63YviYkjSExe31O2S>o-=Y{`A$o@eX69p4X`vGwI!QN*Kw+q)E`tptvA)eQoCs z#>B!MW1}GPgz<#YOsqM+HrBNevs^@cPVd|pCQR*O4VBD_JJv8<8__4BF%;)AIJ@@p zk_BtxeFNfFfv{#SoGn$%1cjkZY;Ie-CPA@f*fF53Xj9@nWg3S|n&)c75>3QcXbamX zBqP2e4kb3@3yhIst+Qq~E$~#eVL{6rPdlg2Sx{>=a_+py?55d`Ez!BtTTiVGl~-1m zmLg9Vo;JH-UZgQPy`iCT4(dyFd09m{y42~d4YOyDpw=n$Q8sXnZeWcz4z#!Rp*Ljb zN;|q`TB^jtra7Sr)gHlc_yie3(Nm4b)5=kmPil!J2K#%EveHsvY1E?&d|5=SvwP6f zBc#oMa$FM=*G6oZ!lDJq zfCn}$XCa!t5Sn!+TMvI=)iNSj0imPL28=&26o6Hyxf%6c`_*>YKZ2`HK3%PMO_2d0 zyhG_3lo_r_)^-dhyDUwotSJN! z=z=kdsghX7tf>mPLdUDAnpj7xsfJibs3}xRi;hfF zh#_MtDx^fzQn%;xHM|*2r+uqgIU0bI8%pb%F z!N_t93bikNW~vqQiP|!qoCx#|KYEEl2Gi3V!!R24vP`FFdN(39fN_2;)_v$c9m6%u zeEK?LwPiY4%^dLRDyfqt1X~leCmi7IkE1g$*HLWl8XTxC*Ac|PyBqaJ#|~p7y6A`@ zD)C-admXV>Y=?E$8cjzz>FA)0bS%QPM#0N4@RmT!G0G57QESw?veu|{RjpCy>RO}9 zHMK^K*_HRy8Z~Z>b;sK^L5DI2GlW{B$&LJRl3Jt5GiAooUu$%E{vgIFa*9$Xa(aSu z3duhVodnFNH9Fi-YxFl#Yjn4<*6MAo(b<``Mqg*u8eN@TYxMM#TBD<<)*AhsQ)_f{ zZmrSF(`t=Q&Z{-L*j#ILa6Sf!5}%e@qjs(6u7rYqOUHR(ZMBZ`qS|U*7>jGGwSM4$ zr!I&yYO8e?ompF>)nEoES=b`w?6gLQ!Hx(gcTtWQW-vDlk5-l%lUD=n@pwbLzkRT~ zw#Gz&D`x}kz4+u~jgE<^wHB>oL`g9r;Iy-r4W$lY>S@D?=}>T%T1e9w%z}6qhAyG7 zmeJFTl|1=^gC$bs*@#*Tv{nhq}DK z7iT?}Gis*z2e7h1O|h+5N4yOq!GSoYn?@bld;8Y)bEN_loyQojuYhXya9VDgwUvW7 zx{Fgmn1FCOz~~Fk2M@5W+a|7a9cnJEI*U{q4u<|Wqj4zQ(T-)ft_1O~Y=hpJ=U);@?;8Qb`E4+84^#8|OyWq(^=Cn#Dk zL|zB;S;x(2WP7ZG=aa#va2zsg)R{ z&bF=n4KX+=j?1(h>m6Bf>{^`>u8>)Q-~Rys)>v&%vHmJ?uHS^v2ofbR4o?!^J5(f8)CE!agBm;>!t##vxg# z);O%!skNmHQd)2@i1$IP5UvC_pp$5s*DTY1zC$Ia_x2Nnv0{*z-qS%`Rw4^68iH&+ zm6Kqe^n%UUd2WkSO(|sr4!baw8jzysNARZ_6fq0G*0F9YH}D$92S?A zoQ4sl@GxW%fa=S`R6=Aw_tHY=Df{GNjVlA{o)}%uv5sW4TVlAULA*f7< z)`n#iu)t;s6(w^$;RscN!UQcNG_E*e1t6Y=3u}QQ zH1zil40!fX$&5(6ZKY=qmo#PA5j8kx`YA8btF+b=+EgwObFXLsVM%>A3c^LC#fze4 zVRY0b05ug*eZH%q_IO9;wMOw{Djexx33yTTv;{0p0CbwAverwQVPU&frxwm`T(JVf zGh5HNc(ibKbY`pvABN&44J^~Kn2XH;naYJoXu`sxUh;LEG09opi+K1RxRRT|P6}3k zv>!{LMlQfYEmqAT*aRKsB2zODrqKx@x5V2!1)`E+xlSOJWqv~Mb>ixrY<6~2+^R)&8?mhE*#SKAT1as_&KA~ zNn&05y0(#?NW{<7ti+(SZG<;NuUi-E!p9;;IBT-xLQ9UAG7~^IxrDfl5TLV(u_l_4 zE9TZgI2v-LfE;uXj=6bKLMG!Td}riN5!tj;T^lXH_0f$E|LluPdHdl!wuE)SRBR3Jhju( zfQC>`e4riWNegi3vs?nv{`0U0h#Aa6G8beFpE>AZwmKrQ)$w+YC;Yv8uG=rfss>JS z#X7V*T6MkkiT(?_A^brs>_V7>8D$`~WAzwNKq>FhBVMVM?};?UWX z)2q%U?d>P>9WSe{1n3!DJ0(21reborcZj45d#4E=5?MUE zLpn#Ex0;H>Gv$-itm&sk<}?~A5~->7lrF~!IJwOW*LWkHYX_pITSs-e-pbcZXtRU~ zDOx)iHBM?~gAt8Hh%;1!2`=a5R|*4zYQc&MCLvl5Z?FmjkI!gUo{}N2;ZyS)=FMw~ zSboM1=j$pasrfA{ms=|0s*^H5$^m!J!oH@#9=&R0!eNB5^jJ1Y;p}rihT`J2Ob)-y zZk-pcuCAzwhM-|{FxTuMz=E-54V8E-VW^z25O~xwj9i3D;8C&et*Hba6^pIDr4qNu zJ(nsRqVX)%m^^rv8cZKVeg%L>#fAjNkV3B{@*P68STk5KyR|Y57AN-DsKCO3&sT=C z4O&1Ik?&BBy*KSpP2@XNaBwI=))1XKZ+3MHhl$A1=qXrt!Z9Eqgs;J=y;v#|(t^$? z7Cx|dME5f>@x`n`P;|j!EJcU~D+U-L_FzR>Ci_C0Ipb8!o*Dv?bPCa&VwK!62odPbP)?B zoY9KER-DO9#8&FP%`(>1nAv^SA8uf~D7(=!;tAV2%I35*gHS^4I&Uz6mV?KD(BvpxWW&6W3i)82V%gHyI*Wd7Xg`{90s{ zys=U`Lx#mzSVVK%go75ksV(F2z=3j%OmX1^+@^sn!&MWGiO3jf!(dWhP%wu)ZLKtZ z@S_dU3Spg`$xx>QVl!OE+x^n4ma!>fL&KnT^C}iLL>_~CBsm_JliQjJjZ{9S`C%Q2 zDib|+2HF#}CBu{E^WE9Em`zTkh})cIjPZf8zl%Sq({oK4SQ(Or?boRD?)Sq2=fJR4->=?rFknX5SX>~S>V zgDrZnfS4lp5mT_~50`)s!8T*spKyiY#+6+1%y4w&aJnaQ0P1R2NYC5H0}`&3>Pb2# z3?bVsBLwT16@rnwMytG+PEV+*3&z2dxSXo5iRMDPIXiE2S?Yvg(8^)*Sl5C3eC9QF zzx_Z(jYd5+;@$KNxA*{8O6SSdbuA^+y%SRxFEQpuI>&`>;UnJmngY{_%ePr=4wCFL z;QFzY>na@f(FsDMrb)3L3?VRMa@aYh_peWkXsdZHTt0pzos$;FQNPY~+|@>z%Q5rF zNH!>`J!|e~3b_ZDV;d~NJv}23T502uk+x~LzQm(Jt=0!e$i@#;)R%7Wipckypak-f zgIvC#jw5~PG&o_%EenGe&~f11_#T`s z%_O$9cgA?a7kjAjc82Eo=!o}YRH0KTZB__MW=kQXBVw`Ak@tOZAQHzMGdrpr?i^xh z(V`SubbEY6Ps2Wfj_z0iH4jP8n7QsDlNfzmDnm&c0^>Bd=!fqSw}L?@8Fys z4p!=~Wr>ZuC>UO0T>(3BNK!?~Oq>HAVAgYuA^Q_O9RJFtnt_T+?;18L2RaXX-3OX#@E%n|52+i zyXld1oX0<9mc^kM2AUY``=5rY%F#H-l-7#If+J{aMQ!n1O-=AFYLECd z5w19whva5%ZYSwl$s_fE->b`r2`^_OWb@J^Wa&)hs&;OXy9kZ)D|(d=-e@L3!ai< z)iZ;+L1`Hchn)w?_$8w!ms_EB%}lb$eghMC+&y9V{8LYR|2o{!*X_ORHpzTO?u5#) zCN2kJJq9}xHVpVRrOq~QhffCtMKJ?iwh<<(x~RM*k2m2DO(oC5sXeF?nB>4HE3JHjV z1}w%oO_~l3V?U};U4jPzG)XH4RZf=(zd)&l@R(P2ldt`le%!xtI=N1oLUA=CT~i56 zmfL1g``3dWOi_EV)a;UY=~4%dLeMVWXO^UZa@DCS)9El}tUDZ$`ehCuSzkLGaVHmp z0e;tmIcNHlIT3b`yt|2P!KVPLCxp#sJ@7 z63>=M4x<%XPD4fOVrq15dDyq@li{ZQ5~FxRxoh=>TGjD@yB?}A!FEZ=@If819=1A; zdyg4BT2uW7M0X}$o0u~)x&|=FReJIwpI}5R1*={3_(_JPas{|X6sfY*j!8t@x}z9G_OFv~GGNt> z^8|KBIM3mH<^?A&jb;I9-2z~3#io%_Z8HS*19dfRM1)x5YDDkYt=6C%WZa>Jj_7P^ ztWpW*u0w72dYu}hXu6w1l(KuB5z&?^&o4DfhtCN4l|q6a*#V7~1%5xoe2!x+Stnh$ zUpl+l4Y@5M0<}w)lF3wLuSxV8EO6<*%3Fex3*)-&@>`RP`^0vN(bWNE$>oyhht}qH z!}N_?PZ&+xh6%@PrD^gs$|xv~;13LdU5|3{kq#{5R%(Bft(!O6fe@oxKw7s%E=$>X zlH4)jBKP2|drTs&I5~aT$s8PYn`FDGQe<|9IMW!3IQfP$LzIBD8i;sb4TNu`8u+nw z8bmjprq4nx#wQ3f!?6W!-LTjo4W1VfQ`XF3@jNpWYF!*{p4U2i!R&dbNe)G$y?tml zs9=n+&Qxk90c$1K8tD`GXBJ7!wVQ zTpST6g!px7-HuV33;}XU=0G!@`0M)hLL~ExqE5ZnCe-=P>Kg(P*EH z04N@#0?XR1Kh)(CYMCrEp!x3kB%IKHcO*-LK#2v z!_hc%r4Foem`k(k>S7ew^oLr@EWZ?p4opR(8H0!%BZb-~^s?ApPITgaL7&E^Z|}o6 zDm=+_tQkG3>1#VsT$9`T`f`=~z#2Ms+HTonm2mnq!s*xHSQniW*-_6LvE_>PD#RZO zf-={`ybl|#Rki(Ej?NUZX!Q{_&yHDh{$bcCu|$?Y^dtMpRyIG1 zCV#N~#OkESlD5qFjr9x+b)}aydte@3*0@27G3YqKEeol9 zRbEN5_d_#j3l<*Ge4YSJ#W@#WNVR7f$q%jYW<6Q@kX5IoS=^26`fp?TkeQt;UnJvl z=2(V{&AyCz;Qypt`)|n-n+qdb5DqMx*jJPqjWZpn*K|lfo!N4XUZM7kGJVKw@v5bc zwym+I&S8gq9eTzLw+wB`u-Ht~6LOr|?(5{oi=yrLst&q|XmnQi%;tvHcKH`Qy)?wX z5dWgfB~LL1M^7ss$PMX^9YdcJxO|Vy##kC#V;W#qn{_#9}v_3?FXt> ze&#bLmQ5K*bVb{`R`&9;06IP|R?;|0G<9rzyF@#z#}OVwhFvEABeSJ!O&hwY{CN}C zc{4I=K6sXV^km3tCVrS9R2t<{iQJS3@8OTg)wJRGe0v){H5}Tbl1J2A+;+!zHFaJ6 zD2jsbka*uS`|xr)ra;*;Mp}DBR(tzLPoNZt9sm6giPfIWF1ArU$a{R;=%c5yE4pX& zfejGq!5)lIG}=DM4<3AB3u@Y;zMAFr)Khgw=)zkot)*=+uI%02Y~u@B$&k3 zD9J`dbX0i@*~;5AM|;qz>2lZuo!B1Gp*TPHfr~PGLKm%4V|mTfA!Oz{n@=_u`^{N) zU_g~hGo zsYTiHMy}vHmt2;?Y8Mv2kLBoxwM7E7buJpk$02w+f@3o#Hk#B!37Yo5mEG+|-FRX_s9R9O^8Ug z`(CdGd-dJ*=egSYJ)+6!M zp6Kda^G^H(2)a^yMh!=hagtK^4fypE5cLlP84A`e^}>f`0pTNdAOCabCm%UsdvF%F zCmZ^I&h*kz9}X6=#fr@!j4)g+!tjn1(W15d=~N!b!d98b=4qfq`yib|Msx2?_DZ4M z_yr}*8@jIaasvI|!&QB;kjE zK6>@ogIcub=kVSNZB_=Lq-_S+CPY(kKHoMWK4GMkwJ0i)zy4& zB3ULVC=QchLW7&Gj&Ka4+Fldo`TG>Tu|aS!=y9MAdj<#p(u<5P3tR0oyyY#Xf3k}C*V>eZkYxME9Q?WQdlXV)$BHHxSrmnOO zCqb|(k9siDqvpnDxzEj?7joDWmGki>j<$87Gut&YHo<*noNTeYxbu_Eirr|RmA`g` zxt8>DiFiizwP5V}Iovp1>v6AeC3CBVH+MJ>=AD(bxCw_omB;*QKYC5a1!62|Kx?vt zbar?6l>p>rya#jq{*^K@N2;W&vNH|t4BP!#qsCdj?8Gyleu^)&Vcfya9oC1R8+2i1 zg~`Fi^XJ5vns*0(f3K?f^Wa`J?~eac zYRTErryt#X-?0?8`G?2xW#la#o4jCLa&BRA@Zg$v6GiYldGmMazUiP%f$B%j|9JJ* z^ABm54!1Fo_8Qy|xPK?iwgc}EfNR@+BLA43z!J#t-+cM&Uq6yjUN|-xOco9=+)?w$ z_ze$%@v6;L88CKAEW2~H&(>mMsjuBUCdX?t?v+rw8A zXLDrRZyiGq`wUOzJKHh2a7VInY+d2_jZFwl5;Uxm!QuKbn`1ASWHXTePJ{AW|N6nL z$)#g;e%#8yH>L(Zv;MIio%;c2WC&8Evk#dAd`>`eYUftqR-0)XQ;8oWm%j4!qf$QE zX_4^8u{;OI4*xmXIBxtsW0OabD|rb2Px@8OGyNw7emT59ZNo3T`Yv9`BV7{05_o1< z-rFA9yjs<~)n7EcHT2v&e@iYLHyj*)&vr>c;ECZ13V8L0_$QQyUm3GLwNLSm%_q&; z_*~+M%`^6S_?3dqV>YtflUI><_@LqI_(ozDOJZ)*wnAjblHosJ{P!W)*BrZfy7)X& z`xLF%_}uu7r&E6(9;>-l|LV!T=$Xb7hdhI%ajsoL2uvkgf&3qq|F8c3{hd3Fe#TxA z&A7@`J1_s9YaO~!B;o-{}*aNI| z!_RamOMlp5aHcS+{-Ss$>Cb+3+Rg&vqR?Z_JYoW0~?N8pbJ9zx9t4vLOs?9zek) zKDPd`_nKR@Xk9l8n08w+N3=&56xLmE@c0csfIO%kRJ3u&=9y!M8@FeNn>>n*0b+kN zT+S)XA9rcb3U15QbZj0NyYX*{ZC|Y~JL`80@11Pi zF2TAS&pY{%ij?P!vR8{eyI+%b6D z=GarZi-Dq<{9Yd^9`pLEtfa$#10L&Om!1RZrGa3fWq88}js{ z!+*;a_K^~{{5vPuSqwj&<@lE?e6&3X)ry1O;M-IUwMECzJZ<5mBK^UvB7D{|gdge% z7abpoEswYL6k$fzk6+}#sTPcUCJ(IZ#!rIao#@x^PK&@aIe}@Kn#|j_YVz`d0W}%7 zpkrz>ov_~~-r8{czh9I3@vBqhT-h@?8DHaA)r)Q8$%)Ay<}lC*Ay@+Yu!m=KHolc%J~HC{uXRb3IDwP(VW5k-zJb8IlF;C``6x+_n)R!n#0XLpxRbI3tgIoew4Zu-d2 z=B^jXC@E{yfueEOHggC{OwL@3%*T?s`jjuMU32AFh*S6kxO`BD$z!)zb;B(V4gml~q9;V|k zJT@Kwo+WSl*g`b~cWbP?=d$D-Kh@X2Pk`CVI~;(~vGMEM7ZP&B?_lt`@vDZsW$?%N zv8}N3F3Xm;pKdq6BF4sVeU`lIAg>u5ly?*!E3Y4ofg8W(j}@w`M3Vkz<@JEijo&Mf zR|*!&W1DB?J)R{m4S8%QtRWxG!&&kUKe5(T=MEuP^6CxdtH|J&vgFl6UOn7c9_(9edJjgXF#oK)WstWFc58|ZCWxPPISXOwB>4Q0vegFMz9#;?rqA&b==S@KFDkLj?+%DXK~-Vo%m zy{A0xG}!q4I7{B?kjM7f8Y}OqEP2;Ko^8jgz-;Bcl_l>g$YZ$HSb1+`$=eEfOdsP{ zgU8A{6ni?<7i;c>Jm#}C*6lzLtWMGG1@L{E`$5K7KEBb_cxLMav}*|XWKe89V!k7K z8S;uwC{%Ac4Uv`S2{OQ?k5PZlSj#QQND1Y;F{a(-juuvsQ3L4yv5epfGFnEu%O;e^ zQ=t6u5s3v}udG=L6m!it1=1tCc6Ve)|FVzeF%+mnJxov_J)uu3Q0&QkQy@K&Yd^}j z02N42;FAiZC3o#d`xfD6OX`~fDM8mh$+rL%NK53C3Zx}*?Q98rQ=nLreN!Mc(Y4E- zoku88tO>p;fF?7CtGr@$wS)25%V!2E@OpVoE|41GvlOU0uP%KNU?J@-I-bT zmB!9CVgk~?(byM={X}U~4N3gpV=Z{I9{eQB{vzxQ`!qZZ|J^M2gOS9SL1TTQ`!pxX zl-CS?0gMH0<`Z+V_yRMM3l&b#ty55_h^>= z=UMhYX4$u8+21mDz9wKMIMJxIwjZLJGwg?|i;TS*i5R}j@XY- zQ*B3V;u|scUx@or>IgQ}FdOkqMEh~3v9sx)h#0Ll_G86fp)SjCKU&?BVLwJ~&9EP* zwrAKUsbbTou%SR0=KvGYzP@Da>}e*V z{d_CS{}`taW_n6tr>>EFpn7X(y|L4c_LeOErCIi_Ec?1F`=wd-tFr7{vg~(f*}tD< ze=N)XY?gh*2Y=?oWb1I(XB=_X&3w<6OJDs#=5DulgVTv}~vu{4DP2nnU{a_?RO{X5CK$M5YX@79LC zzk7`Ie(;@Qc=`al!vDk_V4SsW?^~z-Z`1exHhp(-jOEOhJ-J2w-*WR$eZ&pk(Kd5O z?Cv_uqjuY)^0Dc281f87ybCwGy&DUenU?{OHT>PCSO-6J=?*vN zQOS>W*uj&+4`69Y{(zE^Z^DSf@^}L*eE2}~T2bB?s{G6A*xoO=p zKSPTf4(%v4RzQ>&DEh<3bx zOm|H7e{1Z2GViwyeG1llg4pan4etOJa*s;*Og>TUB zH}9?H{fc?NfCY;H;x!h$;@`aQ2TV4?kTzQMP}ydN{~7tQ-^^B#vXAYZY0pJd+4%=;?yzR$dWY~C-M_gIu2{TG>c z3Cb*hMZ&ZA27So9Z#VC!%=>loE<~EiS8m>?n|GgiUvA#-q09r*lqx~qkiXfy6Xt!L zdH>M7)8@UyybGZd^fwE68mL!l1K+UUXx{gk_Y3Ad7CJ-s67!Cj_gUusB6KJ)U8%#N zLjkN^{h03=IG2FD4>TyXgYU6O7j%g4)6Kijybp&?kzQ)v3(ULAyf>J45p<4x#Rw~K zic%->Jx-~$=6#iU{}5pZS|M*H-V2oa;VirtVvUn;Y{(xuTfd7TgZ5?Sz1F<%H1Cvo zzhK^{&jbHrtPS&h5cJW!7c^`8TJyfqytkY8*!kMM2z~>nBOZLC(!6fo$Ad=ubxZL+ zL#f;OUZT{!e4mB*^Nr^zzR$)Q8=k-b(!uvpI5)y~0_(MWe+u=D?=zKpk#8(Iy=~s( zqT0TeZ#*~hJ*d=ud{02RnfJ@)-MI{OlzTDj^=DE3e4nQjvQz~lN}Wr4BQBQE-lWt; zv?I@x=6$tszmD$6``e8DPTIkLFYVyJ-@H?NL*CwvYxxG# zE#@uphWvjqe9s#CYkVV|ckpKT(jG%+#s@%0JfuB_yd#W#0^i_g{DRO^sH=p7CSUxY z%s2e6ARYO^crm}$(2n?AMmq}O^Tz!e+L2#(825V&{XRqgJ>QFTzEK{_k@8TzMINfC z$U|02c!;XVlYBvVk}vSrXXp$!i24K(!Y}y_3z8!8pt|xF|M1sIe#CEYzM+@$Mq$Xi z-n`4q846$;!+<9`9^&>m~YgD!}*48OF1ty{ZCt#e}pIgm+Q6Z03s#+ zJB2Fixog-A;~Im zu2OUO?l{3!!JE zqmBFo?TC!nKV#|vDrFJrLq_g8BNuOxd$B${6THOKFUUO({FHwp{jJyXf*Wv#AXHjb zrmU>AsHmb8|B7&RME|cWFQ=`traD{=%Ch|~YMj#)2te_T38>7S;_Hf; z3p#I^^V1|(4KrSH_oYy-C?=QUzTS>=l)e@Q*t)r?LtkrovI)h80aKF*GuPyBJ$Cg- z|E-?)^^bP!Qi8stW5dTi%N;uh$9WQV>D}Dj;RT$XgZTgUIbHUWn2vbpIox(D*xcMP zy!GivC9QIw?}Bj~caGn{`V2qGndOU<^+)n%C-24`o<+jl+VLAvN^0}qd$=~o>qav= zB|C&NZfipzDw>pC_s#Ff4s$?2VoT3dv?{;?x*6>aC(!3lWPq3o3!+%Mz4 zq>d*q;5NPozE9yb3ZI1DVQ;e8{O29ECmY|U^yI?AWN`i3accaAN1zpq&D?Q_&^fpQ zx&Dz3#OiQK=gCAnrIPpzl9j z-uNbML3_!uXy}4BRib!9Dp6>n@nqw6>g2YtZ)fbbO*A}ov^)p+Jh;HN^NGecRC4g` z$gIF5G&o5x7DEK82LH@Wo1!V!Jx2l_{MR_6#^>Pp?LuQ(6yF!ctZ+q;3d61#95%6@-}pI+F4OoniKchJVIaU2_g4O@`u z7aagC`Q)pAfC9^%@AW%^<2P`C@al6Q;oc_OlR~s7I@?%Q--m-s*4ZmerbuSm@;Lu6 zk5QNPNrCZKt`q+|l2Ih??ZwFkNY-iv47Iv9@ah@h@bceh?Ap1tz8OsC@7%iWm&QFg zvtwgw{D!^Y1C;=mxi|bnRB1;txEMN8s?0fLt-(Ue^@*p7(+@i%kY0lkWyDV_$~+k#=)HT z48cy*;^3Pd{F;LcgFb()gO@pYql0g8@DCjPYX=`(;LEIX@Dc}abnurQe2;_w;NWp% zl)6MGOYsK1#giP|;NY_zyvD(wcktI8{5bHC>P5~d^-IBhg8x(Sxq^2J?ic)VjMs(~ zPnBV=A~+# z@G7!$NG%uq*J|Q!!F03Xe!7-)wg%c*dOsS3OAKwJgTLh9e{t{=4t^PUNX@h&y|A_; zm?1eCt<-O(5nnAluQw6DF@pc7*`%L6g8s94e%!V>c;9B9ehl!Cb1KxPYb(|?y!0+2 zPK=QMS1fJ}nKQEopGAxa!c1C9T&C*<>{jNnSjVt=6>%{ASe`bAejf0U!lH*UmglF- zN&l+IUxl@YA-Ua!`FSsKsnEZVwS^&7FFtR;xariFi zL#jx8|5We!|@eU|)CI+zl{#|mx`%pM3|mJ%EmoDf_l_zJ!CKGj1kVzlMS`KcFx`Sr6FiJ+Jfzs$BEJQ56%Jno z65J~IdBF<=zbP0B3p4IQ`h~*693%L2!6yq|BKQo!XAABZ91}b&xKr@$f}vb64+%b3 z@Gk{p0So4Df}vb62VKN)R|^gcM&ZNE6O00Z=@E>`!dxzRNbqff*9(3~@CLyz3cgJ6 z-vn^njU5+aS>-_%(qC2F{68`O%6E72dz%Vfu24OZL85Z9mSm)cnCrSUD@bKSP zJmljyg=eC;>~#hCj~0BS;9|ic!N&-mDOlIFrGk$W`k>(B1z#cfM8UTS*7foGf~N|7 ztKb=e|0G!J^G?BYgnsyD#z*Vz6v2yy-XyqP@KV8@f(Hb53%)`y8ZDTw3fArIgMzjG z{2Um?B<5A2*9i_F%WPdcT(GV$VZmn`AATO5B6JiE%nHFs1k8G1E1&kS@E^?ggy%uQ zKNb9t;6DgX34TxT!-5aOfOtqfCb&fKh#zb5zw!EXrWKbx-af^KF0 z!@*5o^65zjKLl*sv|k85JYa=dnXdfT9lurA_%hFPu*>h_t9FCu=MK*&ul413IQRkw zyYj#3(4TOy%kz&s^nZGxW{92dMpaF<{=tWW)`AI}!xA@xI(8b7^pq3bqbyX1Q!c`<-L@n`%n^WxvU1=mW4~d z+o7i%?DD*whyL+z`Z7bncFf@Vz4AWNmy@Kf{SNUtg75w=v7WQP_B~>r*umP)_kEd% zIhbxXEiOJ4JVWZvAZav~=d*eIUggm5aPSWu?8@2d&|d={Qeg?l<#F+?Kk(!K9S6HS zujZi#AE10)e_j41P`gV=fH~K}wA=K$_=-F{|B{FP4Cpr8H~ya=mMhc6;~pgcZ%9&2 zf>E$ApM9A0N2MIUBlt1FI|V;1_!d;rA+>*jc)-70@gIEBkHZ5FrXS0{*Hb=^ORsV0 z8-a)93q#s8SD)l4c;|1UIW8$fT`Ok*y;`X2Tak$gLE{}^J z+zp;S0pKYx*yVzae|~^IV7i6$d}-U^lG2 zUiaf%3p}JgNoRGI;3EX{pUwY^gnsAgULCn*o+SqX4 zf0OhEAx_v%e3szP|CtyQ1!FA#x8Cy8MJG%Ddmg&W)A$$P?_~~ld0xmvcX^85_T`-H z;4>ZU@+Uwak`pwf`f)z{ufCjh4!+jG-*K?(_qjZDmuGt(p8fykhwJhm2l|klti$&p z-XSihvlyGtuY!JwCE{)A1v|)JFD^e9jE2w{%d_cy-|rm`CY$AX81!6gm46r$@WL&? zPVgmGxa0RI&~5x*7krLzRpO)4=uf4u{M-IMJ_?uj?b>hGQN((lz6=-khZIjc;#)2l z<_;-TGMM&G;tK^|jcu4Ab(iS#L$?x75qd3_WrtK!=sUkg%-t@e=}uxCbb=|sHVN88 zLUk{?d5gEaKs-hGH{$>{`VPV5v-xuu=r-+7I`~BgyZnV|$~loFb&TLD!6ylB7TgMK zWs+dSIyVpfvOILx@2z=w9>_!g4d`~wVXxm4>#@Y2UMALMcl+^GW6CWiqpZE^3mf7`+k3VxE1IbjbJX(rZAsbNnO2 z#5HtQ!7^f&gbz?IVWLraY#)V(VjHFzQ32By}(vK-87!`hR?Ia!Rs7+t%F^^-_Aq- z3FtPjzWpZgGWUhrnYhYG%V zA?cF@@3V-wT=040IyjbulXOU;A;GYOyA(&x&h5umsmil>1yQSX_x?NlTp5Qff zRzDH^S;2o1e4gM#&nEx*g6jldAb6GF>jkeDe3Rho1m7;0|7^Gq2)$b9Z!DwCm4eT0 zBi8!)cfkWfKWRDX7}OhM<#eseovtM4*!vdl7X+Uycv2VX5y2_JrwI;qldg4u1S|jI z0n+tY<-39hh2Q0ww%U)wVqja3l7dI}>Fd||{9AzSc*B+1c;0wbZ2HQ6;4Q#o!Em9$ z<4i0fhJFR;^}u_Bex1QG$b&s)c=<{@xEOdUp09zwSQUxOb0WV;!g|SIKP*juQ{)#( zSnnFVJ7KY9-RpdYb+m*v6?h9U(>2>*hPBk-LgC`w1QTq>)oV=ox5Ho$*WS_{%I53&YKH1y>jJuJK2CmH%mk3JmKHI;rh1$FHt zP6jV$#9$)oir^PC1pZv`W)ENP;94^O&?Y129#2k4kxmoA+AQ%+;HgJ`?jzL9GD;a5U&Oli-ZlPLk;$**YLmh% zm*2EQ&&D?2NY8~+4m}tCL5?_BIWB+Nk&}&WUXlJmv7H%Hw~3!Xe2UF^gExV<08?+@ zHQ29@RifMDF4VfZ)hoN3g5){Y(0}gHYrQWRMzB8lY4FfQaEepUjESe3RY~HL)q2eW zJk9&AZ3J3ytw(P_{IrRH>kbb$$sImgBN%Jl=h0`W2RwYL*%c?x9B;G|QS;Pu9#6CS zcMs2(Z|l(-Q7x(n>8del+-@`|qN)Ns@wC9u|Kiabo_k^U-ak;mHn1q1YgJdmPbEb z{hNo+G@}@%cZtIERZIk})m0u|s=fjI6ym`C@ogL{e@<|<+73()De&l4w+qh}(IuCjjngC;lePfwT=+f6tcUI~t3GxS<9w2O6Y)G8xZdmw94qvB>J2CU z)YVGiX;ym!)1>fNJt2M>&rIQ&pV3By@KS}zmsfNDQqj&R)xjKCWeYu&vF>W1#R~a7r z{Yi`&c)e8(8~V$h%nr0n+C)@L^#a}qo_gdP>&2Z0n`{<6H|!q1UwGQoXgrS#&z9h5 zJd~TZ!gmv=z^8W}bRFCiIPJ*%u=qJi?{djQh?Bg^6}NoyQ}C0E-=$~!)iZdVhoj-& zN!&Uz;%50N-(t$&6)px3$E9yTX0e&;jlY=nZl#Q$k1*IDC$IFvWuHj;3E;1y&m$}T&*;CS9+BKFJ-P4{bT5Wal?yakx^qZbVJ^QYUHU-YQ);)8k8=Y2;!g0+q-J^Fxm z10aH#!~Gt8jaeC@-*slUmiV)RUq-mh^LM?xeMtR>=Qkzz9mDg!$MadUIzl<;c_-x~ zSU30w{O)&&mU##p4w#5~$h%<>K@BKCfgNRdKIQS8ul6?mP6YQ04gxMUJd-`1ht#1S zPf8sL++cXBJe~{Gr#+qvRTy}Y;W^#odC2=M3dV;!&vCeqqmSvR}YKHxseVC_@4f%$NyaY*6)LLO}OlROru^I-B| zOIS<_|8wEAL$`R6#96O{!C9s7?5|q z%aaQ)7WtX;Wh>L=PpkZ4S-mAsE}U}cxo~@qI9NF@f7+3gjj7KxX*|1wvF#^@{4Tco zO!_{iV<7(cE->49^7JAt#qxD?e7gmB3ozUH?;Gs5^P8P^{&P+{f0ef@9#LPA@7usT z>g?6(YXmS6b&WIsz1ErMUax+pS-^9H;Kvaz+xd?%5-@C&f2$#IO7IJY=KzoA2K9T7 z=gSI5Rm4PaUI<(GYMbFd#^ZlT{oUh9shz;@8=lD?&y6Z*@*HDq`CiR|8+6=G_IMsr zANP1til?EA4bM!E=O+2K4TFndb!IYnstix3$McXn$&oV+_!Ps_fz4?zu@7^9Xu@f z>qh>Ap8T*P|Ko=Ks7D_TUhB!(6uim9$smpbm^fb%{1)(Ujo&|ces9*l01mDQH1si# z|5o*qhrjC83$DWGT@Lc!t;Rsl--66~=r-H=_YKyej^56P4O0qltE<`A>L=+Ir}JR) zSpCe0(+-ct`)y?WZ-k3BDZFyYNjr2Grwsitk#iGl+NALMpmM0g#UjV966!o8ohF6H z;&dMD^5nuHk)PSlTbV9@TICPR>MeP4;gmzqg{S6-gO%g*ryV)jnEFhU#NDjOK%Z&Scn;VFW;;)w*+@&Vx?ZGT3cLlF)$106+0Nf%Fy|C0gAWGY3d}ZnZ#*;+ z`1SD({7jq}w6_8B)1b`^9H}Aj&4D5h-x6S)Xd>#?0PEM0mr}Q{4={2k8cg|94K4sa z&0yAFnw0$4|I&EPFm}o&J{$bS>RCzet-xD=nci<1%=A8DFw^_I!G8Rob<+5plg8%* zMc}82sGkRp*AVy@ff5hDAnPQW=T`wcR*ayvs`Yq&7MSkge|PY&1G7N?55%V)ac0`z zHkfH2bD5?yVTTxO%OVAuHEDpw#=<-yJ_h{7rnbKZyakwf@^@gCufI>U&B3p$gWyIJ zQU9rm1QEZ19WZ>K^K$Li&xfnc?mcqU!!ynEdz`En{b~gL8v&o^UVe^EOax!Y zo8#fz9sDhRGSKjx8Cd4wB@VtXu)?Dc^OIy^BI*bHT$sTR1TOXPrhq?JeIRfP=tmFh zG!oN9usTNEH-g?Rbj|ai;2)0Q`Hax_-IOi!E}_pKL4U=O`3;GWmVd8Q^59FY0%|zXw0hFYR#F zvB~mh(CeW~Ze1>-1564}5gwWpo+3OnDLh4ZXi|8J@X)026yc#s;VHsHlg3kohbE1u z2oFsPPZ1uP6rLhHG$}kqcxY01tRCjVfh6O90=TqE;YI%aK_6202aw#IbV=dKC&%hD zd2->jL(j%%!i^@4XBnR3BtG{A0L7&6f0-a12aD67<-#e4?&7pVcd^UkV)ERAhbE2Z zej54`2{+a`Wr8R54_;*hB)+2Oh}FBduA z42%{}@~81wIlF^X4!?`@`E_|*yr=l{$@yo|?K%njN8&FbpNmu~2&jG{xKZ%}( z^9ejODLlDw+M#D-8&A?*yaaZdG@e|z*wC*<{EO6mQWifI{5`=1pCg@LH^Lb<;9{ju z0IUYy0?cyRXz(~P!9+m!$2rdheERdw*!AauiJBe!zX%-b;THmvJ^VL*c3VtDy%U(~ z;T?en5C5H?y>_%{##HSlu}zaMzT!#An7JbbhF8-o$FZU+RkLqzQi_;^f^ z>+m!YwO8;H9^N~64DgN6fqInt-f;iAU_CE*K=5-i?|4@5^ZJql_)>VRZe(Lyj-(U+ zQT(Pe+GkrvA#|&e zIxNy@(s-;sWMiuvq`SD<=n3f`1hZWt{{qCPSRELIRV9J90FR{wCW6&fznwYAJ3|st zpA1gaEZ{klKS>}4=UW_nL{Og?rJPUm=LHN;QLxFw6M}x*GLfJ9HatfMTRnVS(4QYo z2--F_q9z8HdOSx5+dW(yT;<_og6Dep1i{xLjYCM+dl=t-Rm$R^AnVk9f)ACY=pP9_ zOqNc6EBJ7Gq)2pwB3}c2NFCwjRSGnl4=zqS^lW?{+-O)9#D9m(V$%yQxr$}cB>nO^ zz#HK1mqn?AL(V#O*f}pzX1?OU{4WyxJtOB+kVS*F?tqW42~5yr&~KD)Pivl=9DK8P z!<+3`qsM=(GtWKK=_8gn_~Do)6Rb_u*IWq3VhwecLW|F{=Cjl!LUZu1m`^4R0p3dzu`(RJUjO|-gAxLr%8l~ z;5%K!*BiRuFAOUmZ}Qe%u|}oeqM z_myDt__J{egb%|Xk#KLz2$%XlKM$SZrtsK0lFox&o_si;-)#CVN*mI*Xee>m6;6Zq z0mJ{##BInceow~sUnwVC7w3vYujKPA_|PVWmyPpi*w$0>!VF&^Ueh;y+zF-Y3-YuGoPD1G0#26LQwslkQ7*BQ*U z=(~V7;Jq&%8l2&G#ubx;c8nUqopH`3X?WiFD7^n{{2nb-(uV^+zBS;FF}@P0@px`? z<}#c36C+}{* z&Js7qXP)qss=Y~sN#U{abaC3DyO=z-eanZ*Z+TptkDv70@X)02Se*WVn0{>=NWXg; zyYgN9QNnWNxOg;~zfjtc$71&5#Al;?i`8|~kAD?-3oyq^-!a(li?4I~=<2|D@X)aR zKTt#9F9+>9D*NstkA9ju*26akKjYyBXa0C`pu(eH!k;M=6H)7({pAgTlR$k6apU-5 znr1<`CkQ^|22G#g(T4**{sDjDOAPk`&+zajS*twT`0e%R)0K}ebLONs2mSf!Ee`&2 za4r0P4RY#Dety?r_IFPM52@>Ao#EGlZwR`51cQBD_^+3;pgqNZ#-z;qJ>jX&Sj)=h zp*?MhyMaIUWybl2QNyLU6#p5MvH@^N_kR$h%Rn ziX75uQh18+(4_Db;h{<6DZ)dO##4lcCWWU64^0YB5gwW}o+3OnX*@-EXi|8J@X)02 z6yc#s;VHsHlg3kohbE1u2oFsPPnZBEg(nwIJ9LXnq>OHsGCE1pesl13C+(CoUwAGF z0IE*G7iYBXxxz|;*V5BD@I@l$QjrPgym3xBem@AlQqppNU|UvNAnpT)m4=_u(n6Uo zPYQO+?_!t7#V(JFT^<*^JT7*5{=4v9QjVA9)rWqi4de6Az#ENx_B+J)BR<7yP^f7K zAAF-vpYGr;2Y(&7$oTz}gFkT->3X%dQScm*f3AbS0$gl({tcM@$UefwzHE+%8P9S& zhu%zn_BuGn1-u2A{bP;6>>p17rkuU;(D3dpaXaYsz^t^r2GgA;CI9umw1XM$r|}Gd z-{#Maz*~@BhI^;M4EOuMnc>dSakxd(4+0NO1S_`0;|%?iLe=RdZUw#G;AN!L#e-CsAD zE^7#{7`mNzaP5>hu!ZTevwc7Q`{$uEo+rRlV)xG!XMWB;YoF+b)j%oo$BiCSy^PI zmF=Fi!JdKm%AQz<=daxH=f$D46tO6?aj3FkjqqIY0X%2Kw$k^AAEC@)>Pr349b^(M zvPQ(F$`|TNtaI}-L)JiNZ-2teiE8b=dQ#nqW#OvI>N@^M(lytJ&}uY$4U40)qN1z< zoH}d05(|}@7?nb1C|s?J&6DKwSyc#8ShxbBR&@2Y88tEG4!3f+s*c`4sGrs#ztF4c zB-!G+`-K|{lYvUu6-uzdhLO`JP%5%@h2%$eZSFJ#HVgkBdvDs@ z)~%%r`=_LzHhYV<{fon+qiaf5$D16p1HDQ~q(>!kCe=j}%Uh z6aw`i>EOY=n*a>-g4&pR!4q;~JD6)^VIp_%2d&-oLoG}p(=caN?bq&)KfgSdM$j?o zA7=8`?yH!rJ!H3~aB--mwVTIY*ps!Z7>^X*YinWlmVDMAdosGOLzTjZ`&yX&2l;zp zPsV^02}`qmIq1#i(?MA`5BW^g-mEv`N4wRzcU@j}-}J^8qX9(#rj2BeKfoEWOoAn$avA)3CPZ=i^6Mi` zdAZ-8%pqt{YVUzA>u$GKo}MBbwf_Cz@fWzfFQq%DFPn@M6$t48(4>7 ze0zznqX+DxEJ{p5n<(mdW#)h$F$d_jtWB2JsbCVQ$n!dILy6g^x*mRAn{XW&^{dRTt<#~kvL z<+(fo3u7Wlr&s`3a0;)?^&88*5+rsmha-cc7&a)+pZ14VqE}ME(B=;wRN%|hP;NPP zI;W^;^)BW&qhY@{v!1W0np7xflc^SN>*}`!96_oC`erog|E?qVi6QX{7R$j*IZ{$c zDcph8FA`Er2bEv+-hInuFL>R1kn|3ST*%%}voD9^3$5j|&xI~sCq6I}V9vANaIACO z4s6IvY4@QSDioyw>$G9?yd3nVMq~isodawrZS3)$Qi4*IHH%(<_x=XlTuUs_K*a5M z5J$e}t4;CxWM@AR@BlW*Afo6Hy;zCSodd5%i2?)--fJg7F(yDx(aYT@|Lk=B_dn48 zqX(U;dQ-2ztP+9chw@SX0?TMoHeQYAkILEnJY1Xjw5%bc`YbBUSm8}A3cK&$s{fJvpLwmZf%QA250sXM9CX(#Lx z#gurJeJ&O=W+E?gCWz(W?Z14~A> zGdf}2NkJ?NYDBZ?d~7UK3a7BFh%s>SXKnpSog)2-kX&42gxav=CY`jh@ za08@$5Yz_&!O2Z?m*$d~RmO)Ouujv$%85AWRB+r9WIdn?!l z#_zG1gY>PA2UzC}RT)2u2L`-UTnd*e0ni7q)}&>bz$gF&P@0eCq&_UnzK|%jbm0$_ z&-bbSR2$U3iQoV*r9=Fn&XF{0L+ExVHyFDDRyq^Qs#4b4AN--koWd4Kdx0u|pl)|e zxsTSXV_q(KKDZiE6+uy@$Qot<3W7__3#Efm97YgONs^&T_e0H^yeOl7eR?J~H#K2& z1tcB$IldosLILS2sY%Nv%#*TO82oV!7d>_WT#l}g0>qwD4}NgP&S( zBB?K)rXZ!3Pr2k{avhq>6;C%lWA+RHyI|SF6bJ{0`vhv?QUkuyQBE`=L4U#<_k5KJ zg$Vjn9*b;@5aa>N>S{*S8WP7998ry#nK0A+u(YTLTemA56eT=8u+4qNp0Q2il!5W> zI~Fm?L^xV3Z{Tj3(a=PH0upVE0~uss4*P*8qjrCIP5`VH)`nsxW++voGsvJO|6*_j z?M>Gzp}rWr)rJ+hS}*||P`Uv4AmvhvfD_FWYDK^zyX-wa2v}0UAw3AfN{4OUE~%CR zq+>~t$cf>^4X@sWY?&1#Uc=EQHJk{ohSeDjE@%IDUe1P>DwYnM6s?$cS3y_G1@XmM zd^NOkqscpXIAk6nrlnW&o14WX>Yz8jy&291XE(jRGAfXT5yKF!O>}2fKJ@*8sPw=> zWj(wa#wB;4vxcQbDnj>!hUBOkzF zU?kdP+MUC|PnZ{p#X8)XP0r}S7Q`L;{1dUyg({H$Dk-3IPv2is;79m~i1)*EeZ=Y^ zTjy6*xsd%6J%v)+R|~m8$bJ>`730UEB8U9%#m6o6!)mE??pt+rv&2zYHc1muE5QDx z2kFEh`RDnyBp+3AA5knAi*X5ZQOk*^t}35VeeLy||H>gzxYhh!&vNxoFx z#*S1d@xpjsYAB*iz>P9frO8weICfqvnw+d2$cP(y6F_;9V)1oc!H0s1()1~O1Xq*k z2bfWNG@}MTPeRge3%g&xcYmIYx%l9)gtt;s?DOg5`g}-7CLEWN{v90SladL0ElkJx zVA}n5(8u1w=-c7daCW-ysXq;7Gc5H3|Ndq62A_wmv%yVo+Jh^itIPc;N%?6AMddh2 zc#fi1)85US)036}=sty&KgA|Ov1S*c-l|oVw!g7X)lMf(LmFVJnh-!Vt6^k7>i?1 z(lHk&t>-W^X7k=`I2m&U<3S$?IEAw_&G@!g{(jmnDrvuf7oE1-m9(drfWc{duafxV zcsLvOM!(J{7APcOdXoXf9YIMw*|4qXS&7@UF1u_d?LdfFRL#&ETP>RR7} z{xE=_C*NRy?RN~p5RXAT8(d%pFbcspM)6}g8G-IDFp{UkX&)EFxkhv&N=)xzf7?sK!&kYvXUFip1q?yhPQj6E9Wj1 zc1DgneGJ1sv4Q2@<~{SjW$fZoDWseSE-$uG0j5MUVraLSlrbKP4CQ@=} z?O4(k^jR!NF*!f*piIDp@4Ek& z`=%YAAxy%FZz%Rk_tvKcZpFjsxJ^K(UVhgr7 zzz8C5*>hUk1Fey}pfhAIMUiwGSXoe|N$CvW}%dU8`6r;{$rNncSArav|OP1{dVV|o-`EgqfMYAm!B2;{?cX zKMMZ~9w($J64eBi%*3OFY!_3IFu~_!z9r-;<1sq4uBx~*4->?_i)y0_aGKs!*}NI) zhQJYae&{|z6(=dF@+!%2)JeuLR&bPQg(SoAB^hO`;KZdBk_@LQ$)M$^J#t!-i=jeI{A|#LTt3UZf>tViHsmWtR9o=o)klR)#foOSuMEkG6irTg z6{;z2Vt(R_!z3IjiZmNNlF?v0-FKa6`3emk98vdnoiw;5v-O3_dDD7@SS*yw*+)bDym0Z)? z7nfj^MV;u8{1++*wr(xkN~ejV6PCrU(vW*Py@>iUneR#om-h2>&wmvQ=)}6W(+ik8lMsA)sx#6HxWkhr zbaLI}=_TCd$r54F*84nJBrIHQN7iKUZn8iH#U)x1eWTc|;Pq9K;fqlaPAQ`mf|+V_ z6*DS}U=-7DXx?3&=xZ=lr3v?Sj>R)5BvsICy;LpbQ~>@H9|bqaJrxobJ=SCl z-IHY;nu>vY>Z>Ff!}ert`JX&v6prJd88b}7IiF;$QlS!WDpu9fqC*#J)~2sqJr6|i z0gtAgfK%EIF>?bpk&7Wx^-x=`Fq@WzKvJ+uY0198@yej&Bw&2qvaA52AvGC;Bg%P9 z?T7R6nC5Hw$ohs_ZU<3uE^LdJzkuK9;b1q#Hquf`TQGBUOO&!88p8!_KV{jM)5-Nu zNd|2}pBxq6IEFNzT^=h{gq>E|S`yq4!mC&S$Xlw9lWD!t@i*`@OW%U2D2*@Vfnt~H zV<%jz22~XF@+vXki(tVCJy%&9iOUKX>iqaK?_g}-9V~-e^S$U>6Dp%>0Gu)Obe;dk%F$*b;qsM+YGIqIQrxmbp6i;Fg zLF3v*ul(FF@kmNy8ZRz%!&#a%hZyzEYTz4tAV4*%l=E|2SxF*w#V4lf7iI~1KZn5D zt`qvpNrePx7?N_(9}wX0RK>Nbd=w<-8pi1yi z-gWQyfu5%PSlR`=lGfCwtQhKwP;=;#m54V)_zMma(-$fvs;9=` zLZxpMMyH;x4*W;xB3PIOXjM3avK}!Ol~Iveh>>7rvMA)PYt%L|h7hH0vpiLT%aTty ziP@cckVbOtNCaE)HKzS=^{Fs}6D5Q-M(3)Tm7bBXed#oiEK7Fvuw0@V;OK63O;$5v zx=RA95JYM)CN)FSAtNR?N(zb@+vddt$wCBSCRTNE7z_liF+ol0Eo6R34er7;HTnzF z)Zj2o6BCbNnw&TV)8rbTVG;M7wYONF!!o)LWA#Ok^r13HWqwK?(ItHtbRuU}(MBkc zsqCxblr9d#G&|a=Ug_e{XE``)Q@3;x4Ci{kbR3DhtD`#_6RK0P?2j&ju`Twx475_p zz0ieO-SC8Y|AYIqFr&N1f66Rvo4kN(f^uZz2QHphAe!3n8RN*=b@zI5F~_#uqXJ2&w1Yp8V(&{WjU8X) z{y4szoGMr4?F`oCS#k6*-co6EPYxWX%{{jJQieD^39Sk~!xuW-wtcEL_o>*faM$8+ zv1Pf6(YCEB7G8kM>m6nMBu(Ps$oI;myj`8Dd-s9`!0@G zU6YPQ0h0YuAy$@HrdG;eAy?jFSSZ+|#zrX#(PZHb==TArmMO#k#L+@h=zdi`((p&0+C?pI{ z3Y$_m<}&g;+aohkfnuu8;|F?lUmGF*4z*#KRO`bjb9K(~gA2J@>}oKx8!yP#+1DX=LCC^*M!m&!-TUj$r`6)J1K92$ z{YSZI131Jv&XLRR6+9j+FM77<)y0WiTg1AP(@v6sZVL(GFT_I|$8;bfobr)qv{*;_ z;6>aGXCdXT{Dm1)%!^R^l}LoFAM~!_MtA|^ASTFkyqlso21Ln7fh-q>0%|DLCd1^3 zN=KQ(nmSeZrKaDZR*^NsY)%!+sjLRQw)lnpS4ABD6&l9%z*sX`Es@gftO8*IeKKNd z3nU_$ceV(XS`Nme5TGVJC@Dp?dVHowD_Kqv>0*it51tP{6{-bvJ+dCpnLeRZVTQ6t z%s)pC7qQlz4sgxscOe@src1;d@Rh-4)GeD7^<^y(pD!1+hMjY2F>jV9Q)%&Ot2!;# zxzIJ1`JSu5N;v}+NHTQo(@$6sp$IPhh0cb-D?1H?mm)KmvdL(uZz#VM7iT&gmQ?uk z5GADo9B;^6M9vCeQL;0vpNs=Qw3AGaeGkcY-vg6o$M|hF1eVJa%_W>fjObRAA=OU% zbH$TKpG$R?u%U$MOR{}iD9ns`igbB%VnC2y$l$=kXc^+qV8`@KJ%&!ovtt6<4+S7+ z^pv;B{KIoVw4$(BHEaY7*5C(G2mt`@Dm@V181gNVd~qQyE$3KIig}Vq4eg01iIAx# z%_je)hafds3C35-@vlE$40IsbyqF6M>EM-% zZ0?1u4eEPVFX4~o)~c^4GqiIO>ctHjlm}Pg6jCm|8T4+*Zk{7V!?%-nyjX(*<_Gh! zK7R|(8cWl+>Fn9ORRo7_2VV-=ivbB7StePeU?Tg4EdpU8dQ2?RcU2x!kE9+5(BQ-( zx|T$pxrC}fwC{no=%?C|;qZoa!eo_B%~8eSDyuH`l~;SGWC2AMZyqOKIaF!*5oK2Ei z^wf}xg%xR@tylxgwcEwnMZq`sAPiGCH%m#neL~S#*?&dRL6optDA)_L+I6)2@|)v2*G@$SgIwV zHKp>!_b*(-<_1umX*f9(j|qEf4ij;+5t6ytP7XV< z6?lT+n^f|lo1g9}mQ}|Gf0MQ}Er>*<)``TE0G8{Waz`L_E=Rp9>dp8J)}u6lIe>GL z#+YR3o&lVlqJ$<%+`Zwp@soakP#PqkVznMQox}2M@W&jB0(W4lB^B_n#MKqtB^zAS z=YBK4yrl0|yW=NChb1D$EGC_O828^yC*#RH^v2tGQm)Q>Iqi*0>^Ro60fV8(@Oy%a z*!FL5nAD}eKzZgZRrqntJ2`Sq6bOufrhFBpLN6#hn!;_t2HvkjcEiLbwkQnS5 zD*_dYP=WB}zM)_f;7n)X@no?CQ=nn6t6wQTQ$`IC#IN%x7vRJTO2{^$)q zmYZtWA;hgYXZd<*PJLh*X514fV~VOaTG=3cWE2 z0grMg?JZ_Rb|0x@$o`|)-Ri)hT8Tu{K$r{nRDv|iS89{mxCW72Wgy821QMEcBMKVA zTeiIx9m|w8I)Dy@IwdJ*pPOW&7U|>*g9GK6c$EUq!bDwN=rxY2EtFQ4bhR$qd5{cH_qiB< znD=9~XW%;CFm8gzjL>YiI~5s+Q7G#nqQ#YUriWlSKAruLW2a!46I4yDqo-Avp?oD) zi8(rJAtw+>;)Iv>O;IK=otaQYug4<;!!}Jik(*Ublqx~6Lc3OWJ8VloxRkH=lvJjNAZ+G!Ai?kDZ^yq!;VVA z1ZI^^(6WJ)f(tOYT^4-|)siHU5IiI5d9VcEAcP&?BnkOjcj1Mpe-q z+a=}cO_+j~ra}R`@@SVyumf~M(S=>%%(}3%AOtSMZl~Q5eIiXD$0*FJB^|4;!$QV* z*?ZeTy~gG6YYCnq*Oz5ro%O@k1#MXG81cH2)>n1Xbm@`P~9Y?0D_2I(TVAV z%Fa)meVsj5)4cig~f{EyGXELScp7!{!dNWB@7{ag03Y)&SvsuuZ zo4kD-aMv5q6AZqk_f+` zCw9lF-QX?3b1y&H}$`n{=m0;&LhtL8vs)*6V2 zfxRwKs!&0fdN}iip;A4o6sauhIMISWM3Ye~4WM+o$=yS|T~fu8kcKmyH{oDB<$j zhlS5Gi;R^=u8DIda>*oAGDiD2)Ya7&p|UFsKq?x%#6lG?!~-^QirrYUc%2d-YuOrM ztu>`#J+B9&Yl#DjYl$$I*U}n5VQInm^1LP%px1VHlSVz6OGNWpxn%Oc*c<2R=kT zzG7O%kPH`H*@WqV_(dIHMYSJh#c@QW<1nu31@0KO2iZVaQtKL601&qz6~d~1EmYHu zIAu#_aI*fN7?@8jR6BAx-*;HG08=gp#;*sd&;{Ekle;x5ksR96KW2?qq7%X(UJttm~Cnu|{l% zlEByT%XGT9-pr_HwKZ*|M29PPEDhUrBP&Nb5f{vwPW&)y@5L2aVQuxx5~wFubdyR1 zw|OK~9a+)+>R8i*Xc)G6E^LeS<7)z4@N=xJtzu|xZJ`)HfX6znWQwV^qR*svigcI1 z<`+TrHH;SesaolrXyn+Gjn8R?}P?EDK^ zJxDYY^Un}ARsz(1sUW7Z#|LbHG*2tr znTwsaW3SBkUhEYs+fln%Y6WHk)Swv{)WsER=j0rq`?e@)fnPzcDyhKjr6B-j%rP-! zqr!D?J?+c>RdjyAWr@(TV(4qc-~@>Gx7(mE-qEQ=s$}(oLTDh4V87z^`I5I=gD7~lKa{)x&BdPde*^|-L21;`CO`R zmEoAU|Epv+KII!>K86 ziM;1U{q^n29Hwlm%4(EnksX0)$=M~6Kjv3`8FFCBQ`CPbu0``Us`tmUwGe zxDr5SitUCs8qoiJG;)vN30Tc0Ku) z9gNFC?OMCDe5=|^6YSP!lqWjLU1Pai#!M1&Vg+7BDHfKH6C*tL|c|1}^_d z-CF>MlH;CeiHeRDx3)XC1$oUQ^uU5ebc-hUTIjAzh0Ed+)#4*v5+Z?9&@?rR0H?G_ z4)T!}b>UcSIMlig;mY1K5GN=6IZ7UJy>&w$E2_{Jc7x>k#OPFDM~&JHp6R} z;r%avKJ|P!Tgdsum%+N-dAH91)lg8erz>xR!O4l|Vdq_c_Y@gWPQmK%P$<(GMOTW0 zYakU*i80mQKSg0M2qfbHR3;;^_Juq>h78C=WE?RgO~%?r@*$G}`q)cj?IIZ-V8Tf= zumG7My+nF(=ry3CAp@_RYK53VH!^ah|ERIo_8Ro(5|&py~3E+oI(!A={b|j%aE?al$J+nItPjJGK8DhCHkZslVx~s4h4A% z#51O&;dN-h#w>khMnojffv^oBp`?j))R$$DJes}_g3ZauEV2rVZnG}?f-R|DQZt>zN{}pD1zvPaniqXSt zNMO)gz;FMn8!nhR%91J=DMt~u56(cnyBhD$^3Epk?E-WTq zv-1qZ%?Ld+cEQmMZ~EPYGcc}0y(z^pr8$W-K5YcqNDTNyu1R-c0s^ND!FjyGDF$U!z%tC}seD8rmdWuToc>eS4ug z;hI*FwuCq~e%2E|fNezBVaqFOGn4CE+M>f*Kyn4*{gvxsA2QKseGdmt0?G^x-Amk= zU!L(Z%b||UKy+evkK2%IB!B{cIE`fk#B5x*mv)9Q2)05-~E$MuQSR2DJ9?gLc zMQSr>ewwUA935}LP7*@~`bE=t;3FtEH zNQ+HjSt-Q!fyBm-lWSYNz#q*tnO-16ND}C%BFkvHny9nu$2R2Xlg-0AFq|;k7v-;n zyerVD3NoK;hJT?-c|IkFumz@r1mH%%&0AR%LT}sX{OTbD*o= z6M%GG$esW+#uA}FhLb(P$)3>A!|tBqL^i4_tvGJ{uLc~6I7z^;p6pev1Q7ZFoM_9P zKtC?s2}D&3NEJue^?WvX@6<)r4L1#7u623oW%@R(X2aQa?Lo@xE^Z>=!T@`R(Kyjv zcYnuj-vT?huFx$RLewVNL7#baMJ9uLPJ-%?;9NB%_;g7^K!i=kzD&lxO~$@W1}0Rd zJix%)8iHj18=i_cZ88BP<$N900tkJ;WN6EAG6df#g;Gr+Hyq91hLDU4jGD6WKxuZ(|4u>P>TT;$OmC%cBk(u1ZBnvQmG-~s)CW9(L$#2gKItm$ufq;~?D&=BQPn<@$aIDE~ zCc{xe(}BAxQWh3RbQwt$3qk;YkB*^ZDx^$>nU(sHB=m$CJJAbpOl6d*5Lox3!$P7> zFq!sG@RS@=6_r#J4t^L61cc0FXfyYMy9LQUK$wuxtAcbNAx54!Rght$#BG~4q9u_xGxP1$4-v0nH0e2V^=xpjs@>PjrBSFwNr#SnLG!bMzX??mk31CrBKN zNOl(?k~u-NKv>!>ZX~M^5UQ;}=LDg+ER!mH&X71LWTC_ssC*#<$d!!P29+vgV1}l6 z4!p$SY_-3!zKAU8RK@p1n{?THf)tdz6U4sJXY!<0b=u|7DUxR}9q!>8(8 z;ZvEieg=u0?HIa-j@5%CxO(n`~qm<5_X5=RV+iwb(g9)PC9Cx{q| zMEC@WhTK3{M$^Ya)5k{B@-oDc(PgMlDh4$BLq#G$0eL16Sc(D?L|s?8QcGIw5FZgs zB1KVkk*I~!d?>Gb{po}oToo5B7@9M9NU7A*iX5_Q2r8(b_uSDM*r3T&Xq3oHy{xDQ zgi1Z|)mw;+hYufx|9#)>>i_(o|J-{7mlb>#e-_5YBRm};keofQ7h$0@_)+aoznooM z3@&feA+M-4&@jBacwSkzfA(?TMo1c>>K!DNAQg#9=YJk+7sMPKK4ClaUmkFuzT_&8 zl%x${^3P8#-WHzp|7=g-B8Kl`d^x;wNIrGl9~Ls!W6`UH8Lu$pciaT_7XAz%;p`3# z-hp%R)CvV194L2(6EL~eYW5Y_GG5O88f8FbbNCei18kZ^=U#B6oJ)zSYQXKiSV$}~ zKoPw_ptT4T?BKovmrrnjo#a#W0xKN&7#y{p3(r!xEOK&XcC)BjeyCyRijBxdH{S3wBfh;3to;fL-eUgA-b5(`8e%SaO4 z00w~*jBOHV_qbOR6vqRN3iUPqO3%eE0d~SC$Op&?pGrRZ89L>-ffJbhb7yivZ!)S< zaY#VW0fkiiL$5#pB()PDEC-TYQM+2rB&{LEECkdCLE@f0_6H0ta7X|xf`JNJ;9#nt zMTw8~rMsje!Ha)`iUcwK4Jr!xp=XX6xPm!0cPSV2DWh*Rk7aNU#O44bs*RF*0x*G) z01^ngykj@LCjVAz8iFd^?g||Bt#dnPjLx)fp%QqNDlh#+wu#*&cB6ZVU9Z{KeCHT4 z7k_kJLQUa0cdFPhq_iZ049sG2YCk9r(!_*_Q)Hny47*qw^u$si3n`6hW@)$p0(6Mv zaTzOc=2?S$L#oi*vCx86!6@L1PkJWq4_4JxgdgZ+ZB+y`n|?^zq-Ms7qT})h`deGE ziVAUYpg27m(pUO0YU@>SB8~-C1FE$eI?QUzXpy6>uuxbUgTedP*h~)ylRmrEIIy_z3%JA5lyc%s zg>kKPq^+|RSscsBT&Ac;UZ9{XRPYK2EG+v(v9PlxYY`rb8ya{lh^Z+Lz?sT7STNl; zz3~OEZc9#}e9Q;-hpp~t0*ClTcXIyUa7NfeFiV^uGr+`yqdc8N@YvucM@W$Fcraks*}QwveRmhZ zLF%%PZ90?Mvx(K+14YPOCv{`yfp2zmXZ&)GlTd(Ds4{)J zaitR_WP{BLB^yp+gb?PYWw7M@{%yWHpnQG8xD4&?su_5iRkqih?_WmdH+4=lZ zT7;7WYZgPqBpF&X7xUo-0##^;#wtw=$8Q-B9I>KQ9Sua|!~w$xF%R%m9^4Lw%s?R` zLT}KHsycy6Dx#GnBC=K1n{*0m7yM%Z_ja?3bfwZ1)1mPsilY?wf|8{PP(AzbTYo8oP;Q z?lehZO5z{7LlN4N2TcaZoA1L~=^N2ueof0lPzs60iH@Nh)<;=iF5t+}(LO#72th@% zbAzC|k#cnbsR=+7Mj8_+1Vtr7qlq#U&6z`LRB%?R5usm#P$sK}CYP>LppdZMn*2p0 z3G5WoGF-xuxMM2;28}HRBwgxoaUVnh2S_AxfkYjeph4?8UQfWJC`LR1*pDSbW3HuQ zlZ+Vg&9;KOZG;<8?_d`HR`4qz5=a7qIK zvCRRcN}fcv4GU(0`cVlUGgM-hZ7DDdB#*2=@5C8(H{#zIPT&hl0tc^GqF4LA6bhun zqFN7tLp}}mX=;6MN`DKu?|9zFx#I4Kca3LXAF5|eRkM5DAAgbEVlhPzX#^9sqC6t! zx;OnDLIolWS-?82R8`{e4Ix;bNM`oN6a2;|V$J=^o<8h2bj_fszsrxOP)< zuJQ+C;<*W&hJ)%yTgdU{8KMmgi zBC;^MDLmH_EhkoSWdR?JUEP|Ytdx$Pml&oFWh3T+WV+(9Ix z`8D8^8R2F!F5et>x^E?(Yp4cthBP_AffPtSxpd-dfwpH<8xV{btBWOJ$9C-a3_4E3 zR2CCd!Gj}Ju97a%^KrO~xu^H%rgu@Gqi7NxJv=g<8L91%dW1l-f-t!bCu{9!Pod7o z&;?nPtzrqsz8%O0B|3M6&H;@s!dXyNYyJWO%hKdl5_a00yu-SbrLNG!a@Ig-m9o-2 zrIRd5eLPjq-gbu*T?m(Baw{~6nltTggKABQh?pXUb6|i+#7-OO#DKW-RF#3(`T6_b}ch9TPRUnoKU>_y)5> zP+a~fT9>`yh`-vc^Pc4GgP$?FI4xHLi76al@f9stE-1*R_FD)5bb8#vVd!!H6jmCz zAvhaypi_@0h*p5$nuAk}8_MM=*%JQtrXS=dc9A(*c!XEGjJY2mRusC0rHE$86xw8~ z)ne2z08s8tUH8Vr8`g$C$z&)Xvbe-SddY9#2Q)0P?%yMzZpjnd!=xJU!EB5TYf}7> zQVoqrHA)E7)2U+JNm7^Vot11whgNER#>$Q)h zP7Ng8`M|c85R*gnIw6;&Gw041k33U5029Kn=lk!HqyN#UWvMOH&#z&gN;1}tBu^0?-B=n5lZ9FVP+4SHWQkN-rI{B0 z2UpkN@5P}SSOM$2^V;Y#8ki;BJ_-d{63^c2FW};j!Gd$Bm<8)1KBKFrHlr%3x zq!EQ~k<0~Y{w-?^8UBqK2>GGo3rN-dD949iJ8N@4icMhFDoq+jWMhW;5P!8esR1kS zFzqYhg)Szz)eedI7OXe6t8$IMFz+%*^%Kd=%6xE0HVD;CSr}6xRJTx=U8CrNB-B#D zh`$)>?aD(rb5tJxF`xLg3{hMVtbyc@h33u*Rit_71|yYfE&h?Yh@ZeK_!@yqF3~g$W5{B^g5bF^gtA0|*TE+iBfsoVg;u$EQXniR%LRX}14-@BzEo4%zBft` z0dz)0fB;fN;ByfXz`693yEJSNc$TsHH>g-p;om@9$PaySTO(n z5RLcUm^d~~r;l`yE}m4kc0Hq4@*!Ps*i-G`{bI7*ds|H8fw{#r(O$f?{Ec@rkFZ`; zP+G?7yO}6T?h0mYd{yeoJQWF4L1^-gSwcabWBkArLl&^r+M3KVDZ{e$^OFwp6KAI~ z&w>~OHj}HWu!{v9`?G63ktsq(mUu`&3ds-(a7WV`M)Lnm z#>sY@49E_XV#qqJ^a+qB2@W_p?U`P)1!~}zq4vbt#}Apq#bV6RnUfOrGY5?en=L-tvr^pt->Z`}(Hzlsw0&uuf$!JPr`dQ@ZEYa1)|0f44rZC#@+Lr7)fZw?i3CCgZ zB)CBBGwl2*5equc@J8@)_^;uz0Qx}E1nyoa<@fYv=z@`e>d=>1Mlid#qMNdKR^)LZ zc@%d1P!`!<2Z`lvF=_caW~ba?c%^rZfx&BGf9fEnF$w-n_9d1JH+Iu}7%|r{YG;GT zyZ@j)xH6BTT5X?Vq0|J@T=$VBdOb=3Y2cD#yV!pIX?KQ!)-Xp>pF!9WxG%Q+36|__%wJr(twC8yA6=%Zw-vfSGYw4N$AB# z8%LN)1PENHhjr)lv9|NlE+JUI>5$QuL20)eKS3}`8*#u>;y&q4xC#yo@{)7&F>F5n z{%x1f)BY1T?iG`|%)nP!oeC@$8r&2;IOlaG#+3%|(xAoVR^t5f2(OHchInG7vRrM<~?HKOKhGA_Tryjyo~`Bi)eg z^V{_!)FTi^Y15fPkcp{!!TH7qE&Z2FOu48CO3TWg)&sv?^FmcB&`4iY56Mi|gLdWzkq;V}GYlCkV~OBpIr!Mg zeAYvV%#Rer%|z_wUJTv`NS^>7b}@30Uz!uW36cK^*Bfu9n_%Ohf!x*$G2f)~ob z7dYtcIwp~v0dJ?+kVE@QMZ845KCxj>rg(cD zq*nPB`UnMdW-Qz`A-OVw#)R4`b?abpX6-+ZJ;0NgTKA|0fq_Am! zQUgIcUX!jpr{V@(79i-2-nj)VDH{-nTA}-wlj%Fe#i_+R5L_1jRxnerXX~vDGDKY=T@r zU2n$43B@@DipY{XSb!jK7t*x*#>xrA*~B^^(&vCoR0(~)#U}b{PKmd}=ozeDmaBRT z*E8<~V2VS!Oa{ws!aB?lUO8<4_@g&{Vgr|*eCqdUu#0Y-b;Vm!nt%gHa zmCXmb#0w2`d~;ia(p3GuL7KWx7wNi2qGvX#Da#}I=F)JVE`I33SXq;0ZAnyoy10l< z3pDLpMPlj=euz1_jt{29{WDp86yS&q7l7X1|Yq_8I!cfx~QFaQk@%Ua5;%zDklM*jCvV%zpiusPH}=D9kvTe zz*Qk>aO--#8Zw9N0#hK>4_kY&IBfc=2Nz$F)%m2W6pfQ^drxdd#U_4`m+Ln;38z3J{!{dJwfUKOfg1p()FI$q z-5PkeYU%TqjItzNGJ)oVrdF-o)sR_@S5pF{dJ529EUkezcp~U4oI&@oGa7I@cHUJn z$j6IjpFxl z-OMuvTT1@+bPk)r{K(9sNZs&X)%Nn$N(9(THiYcFPaxOM{2JJTg0PqXYsJjh7c-N2`{L!b6y zk?3XUbu_@&R8k!9O%)|oK6xTIK#^J+sO{>j)mRAgcH~S@AlD7z)f(7>hcHusRgVYj z$RZ*xafdhXe?D-M4&ELR0ebl;hz`D<^xh{ z0YG}OIPQzd{CqTU!FPflr(9|6|F^d4sFLv|{3&EHJy1Ff}L6>`;V*E)o!C;4LKSfMY{$qlP&ucAe1)Ob&Pf z1QEHAM5r7r!sA{-rVO<6{GkA0{bcDoB~4S{naOlNEbN-Ymq)cR_3X4u8Xe86E^ zie2Yv3UqnItHA1r!(tn1hXY|VVH1T3SEK7}G!{8i*xFRJssXs{LZ zNK}R%T?z$#3OaO@S{}Ms6xBA(REhXDLXW^L#O-mmLI&8TZv zI=vFr;m0YWXTgSF$LZ9fsy6Pn+7beym!Y7Kzz|T+>sA966hxl_LDkWHFw}0biRLFZ z@J8FMV|IES1b6*cs#WVau=-RveT+-L!}kRa6khutnpcu+95uxreoZc(!kfQ;^fAEg zx~c;ByOU+L4} zeSdJn!xi_!?bdLJd-gT7IzKbcrveZ+1M#kL|8=1VY!*2zh4}k}ca=QddFJt{KON*( z0iJRRVH(`jm<*MnN$h`>}1tuU24)q^rkw49&gZ~%~o zfEZI8EWjo->yj_G_u75{$9mR%hGSpwy6~tklfbOwx#EL;-bKTmNnFh+jt&ue>X{zI zETlMT4(W*7#Q+eN)lRaG@f0kx^uQp&LjXVvkhWon-?xtG36X_<%V-wT49VPIb}*RJ zosWXS6)_$Gm3A@psLNq>PF=5H-|?bWZ^YBaR!(Qqu0&eF72Uy9$L=^(Z7t3ntkJm3 z{o-6sLv)``MmUvBCpgZ3@G>7(C~gNZ6pW`?8blBlX6%X9j4hDL)+&$KI;s52d2y$Pv$f66ypY zX-#2hH;!+jIvnVdP548SEv~jdlhfpe+;D@57fsO@_hH}{CQ(pD6&&Ze+V!BT=&H7= z5Y5E|h(4DehbUb!Kax~*6q3Xd8{?Yfq2QHjjli`x&v1@tv5+4DyM^kro|EGY(Iy1K zHEw7ig2tbQ#bf2Sk=pAAH6KULaj}Wvv0Dx&C=Aqn_}2C0Vm=DTo)&X2hGjrXH4lfw zc-;8xw{KBogu9Xy34Gd{Wc~0hj^)b-&d6hF#R!8;HIYe1F8o>wlB`bxG$Ebv1>#~o zlY{uBa&SdGDQi4Z${M+PM-`ZI1YVm&%g1NGJrg{j-5p$(*1mT-o&Wt0|E<$n#XEPDATpULaa) z>qxRr3k&eV%k$??)d4&#pOkX#6l%ryjOD6u)eIEjhQciS4Ie-~`wiEW7^+riQZ$5e z|N28;hW)6JhCHl*D-!II`thZA!f*LY*&_%WX?gZl_|j7lhH( zV3wkb&RoMW-MA59Ha=mSRhkKN+kO7a*^e)O{N-mIJoq&gRz_rkHb!z+v2N;9TV%hq zCHGu8pRB_9EQ+(=0yG1b&NgLlZacaB0{Hpjb((g9Rf7ANg>5H}20sI5~@o7Nu4 zZD)_%P>Vh{)L7vl>(OfxrZ%ioOw{=Ve>a^%r?g57GrR+9z`^52=1b0pmGreOy;nZ4 zgFA^{8gB!C2%G@@t)M$W)Xrh7gJqVqVEYdey;?@Fa}>S4$ z1H79zqT_5KAu4CLw53s6j}@}$MJVfzwRs4^=`iQKI)#wI5wm$3N|M&#rM zl;z0BMLJ=y-R|HIPisG@tU6Q)s|9nsn0MvWyO6ho;3>&S5vwzhNeW`8NGK4IPXqZ? zTiPiSvcqecD~lzx2J~JJtySBJ38*tic(->W1}(@JC4?l1A_T+J&ZddiDuL6Isw)Zg z)agppL04)^CcS<_8RzzUs!Hx1Ms6>#oqeaA{m3dt-rk!|dmlvTk&V-(ps_h59VVQz zcc!bSLDKs$V}!>e-6C{IIui@@N8JKI4>&fC2y^g(;Ul}Uc5&1GVaLY<{2||%D}Jf0 z#1FC)Q*oq-$ww(dlJfJ#gt5E%i!EB*&T>LUJ;cs}gFx0@Z5nj#qP0I2o<`C>gJC&}?haEgD zZ)mW6dtEHbdV@W00g2-ScXS*UNm(jFRWT5Vm zuJYA#A}zC8IItJa+sz?WFC|#e#d@ujU;!tiwNe5FO?(F~maZd{*C8*NBwa@)pF@Eq zyj6q)ThrAYl?4`1F~MAyy>gHtZ7m24Emfr{uy|ivfRN_Z3XEkCwF0BASdGA_D^@2k zSWbyIU~55OXo&@Zv5=?&VIwz=DJt#BQEvv9xq2XEe;{r0_#S*$$9Mh_oC-7&!IHNr?6DlmpCt|BCR(OeEx}m(tFOdQ=_6YXB`1YL&1QG9| zIRcc+GGXjm2P{~-B6S?L$`F$YW~~TYuWQIFiNg6r%ns}J^Xa5NC`-3e*n^-}P*>;= zpPLQ%{AtB$#RaY~h#&AKY{;F# z6^&pqjPeEiojz()?K@#K7Th#QN7#NnE86Ko-+SFh((&>=*n$}!i7N8C5{6=vkRL7# z34+AfCC2P}B7S03QezQBaNBV^N6Q_{?d-Ym%nF71>W=J?I*qc#J;lwk@~{4J7tGvF@_rIC-;F~q{sz3=EfdhEo?Rwy zx3kO3bh?Fuuje6KIFOZ`->gBIICJ&b6!OSUp2YE08gAsTRkJvWDi@+o6;9>b8oa=d*mkVursT|ZWrONU69q;8oWc!1A~-xa*2GO z1Kt)Pr}{r`aLHS>sbaSuH==N|5;AMzlVUW>n$OtU&OT3kcJ0bBVvz<0*Xr*m>jcpd*4v%4On=%#2GwOs4pmWz#+XTC7 ziivLJG;=8@d=$^^ZI>RH66)4%bVaD9oCx5nYa!i}Ikm)iUX!Bb;9MIZ%um8LA z09>ftwv`_zWb3+4ruDAp7e5ZG9@wq2a$js8)!(7`VsFW`(ZuO$uwYTkJ zRbTSb);N@#V--RfH}moho@bAmslETQmDJG?^W#G}5=cf5S#6an5+^xPY%#}MrX4mn zvs;D;nNPew9*!14GH=-szGNQG>6860dmKylzp_HLO$yb^Le^k-y;w9+N5LrFYz+c*?V_g0a6RNUwZlPN${-WbhK&hXWohTghC zrdLY%!o z^-DH_e@2i|UdY1}1jD{xk+Nrpx6<$UB~RuS?sbav=Hu3xd5rA#{`Tx=Z5h3(w@4{& zi=7FX!)?u-vX_N%ml?7~mA;f9)wnc2nTcb7f9E~iZe-RLpiG99#bd56TV zDIdd$8y^=>>ny&)^uWY~<1&l(z)^Ju|Yd18;Fkup7Q?q`HHnRg2g=3@B-PMu5jukvKW z=QPXWe*dTR?F0b|KGR+TssHR;3>MJ}bN5o+)t?tqn+*GuP8f`@FK+xo3Y~i|1~)FS zPDEfGjs{~~rIBZw<)uiR1n_TtB6x~d_^iO8Jl$LlMwi3#&8bG{Z^;9DgsV4lPNLX5 zf!I?px9N>AdloU(xPrwcCMzq^Ek%FhBn0$67f)6v0K?1Xbzv_cQ&?SS0q9k7Y4Cc z(?El-hRV$_i5GnF?ckUX7&Xz-^S8n`G$u_Lp2!a#SHqfUqE#DRc-fLI;VF;?Feyuq zFMWlvRUC5-wD<}S!1QfBBtDs9x0wk{o5RC5VVHX2#CBL38Kw_%@SYFibj#7iB}B0c z5kUdW_gxxk+Xx6}+0Xs5=wX{d5}RpG)<_b5vDl3#GKyV@5Vie82sSX@W<((0KkVGw zXv_s_9{YQIhOyiq%j1r1RV?_*&*m;OJS6PScsQa`f@g(=Qys`tLYr(v;CCRm*@iqo zZ2D8A^LS=Lw1-U&va^djlGDM>JhW!dY5A_{1`+za0iu=nH4~+$z%!5BgtOPcHi{}f zDh@UGYWBwYpFbIC*WfpZD+%M4oTV+$6s@duA^oWrtE7Q`@21xuh6n}CG_r8jzL`eS zKnq29D@|VZ**Mlx7Hto#kv9~4f=uqI^YP0~wkp204bD7RatbX_b2PaMz9+V$TviS> zZj|!u!a`w>fGYBi#4h^0(IzsW;4@x!hK+dIG=4Ta+ot5}6_Fx+^{Roc2c1+A<1tk`MycxJj{#ac<(M3f;w%O^h z)zguy!O5MAf{*niN2WHoQe?SSkGzuPK4ZDOL}eT8>oQ?&8hpYZb(>{li^9n#RlI10 zH?|m(7o9f07?d(GmK!?VRQZ9|W|M>2tO}7#Y{N+3C=wLUl^`?)-{%Ud+vd64X7OHS z2+5mOo2SXdzo!(*XR#VYR7Ldcsk78=s7;HWit5JKqcASr6xrmGd)`kJ#649JnrOv& zVR~V|*lSWvSRg~y6Pg%WB7IzRlC%T3zA| z$lGTHB}^CvBw1 z4D68$Y*1|6N~Kd=^&dW;0iJ4S88)dX$fn}M4)%KtVQ6Zj2-5~^7}z9p(SWdva8Ead zw$5xYy&jGczb=fcvIo9N6w0Pmzgy1y+9r2>Hi|>p9jOE}DGn-o-J2XvMM4~?>e#^c zn-LyHHJHAQv%~}c8}z$aE9qefJ{mwG-25)tbDR!fgV>n69ERs2iUadyZN9-x8+ZxB zu}y`|_gN&XVo8~T1tM=^KJ-kAGtom+OgBF!ITga4>vY;Z0`}&cYjoN-y8Mz8RA#d0pvCJ>ju4$+xnUM6|x8krV zH#|LW$@_k6XrnSt;14Tfu^{A|-?tEF#4tJ7B5@HmNW0QNWh{+&JCYGJ0>AR4V1XOs z!7;_a#WgR__22ZS_8{pdu^CQrS$JA;F(1Krsq2C~^4U~JDz5u9YWD@#*zqXPrSh5icWPA7W*&7l8#7td&qMw4*I?IlL$>+&e(x4c_+*iF$bx zsdC6(9~Eoq1-IO7I1 z)`!Lis2)KJdq`H;{Fvgln*`{S9)M6PCuz}(x`VWh;aTRIOK*aw+AI=B!FXPj= z;LS~e7DNU#1|mofp2wI7GDrxaCi`M^k*t3UW6)Tu4I|eE6j%|ESdl*k#<$Fg8XK+7 z_r(SFX8n9f+oCCmOlIr>xs4?*hNfnE!#6%`W2ntA2Cgveg0wmVDZ<$3bCPtOVK57~LfgE|pBxfsYAEJ)9K+2y z@B0y)wq3N}Dm>CO*d&n)fdMTO4`R_~$N@~rR$)bG%Wdc(&Ls6_o7O{G>AjZ6bPlzE zw&D1y%imo@lpoGYN&iP{l|2yS{(W_S!|--OC_x_hDyjX_m!OIy?J70%yS*rBCGs!3w47pnkeA88T=7AmTSot4&;l)%ok1;Fyp$|@kq!5dlQ)$ zW?k2l_g-((r1-p_uoq&u_8ZvkBKp>Fc88l*Uo2sWiQMf@{fKRwv4Gq@fF~*=r`x^p zaB1x%hEW^F(-)4Mpr%HX@=LcP)!o(YUS9{nBS+T1VE&R&$(PJ%l`ggIiR0z^FFr z1=;B4xr(;Lw}~)#x<`9AzRfJbHn-)zajj>;zo`)tvl`4(pG|o;;F}dSV=@tF(Vt_IQX2YX4%&X zvT5GM_c@~^D)OL|FB=uX-}z(N9gb&%tHIRX+;#E1*$V@$CcKpQ8-co$ya3#0q~FT* zhISH-x6Np|>gZ%a^5LQz5z1G8zi^c=qho}F>fzPiPC^~N1H}t8zN5=n#d?NM>4}H< zG719<>2ApA2G^8H8jHwEycpLFYO1f!pbUM=$oO`gszCJl=9X+`BXkJbq z4afb_{9^E^d^ee1;9m%>%i-0-Hw(G5i{Zo*N5k_+SN;Bf^6zl(_z*wF^Y@S14^Ivr z?ni*L3p_fHI^X~J(|6MP3GU1Pe_!K%)y>f9n4cf&v)b5v)+w# z6ED4?o5da;FJ%meP<%LhgBpC#e8XDBM)y)%BV75~YzM!hE^+T{(4P$_#yj!e$aJ>CP0+^~%fzx$c=rhdbNGFmo8EBxxB-Pf6Sg5dQ{f=FwdGVO zu_BHkP-(H9!K^K3y>TBehvOpeqqaRx42^oPLapuBvwae5`}JmB7qjA|hC^)lSno!6 z$7cIP6|L3{ZmcZa)6O^ra{=7#q0j-kA(qhWL@fsi&WJVC)#n#H&c&WIO|RansQCL&oa$s zn*A$jHuFvK`()Yu7xPVFii{{Bdktii>Lt$nG4sd2l0S+}hig8S>W{lG&f!Z!m_UiV zn%zl*)-IeJjW{&bgO?pjYaB|9vhs-@C8(V#3B#w7eN23IqY<;|?{!G*fJtzAr1zs!X!; zhDjD@f)^rxn(^>SGJQPza}wq!G8P;p%Pz(2QoKXKe_qg5$h2rT8S;+yU+8{0 zFZ3+XvchF2fgX6%%1m`uc(h{N+Bf0^N*8R}nij4(S~mK`p}P;p^U z6IHA7j$wA5H0C@})9hK7%7i?3$M^1Fhk1|+7-GkAr!Dh_%o{!j-q0!V;3nQ?yqQ-C zR<9NLo158d(9PufIgl%&80X`~cXudLxC3q|xZ0byb(0Op#_lBKZQTURA<&A2xL|zT za{u3o)^2;Zr8~Mu57ICKAwukNi$PKKh&O6!B!QHYbNCC3&)0~_oL!B}z6m{Xm}yY= z@|%y`kZEw42CKV=l<4N{X1rIsABNr>{_xpzJs_og4Zm-DeiXWnoO=FLW?KA%iR;ZQ$c2}s_gfQu*YtTCdw zdV3@e{H!=w80P03fb^XD?N)VINNEAXZb|yH>j?9Wv;AsGhT!~LHOj4=7LiE%aDJMO zib+r%b*oTsysC-F^rz-b-iOPhEK+AOskGbel}5??aD+G#q4O(yK`l6w8wkD%Vru}Z z;87w$>tTd_DlMwD?1P=^>Xb3T&(lEr&5cUwJW2ozN9eqPK?oAN-Tuf4!#BwF!P5p> zB=tbb z<6Ya?<>mvIIM{IX|9s4{v168)solsAbBMua_wgH0Zt})#-Nr0$7(DCtrvp5km>wTK zh^Cw#AI?0BFD|7~b2iPpn|N6x^Q^mb{bruEyh0kl32l3te)$EdCOjv8IKMxdjH?16 z9@WVLVO1QE4SG)+*+tAs?A;w?Z)gH58}9khJ489p7c}_P@0|t65eacIC}-2jhl<6Z z`xbtGE87dp+E5k`@+d*(TKR2;yW>|`Jlwr_fJD^yvb zx;up``v&jYH~7y^_pB@WYZMJxAY_5CatAXDge(xUK$uO3?TzLhCGY^(t<8HB z;%ywrOPcu#aKl%CPqS@S$7ix6&ie{^Utw^!;UTjm{!1h=Zo8Xdc8GiIl*5Ou!@P@A zf8IU|hAbGeV90_2u8?Egkoj9X?fR2Zc(wEp;R4h|JH$QF`(K|NB4SFm9kT6^_jU3! zUZ1*ak-d2P-St%SxvQDJuag`BJH++Sd<1OmlYXE3tmgflyub6e+k$>xgzG&T^^eaJ zIsZxzDuIDzg*Gd+S)pC8nlzxi<;Z=@%Wf^(svM`ud~1c&&gxe7)n;GqUHfX+saxrx zk3$5F2!}qh;>Xk1iHz4<=NdeYk$<2dvXn%a(Lalc{iNB zF^qlA?}jxIb~Ybpt`qPL*wSn5#>$RvxU!8M-K>ArO;0u;vjLg)ug^*Ux*m>)*Yj&X zuNdwPAYyrDVVQ+x-+lJo=ffypnr-2mx!1k-RpF3DLKX>GBxI40MZ%XU5}tL3<8mixfm2Uk&$0nmX+ARDU6qeO9wa>$`I!)-!RHiRo28*%At^(T95gL(Xy?c z!)@JdxGgakUYvJl(}4?wBScmC_kWjnQ;rZ;Wk-JPpFHTCcDwmiy3yjpGxE7H*{mD*zKMTMuYyWC}-IR*5v+3Llcs9^{pl~!pPqFG z*Eh2dxaK{a4SS>E|Ad2exZe$RO6g~}>a{jG!sJcM#91VMzm{mJ!> znSRId(%?Q%)n$V(8+_T|TN_!rft8sJzGZ{2)BfgR=X`KA96PIu_Z1L9C$p-oSY^fP zBQJSoR<(Fstr34+*bzL&Jt}jgALF{h`!d{m&OyH9?#$!awCV6jt^QagD}XVc;MYVUO)XTy&5qx;E^$u=S_^8u(@J+%>BHv+VB z4n1Eh!*+{UW`prXw9B&FXxV<<^eNTN-!DTC^L?bciED(9Gy*g;r$qxVwZ$@9s-y0F zWFQ|I$VUe5{Kx>j+0%+UJ6`HO#?8C;<#h0NFf9i$9(;BlRZWLGFtu~^@}}K$IYNB% zE>Jj(zREG;^Zng*GA?^EL<`JT*`fi}@D3U8%;}}MW86B)TFr{k*-uZtJ4~<}Hk>j3EGyH3UF$fEaN3rdn30vO<*=s?Xs*g7B&9-urHq zSLK6}%erSizwHjW9Hb-%DY?5KCA{`uzUz5_k`oP3l7lI&Q6aL&JbTQu$9&C>cLNsR ziySE_M@q_(l5(V^-V~22_l7e({)gM=?fttqbS0eka9j?iv+jI6{A2EcC{JRW{jE<7oL>NxoLHBr6iSOM_U*ap2Z+42!@1m@p1iw$3M$QNCJ|x8Bz6 zujGT3`C#RW71D$uhPRig*R)?h-Q?rT`Fyare^cFZ@W;G2vV#~W2ybWicych#CDHDl z^X!<*j=AiZyJN>(mIn>K=$Xocs;?o2v&aG=3xu_P!E7L81L5urgdb+b(UQ+|57*qY z)zBCjzR1{Z@TS1?jNRt2i-!g?XE<+)Go<=s#h;L`!`2_M%GWuB6tl|M)QZga&X&*q zW|gtK)_`lkjsH5Uj19VNUT2lDLF{Igu}LSlsEmVYuMEeU5H2^rue+8(XRR@7jrkJr zx<9k)&_CTnEPKK3ZsQbY z?FJ=OWOs=Boz1swzJ2_zRAzUX-Q69#%jVm9<)ZD}3+4e-6u?F`xciJ0Yc?gSQ7w_>{{PbcMvDEY1JhhkglQ&XEgR*?Q(T7sL z`Un5ZZ}a50d6o`GC3Lq@l4~_Z#eAD*Dah?(dGD(~8JDxKHam=K2@8;cb_QuXt zZFX(8HrwB((4Lt`W*&bF=J8d2)N6$yon1}Y)f8_uWFu_xWLG0c=r(PH1y@sirKH$J z7{P3I{bgpCs-;;&9kh07g*K(3es#ZP*OJd-7h!vMlAHn=lHWP) zKJ3o+0Azo|>Uloinvb`x*p+L9<{ zBS0(KdiEf~gD5Qf_rZs5e{vlhy#+2E+6Bb@Hbcc`W}TV!b~9_)vU}Sb%?DLVPtJT7 za^^dh=}iYbXq9O{)BfLp_OAxETf!~Spr708!qCs#2bt05VA8jEce9<|zTJD>$G+}y zIhzj0SKa>SayH|9a5WqUBG)%%xnrkKePoWFIr_G9bl;9H;&!yY>X3;$6Zf_gH%`|L zLICTcIKtWAOxBsKx1FpLo}CH0v7O?4W@ve1rV*ToOJ!PBwd3KT<7`hh`NDJ~Gn)4_ zmzPdFc!J~3?iD}g!OyIdGuOCo*^vSIAx_rzl*G^WL;(Zbrl@_-r(tUIfGlii-8t!7K@%n zi=dGGG1u>)Ov9Omx15HBOAp88U^)vrPCPz)lJ806?atSK3(Y1+F=)&jO*WJB zq2%Sg_J$5MWBqn$6KZePH=5kO$@)fv*iCG2yQPp1 zmhjP{<}|#9%=sL|XVIMB{C1>Gt)4_Rf*Dq~g|KRvodc2RNDGpmeEirB0&Hi+Gq zg>3rvM}uAnnY8EU?s2mu-vP|ZV|)8gZa#U~xg5rL8+&%{KF3SS(bfMx(bYG6UegSu zc*r?NU&_7&#KPNpajQGB21J?)3&*kcbSU$-BX{ zdyZvu;YUrOl;vw;jqR3aPxT!g#@n=X@sMhJdwF?eTRh8>Wmz)6xyiC*<-74soRMha zrNJDTZCOBNS+b0i4L`D-mq%|U>)4<}sS)*a)60Vai2j)OM%`&|d=*ZW?&(!!eGYps z?}#+G8`TJvWWln`L^r*1f{_xhix#^%JZ?UEmc3v7?y|+wxp(&4)5-X9cy;=6X8SC- zEm^jAFNdSSxOY7`{d#||RXk|zw)Wbcvq670oQ%s;DZ2LnX|0pP&cnBtq3-F|hppoW zt)hM0Nna=3i*IKXdpHwnA!_y*-1o)PWABBW0q_s^$L+^pz{Ng}1nh*ymh0l_rO|L4 zL?)ipv*;dZ=lOB>$6vbN|M=5)FE$!dWEY#dOMQ;JRqQhwf7*|yV)yBo52I*l^pTb( zpfnToUpe^Deb`MAwA1c{s-4bHlU{IK?pI=&pt+sBwCGvyZA8q$gHsmRPYYneZbkv? z2?xcD0o9dG98@dDU_|@zwk?AZ`N($;(+Zvc{f{_?dynSj^wDtKAI&cYkIHwG=>`7n z_xf)J(}!>BaxVs#C31jtDfIud_pZ%tBiFjHe~MG7Gc{J>*aUbHDQYz3agsSxXEaeH zCv(bQP!I*lc!#$EKwt7<|MqvSzM(-REXF2Q zCbVemtB0mZQNEr`(n1_4Oc!Z7G2g;?R<{VG$-nPF%0IGcndZM{MR`OLC1T<6gZN(p z{ik9|*N-oLmp45>2og34_?R^7;>q)qqi3&6I_K(gRi^*pg9O!5gfp=e;p0;=OP0s> z`B=w%Bv!C_JeIhA65KWtX8L6$2A-)7_;QP{HO71Ud6`Q+oeO>DT2YZ z;M&3+2z(1I=aw&XtyIMEYZ;=@eguJNoxzl&Lbu>JC1soS5FOFQtB8)F$ zn#xxu^GV8f=FzK&BNgN+#%0*8!7ic*x}RA@F3&`+x3{`m`Q;j*Oay}6VHM5dKgl(w z7=(Z>^|t_oR&gFD20&7Fu_8qoYb?ew9VQ|b(&9fUK0?tcMNcu9vKH_LMXe_QI5x>- zqr#h#g2qQ6oJ~ND$IoiacWkEb%@H`9W<@RjMn}5~ zs;rk!x?A}&WFZZ>tj{{Tlrvej(2I&aM3pfbkuj=xiOG!Z0swRqpdhqZN}XD0MiCkn z@5x`eAV`x~WqL+rdVVUzyJR4hz+10==fp2lh6LbibN3LUg9I~5!8ZTFM;K@XQo*)X)Z2{dG zCzZ6b)RsV_z_;b(!M)S@dX<}|i3H@{{Ur=KQHQGNrNd_jP4yrg`h}b5q&q}U$)KsG z2Zrm@&Rfe^72u)AYe_X_!$T{o%JHEV7UlQ|f|3DI`w@^-C33-HCfKPvqF5$r+ZKST z3LZ!nwa=y%%7^>gsM&`ROD%Gyxl1B?v)#uwNx&aMM_G`p%*n@MA0d`Q6*+0ZlN7n>m3m?6$3N1~ z^xJHiH{5#2HSvbz&2H6L+5Yu#X^i~r@(-k z+`=|lk3x&8UI$7CJ_4QURgZ%?w9dvMXWvibX?k7G7BsL$b`%jY!Zp?57dQpZodQjE zd3N(2bZ3quAjb>h&cC?35aLdYI!fMMi+~)dT?jo0J#V_Utq$IgW9nrWlDc9UFbWt2 zj8Z#FD10p#g;PQD{4Mt64xv&^8WVQ3b33}#D&>P1>!}=0s_|D=7?n=Q;76ZQvY(2! z35__GWujcXO}X8Th*_TxOf~nS)U)vw zVLLhf%iZ{jv%3hf7LfuaBE#l0!*(Yn+7X{VRfs7qP1A!R996Fef~4+)q<0BN6`Nr9 z3K0nyi;rb28jqg|5nc-j@v#VTmd&%-YNlOj8kHcGbcEm&h|(uf+C9)M8p|SF{aNy< z&NQ%RkqbmFa5EQp%7@3Kxrx+PGgSIihG~so&FBEpR!#V8&0K-!-?e9}2V!g@;-*M> z`AT_h3k|&GS-_2tP>=b{aqjM4EKPNVH7FI0V~F#5jq|qAUVj^Et|9B9&?85CJ;a|; zr0cK8vYn+!LcORVhB_L=Q_bY?q5;+B%31F;I7v)phLr{@&6Aa81||-w=~+a8AUl{i zK203<0{Dzuw_{!^Vy;f@1TmxYIl2tnN6hV=&^o9ldx87Feg3%*_A%^Z@AffIU6Zpc zI`y&BB;&S>od!*UCOy)mef|bj*O}OX8E+8Gy|$Yh^F#zDq;m2syr)j5=( zsj?v}vt*k6SLYQ5RMJ4S0 z8W^wrL^7sezQcU?Xuj)UDVm-z&%@(94;laB#JGxp9m-z+P7vbUa~S`AjeiPJ6jdF@ zp{&CQ`$33QB!r%Cp-01j;yU%gqJu@}(V}B%_c2*&JuB;eP<4i?GtX6L=cuhk<+iWN zZI0lM<*=}LHP8NB>8jepsmT;{7Z=$t%13Ft6_Y!Vk`p3QHLC-0Ly zkblSgcU2Biw^uq5Ok zqTX%65`h#Ex3Z_p4&|UJ#N!c<_Z*Lhe0<{a(NsMTRn;>p9!fZ@UL98QR~#B46#>g> zQBaytnoyb>Svd(3L|mL0>~tmsWk|#TiJ>l0jd-{?svA(<;H$df%&FRxBs`u>(ke2!N79M$P*G(HOYAL7%W_;l?yQwjKFv6}01 zRfnoZ67e6zf4mVuCl zP4Q{Bx`84#+7+L6^CQOAAq3yX5d5fWwHk?0!fjW0n9!M&smGS|18QAAzocIF)EYP4 z8gmHL;hQ?32%!jDr3lFnjN|+=rV0AlwKX~s`48kjyyZW{tj_VX8O?vmX36r{sWCDf;UkB{P)aXHj0^(X-7u({jqVm-!T=y->|Dm6`U@TjVA8x5#D zCeeuAJv}%nV8$Z3GqPl9h9H_32M2Gr>=mVO{i|8ch zAt{s@5q7HdQP`pU(RbQ%;M!JL3a(WbsCwbaAQ-P5Z60=1oVYsM9OUepoP|^PA(^hy zc(R!3>C$0Gjy=*pZ#040YA+1gN`*x~iiMJC*CLI&%PR_t54NBvW$F6b>uVlRYEsaHeWN*b9V- zl4~avhn*^zL`M|EMDb&y7;#+%QRvK7K-&+rnaFKx89eaUMo;4~)% zhM^2xnWF+h)$Xa9#D{fASs1F*0CdMNK<)+PYiGkT*dbGV$rS5Qv@nzrLo-kg^zE9y z=`=6^)iqE#F{w_$(gDA)3cw=tWD0lORv~a&oU4eNeBy%1S%;yT_KIMnzg}z1R(|5M zmD?f`#`f&_FkG9X3k~gBLqjk;alv5eVU-kw4_&MNb6Ys(a5W2aGQkM%&|AqL#N-nf zlUrsKhvC{$^{`G{TPGrZV2$Yw!zwq2=z+iJffp@BZ9qT#RW=5p45lTxqcn>>m^F-$ zXKCMLrp<|@EJu;J@sPNoFpDqQ34FBxUnDO#XHbIMTB7ZAsSH^v;I?*f+ve24FtVmF z$%7E!n7MY$yy>|rJ4_R_PXUip;;Vmhf%a(4u_hSL0x?$ zfoNF9U&5dhb=2sK-iumuYg8q@!-%q6)Z8kbBa#nCT3%Ve>^hz|;m}Hb=cxxDaG=po zA_BIB9&|ZPRCRKN5v2iWyo#bD8t?%K5(HV?fukfP$y;U ztW+Ce!~o+9Ym=_lb_c;gSaSfA5=icbTL}g6zM7iRl@VIqd;o|$ zhd8GKh0Pnko=z7Nn%a<6Se@_bMA1HLkSR`&7aeUb-7nP>Bx znE%%7$A8l_NOD%YHGLXUSiwsVLzhtPdcLTSHJcux@z<>2C7`snU0}>* zqIw6w1;X4S%){K&9Z2_|Snq)^rMi zmLbglc7ZXMmJmEoDxRXrxrohDjT(}kI{|@H{eal4f0g4DVg9!Z4e3%tvgaua^1Ia; zI_zo6o&~sA}8jpvK26g?}> z+6sKPfH%lyauNjLrB+ujMOQ@{BIX= z1eX%w?mm`kym#26;UT(@Ww^bM1*#U=)7?csAqQN_0n``mBBBaa>y~EyTN@5Bwza+p zIukk*I@2@*w~C>mGodrNQqX&l!l4ps8OCn!b?K?2Z|Iofut&p;XwokK*=65!Yp)A5 zEi^4OEi`S3@}z3`N=saEz?ge+b($BC9gxBwk&kGi|vBNT(X$%kkR$J^2`XT0!L?z zDcJqy12=p(nxJUE1xI80Y_gC=`_>!Ww;s7)(J9q}#Y9J&Ic5A9_;M$|bx#a+Go6^e zm>vz8FM9E5{60;t(){RED6^qG8VINoqdl4j_^GJ%!l2(2{ianb&^KEaM3G>5c|y3` zv$iXirvsdVPSA~Nr%m*%Su8zjkW*FqBooBx)rRFObDB=CMiX2``DlWh-+UtsYI$UM z#V);K1fF&g$w6$_EzSB*WjVyyWysYJBWOxKJ{eVls1ih#AgTndF~BwJ&Y|4hg<^*> z>Qb>^hO#1mGex7%py*jW<9+HG*WoAjM!7B@T6PL8YtI<>Zz)0qxD)~KM|YvNpk>|C ztbZxv5M%I1SJPVzaEDL^8>4wuob=((y{WD2!wm7UCRmI{B1U#a2$CaC^Ft1StNhWM zRH=)kT;$pl?OPqE`lf}F!pWBH3<{Wt7zSPD2if+HSZ9`>!S7!lV zK8l^F@&VNhu!%SFQ~v!rm{={dhJY})2m_0?>wIvwiGO-I-crqAEMu!%m2xyl%plyf zB`F2IZx`PqF@uOMBD!89x*{=C3+ked9(D9~JPo1ZriO}T;nHc$v0^@L(HO(jJNMVW zntnM%nGj_{lxed>&A&I`Ff9aA7^W~xVb7-UIDAb}rqg)2T2rXhbWRGj6GR+ZLdCD_ zyG38k4x37l0&trGsJXm8fa_yTr}jk4%pd>T1;$*m*kyQD;(!XYo}%@1hgO0^1tDzV z@iUWirH~+o7P_kg^IfxNM{vKn22>0`^IR2)B13n?RgG8jI=>1ibBi+HG6DEI5qPLS5oC!9!`+|Mf4}W&Z zzB>ReOd7W)jem&%jJd>EeUuq%NaJ@}L(B%%5HsO-%EQH>SFQPgPQ{*oE^66!!SpVf z9(om}fhZ01S{ew?bEAN~Wh$p-+l7XNhI9)77@<3`lUgQa9B!9APnq!?SVPLl)6@rt z!@Y!iDQqX*_*2o-9`L^5|9gec0zvS2v>n=O6z_KhtlsWs;}j*X}UrMK6LuFBp!u z9&GEtU~!Z)&8S7{61w03llA9g?m8&=`W{E<_5s6-R@GiBjbhkkZ4!FBv{ui>$X$af(k$dt+P5D zTIe{kEXJvxJ3Oxo^46ui75?>AN_|a>&-HAzJak2$-wWRwzIE%g97KgnQ32l?zBPR7 z-JQ+q&_-`-T@VDgTLIqA2usTt!Qpn{Tf?`eGGb`m-GRU%_v+krzF3s{Oql_lU#hd# z13F*kJ9XqK>cM5!1{xn4zjbj2hcW|BHk@pz`&O!ZIN6n{>Qo~7_gY)FT^LC&jihn- z(@UPYGEJ|`*`lybbxcvAvu#0bE~%}pTB2nl(&={5qKOvG9rY(d*h1Js<+|>s^zT7{ zZ(Z`OHp%ns<~?lk>0;v~S&*Aca)V7yZk~S`37edc90%)yb)R;I%fF=Y!DBwwbSe@3 zgSBPb1;$)TT4|GCh%mXXW;yJ<_~BYjIv>42v>fU^hwIKpUdtq<)9oT!j%Yce<+~a} z;gog#n~*+iG9PQU46H5NE->cOLO_=Yxv;Yc{-HsracJ4z?R#&c=o?SgKBF<=b&X#}vJb^sgRG`wke(^d+@e?Y;ZeXqS~ zJ~^9C);^NSY06W>orXINcN*?A4#cjMn?t#~3;(ob+l4y~cN*?A+-bPe@%d$3=BYft ziwFY8@8S489KRR&0)az2NxRb@lIbcn-gIcHz7Hca!tk*B;)hSgGRgAe$zooV&+X4U zp1e=;fKD06<~K3_P4Xbg%0gT}3F7!Fy-rrsGEQpgspB$Vr9tQ9`AINKmd8zB(e3{D zSXsB9Okfo7P0B^?dSzPM^M>71z|+Rpb7HIKCr1d3Auxu(7y@Gmj3F?_uB!iZ4+3Kd zj3F?Fz!(B!2#hVQLIa0!i(RO(mTebW*QM6gfw4c*&n7I^6JfFLAQ<#fZoEak*cE9kbpfX&ljJBG3Ewgi+ zZWsA#1&gQVWlIKPUDr(-Tkz?yXgpE zl&Dn+-lev0Yu*x604jLOC(qv*O0N$vJv5~+G{6)C5HYF&_PX%eT4wh+ z-7f5PMAZ>hM^qhAbqxXkVQQxW-2ZmrVY&3M?zGp{T(vGWePfs!BI<~!N2q&&g$@fH z7CJ0+ZJ(m<#lOi53*Dv3yNlG4LyX;Np_>^^Y@?&<1vWZtblB*qdclDPyE0G_jcc1} z;sawo)^un>want%#dd))mwbDtjXulf*=#j4BVUH5?xlyQIxKcr?6BBjvBP4A#jfN4 z;;HXSMAbnBJD`H6>tkV*Dn_YRopJt!4g77F{IUJk^Wuk3g_)9^m1&+(=JI%%Wcl%AF)zyJG&DJz#6_8B^PA(z`y>zK-!cCk zmwA$vg}8na#PL;novfy1ERNzftaDuEt2F4GJUS>x><{74^EE8$VDL+g}2fz7Pvt`PxW!nYDTyoX8^ZMmDK8+`f8iuxdYrvReUj@CB;9K-gQtG9~2oA*z zYCTQC8b()?{)G)ZYnPt&+fe(~RKi)L+PNMa;tVeM)9|O^Ps5*vKP`$jpxJj|+&Hw$ z+Zq9Zedp4?YbzDBj1e4e7ydN->8e5wTDM(VS9;Uum!jT8d(*?HN>vZLFMc?XU6g|^ zWv%159O_2OzT?<83S6ol)b6_pL3g;>gc|Y>QSY`URE*8o-PjC=T67n7kJIhK&xW53 zKYLeWnw+w3J8d-h+3>Sn+nd}@8#-RpSKfLYy?&{tne=MrIc#z%g&`myARP0ue@*FB zvBM^ZO%9tJHo2afSu;g^s7D`bI+chm6X5>03yirmlDH|;y$@ko`h8gX)5T;x!3H9B zNyNJdJp*HIF$PN?mOd5-;y_t)|3)7<&vg$5vBsh++qxdHO_TEXx`3Wl3*@!a%#vyLUvt>ts3T(KqP7LmaTw_^ z(qW{-NQaRQBOOM%Hc=5BhmpQEKMK)tmp+9!xa^Pgb39qhmb!{%6v`@=?l9;@RA7#N z(0AwuZQYpw5EL#21qQLqmaxrXo5MDTZLT2z+Z?tzH6GTSRHp&-pI(kH)0=E=40HQL zVQ&3|We&^S^~rnwr5Y@ASmwf#1R=O31h8(q#-Z;bqwj;qe5~ovaM}e}Tee+b%%!BQ zCbf*ZRm10q4ix@W#OIfBnWt%-m1&-oi~M+*Wcl%AF)zyJ_Eh@g$@?S^iZajUH!=TB zk0n`Ii0dao9ABl^$!c20$KM7{Z^0?_My4@e266f}l35){10#i;m z`9g zo&-*r!8ao~-7Hgr?+t@RZq$q}O2r~yX}IBLLA1CBZq)R~~pL|0kV((69rm_F8Q zS$Mc*+XcqlMzg8TB%NPbRVFAb!9Z~g6c<)V%S5Bo?ZOm?DGpN{rZ`M-4FUfZR!#-D z|LwvQcWa8jekn(WQ(*~=a2Vk*!eNAW;)`^ePRg(-sn);8Whv3SH!j7FpC$^Z2DdnZ zGDmgydb^nq9`mtg%dFa#Z5J4GDQU+M#l!P@<7M9}^B!=Scbs!~`WKy1)X}-u}}(h;F;pVXeZLHM``{ z3To5A^$2QzY2b>}xFg(cxZ68$w=og{BN6;gO+skfQ)nAwh%n5=>%22?t{2WlfVK=KR$)w*Z`<=s`e>!ZXhDn?lsdR& z$v>ytg)I(S9JV-YaoFM-0k;jTPDL{gu@7j z5e_3=BjVIUYuE{!Bnr&479O_fz1bvm*ivmb=8%3+n4s8~V83aoNi z<*>?Om1~<6!E#vT?@I4f&@#uw;dX^pK1)8uYnC~RS5Uly;uT?vIOMinBnq5v7xp;p zaoFRq$6=3a2*4hPJx-=!%_VWDa%GhKW3n_+@=(>TL>)xQ5hX{IJVKNlRynM4Smm(F zwM|+xMtoE)_*m1S(bT%Iihm~p7;{;>a$XMgd6#`E9gXb4*xh#%x-=}xJe%LdllMs; zmwA$vMaVxyy*R$wI%iwiF*x74FheQ76_isN{7XlMJH<~;wmMxILZDrPmQXW3Tf**! z-3_}NcDIIre;o#u>(-uW6~=g;$~c=BXqNH9%p5m zClo9_#u?W*S%aE%kL ztB?RV)}g?%!&VLet2y>LPNjDz2ysjvw5)Ap_~O|EIwo$hnBru58O}hyq-|~{FyW@miY7`Y<;ZRvS@M3whN58RJrGGN)&%okscI(%x}IC2Hr(>%jA{A z?b?~B^v_i?HT@YqlZXn3XwiT-%~?m+MQHw$wovUZRXa+>P%5VDd%YK>f_2@pZaal7 zr~p*pxb)pWBRDkB;Y~a3O7X6>9HM>~?OzbDF2$?uO|R8;_Tf%X;*yRpv9eJhK9|G? zae>o1lIe7@6E*|uf_0y=S>9G*3%&*4K4rfBxeO0CnyI?P&D>8Fy?f)9I(%@Ok2PE7 zw6<)!z?f66ItQ~RC@-=52T)$(w8F-vcs&ENf>~Wg@KFoqZALFrO)d$wRawTihBI8M zs&-B7vQtgT$v^NJD$)#=OC*WXku1fyYen%rC|^PhUj95 zE~*-mQo{hoeLctEP_4IB*h1w(QKO}P9*?*T5mq>+t3PDj}WY`+ljE^+NQ^VF}D~CQHfH;R-Gy}SmA5cm0(@B ztm~h^d|=GSn&4Z<;a?c!-VE|Hr0Jz1LH~zK4Ae`#y0rMr<7Y^m05|tmdVO<44lY#}G$7hX4`>66YyP90c)k-Vn|k z(%Jw){2eqqK;=T^K4q2bI*3n3{&ev%&Ercl_3e@!Ole2?JfirB;v4I8? zT7yk`irKH0OT_Hsot+BfkQjF1k+*ES$mzPx>7uiCS_$=*@j}bC3)XeZy8dg3d|=GS znk{35mTeapbIG@e*;o432W9zKvt``aGvrr{i*DdS9q}L4+Ez@Bw z+b;OlCEvO>=_zKP{<%t~ah}X?Qqxk~HKTK)u=nDJPsK9H^5gjYGA{Epjk7Y%6Pl)S zEG|zL^P+ripSyNEd7tD#QRdnFCg#8Cu_P-Cas4ES9IIs>b3768u%PC?K*d?~&?AR`yXa%vg$Pn#@!(=k-9 z57i6B3&mTFE&FDNq2`Z+V|{QejAe)P>RV|!H3``8^1Wg3tQVd=Ak-a=(FKYwP;`N! z3lv?TRnc0@QoSwPE;7?DGt;|hAo77RA8WRZ5n8rgV9X`ox~?cOgI)So4aopCB#TL0 zrm|iXVR2oJ;5mg3huw$69>{_(RFb$#_WO=oA<%}bG)vs?z_}++oDzJC8faV}8uvNs zNtQf20fsXSXVD(u*>7-eFv+qos9&gGzg-?szh2ZY3}-5?a4Hmi+o4W3i`o+Jr8Um+ zB{eP?&ZsR>E&52CxJ;Y0HQm{=T%XhJVgMlq5bkKaHiRvN?Yk0G04l(#ph?w}(0w-{ zcnmiugM|D;)Vpmmh%jNt5lt(J!6 z#u4hNcK+x4IrYu`Z`X%<^s#2kz}m9y0%I<|pSe#vwqZr5ISVAjM3$`@Sm>St zo;JSPnZyJYxGiY#EoOi(xA;E`OI{d0F{O4nzEfbY3+b%HX(rkvii{q&{qU0fy zfu!+z-rS+2g}du&49hNP-y!06v0bQGs903_xDKa4#qPk$a42boyZcA_Ii4(LrV}yh zNtd@f40;jOS;EnE6=(9#9u8>(T6iZu12E=AzO)RiE!!@vXP4Hq7|HV?nXb~h9=48S zjl^-R)jdg`9ziq1KX%yzQp{1W4ibC2d*<0ptv~0UR^rnwBTL#vaZ5J4GX*~&De3{;4bEAW4FrL=I!ww?V zmCN*78OO4nmY3zTmAl&bjZ>0llWqHZ{h1Nyb*`e28i@Ab(U2-q9E+$Q4(xf=Mq*bxSn#T)u3v~;1i!5)s z$UU6{3!@80SLO8CYAkU0}?m$s`nTk^MI{`j<{N;z=6)AcX#f{&gxG5N}3T5xR=dRWym$sKBX| zX_coV^zSVB6tC%Egq{(4c4&P-^Fs5k$z1qRF8!!oglm8?mlzY8H;z9{jOVKkJBqqN z)TIL#LY2vYH3l9H)LGnz<3pgf@36&7sZPW`&=lHyFnRyE~8(v1`Px5xa(+wP9yD zbQyPHWH{We@Nlzvk>;g|URS3OMx8E#)(BcVq&K*^5WgGZ7j7=x+^5{TL_zD`GRgAj zozv*`yViKmP8AGd$xyN$m8{j*kE24Tn9YIN9POLUu?r{Nhf(WeP3T_7rYEAz-lEJu zm*HW2ei@f}n#Ng~<_Qhd=n^->dPbfIc_N3A%9;>!sUpt7tnLUEt}a|%kFM^!GcYTd z)n%P$O|8J2aT)eU5ZNW6LbF1%dep3tIvC-MpwtdxXkcKM42+-@f>H=dwJ#{;et6aQACFn)@&JATee+b%%%B_+!At2>1=8BMz&Lqw@iq++%9rU2v@tLCxoll(rYe( zi`){J)g?WFS^Y8V+fbA~Po`;->w$AUeNZ=ssyiiP|5j(qwhK4crJK8pXqpd<`B<}M zjL@>}0%I=uRw&@>Y<^|*uR5rkQbpkq=bE66&?U94nUY{-x4`vphhdOtwbZZukQ{ciePf>D>lIvaAwGR2#wPQ}|e7g9U=J6#dbvxjG)S9zd z;ODtjIqg&o4tcC)B4HQX^}%C4)&v#!9F7Bwxs61@hn6NEpkf^r>rRyoG&wZ+S_%u1HMhpH|JX7x<`QGB!|UXskDp!q ze!93?P1B>dr7C(GzWAXCyMw=kK_}`2--o>cH>52-&fhHN*V)a{tML1AAg2RE>UY>lk ze+XY3#Y2s^m+D6e{6{t|)7)St z>eF#hghiecL^l$w=|+0fmfM2iXdr$~=T~XI?S_#gg2j@7v-Jid0$N|gWa}*>u~+di z7v>{qZ()Z(MGw>NXW5)wvH^EkD5UNdcUUK~x%KF}+E z9B;hBijdJO#z$vwCU3*D(Z%n7BjT7QpU)=re{#5@+6 zd3+SVtcZs;a1f0(i;w>qG4c z>U{rC2Z#3kH)*NFhgyE1&Ku(u2ZRyAf)Fb5*`fVxvGHteisV@tj%KTAnaz^r$EfuO`8Pq+pWYJpPMli%}JJ)*cj(2tL#3lH*30 zk|c)0(0=41E&nfxVtuphWR|3J_NIUFJN?M}3z^t74avU-lHBFJ=k~o_>)x@wx^_GV zL8NId>{&OPg^4AtclWJZc)hpjC&QQnN$fUMXty`mlR^+}rH0wRk**?{Ep&~3ND8&uLs1Q@Z&{P+yCnnF z@2(;AZ$_EvMR8fkjDp64e66SH7eyFIU(ueBLBne zLQ6=&N&+G^VtAhvavPgZt_e$mWsMv%_254V$1_sgpD(DSagmp)=_{n+eNs9LaZ7A$ zzDMk%MlNr}M_3#*)EZD&O;WmdYs3=AizO|pzjUbS#e8YEMlB?2&XbQdIWyF9hN+nM zL^`_S{V~7bTq3}{L{Bs_d`%D4C`RmR?IALT#OgI#$%^0etV}M+tko1SQuo!UM50$2 z!0OJS($Vy(QaqB5CJjVdyb_{ATSqf}6Rf6U8#U^Qn{BSLhTqCc8)+KV@cKCnFMf~D{(14s+h6|qo7iRz=dZ7>&Mgzv zyh@U;1x&K=q=hNgsL{iDI$L~5Z&~K(to~#T)#oXhW|QrY+BT!Wyje$BaR)t{1jhNc zk1(=SDDBBq$u98)HG&{0XhAGL(t^YK2h_+ye)`uw+pkfG`uJNO?h+rZeR01=JgL$g zYa6EKtFzjd_G|P+UwTn_F1LSXzeZw~vtu6Fe9;DBY0t+z6WJfdXz14n=~}o`Kdr8> zQ#1Q~WHg*WBGtH(n;N~VU{jx;SzTX)LXGZ>PiA(u`8752BCxSm(Ty5)1*bO6CfOx}dr+gG%{SHUxk`KvYBVG{ zz4kUT>n!FP)QKl8FSZ3Gl;#-KB(L0Njgm-B-u3*U(ousNDbYhhzFXlF`Mz$a65id8 zbfL($J{0=)r-MO_PR9T9zqFh8EPgEyZOW6ZERMA_e0~s!5J6Hda_i#B^AjB!>UKz$ z7GZo5XY-;=<`Ysr1%(VEb}(u0aT#`NYkv)Kzg%06ECZtix}8dNb~_{krK`^S7#}_4 zWgJ1f{}zefUXE)YrZ}M6ku1&1rQ0Fmmf--ozxYAmc=!&5?a=L1W(Mzw-2De_Lwxdh zjZ)%YNnpiua{6uh_%hWHFW!%8%CJ+tEBp!xc{dShKa7w>g2xaM$80vq;ok4whOv7u zayyApSW`>|V-gFA|1^p5?ziFg-miAHe@TGkU)lS0v`I~mf&zt@iYeb})8Te93@YJ8 z)n-2wz4%lRFb7Em*M`Kw3Zx-1@Ta08Je$am0uiCKWm9NzT1X_WWRomv3kPzYYOCF^ zAmhuBk@3JsB?+woNDC?w&ju^x7no1x_##u$1K;_r+a=u=8>OT78d(${5ygKh%q=yP zF!w%i-xTvAiGB;LB8!5B5A|&TvJ=^rO((H+8Z!h~qMDD_PB623Ur4Bjeq+d5>oi`j z*4|JvLmv!6in`t+q{sYX(j5Z4U&W=Ci4hSK7Cn=D5>k(d)MmWMV!WtgJbIETLT!rQ z`!(hVQ}8_>u^5ftVlZd1Shr#^u`Q;cd%op?8RJp;(u=nE)qb9oN~f`mO4Y#&L|1E=Dq}#d-I+3_rb~0y*`t66ScVl%?CY@JG;N4mEcTJ-i z$=tW4z%I724HQzVYUAXqq53d5{5xBR#CW+X-p4g=5yc^*jN^VVSzlV>m$KfB>wABo zfR)&s%_g+BdyxCBJG#djVjpBARAxJo%{`uf7^3*C3VxRC+6k|0IfS*#r3?4u_&l{G zxT@W`Hx+CWtb_{J|2%}M{>=%5m*eGPxkmH%|3F@&Mw<6u!ZwKq>=`MUNG7pxz`j}< z)WJlK;FtU`RnsFR@B`jfk>|h?<@a8QHu}|{XuXofwjcv4{FH)4xmdJ;Egs~(UQvr1 zs7fONr2$z+GGKQ<7wx{^I8KTpyD^RnG0r_WuTBSo)JtlnEvlSiSJf@un-d=<$9{`K z5!|6N#B5>$AF9r2M|-%Zts(`CDyeGT7OgVQ?%@Na;KOiv4>-OJl@`fGd4%@DzfF6O zSM%)8l_8=B=%iVio4#^3eec0p_xO0hcFMaoUw(h(P*C;OH$1MxsrT`xP1=@2Bvs}^ zas&mDHd7jhmex8XUqYocq@nUKOZ`CxzJPh%FVL_%v^3NqsScI95nJRa>jT`0J0jV} zZacKXW%ODZP<_C=D!q4T1|2m^Vv57~_j=f?T92C=Hy6b1;FU=r=>P{TK@Zwl|as!CI= zPwe~PZEI&mm2isn9xel5Pvd)N|kH{)kTHd{_pnS4B!qGqG8A&ylm zfxIo&?TE)^zDk3RT^TbZu|zcvR_O|tk!lZs%SDwer5hP9k^TPYok?Tx9_j@TQSY{G zh%AidXfsKaof-=$DJ%e_h-N4D?3Slk`I|EIt<`py@d-NDS#JQ7XwP z@$*qk6`=IMOLG&Q)pVnK1UuAt`SJs?k-YbNYTD%9Ruep+%PQYRe-T~?7vfHC`IGC4 zFOgd!oYId<_|sn;U$AczKPzie{VblQ-Tj{Ab8ZQhOGrQ}m-TFt(p|DwkH2?3ru$91 z9<4)>RCNzmtkMN_&)aO4Ui~t^UgWbx_Y2i-=K|I0_Pg%ns#JBStR@vN*@mOyqpW|P z-Q-_DqAdA7y~zbC`=LbTGNJ5Q$yZ->=se6&p_2X}JbWssW0HQ7{3Y-vo;%vW8(mgh zM1M&h5_d8}LTV;3FIVU@|7Hx(oeE3z7vX|P>Gp@kZ#qZDw~Lk+iuuwbta{Y5ReVdV zxf$JB-<3ePd@c8&oEf;t4RSSO6*uLwWdaP-3DbajjEWRC9+QCvzJsZgA7Cm_4^V;l z&(pcGqJf2flD?s)M=I!-Z8PWSzPzNNKoo>IjL$FQGEb`{IJKbmmPwXJ@7PMC zVj)*YskmH>Vj+#+<5~0f__oV@#4@ttqhA-3Eo>yZVZc1(f9Zj0U>@UJdN@e6HO#{e zD;4w9yUC0il9m|M&{S1U*C~f(5Vw0(V3aLR(zLOF2qCnXY=Vwk-YU>p?S+8c_E4A* zS4?!=_*X%Wn!!PF@5(R4?ig-j@`eJO@T%nB+q^2}`I6;uN+nA+t^q3Gy^ralc-yo32e9l$|Ys~I$lUv;2OVLnsszYd ziD4_#Df}0y1u3i;wk)ig_9ZN$nzkna-Sq}shNe*h5h($CbigiHUp5Lh5LjGccPl9x z*-oU`SPHazAbgv7l67mt8JM(WMxOp6VckS2C~EWT6CZfn(x20{?~Nl)D*f5D8LuZ) zXpZ194owKa&^TLb_yrRhsRUIOME~Nc5>g-YdiU=AA~kQGL$YwySOLiHRmGUek z9y>#X#d3YCr|}=@XZmf%C3NCf8mdooO1Q#wxG}JX zY1J4tWG|CZGt^|!f9JMj$-73P%2z`byNCpO7~y|gzGM4fAjY1F)k~8U*t;W5T^qo+ zL+p_<_e}iS@SjW<^Hk4`V)EeHQyCEz9t+5$f#mU6{tq2^ROXA%7P)YrD3Ocy6hSSZ z7Csb8OP74H;1*_*D{2TD|3%J}3=BiSe5u^$vGmV4PC7YZ%cfzM9Rt^>HSnU?%rsFb$0Fq~jww~-gM5iC$RfJVG~(q$tx;w+nI zvlX9fPO%t1N=67&D#n38ZKgoA%P{4D!yOdoh|mZfgH$6GPzWf*4xXLzsoL^bC6*~ezHA;ALrYnZ<26Q#GvX$)vZp@-~ABPi>4H1~;8W2H)t1tZ!0j>HN zEv0?au>+cGHqAkQH&}m*18P~3leJ}cW)o9w>C6Ty8;VM6_Jukkm{7_`>xx20VM)XL zy5*3vM{Qvt?Fpu8EK{AvRB2Lvrg(E!X2~@BubPaaj*&+HXM-&d5ron+9%PU~AKEP^ zJz$1IGtPN8BfVe~H`FGk!B-;GDZQ6NSyS8LGd5roG}R^`oE0V{eMrU6R6r$W+yZ3{Mj3TC z#5J@*CN@_l79Z(oO%a7Yl*gqY<c{l3iV+p6W{EnaLvYJ(O8Gcq3298zBmq zEcCAL@ zQ{Nn7B#n%bh?x@OXR~B^?91p1c)+sT)t{dP37>eFl#BfM;`ge=|K#Xx$>WwNJYR$n z9m`N2z3S*Oo}FMc7}J-^n(q-;lgNAR0iPo(H4tOgd)o$mcIok+(^=7vbtsk2IFHOR zG4$nPQ28Eyqe;~5-#3yQ>|ugAt@;?lt4AiSwwH+7FV3=N>yAvv+K3`1VzzFN)1v$H z!Nd^z^D!*@$Mq4QBiRAP2TAs#{X(5Eam1;$bV$=oYk%WNkAx##{hs70&wJV@Y?DcT zla{eDnWO;}cFfeIsK19Ow+5w!9a%tXN_F-LyE0J`c8nn>OH%gf6FD}o^X-hw{bJ7w zf&2Acgf)9wVc0QdIE^dZGZCwCXbe~yM7L+3$mq1Vkjq~7Nybzd+^_Fq*~!EDwbGZS zx*lP*PZ*>xtp*5%9htk;^?7^tq4jA={IPpSwQ>AmqKQ^{Cs8-(_C;sJ{-D!!9Rs;` z)pVw?BmErR8oEbd+cV`ew$JVkJF=sf{1qAjv{!Zn$1DBM8sNBo7#jap_Gj!5@uS!7 z!8M7yp}(=!ogaqv?p2WCdJ)+@hd904gOMvb{T7BYY_or6s(ZUe3UwJo*gt~?GX23a zeY1x)3}ql@|Hwq-ZmJ&CFf^&ReKT@=2@q4$y>D@H*8rnVw zEIPP}W_uohv&Vl$Bm5tEnmjh)YTeOp`Jdr##Cu z`qsOj!q5~+Q2W!qMWH;5sS4>>5S~*-!6$0Z0Ko31xAC+1H5c)!DT_Y)zfKodt7-cD zpk6j?u2Oe`EE^7K>=G3Y#}{<6bx|hsNy@d$N3WvqMZWAPF2inZ(-F0}`if@C?QOQZ z%Ih!JHfdGkg^{Ut2_p(GhbKrKk&+fQ%bN z3QYs0h|^F>nG%HzI#F2OEPStvAJg+SUtFa-5k_lW4BNyJ`KtF6M+D^aOA@JR8uN#Q z%@k15mEJ?B5H-OuwSMhJZ70&bR*l$>Q*YQtJ@wz`T{nyMrMl@gnb@HaJR8|88S09ZBJ5SZBn8# zzPgo?=#r99_-F94+-lm#G#0?yD*wBcO6ZYF_*9tIfE^h=++oo;6pARw7QR*V*s}!v zu(?#Yo4!3MZzKnw#!O=@iZ!H6D?->62j(;n)ghJ1k(ybq>Km^omm9b3GxnLaz}$^_ zKW0c-2E!wp3RS44N0va*`%4&fqD~;K1kw$0oD`Z0EA`wn>Y1LBQ4kG9{+`E+;z%2} z8GEU#V}^?cWTl9EMiC1@N(Z7D+iw~u1xfZSMXPm2#leqGd%M;Z0wz?zEe9`zL__xI zg^;L={~hY9Wa+&Wakgeq*qZO;cBF;R$z+wI6<<(9ds2o)xg$f*|L_mgMf#p~CUpU?<}?>1l!t>_07VPwT^i4tkmpT?6srF5rlrc%L_4pB=p75KZlJx44C z)#xz84)I5N-E)dfn7AYyCey{dP9U;~ki*mSWeMZN<&E(pKB6Dx*WRd z6!N5j^5n6|g#=8#Sd_}A>YFOmuutxl%z#12G*-xrL#n+a6i(CYa<(WeG{Wrr@?gV9 z&aG#S_TacseBsx6#A44`N&}ZaZL4Zg10MD0f979 z5ICJ+kNOKmft5VbVP2NX*DRCqj^ zLZX*SlaC<2Aig9uX#GY3X+@d?3N>F-M0yYmxQ`5m5DX#P5SlEe3w3&MNXG{YQW*wB zG$0kol)6me0EQMS6yAn+b&pfdv?;d3?8jMXWW7vYa?OC&54Qg^Xy>t%8l?Md-QI=5 znuh`$meE%nEvjjzDQsx_5M-WJJ_NLHGqvws3@L4HuKj?e-AZoMwy;1UH~kw0imDvh zZf$q|KUP)8op#MEn`g7tOq;2cDwSp`Pa>8;rqDGY-Z$5&Qm#!#p#O2q_|UK#wl}0u(W7PQCJPz_ z|9lq-LCV$b@MXx@HP-8uhjGlWl)fRsg^GqoRx}tln1mHj)KC@E}=H?;bsvb#_q)L0ae-6aB_+KZ7@x8fKz7zRx>3x=2(><%9?82#ChrJm z)B+LL@dkIax$bE3Fn=Z@Oa47!~Ta*yqPw?7Im-2DpN{@}IYHlP~8yn%^BHrE6M_njaQFjnXV+rKv zGCbT+lsh=J^4vFFzB}{%hTZa3P4*&A+0Y;u*r_r(?`df4h@I?i(~)cnfiHePlaS7r zci$g&+gVQFs0VYDNt%pg))!IT2Gco-KZg!ng?ic90TI_=)I-EQSj5p33Ef^k(&@$s z2QxM`Ty^GD$VudnC(|_1ld!4726?dCg1pgXm~|ejWlh8puQO9?Gm@ERK4=l)p~i-X zd|4&cR48ioKygSji$h!^pUM{GIn3g4o~R?UcJN9XY?^u?f$8F7n#Y%PAh#~NBvk;V z-AJYF8vUx%Z!`kJpNz;~EtlZ;hv(mS8f*o>m+7XLw8saPxJEdafOC;ZoG0@eRh|`f zOk;P{5slrVxo#utj2X-iD9-{EEz$bWA~&>XJ+S~p)G@_LQAe}{Kc-09-`>aIk;K#f zLKLFv$%rblrQ$fhjA>RucCF{>4-erwH`8?%GhD{cX36r{uEQ2KNw8Ul{SaFv;IbRH zt5d;$!be1jLs0C}|C6J)C6DIzqreq$s2{HsVxdAfbyLbqm(P%pHC*H*q@IP1rGJWp;0KCq^iN8`}DbF zpNeB}o8HL8E3uU#+K7Auc>~$udvAJIyT48X%zKgJCk2s7%W08k6;&9KztVW_S zWkZ@>w`bqT2(|c-D`NIZ%2X)aukT{%Ia`)0Iu}vkLk{>4M|()1)x4o7k||wXySGoI zN+_)lSK^P|JF1Q24-;jsMrM*j6p{J<-S=VC4Wj;@sS($e4s_COHPtDK>Yb$f!w=_s zriRA$!QfF;d1^E`Xs=8P4rBVC{2_u;(f;~?Xw7?YYu;`MaBTJSM^U{6aDSvQ$ne2r zsQW{ss6N_se~81qWh13}eNg58zzfXuU}oCvxQ)8n<&|yM`$Hyc4XaVtR57cD)&2QY zPZFeS9Lv3no4bY>1s&|x$gWJI?O%As1Kc+H37J#(DPH3mW-1m-+zBWptEtN0#w7)E zr-|zS5ygBPook@1yT(ErOBSqH{yDC7=*p> z1zndv6`zYOzYco*>-)tleY5%KXuvEro1kVBzqBr(J&Z}7t1nR%>N;FQ}A!Z z23`7bAj*s<+46mwZ~Pkd2V8`Fb9qf-JDba`4g&gwZeQ%Qd_S9R{4^BX<)ONz21;N;VQjc5mX}DJ*D`L;=X|DOL2L8GhJLJQ~vz3q7LxF`uOEt4UVgY%L~!)|AQ-*~4m&-&@~~^-xlxxQYLpNX6f-_Lej;(|QtF`;6I&8L>|3YV>t9(a8=52U+7KRtUORNx8ileyS>? z7xPflEMWh)begW?=ScjLRVXK%@wJ0!tZ8Zd`s#|1`gS34uMsCbMivd@qwMU>gdgfw z4^0=zm3-iDnHu>O^`x()CLF3~det-ZqMrq0{!>U9Lq@fX9aEuXF5p%)!0$9j=9Fzb zO%`{$M^CfKUGDL1mwB&W~2hJvEXOp)PxspGQZCA1W|*RBnn*}~3A^!gyQ+@N2{qfvMCrPoUDqwf~?S)NakmbMq8A2I$C_ZiXhB0+l) zTJ8@uC~bRCI!z)zAs!U(v#hez7ho#`w?$=%xRgto@E`uoQt1NlG_SAop z=_)mkO3kPr)v&Wf8o}g^hz^%OT|D~PKXRlU8{wkYKrmL&; zRq=6=U(tWlyoG|oQ7_+9$m~DzZy7f0QG|$^;Rmzi|6Alo90JnevTSZHs3;jK{g?VB6fg?={F0-1WM2JpQoBjVY4}EoeEy5D$x#}9mZLA#(}dQS z#9sOh6l|iK6i(cbpIlE@U2VRc(wcF+SQ75kt&&p} z*@;ki9N%zYh~J>&LZW!S{uN@OX?5e;M~a`*Kg~LuKaaQJn&%!&)7eci%ga3dpf5}M zqM=tys!|u!L{vx=HXMr$iHl)h%xyT3Br0hwjuYlA{z>va|3#F*bi=O~Q9H3Efnm8h zdB0*rx{auT>1FeNaZyWdzEAM_%klVGB6lz1&W99i{Gk{om-=Hwm{Nd2ZdHDqwN)*% z>5U|m#-lqmV1S#Tt zjUS4!iml5R7jNbzW1^>HlJpBhYtQFzZu><5%eqt11M!=N7&ove4D&1E__n3)eu;pt z=@H?a)}4#-zT_h;(j;mKm;_R#dc_Kxy7#ut(Rwn}D8M=%OOY@C@l3-^qn3Lfim=o9 zOBi&bPC(rc922Kg1(Kp5PUWd5Ay26%schi=QvW($TwjwKqD%qZMHI(<07)*0dE6Nb zgMcm)32a^zyhKz~TURY7mgQ5~^|HiTwH2aKz*P>`j`&G>g6rGMWIhp(vWBwn(Z7us zB{N;MYa*;_`Two9U4K?RGM=wJO0@H(N7W57M_|ilCrVlfXBhKKiKT!wahuK(41}Rz;Zkh2dJX&`UE-5`X zPo}?SMaeb}Khb3+FH&RCa5z>1$n3!g8_Mdal$BhN?-02mm1MFc7yTkk8I@xyQzD=l znI-%P8>1r4G#m>tZ7xxYZ8&BvL_3r>az5%%WY2^mG8YFOkvU6N<$??#0WPsBC#icAcli`!f9`4LGtp2ZwWU?UluI8m&8Ff-M!2glC8ANb0MUGL;6JD3%;BPl+irq1Y*O?753AoQ2i zMB`t1V!otu`B}^hDy}1NqlYe=` z2kz8qMf^mFo=g{WjZf|S(N~a7CRP=>JoQyXnQtqK=u31~o`DGaRkvQeU*v1|^JWer ztz(%+NE6#jO5`irRQ@BoxN6nOV)^+W`C_IBs;}J`LGL2fEveyv-CX&MV6#3607<9J z7ZZ4O!ZJCzoNC+!ib(azqzp)RZ-q;ryKZryiLVeUW zi9*my3NaSh*5>FL>GwwvZLEX(#O1+kDl&gvOg8Kc9(lu%=TZ9QZ5K#qn zuaE+IG19@}1`#;8ZEHr>5k^IfCK3^YEqf!$C2r{2!f9=DS|~Er3ygJbDy{8~7)Rb= z)6H+BCzC1Lf9h+EWMqnyueVY1nsn>NGg>|}L(4~O8&hj{iW@{kO46C&A(|B<%R{ncpl>svDG|)emn-wt66l^p@NWUsiD&0=*_H6#%OAG2La< z3f*O+l2=d>B(Z}1+d)`~Zn{mykG9;#6r{-^7IW)ax30bEAhf9_HnMc%Hb%2qEtzEs zQFJz)Fh(?tm?n7l$#PoVA*2CcU2?!x?1D@}ed|msD?aB=Uo>%@L&YKb1#8sXvqgq* ziRC7rZ3%s;5Y?|Flvm4Bn)AtJgQUk_{6L@9rAUW|Ij3%?rg|Qg>U6WuPiU+&N5}+d z?Rl%>3QbeB=B+XwSjwooEwhsR0pS3MRW{8_AD#RzD^7NB(uvFMGWQCmP;!&d!pba; z0cWT69tO@z2LaA{UUTRa&eUe)p+=Ne^*{I43tQ{Z0oa-&h~*-8PHr9=XkAi53-u9O zlhUK$MhIbTlDH(hlR`woD)7@L^Ms*J@(pC{692*}`Xl|UrwX&Vt3CfA2aZ9)jwLY# zaMmU{3s+BuPQ;(&_I)aLG0E8_A+=6?6Ba0DQ=29&pf5v8EWbru2J*(K*(<1DPqY^B zR>=^8H>Ct1ZJbLRztc+SlcoGIoCI6H?k$rCwISW&f?X%A0YVpo(5*t+!&g;X{Z z&IJMM6a-Yc?yqxuOq$D*LLy&T>&GFeA=m4HfZYJnPSHQZ}n61u`Wk9B7Z7!~Hs7n3R;j98{s3LLh z9=paGaULH?rsmVA*|0nxwdi%GV&=$OF|10={^PMDasUR)|7m)$SmkoQr8zlEj<^-m zS?Lim=P;y`#l(SK#e}BbixFJrCpuS5P0o{Z@yvWlngUDbdWl1_Lg0wYr zFHPH{$(|%ItQoE}ibtNP#j_c$UR-q&u8=R3Qc^=)c_JOnXwh&GF$nz+6^BsA0`eS~ zkgKuRZWobQbr7DpryATto8zDn-9?YfiE~t_LnBV*a+@PU?7f%?s~z3Ppvmg_LEw2XPW2`pYV$09 z&C@DW-$aun!7KfAIJ5*2r<*=897B5U&MMCF2ln*(XR}j0&5hfGHRgl1@>pYbcdPW`(+xDNNvTQs z#jxHgzZ&yB&4;#-ak@R7bVA6gwb?+`a!*SLVFSfvW9>%XZMV4sIn?9gm%?V&kkS)4h2(A|s`)f{ zQZvg{edE&6)3u6?qtG+9jzI`+bn{P+>@nNgc0k84jr5ILy5d92*tO)0p*lO-w1`%VjncHlOKor*I2+Z6OcoJ?_B^l@8uL|XNyF&%$I8ARJm z6**5Si8v#7R04l=oJX>ns@bAzU1ycqzf=5?UiTa|5hgAP2XQ7@jX-4jT1B8hAa}Q- zyn7@9c`T>sijFPI7oTecBV7*dKSG`~P@X&%xsZU#7YjL2giKvsl|m_cN`-8g}0TygLn0XIZKab8igi^ER&a< z0@rL`^M81xhPf9BNZCzBCs1(TU?fJ4Jyw3=E)>>16yUIpY*_OlC~R(%4`ZG3Dpq?dCNHqM-}kXA{ev zwkg`T+z;xzst5MT zaNny_kwG+)oDyMDCK90L1$%_Otb&$sVV~s zK9lo`UeN}dy&~wK$3m!}165TD<55nBKvQ@#Ydpl%hs*RPn`^XLu_B(t1DV-GU1kCU zgKF3w)!{r|mQK!~-%+k^hc83MuCe(SA-Ym^!YIw2M;&29%g}6L1%1-Uq7%VOdCd-} zBF+N}1AZ#<^h25#X>6)L^boJ=$}YtJZVEMaRu3Xa{K7A7s9!2#c7tj_>VRTC&0&Qd z+Ckq1JAByzpL7J*qrn~{jSG+`yOZ68V&lf!T__N0EQBIPJg14GcXZHZL_?agNleEBWb>OY+qU6Q{v)=uaCkqXm$QvqWiR5C4UMOO zohp;_p2WT*cCx!o4`ovbeDV8HvGp9mMB7Z!Yriq?}O&vDKgWVS7-4Fmi z`uuM{laqYe>&(>J40WcN#&f|cX>k0|hgCAHrb1Dx2c&f~rL}95l!k@yF~p9I25% zc^05(iPnb}xuHet$v7a|0 zwO`z2kL4Zd3|T)IQ4HlfC66gzx=^`Z(lRzilro4$y5zPWL|v|M*t2i8=c|pX>EW`JXP>@R z1&qQ@W!A}(m3{h14%?e_JfU;H$kjsOetj6Btv2W|>{M1cO*-5&sbkPs*|RjmZqGiF zQChJgBXqw=)SYxq^zk+!>@ezj-X!Wumkc654I*75Dxm#z(3;;-F1!j0n( z6J@uCoocQ_*da@vozBA`6ji$WgIf26E@NxPQ`o6DmhKVU_R5bj-Svj}E3b_P3GJ0> z!7)w0g-a#^9(MNEAw)a!gWHjJLxE$v!9NV^O@aF(h(U)Bro&23h1y--H_O$%c_UH} zVJKa1-AxX5;%PtMFyQCi-n3xXx^Tl#JHN6Qdw=LeBzUYY)-cr0uWn=ApKtXhL@Ez+ z-y-R*K}JC(yJIp8b!rU?>#hN{q7-Yh&ybmQpJF$zsZGabDcA!rC9A2*>c%AncBhHz z3=*`p+0zEvx|<2dZ(%8i#h;dIS4Hxu!2=+>zEhr! zpUJ}C)0P3)vB)|`s*b@L`2;*F~8aY&UpsyO+Ur?05(vrOe0g;_zG{K^Ry=S5E!$<>?1{5re& zTc$@5g^{##)qQ7gCgbq+K{Pg>Hy&?pPTP0s||#$hSKPBHA}?`k-$=T2e!3 z!AexWuPd=Q3@Ah=zEezdIvCgw(I)?v3d)sx733#}hlE`jyHU^c`ws0#i#r}A#3;ZX z4DDye|MR~LbcrLfqI`4lagkr0F0NM7^q2Yd;)qJ(2|h1=;Qt{)`c(XjZ#!PU@8sy& zKeB0==Koxl*&2p+FG}K=4mSlX<~P5sW|wptCPm?Q(Clp6fFk9ry z_iq#WyGup?vsqFc_2~D@JpFjK$mV5n)K~v}lg!I(N|2@Z91Vh-JWc<2J(;9@&tXue zpGs=S{ZEo-bYF2a46f~co&NG0?W2C__5Y*0#`XRGM27$f!EhK5@fV}&E12d+EDMI? z`sb)0hV+B^E_E#=wjNhssIEpmx~jfaT_RD!Pg`HDe(3T09DmKSU;lDmSMe;ri2D@2<^^Kk<7a=%3Nnd5EAqC;g9GkGG|lGe zPkEaBQ5-4gGQz~6tD4-^b;eW$bRCc-9wY7&U>D+Hb7#ZN9c=sdEw_m;*nC=oUInfQ zHXPUyz!w|X2AnNx-(w35e{!^hCKGSlj)5&NQ7HJ8bk5)Ne32`mM0A?|wh#hKs-mO+ z9R|NG*U|UVFglAO*}(WK zDP01JrbzzQJ2v*kUDN96pAwR6fY9nfhJMSUcASWIDh-rjAPSG~`sSb59#P+%6@SXDCd`*V>EGGeo9%Q$BkwO3d8yWu#HLdYx9{ZE)s}g>R3&xv zVTTmkc)%hFO|g*`vJYP)PiKn{!T_Q*q`CDqVA8A;N!I!DBl-blVtx66TR|sxe4buQ zT+o6K0-jvvx5btEcxAhN1x^S5`jsCOB2TXJk1Q`VX>g(P?YOia`Zc-FGiCCJ-l%jI zB4N|s@v47k2Ii8ZzxagM9KXndie%d_K6+*Y#SA|^47!?UWzywNz_2r*_`Wc#Mhkoq zo;vqIuQQB(w>-R+xOl1G$UarH#b;XFzUMnvsR;BN7U8XY^FlOupiJn9GWAVTc70J0 zZ~r(U)a7#3z8)gJXrV+ynJ2H^4rPmujeNQryCP&YS>;r;tY0C;)ECLvezIbMo^tL- zUt&4&I5~)xJm`K&9uOed?=`~UYaY0+J!|3Mnn!bu+4TmZWMb1bzHPrd^MBr+{`yA#t{k%? z8C@iyl7E(uXm_knh*OXJoqshCNTkzog@4Eg2%qvDgh%xN`Kf=H``0O=&k|37ik$`q z8R13Xo4!C?7!VBQlKKLDT6Kp3;%yYs>ujfpUPn$=+#^B9%ta=#1;Cf_=H3p%kVAt)2vMwx1Av0w z#U9nk=JZNFFI#*hk1(fCI*2;-7zq#BGPyBXshw{5oD`n)J0(5AoQW^2$6&yp>kEErH!AQd4(@%vzDP+Y4U4-3Q#OYGtfFh-}t7@g1G5Pc6Qk#J< zy_(`M9r~1Cu8l>pu`SEp7U#$cxz69`9CQ{Fg9+-=u2L}B+*|!K1f|CSb$JQHzU1uEO%sXcfQarj)l zwpxS3*jv`&11zq;7aOR*|3@)5U%y`m!D-86@6_HW%o`Q_5n$It_Nn(gBnyB^j%=Wr zAm`eBTC1xhivIZX;l=OrJ^_Y>`08o{Ji%M<_$#pRBNel7jznU#w#=5u>IM>j9GfJ< z)q|J#4~5z}QZB)xgjK)CQ6I^_oV8FGdwq3vPELQCOa4$sJ&&-gc+rkrq+OJr4~=#)7X@%OWrFJICBUuML}1f}%VHKjjF z0`RNJl5-k_nV0XMy%G5hPKabDWbS*zhS}FW_1Uj;O%)J z&bU!;urt-`}17B&pA71 z8<+am@74DOd*09I`8=QJ_Id7?Q(mqv>*?;gEZW}G+S44l>^-r|-m?V7gpwIVUx`++ zVvtLlCRFU~YXsE<~PYgYDL7pLC z9H9Gb2-Ym~qTQ_gNSh&4cXTyHrbV$XSYk=DSGHI7bYW472{mj|uyebhxkyFqU`CC0)lki(LEL$8f=;$afxdb7?2 zlOE}-YS2D0P{|O-&+D(vWrg|0PWF_ZScfQ`WR+p8>1d61w}7*xpwvaW>gp<^Q-%xO z2UMo0aMDC4tv1pf=~@wKE-0HgVFG4dLBK*TEW`G9{v;>TvKN&VPAn`ab{R3NaaFWU zqB^0lxDZ2iBL`WjH{;plEbWq?V!*}Lk_nSsP*O5M3FenhDwyEHgBEpkBU!}-rNu@0 ztQ=Z1d`(9q8<{_Mb!VgjDm*i?BEnjs2|B@$CeAe-ojsjY39(^xwLB&|Z+Kae3nnn; zt6L)tl|9|414xq54$`jf=xS?ht$^;L+Gyn=v*!p2v#D{BBqAEk=#nMqhJ4NvY`%&eN(T2p zG@1{?uBm}cV@J|m*oK63YZRo5jSExegs@4EbQvpDf69uEXtS|W&&yTCRC+g^5=Jr+ zX%ciZC@x4{XXAT%B4Xi=u~Cp{%y`0RCQ=h!6=|)Ic z!|0RH7>aWdoPB$7-rSYZ&Tes=fUu_4PnRlYg2K=yGOMvklc3l#?C923v?c3MDq<3yhH>b;~WN*uv(1OypE(Nn48spF_BAk{`%jTI zVq6mw*Dy9rVbOwQzyq6>Q;(*v0L?m+t%pCbY8h2n0imPL28=&26o6Hyxd!!J`_*>Y zKZ2`HK3%PMO_2d0yhG_3lo%cD9@pogN%ru>_r_ zx+V-KTP;nethxXm&;>KN>Ox|j%IYFwoy6*5Vx7S13B)>j)f0(z%&I2=PtftIE+N*@ zsxBqg5vnf8r$tAmx_}{LDk~uuFld~R)E0)VN3;#q1q>WdI%pS$KEZ@uz~CpC;0qZ3 zL=%1iBQViKpnx&J^g^eQF_>s#P{?*?CYl%&G6op=Xcxv{ zqKQEvV=&3YppY?`WMWXr7-0A#eu@}_NhStGjKL%mgCfRYlFfd`0OK3&hcTFBVo<~w zOwuu^>*0^pupyYFW1$JPAe88s$jAUT9hGSq;As959UV;&ejO$0yTPyHq${VLtv%gk z#X5o*c(C<~L?zmRYOfk&Z=SnNjc}47?@KVvI5b zOeiyIJ+aKF^rSMQ&Lw3=l}pQv8nY{JFEeUf7io(&X@U-ACT0j_Mw7$*ags8l$x~&< z(p6@3c}@?;DRPQZCvr-Ra|+2n44nj2lo=haEHnCBRc3TITxRvQ%;@aYGNZ54%8af~ zFEe_2RhiMz8D&O4XOx|)3uAs+iPjGs@YDryO<9S~qJ?FpS`8{V$-)*XXQ!n)40c2~xr=hdFoU^a zc(k&Vn!M_6ibgA=T}?f0Wu+zpTsiA*>cEqar8*{})>^cV5hX>0fYZ)eHk7&mQ%@UC zM2CX2)IyrVVCF_!F?1;?)H2#Ta6A+T4W-w!4OT>|6W7u)hSbTB3Syfrsy5CjVp?aK zF1>@@v>F5*`05C~>QEPVb>OV$Vn)pre>YY(s42D;YmPQzB-kCrbknFqQ%C3OF0NF7 zqVpKz^(9cvc23J}v$nJcM|W{52on%42N-?9`QUEWb=$|1Tq7sDVo;!$<18=HEtDq|bJ zwjMy8pBO7PF70aUYym~F#YV9)l$FY@b;79j6eIu#vN(R0YHkv1 zb-GFPc}Z&o^Eso`Q*hRr%4alsidXPv5I2Qa!ogsg;xM3&XQj&sGgu4j&AMencm%x=vA*p$Ubi>1niH zbv8Eo0h)FP3xU*x!a^NIoZPofK%p6I;>hw zF`=8$K*SH-j0hmW1!sl?Q7c4eVbluI@rx!2(fJtlh3IUI#9GPv;CGFK=hh!KF9OMyKGA^-3;I z+4&pSed{}gjEOHN92ytMLbb+)dYxKZiXf#H2ZMMY#0ud`a3wm4+SxTS?Wb9gx1gho zpb#qtu_^7%#6@|s(4ry8)>AQgW()fSLgN)PQ0;FLiO#FoCW)r9Sdzx6ybet+#1e_g9 zZI(6Zg1jn>CIn(Fqa!A$NQl;kWfZW$W(gDWW;x*qRf56 zpwrBkwO-N;3)`)7RX;tvWC@06ww`hEsD66G)JQuXhT!Xa%t(t=?^kTW`+B$hX=ZXE21MEp$6QVdEP2YEB}^3{=6JQgv?S(7Cf zYSYA&nE<-UCB$uz0G&;YHBm*nm|F+os7#jva?n9IW@ShTnT(t8U6VdVWYbRNjqKFS zMw`t}G}qiuhoYe=rK0J5IGx9y2mGY3^lO8>YtAIsa!gFRyEAZlZsjW*qp=KZfm3;O zaip;=1Doeo&K(N0H5oXQT!j}6;t;&fRd}UE9D>_(7k+6mhv4_zg?~zG>k!<|mDRd^ zc?M3;t-QOlH5!|jfzfx=oYRKlG>+wRU<1S3X&4h^;2+FVzNDjTakRM^{jb)nK=HKZ zq`13dg;Ys3g1vjL+t*`N11Gs6&DtHUy59Ok|ApNU{vZ~1A>>Jgk)S z3^luI%H?oU?=DTio;*hZjjcu^IyiI*(>aR<(e?~Q7<78aU?%3_FuGh!L&}O=#RZp~ zgmK<=zBpkzd(1@rrd(Y$Gi<0xq^8Epjb+a2vN+y&x6hOmfVy@XvfCXdAT9D^h3ZZhsLg1)H z7`X_Qz)`X8t*Hc#ipAEzG7-1Poy#N~qH&fIOdg!26w?QhKLNl|u_1vmq|hf41r7ye zSTmSAy>4P5SiIO{qXG*D0bdc$HfRBphysUV?7eA+5~9Fi0tbf@WGT^%+0#pEIZQ;3 zHe7{uCmaI;LiifY=)h8ukmj~DVBrIMM|59^i7#dif*R(|$5Mn?uwsA_VmnrpWwI}{ zsTDIYmls$OU5X(q_Aj~Xhe@S`UXSg-yviCZS{9UHd7x%4c4f*iQMhV)UBiL~+^I!e zupaHKNDn3r;r1qMz{pxuU1h_BiR8jc)YOUwEE6D;umUBaaqX#G$=qTZH{+;HI5dj3 z30n;-aI&tc5vnp52kbbguI%W+xuq^>#_ZN+v*!whFwGIRhTB)`Y08AWIvfhA<8MvE zyEai^Xs70PaUKK-RS~S_LKm@6!WpgjtHYVhSY)Z*+bm*DjhNkM{cr=@McIw6h{kN| zD4WyL3_=OD>+GHwS`Hoql7lDKic-|>vl?SfEgbM`>m01&^E3gfF{Ty~S!dPxfNF=6 zPh59JVd#?~++?W2%4-ES@XL@@Vq&GVLWadySVVJMje{1tsV(C1!0uv0 zA#x1qGpPHt-^G*X$E<`n8kOfu19XP`YnTar9!zQCP*i;0lAXMnTwh#y{hK%+<>3LYv*cQb)pw18TxSctHEhm+`aW*}PMR!H!aze`4 zXBlwR@obQhr!$!GWv=4jv*W17gDrZnfS4lp5mT_~hfBbRU~4e#kNLuI<4P`hCOP_Y zINcLD0Oe&%r04DA0SRA9$wfLQ3?bDmDFo}75`vMtQmed6rxR-Gf^l#X7gO~$(OhUZ zXXkA$OPw$bS~*M}>pKEboNtWEPXwS8A;E<=J;?!=3pGDhTV#X97KQJHBPedZI5+1D zdz8`T5!C%4sxBb3Gs$kw7Y;8*nrotLA6yEZx9UNT&R;hVlt~L}yiw`3*87SOG_;0I zE4IlVTg6Hpo0PlAc1@%4h-zTu^FE8sdFRo_UJrCL%C{jF=tD0y5DB))j3Z2dcHG7x zMG&BEs|=H^B%-xexZh%w8>wiRanb>gJ=ut&-r(pk6hia?M~Ax_SITiABiU1v+GH13 z29Z^bO)=fJr+Bh&BtU%fHTIzWKt*k6aB9T6=}B(UZmyKhmaFSpO0s(krY@(o{v6Sm_9QM%(LZhZhk#-CrFk|xAIi?S;PYi0Sc`jTY zKa$Q#i{q$YXFBd`qs--)dDUPxD5*Vb9%Kr+dlq9GEXF-OBM@3?C_E8 z2F{k=Dq7h{d=J{xjc41VZQz>m$0hG*^LQ+S> zVx=SR`{F<(jyWcGRB7Bf#L%KeDYWRO=%Aj4eFPo-u>x)?+s1>>oYj=Nfrz|6X41~e zXf9Bj_Cs8oamdNFj&Lt?eyCaUu9c2g@+IN&e5Mbt%$Qii6+S^rxgyZbH?l74UTF?t zVw#6m0QcqGmI)e&DZuC>UO0T>(3BNYaG7sW=DR&8+7dL+TSf9RJFt zn(he`-8F1f4s;&&%C8KHG4;XjnLPA|E7ffc-PlfQYC$Ey2EQ>=i3^Xy=51xja$ZIWi%Xi9w_6Nq@G-Eh1xYU$s+p(ChoX9VR-(jy{T(8 z?&$0GUUr*gJ|lNRWmprH1F??5j)V;Zeod*R(e3c*fS@R5pvyMGL{%5HnSo5T$tCib0jrCBhddwGbZjN^SDBAJdNq zH%`ZwOH(MWW~6H>fyr{)ENcIH(1R&zJC>S#5-(lqz)=X=#XYkm1(dE%O){MhQ^vZ( z5ou87@R9P`;h;OY7!2@T59XY@s;8~f_W8&Xtd-+79{Y3bxpqe|?U45$u$tB_og+?` zxK4=OB9Fw&5)3={ZoDjTPN8{!4yQc%7;1hYPTuDsFl4vA4~l?gT*ReewD?B(3yO8s zv|^>;l1a=V_C#nMP31%#L*r=HdkihPiA*C_-gCujAKtQqU#(S?0d-7Uy^+gy-AB04 z0Huj5n2eriQI#b&B^jh*1GrPht-5z&^TS7vp+UMLAjkN#+P9#ov`;FU)<10-=(^4Z${v zH;)PnbWKT#zE_7*Tv$Hvty^^>G|U`~X@P@!;8I&ngp(RLM2I4W?W~dKx>Oy`;7&EO zte|II!PW)~<7PfqYAPGIqsq(bqw)yW#ighOItg3=VbkUNFl)2c3+qk+U;Z#YSe&{M zhQjEcS(hs7Bv|?AhhcU72{?6?OV^=Lpq>br+;+dP!#Jl@2NZpvkGgQoa;&SS8M3L= z`IF*qa-$$bPM5E)SWE<8j+7oV=mB&cYH~BYq>7}qDwzJI)C?S&M@D%y!(@EUj& z2MDb`T6^S>sE>4Zx{h6o$^139{NAwn{tydxGZtY#!4zR~i#Cm|TNFtB4VLIVvJ z_B0wibYcQEwwePunMWe72*IWMlp#y7p&_*aPt)U+Ril5Hc#(>=;J|yQ#=59sqj>Go zmE_W;T?Pj*xC=}te>p@$16((s6vXnfF72oWi?127^Bf{5tq6MTp+=fK_QMSggF1Bt z!yeh@7!sn}NamFmohIUgJ1-Gqv)5#NdxVRwSa7g;KjTI6~xl$f#^=xg?wk*7NuY|bc6FEXyA|q(*N146h(ye3iv|~V3D>2 z88kShHa%(LHi)??bB-;=F{sAX$g!i8GlUq-9puq$Xa+8lb1}r^5LFxv$;EyKXqu8? z3n~HIOjJxgB%s$)v0xy;3PKysuIMKTj6LRtH^Om|VgYFGixl#q5Ln*WS18IODHx9G z|BmI7RG4~Y(kWt^8eq#I$s6B133On%k{%RD8V^R>t+Fytx~#4mHz{0O6_PBxtci0v zo*U{++S0%%9rXjA^IcQp2ia*#GAXe~9DS`7Hf1J`*rQ|8v>PW0gH>jTA-_bPS}Iaa z11H@aG3tTNTHRur@p+ou{`+$!{yW)p^4(le5M}LPoX{#xPmpBzUosObzVABtup=@k0#-`3+odked^Q$M{jX z(ncJoZ)(KT!v)7w@}RB_x8L#3rXK7ajiTUP68FB@k;`em49aGQnMbL-o~)*(qfej| zh#lr1lN26(th^+eaoLeajBQjq@*a;J9epZW8;*@WumM6nIEE2wXlUx;1Io~QoN!0; z5o_yYr|#_SwBe`2qv_%aG$6>Kc|{16wk^Y$^|9Z~)ja5`XP{*~v9F5+O*yomxpr ztgxt|0S|*Ao|?)1j%PtMe|(BlM+a9-c_64uM}kSLYarQ(K#YcvSI<`7rn#XVotiF( zqihF`kq$-q{0A=191C5vN{ypePKS`0t8G5nTU zhwll$M%LND8$bxkRF*pYggb8i8Z{X<#`V!!7PpS47G=vDxq^2uxhjT5N*ok8pQ9hv z76~w@op>yQrzJR3VqzO&9XLptQZr3WZIHJi0W|aikzti*c`DLAvql+94#83UTi?F`H_^VV+xHaGP$V} zYl=^nICq*Qtl}MIrS^KhqwhwKQ47%>JEpPngdKI~?#Vj( z?DB*igNUJ3#jQp6`t6YqV7zD{jX~$^S7N`p&D{688tm%3@6Wl~`aP)0=|UyT;24Y) zSP25L0cx1V5eE*9%5OmM$_6GzoCFl>*#_^Ca9(hX-^4z)zk`nH?J;dgV#OR!{sV&)!kS|#Z9#rM{!J|?#5}vPwL8+lrN@R9>E@mINf30UcvcNZl5w&U-9P#U z{F(`fG6T01tkmkI29I!*-N!%f{N$(;b_{26UWX_O2n%EW zf=@uNtqky>DujcKML6VwWUXlAy9lU2B;kjFj&^i)j0?+7caB=O&7y)`luyk7l(fwN z+k|Ke&gC`=2XY$OS}7(W|MeWKmLxH&pgaNzR!9D`}fd#Tu4qy z==f57N`;$)Q`sWmkV~VU@s#J6<2Vu)qES84`qdtAI3n;+jH9!jkJ!XHc(bE%b-}_W z&5Yv>0W(g&T3*}^N@c}ag@Bc3moN*H{x23yO@x+>U24w*j^a8GOMKzns^m2vPLg@S zWmUIyxZKz)JNjk-w~evh0gXxx(%T*7lLE-mXgd}Fx|X69lKG|7b-SOy-8{QXY;-)u zmz|Xkp}XP{ZJeI$rwi`L=MJq{d0|TRt|w~7u~_BNB5j>cjQ;x|RA^pzu2 z6Hk}umYVk&vwDz&J9#n4C0*&5nB!Gknf=Fh83%o?5O$w@5AO{^Ka_stvLxFNgb@in8ig!Z0YvJ%aEh4NqU-n@Pu`-@i8VQiS-FXxv88{B zjf3CueP5^hhSN5LN*;gzsUN5>kfo^u20O{-&c`)MK9P_j9s^Ve(eBHp#_{u zIM!{?O{}9WUj164et-Nn;#7`Q`)5bd!wK;#Xr?+Q>JKEsqsw#0tgl93lAyRsWW^_s z>Wl0$$z~vb%MazhZr|9t#G=tU{hwuE>-&2yS-1T_%Nu}`G5{&i*@esiUKWy^IkXeF z&Suj3{@6o_MZ2HcCgqVDcL^_t<<~Ph{<}mtXUtbdC(b5U;!XT}(F>*D?YcPhpYfAv zi|^X=7Z}JBo%6yH`fgmzz2ELzp-O+>H7>rh;MqUDo~X}>XN~#FYm$P{6Y&WYu;&r{ z5z1q`N3H8W;k*NVmrq;&Z0yXwiW45&o!vKTJY5PMEKye(p^2j*^x!o_-lPG3aDQazN>$e zznu$~(jDE$hYpqQ==yVCL+*`#=>=)U1<5KQ$#yCd-?q2QHXAG75`Qg-Bx)`^Ch1&a z)`7$)AyTdXY0o)uT=&ZZ^Q3s<+frHgzV+5bHfmLTE%{Sjrvklu%J;zYWF8jD6JUXGdW(rFHxAN7!}WtSC2|8+LxMq-2`UGB^Od1<2|pT366&k zmWL1Y+|w6%Qgl>T{rtN>2F6*S> zQ9Y*{g*qs8u;p|(>1rF_C5^iH8O{0;&e>5xRYg5JP^0w_ZN71b^3><-n9SBe?U*dG zz*eizXR#{F#$7n|>iUbu>9@MZ z;YG~?Ou-7rU04-a9BphLhsj?TehdT$XfT2r-@UpGzeWNx)}_rBi@-EKh8dw6&x^il z{NnCzH69nRBWgUIu(c=N@RMV)E=}sf4_=XTX?xFjJOr}513T2?W8;tH+|eK*SZzDf zb2>V5DUteTJ}{G#In9^~4YP@tv>Sh9-qUQ#rxP^9UiuJw^J$Cd@b>A`MP~RT3c&{T zk@>ef)ko&rZCPhZ|6y-mXA(5>-QKhk{&rijX@mRMev_PT!NZbRt&K$r7vp4$TcJIc zJ0rOel<^1(&0j-JBPcdLdCfBu%b@kGOu>zaG0lRX!t3Pn)(?lZ zBm3SCHcmN@H|&#PPCn6CV8{p==9&2Kk<}y9a@DQy$YDACbEG{Q|KDls*)aL_`kr8y z5jo6D@Sps{@#TZ(1pK!j<#AoXehiym8U9;L`|aRsS*pXJo#E!-|3v)vqcroXT=g0v z!E`VWY&s?b+qeO$gPls9arYQP`D|FTU?Y~b2$-k8F;`6!4*kcbcRH+oxR+m@D|yRs zNw?wF15=(YkLw|?26p?|^0*TOpKlBJuD47uE#I$G_;OE0deiXz5;Q-4GZ8;dix@vH zb=mlR1A#JJmp7;7s>!h1Z=3oa^d9Xr7{nE{y3 zr2~9^I`$zQUjPr&@fQ5I>G(;CyxceCs$RI;&&qo?Mc(bR1O0m|n613i0T>+{zgrr&*6s?mB+d1vFlmDh#Fz>i<& zThInBMIe59PtPE40{Hy&-tNg`n{4CPl_KxF4D#Aj_G&Sw;p8^6{IKBCo18S6v7?UkpzNfUk#^Yxb3EB97$1?C?OJ2ak}bLB*x}9|Iry@ZMt1Zs`)H0K zTfNy~f^6vt15&nPPZoUH(i8divjYoIw)6x6DO*}{-~NukBK&MggD+c3(6?U{Sb(yn zB??H{(vtXgwgkbKtyq(TFI#G&Z?M)>b+GS)`HXS@K#Kb)MP$^ItwHq&uv_cyCq#$JMQJ{RrFT4QH^pNsZoi?RPn>}RTzkhk^|eK7Xt z#r{*K>z{680^bfM`ZXq<~2m}czfi+zH+F3J5J>gFW-JJpwy>=&qKlI$0$6HSxN zzVckO4{!6DaK>*^ioGVqzBt9+nPUH7iv4pb_OGYdpGmRrPO+cNNxAt%KT_k-@p>?<$O)sbK!kO|kdF&brNFd!zdOp<9ieytMy&3jfzq?2o6| zf0$x_F~$DN6#MHb_G|`hKEhK|?Bi1Gm!{a$J%cneBD=wZ-vvqYk{Hfj22Wd7Ho+Pk zf=$mp^ugKmr(;1)UBevw=$Ids+ThKwq$t%^2GL6+bm*tXRHkKXT*<`Gfa52gaIkvi z;XDVX8tmJ-k^#1YRy zuR;qs!vlhFYhH~9ZKF*MO?VA~FHyNC1sfVNc$!m~!6A5#P~k9nV`~Y1LpEPHxoOf1Bx;ols2A-{7>@!5uKcW;IBTw(n9g4$#*+?DHb2%#0 zS%x8=8(EC($mDIGKjBQUayo6kj;A{iZd-&%V;OQ{VEc^}6C*VYRQ|D^+uOkWnI+8HVA*+S8$MOKh-{lIdI?Ce* z!yPq9cl^NjGu%;wVR_jS`b?R}V!>s!!#OSh*@G^_Ak+9$XA!&=&UX;Kp(DmE(az2^ z4yJwbhM)2iHw_IF>gMBKn8MG-X<`o z{IVi?5bfKM0efHJ3^V0-1;bR`bpgyW_k17pyZdW6p zke1Hy+|Po>ss&w zPigWoO}@LBD){58wEV%Zq$C;ol*NmAz0yytH&phrfI^bk%ugvK(dO|@^CXHV%*Clm zX<;7033IflGQvEH{v}O3n&V|mlj5(~r+1l#kraOH44UMGG^wj2D+d>_{BV&3IFk?3 z1^lS8a|OooV>UZs(et%rV$GaF>t2vA_ub@ImDr^D*EPkS zI@J}Ti>}zbricxf6)kR_r7IST;^88YF~9Qtj1NkQewO%du=;_Cj3&IL*sYp-@I&Ny z7ZBNO1L0iD%+q9dB?}An=VBcq3tJc5y$D^bWWOtP3D#0bzf|t#sjTrzEjR96G~xbn z<9-iKc>a=c|Eh6+mUL`s{FG*%Qe0CFVRNyaCKh;B7;_!WENpFj+}J;3%=--e1gu?$ zu+{NqnpoI82WA#F?Fwk(;1AD`(A-C}9DG>A&bnNw3t{r|(nQ*^fl!Hspe$@Wv>5Z> zXoCMynB;qkcJTemxVK}im;4`v$@t!B%zH^kd>=LTCye(0^jgUl{sW<{Q#5&X~FHg#7}n_tQlF?WTE|QrDjkGheAM&@99mC-8_rW0n~6 z4r6XH<^f~ggt7|ZAk+gi5#H0r+=8;F{YhgE81sNJ&qA5gz1WzY(23AwrS7H)`c`AU zXw3b_%t4&#ex5NeH|AVpt}^DW#@r2^2~7b%(nf!m8*?;tCsd)-9W+6I#F+bxnTtFo zz1WxwjQM_J-fhgS#@uPl-Nu}TvZ4R$jd_BB+al=FCx!F)k^KB3Ejy@ zUeTOu%vNKLt>vYiPVL$0=nAkAd zIveH!rFPOh75h##+8j4Wo7WjLX3R~-e8iZ~8FMaVh8E(2EX~uPkH)M)7_`TXd51Cg z8FLiEru$j%hIuXGL31qXi80S>(DvJ#VO|G4r3tsqG~u?D=JiT#r`d=#;t0%JkPe#I zD!!cNhoKKN--h}^bCFWJXue&k*Ni!OiMGdRE{1;6yj7_!G|xe~8FRpx%}YVgf_^KQ zAJco8p^uyPcB)eEAsu7qyv?}ZLH8L--DB)updI{MXb1mRWA@X8 zyzjsy{~Kwasn1n~j#KJf+EJ!x9#j^}vWO1}5Y2 zCYq3Urm>$x6a0){7Idh>$U!qC{@+Ct{!t8)AB-3CYbEW7&xdG-ZhgeKqevvb?ltaT zG4uxv{pU2V(fP*wMH4OZCXf&EP_0BBf|T%(1d%8C0(Z$5`0F%uhMNVQt~UIV?}#6g zD)OM>Vv2wGYau_Fj;9H|6mzmMrx-Ken1y;Dg!(y}a!?;o#ic&v(riFGL-Ts*Kg~u{ z&IoKA?WiN8Xj=aWPyC|}h<{|N_+M)LBXXiAQR9D^(RU>JLdt11df#To8|`SfN$)`W zLlc>DInDQIJq&dzRYiL@+DV!*rDoEEQq|BzWtmG8g^4Uwp;byDi7K=j^_S**^*AQ< zKAmr&_bY`csL&dn|DhX{f=CrYWrJ50>P5dx^G1FCAhcGgn`mFB)Xg+u*+_Fe+AW$N z#F=B7P@+3%g6S@rakM)$H=y63nLxiy6P`EI>@)d_c4sv0Xm4_8LTD~cD8*QsA2sf` zVK1L{n5>UkpHK=-lL{fwchEdekK?jFiF!i&6-rLUa9ktyOH4h!QcedK0xjTM*gLwe@4s8LM6Veps-+^_Z8$9Oqw*Iw5X_P+_(w(`EbECNBwtV zaWQN~6H9RU5tQrS@PY8m>QE>IiTVqvf$+D=41#$vw@>^?iNZ2i{R# zOh;V4T&DWoJz8JQ?5oa;hj-z6`)BEfJMPEH9nN@l-XRsgVHEEC8oosbamRWYo>jmb z4a?O0#N?TLIv}@3JA;f{$Gh~U&UM@Ka1Z^^==e)L=Kz!=dz9*VL(;W+%gLt*61aPu zTa&0b>(I`dtMknzR$S{Ia}%`$4Eka>Lc0kxYFHnyDj%3SqEV(}GboE#n}<1g}%j^R}Vm&r9Z8<=V64wY-fW&u8qY^zyoUv`aur zE>|L#6H|H78`sYf)5N^ont6$emP0$^yX@6{bKjQEhkEdL|FROBMcy4+b0-&XLAapz z_f?vQ1$Jw zgjtKJU@d65RA0|No$kIxyO}mTb70Ho;JiANj!DKSos66DBmi=Kx5O{Jd+7Mx^wTjn zoqVE%)wk$nO0OSXYo*&_?whr5&Sy_YOpu-7yZd?uzKwg$-q;M? zd(xrf*wSoe^AZmatUsiA=+E(F74*YjO$&+34lPr*aL0+Z9qbDa)FkTfcCo=zDt9MB zsAPThJLB~?_sx1bK5JuX_{A~n`JRD|%4vh5l5=ZPT%JsX2kh$sr+_(lJs_L!285sP zTeLF~eiAJ4MK{YE1FTvB*KzUJ$(P-?=;^-jbI5(X!g9B{)V*#yYtXVRn}K-x<;lJq zUgPsC(+%YLlywg=@?_~QP#E9Nsi9d{dLn$QZeBYw&tgnOeZq4>} zJMdV-fyAtwIW~GZiSYJB=O{d?z>KijpS#x-%sdu~t<~dpgrC&mQK7@zUAvR$88At7 zFUi2}rfI2&E^(2P{- z7CI4rT8I4f&><&fRQ-0RIS5O_NKC#wQIpF$g{FEe8-Gn_Udw^cYoik z?K*-rb&2ZJSq<;%TlC~%)W9dVvXhI#)7Xzi?m&dHn^6K7OQk8LUuEsLO!cVa7F>BwF^N?+@kQ?s6&lL+61CTpXOFIudp z*F82iKI;y|%9N_-yx*x^O<#CljcZ|V_sSJjHo1Q9JsItf-?r|2NJ{ouslzs8SBG8W znwWL7Rq=6sVKlr46ZJQvXm6k6vMy17JInQv(s2Kn^`pFU9j#oobanf51xbWA_5FJbUeeJ|QOP(F55Qm`$tQ*qxyuxq z^Jy}ck3Y8lso2GEm?MKC3|hXMom;ysWNhenBuG40q@Rr|=znTkFz!UGYzvHWdaN2x zTR{WSs09@jlvO!u%H~lomH|(;uDE%Ipgd=YoaSZHwBsAxGbm`^-CKB-{ z`qp5Ma8~>;c7!!tYp`!*;|UDI*7c9-tACC4-MpQH@lyhCNA-`b>01xlLlBXM-SyKDRE_j_$l z&+gQG_#0IpJVvz}y?f7_O%*Wl#v6!Z`97DXB5I<>TSE59D$y-7Pjhi?Y+;|w> zI=jGB^{SblsDCa|Aw!y-D0Hvudn@uwYK*I&r<(eb)c@_@%B2*HY|`g19XXD*RSKC) zjbp|p>UVmXTfdW?-@elDYh%{`FFe@-9!}j~#M@oAHBQs1v0lBL2)}4qh8WKbKnGYE zlHw(KZ6lBQ#EX9y73kwqMw(0t?@CM_Ym<^LwFeVD`~NO6#6xbnjXyAS8=vSoi1@6# z;WahpW8ohrJ%l;OZ$ysCNN_{=he_)g(#|f*-4PyuLa80$7qehMtvQ7kt&Ts2QGa~a zfeqnY!MkRF{Q%2c-W8L;~(!;z7ynKYL0=*CC62;Q_yuNL8>;weG z5MSSx6+023<0ZvId(U`%8x|g5gXPfPoY%LFBHsY{5^F}U+cEm}ZMkD^`Z}zxJw@cW zdh|J;7Jr;kuHUyI{2HRnw*#k)O5`t7iSX$)%M>crix^c7%rUD8;T*SCfu{XsBmpr# z)HNzm&9xbb8plLT&8@{k7$^|EBfOhYO40lJeR#0)jpVJ!U6x&&m^|7r?<4b`=ke$D zZR29gQscwSo>Dv~F&S%O5Wem}R_qMYm~F)nqsfW-vFi?G_hc13i@3jtVf+9(AiWxr z3=`1*4)Tda;77Lhh}*TzT>o()#o&=<$boa%|gX7n}4lgsgiGH?}d) zaz6F=D5c-rlQ&$cB;lNO{dq?7^rL--2l3i4Ip4m~C-rj;pXp14p&KWR`OrsDLl2#| zemkOV;wUS%sA8(67euP= zP(=$dY?zk_!bSzdaw_i{bHFbm}Lzf9+Ojm~o&^d3ei**E)n zzia(4=|pWhr=_e>VyEnflO-dThFe{C55u`x(}osI%poxSMv5qwKO zyjdcP7Fk~iV~DKZd#V|4$v{Z^jUO;I6)J7&;C1G$()yfre?ET9hw`xMdg#25U5*lw z@h}@aPEpWDj6M88Oc|#G+&J5Npu^D|-0#ivwHPghM#Td#=Ll zJ^6|7!=XL*!72W_S)U?bN;s%62a$GD&2q4eA_OZYXK$mtCo6LbdhM&X?{A`55aykU zS+6Cgu#G#DkJhdltzwtOU&s5olSjw1Y3=#L-nZSFm@}&Us+^vj_-TpSQHhG2((Ks& zM0ROSPAm%~88h~L3h`Bmo&$fM!H*1Tk_IzLGXajww6dT=tx!iiAKDOpc+byHmH|PE z0%4$j7z(uCDiDS&UKt1TUy@sf(xc%<;Rm+C^5b)TftA!@H?Z5B(kWY3M=wvD2rA z_I%`|e-3@hM(c@oA-z6*Go3!sM~XfTr0Ns4QPb%YmO?V=(}2^bfg{wX7fZtf)TeL$ zAJnIB?wKOHm#H1xKVJKE@=*G;HJv`uM~XgiR-V*8J(pgec4gM5T~42N9icuwR~p_$ zecJkeP@lH$`5jI;p?mm;@9$0@N}s-wPM_!_MV~MyPS&TV)9cgD%=)y`>C?_5)TgIQ z!#k-@-}pbMPv6+Xr~m&M^y$2z^y%yA^oc%F^y$e|ecGO0pPtODPft31dh!VMX?tn- zN$S(r{}1ZZ*Z0i962d=&J{1n7PYX=zvHtPoA?N~T?bOA~UlRrDbA9nxiAhrW#_C}9( zJ&r)|uRNGTef>MGM}+t5&6xc|tYtxI zuvVh^_6^6!wK1G|9cpci@`hOlIVPJrRQ5Fwt1;{QM(dV0xmI8`4XXwtuMfMoQs*(V znDRw4kWFU9V`9NYq=xP*O6{ojuK<2CzQ}YCtX)PeObC1D%1aC+hWRt^f7=Y@DF~oQ?A!hp+#fVo9Ay z(*Nf&=>NwPvz~MM|J;%3|IX6zbJTyX_xwx$%{ur|9q;U2^G)i%8F~Nz(|^;Tr)u_D zhcn(u+rFn;e@dg@TpdW&Z%+9J>-WxnSBY zPoL09!ORMZ+N-8&3;tT3PYWHF3h})k%lo~efzVCtYxk<(3Y~u}e=W{Z^s09cqJRJN zAkHs)_^-gd-V69v&d#?6{J-_^8_o#m@AUAyJiGw7*SwXz8kZW84};?4$9dGaK;{`9 zF7&X^KO+O(=V|tM?f~wU*D}Zv^!$1NW*~VtZ^NF)qvETRn+*jo>Rvh;I_SQt)>L_n^po)k4v|F;@~_l0}E6 z*~E(l|9c&An_#+qj(_mIG?#Q-K*cu(4H@c-VE(Z@FE1pWts(A~UQ1jpc=UC|MG`Iv zmjCrdLAu65z19l1{$qIxJo*gaUUiM*vOJ${B>mq-eg(3)S4|h57utyPh5k|8J?>SL zg&srH)5Sk`RS<_uJY41BcYBz^Y#crcdaoKM^1meb9KnwZK3DKA!S4|Ks^E7D9=)1= zp%nPuE?DQ`B*BG3uMu1%xJ57&0pD7|ysfU(rvyVO@I5HFMDPy;mkQo3xLoi_?`619 z3ViPntjo7tFcbt|o#4rWmkXXE_$I*>f$t|!*zSRq*F|NS2%{W{_Q z9-`i>t{1#VaJ%5^uuOfN9>K5VQpU*iI;O`30x#BV)Sl6#V2|iEg_=Rc6 z(djx@u&!$*f-exB8o?I|UMl!f!8Zuj_3?JWR|x$+!4-lZ7d%z)3xa0~{)1qxw{O_U zILsINIf9!6mk8E6cC}zMTKJXY&+!kwj|$JDg1;#E+k*QA_X~br@MD61D|ox$ z6HuJJ@`?%GE)e{L&`SmH5L_$xDZ#D4HV$h&Oh+3ZAAj28`G$vmo@YJ!Z-9I88v*>@ z@L}S&3+5jy|BPEn*E&-OY~xcc^!7pgfAM(6euRFtZul~H2pyd^zLx}FCHU2kl3(i# z2{sNV+!loE)6WCFSG^>DuN3@C!Pf}>wcsAXzZJ|sR^~@Qw`uvYhtIh^pfB<8oxr{F zqK#7b3qCz$g<6@u{2iX(Q$H5SoabSm-^a^Gz_Z2U`J;!g{CE)70uTH0H+uBXdf4ar zaR&OUp!dp)I^+)Wv+9$izfEY@+)1q4qW69(h|h;Tyvf7993St>z>{+q~<@k65c-9(@A9?u9djop2 zhgW;}%fNPg=*#?`(7z;7UlFX^t{q<>{}V#b`y%nXMCTW7CgyH}Qa1{26#PZOQNceD z+$xxSHZA)>xADL5%arp7o#nGUR|;LX3D*eL<=ZW|MtE-#tlRc`1=k6^U+{+n|5@-x z!Pou=!$L*Dccb7F2gU79p=-U}Dfm3$&%s%3+lP{1<2e&_n--tm>(M{%VV~!_8R)w` z`UzVY?)CI0pA9$iHPROgt?dEgWrBMjB-V5D{;w1NO49iJH-dQn#>4bvW%~G>t@Qha zED`GQ)PTO$5Ay>kk4RdbWNWJ^E(gUU~IPsi{9CE|+kAEqICGpY0^QQ}C{5h*t^z z>9fSWf(L#?yg~4b&kc9)c zaKyLkr^Ew-pLvmZx8NT_?RwP&(WOWJo48!?e_&|UtF9Eh8QywTrN%!ao-X*FpA*j( zeCIES`3q)v8}DV}`GRkKh4@;*AO0nAgW&bQB5o2)KQ?dUh}K#X@O{g}`#pT&o`C0F z9$w_(_j#DIto%&)6B+ow?$Mv~urKHL8R$OG;o>pB4$|oRt@P+I58vZqpZ|G}p0k&E zeg>V@c)@21<{z6sbAk{K^61C!W4ITJ%u9bm{Pdu5-}zh8D~0C| zg0Bvpm=RZ{T;ehskDnZUa5tTIDxz8)B`I_hS$HeqROM#{bb# z#LL9TXgtD+{#5$PCvyV)>Z!zc2+zCDB1Wf*ukanjp)BJ6MYGkbpw###EG51{a0FW~ zz3Pji&mX;;_%flNw23$&^qp9u?Nzmc=iEz-hXV0EhiwwHhr)m3;{krp^Td}4|GWR2 zSnuhO(dN&4LAUvEhljuHVW0nJBIi;G>vh4C1fPr_iR_hEDDlQ6u$Afit;j%Mkb&;| z?aIKjF$4WSK(}iSKN%ptK;pUe7sR^k{^ySYespve=ub&red>H-?grw0%ratK7N_Hp zZQK7YtswrRl<9Zy!{WUP9W}nUEgS`WjbQ$<`TV)-M!7uc_ps0N0_b+m>(lGs9r*R> z9iaEh3$#joU2q|>`z`uAOu}=GwablhJ2R}-z(|G=p z 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 literal 0 HcmV?d00001 diff --git a/bibletime/bibletime.cpp b/bibletime/bibletime.cpp new file mode 100644 index 0000000..ee84db7 --- /dev/null +++ b/bibletime/bibletime.cpp @@ -0,0 +1,266 @@ +/*************************************************************************** + bibletime.cpp - The main class of BibleTime + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//local includes +#include "config.h" +#include "bibletime.h" +#include "resource.h" + +//frontend includes +#include "frontend/chtmldialog.h" +#include "frontend/ctoolclass.h" +#include "frontend/cmdiarea.h" +#include "frontend/presenters/cswordpresenter.h" +#include "frontend/presenters/cbiblepresenter.h" +#include "frontend/presenters/ccommentarypresenter.h" +#include "frontend/presenters/clexiconpresenter.h" +#include "frontend/presenters/cbookpresenter.h" +#include "frontend/keychooser/ckeychooser.h" +#include "frontend/cbtconfig.h" +#include "frontend/cpointers.h" + +//backend includes +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordbiblemoduleinfo.h" +#include "backend/cswordcommentarymoduleinfo.h" +#include "backend/cswordlexiconmoduleinfo.h" +#include "backend/cswordbookmoduleinfo.h" +#include "backend/chtmlentrydisplay.h" +#include "backend/chtmlchapterdisplay.h" +#include "backend/cswordversekey.h" +#include "backend/cswordldkey.h" + +//printing includes +#include "printing/cprinter.h" + +//Qt includes +#include + +//KDE includes +#include +#include +#include +#include +#include +#include + +BibleTime::BibleTime() : KMainWindow() { + m_initialized = false; + m_moduleList = 0; + m_progress = 0; + m_currentProfile = 0; + + m_keyAccel = new KAccel(this); + + connect(kapp, SIGNAL(lastWindowClosed()), SLOT(lastWindowClosed())); + + initBackends(); + initPrinter(); + + initView(); + initActions(); + setHelpMenuEnabled(false); + createGUI("bibletimeui.rc"); + initMenubar(); + initConnections(); + + readSettings(); + + setPlainCaption("BibleTime " VERSION); + setAutoSaveSettings(QString::fromLatin1("MainWindow"), false); +} + +BibleTime::~BibleTime() { + saveSettings(); +} + +/** Saves the properties of BibleTime to the application wide configfile */ +void BibleTime::saveSettings(){ + if (m_mdi) + m_mdi->saveSettings(); + if (m_keyAccel) + m_keyAccel->writeSettings(); + + CBTConfig::set(CBTConfig::toolbar, m_viewToolbar_action->isChecked()); + CBTConfig::set(CBTConfig::mainIndex, m_viewGroupManager_action->isChecked()); + + if (m_viewGroupManager_action->isChecked()) //only save changes when the groupmanager is visible + CBTConfig::set(CBTConfig::splitterSizes, m_splitter->sizes()); + + if (m_windowAutoTile_action->isChecked()) { + CBTConfig::set(CBTConfig::autoTile, true); + CBTConfig::set(CBTConfig::autoCascade, false); + } + else if ( m_windowAutoTile_action->isChecked() ) { + CBTConfig::set(CBTConfig::autoTile, false); + CBTConfig::set(CBTConfig::autoCascade, true); + } + else { + CBTConfig::set(CBTConfig::autoTile, false); + CBTConfig::set(CBTConfig::autoCascade, false); + } + + if ( CBTConfig::get(CBTConfig::restoreWorkspace) ) { + if (CProfile* p = m_profileMgr.startupProfile()) + saveProfile(p); + } +} + +/** Reads the settings from the configfile and sets the right properties. */ +void BibleTime::readSettings(){ + applyMainWindowSettings(KGlobal::config(), QString::fromLatin1("MainWindow")); + + m_keyAccel->readSettings(KGlobal::config()); + + m_viewToolbar_action->setChecked( CBTConfig::get(CBTConfig::toolbar) ); + slotToggleToolbar(); + + m_viewGroupManager_action->setChecked( CBTConfig::get(CBTConfig::mainIndex) ); + slotToggleGroupManager(); + + m_splitter->setSizes( CBTConfig::get(CBTConfig::splitterSizes) ); + + if ( CBTConfig::get(CBTConfig::autoTile) ) { + m_windowAutoTile_action->setChecked( true ); + m_windowAutoCascade_action->setChecked( false ); + m_mdi->setGUIOption( CMDIArea::autoTile ); + } + else if ( CBTConfig::get(CBTConfig::autoCascade) ) { + m_windowAutoCascade_action->setChecked(true); + m_windowAutoTile_action->setChecked(false); + m_mdi->setGUIOption( CMDIArea::autoCascade ); + } + else { + m_mdi->setGUIOption( CMDIArea::Nothing ); + m_windowAutoTile_action->setChecked(false); + m_windowAutoCascade_action->setChecked(false); + } +} + +/** Creates a new presenter in the MDI area according to the type of the module. */ +CSwordPresenter* BibleTime::createNewSwordPresenter(ListCSwordModuleInfo modules, const QString& key) { + kapp->setOverrideCursor( waitCursor ); + + CSwordPresenter* presenter = 0; + switch (modules.first()->type()) { + case CSwordModuleInfo::Bible: + presenter = new CBiblePresenter(modules, m_mdi); + break; + case CSwordModuleInfo::Commentary: + presenter = new CCommentaryPresenter(modules, m_mdi); + break; + case CSwordModuleInfo::Lexicon: + presenter = new CLexiconPresenter(modules, m_mdi); + break; + case CSwordModuleInfo::GenericBook: + presenter = new CBookPresenter(modules, m_mdi); + break; + default: + presenter = 0; + qWarning("unknown module type"); + break; + } + if (presenter) { + connect(presenter, SIGNAL(lookupInLexicon(const QString&, const QString&)), + m_mdi, SLOT(lookupInLexicon(const QString&, const QString&))); + connect(presenter, SIGNAL(lookupInModule(const QString&, const QString&)), + m_mdi, SLOT(lookupInModule(const QString&, const QString&))); + connect(presenter, SIGNAL(closePresenter(CSwordPresenter*)), + m_mdi, SLOT(closePresenter(CSwordPresenter*))); + if (presenter->isA("CBiblePresenter")) { + connect(presenter->keyChooser(), SIGNAL(keyChanged(CSwordKey*)), + m_mdi, SLOT(syncCommentaries(CSwordKey*))); + } + presenter->lookup(modules.first()->name(),key); + } + + kapp->restoreOverrideCursor(); + presenter->setFocus(); + + return presenter; +} + + +/** Creates a new presenter in the MDI area according to the type of the module. */ +CSwordPresenter* BibleTime::createNewSwordPresenter(CSwordModuleInfo* module, const QString& key) { + ListCSwordModuleInfo list; + list.append(module); + + return createNewSwordPresenter(list, key); +} + +/** Refreshes all presenters.*/ +void BibleTime::refreshPresenters() { + unsigned int index; + for ( index = 0; index < m_mdi->windowList().count(); index++) { + CSwordPresenter* myPresenter = dynamic_cast(m_mdi->windowList().at(index)); + if (myPresenter) + myPresenter->refresh(); + } +} + +/** Called before quit. */ +bool BibleTime::queryExit(){ + if (!m_initialized) + return false; + saveSettings(); + return true; +} + +/** Called before a window is closed */ +bool BibleTime::queryClose(){ + bool ret = true; + for ( unsigned int index = 0; index < m_mdi->windowList().count(); ++index) { + if (CSwordPresenter* myPresenter = dynamic_cast(m_mdi->windowList().at(index))) + ret = myPresenter->queryClose() && ret; + } + return ret; +} + +/** No descriptions */ +void BibleTime::show(){ + KMainWindow::show(); + //if we show BibleTime for the first time we are ready for processing + //but not before this point. + m_initialized = true; +} + +/** Reimplementation used for sessions management. */ +void BibleTime::saveProperties(KConfig* /*myConfig*/){ + +} + +/** Reimplementation used for session management. */ +void BibleTime::readProperties(KConfig* /*myConfig*/){ + +} + +/** Restores the workspace if the flag for this is set in the config. */ +void BibleTime::restoreWorkspace(){ + if (CProfile* p = m_profileMgr.startupProfile()) + loadProfile(p); +} + +/** Sets the caption of the mainwindow */ +void BibleTime::setCaption( const QString& ){ + KMainWindow::setPlainCaption( KApplication::kApplication()->makeStdCaption( m_mdi->currentApplicationCaption() ) ); +} + +/** Sets the plain caption of the main window */ +void BibleTime::setPlainCaption( const QString& ){ + KMainWindow::setPlainCaption( KApplication::kApplication()->makeStdCaption( m_mdi->currentApplicationCaption() ) ); +} diff --git a/bibletime/bibletime.h b/bibletime/bibletime.h new file mode 100644 index 0000000..27bc476 --- /dev/null +++ b/bibletime/bibletime.h @@ -0,0 +1,362 @@ +/*************************************************************************** + bibletime.h - description + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de +***************************************************************************/ +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef BIBLETIME_H +#define BIBLETIME_H + +//KDE includes +#include +#include + +//Frontend includes +#include "frontend/cprofilemgr.h" + +//Backend includes +#include "backend/cswordmoduleinfo.h" + +//forward class declarations + +//BT classes +class CGroupManager; +class CMDIArea; +class CProfile; +class CSwordPresenter; + +//KDE classes +class KToggleAction; +class KAccel; +class KPopupMenu; +class KAction; +class KActionMenu; + +//QT classes +class QPopupMenu; +class QProgressDialog; +class QSplitter; + +/** + * @page backend The structure of the backend + * + * The backend implementation for Sword is called CSwordBackend, the classes we use + * to work with keys are called CSwordVerseKey and CSwordLDKey, both are derived from + * the class CSwordKey. + * The CSwordKey derived classes used for Sword do also inherit the classes VerseKey (CSwordVerseKey) + * and SWKey (CSwordLDKey). + * + * The classes used to handle all module based stuff are derived from CModuleInfo. + * The module classes are: CSwordModuleInfo (for Sword modules), CSwordBibleModuleInfo (for bibles), CSwordCommentaryModuleInfo (for commentaries) and + * CSwordLexiconModuleInfo (for lexicons). + * Have a look at the class documentation of the mentioned classes to learn how the + * structure of them looks like and which class inherits which other class. + * + * The first objects which should be created in the application is the backend (for Sword the class is called CSwordBackend). + * Then create all the different module classes for the correct Sword modules. Have a look at + * BibleTime::initBackens() to see how it's done in BibleTime.@br + * Later you can work with them for example by using the CSwordKey and CSwordModuleInfo derived class. + */ + +/** + * @page frontend The structure of the frontend + * + * + * The frontend contains the classes which interact with the user. For example the main index, + * the display windows, the searchdialog or the other parts. + * The main index is implemented in the class CGroupManager, the items of the main index are implemented in the class CGroupManagerItem. + * Each CGroupManagerItem has a type() function which returns the type of the object (Module, Bookmark or Group).
+ * The display windows are all derived from the base class CPresenter. The display windows which handle Sword modules are all derived from the CSwordPresenter class. + * The display windows which provide functionality are CBiblePresenter for Bibles, CCommentaryPresenter for commentaries and CLexiconPresenter for lexicon and dictionaries. + * CSwordPresenter provides the essential base functions which are reimplemented in the derived classes (for example CSwordPresenter::lookup).
+ * Another important part of the frontend are the keychoosers. They provide an interface to choose a key of a module. The interface for different module types is different. + * The base class is CKeyChooser which is the factory for the derived classes. Use the function CKeyChooser::createInstance to get the correct + * keychooser implementation for the desired module.
+ */ + +/** @mainpage BibleTime - sourcecode documentation + * + * This is the sourcecode documentation of BibleTime, a Bible study tool for KDE/Linux. + * BibleTime is devided in two major parts, the backend and the frontend.
+ * Documentation for the backend: @ref backend
+ * Documentation for the frontend: @ref frontend.
+ */ + +/** The main class of BibleTime. Here are the main widgets created. + * + * This is the main class of BibleTime! This class creates the GUI, the KAction objects + * and connects to some slots. Please insert the creation of actions in initActions, + * the creation of widgets into initView and the connect(...) calls into initConnections. + * Reading from a config file on creation time should go into readSettings(), saving into + * saveSettings(). + * This is the general way of all BibleTime classes. + */ +class BibleTime : public KMainWindow { + friend class CMDIArea; + Q_OBJECT +public: + /** + * construtor of BibleTime + */ + BibleTime(); + /** + * Destructor of BibleTime + */ + virtual ~BibleTime(); + virtual void show(); + /** + * Reads the settings from the configfile and sets the right properties. + */ + void readSettings(); + /** + * Saves the settings of this class + */ + void saveSettings(); + /** + * Restores the workspace if the flaf for this is set in the config. + */ + void restoreWorkspace(); + /** + * Apply the settings given by the profile p + */ + void applyProfileSettings( CProfile* p ); + /** + * Stores the settings of the mainwindow in the profile p + */ + void storeProfileSettings( CProfile* p ); + +public slots: + /** + * Shows the daily tip + */ + void slotHelpTipOfDay(); + /** + * Opens the optionsdialog of BibleTime. + */ + void slotSettingsOptions(); + /** + * The last window was closed! + */ + void lastWindowClosed(); + /** + * Opens the handbook. + */ + void openOnlineHelp_Handbook(); + /** + * Opens the installation instructions. + */ + void openOnlineHelp_Install(); + /** + * Opens the bible study howto. + */ + void openOnlineHelp_Howto(); + /** + * Sets the plain caption of the main window + */ + virtual void setPlainCaption( const QString& ); + /** + * Sets the caption of the mainwindow + */ + virtual void setCaption(const QString&); + +protected: // Protected methods + /** + * Initializes the view of this widget + */ + void initView(); + /** + * Initializes the menubar of BibleTime. + */ + void initMenubar(); + /** + * Initializes the SIGNAL / SLOT connections + */ + void initConnections(); + /** + * Initializes the backend + */ + void initBackends(); + /** + * Initializes the action objects of the GUI + */ + void initActions(); + /** + * Refreshes all presenter supporting at least in of the features given as parameter. + */ + void refreshPresenters(); + /** + * Called before a window is closed + */ + bool queryClose(); + /** + * Called before quit. + */ + bool queryExit(); + /** + * Initializes the CPrinter object. + */ + void initPrinter(); + /** + * Reimplementation used for session management. + */ + void readProperties(KConfig* config); + /** + * Reimplementation used for sessions management. + */ + void saveProperties(KConfig* myConfig); + + QPopupMenu* m_windowMenu; + QPopupMenu* m_editMenu; + + /** FILE menu actions */ + KAction* m_fileClearQueue_action; + KAction* m_filePrint_action; + + /** VIEW menu actions */ + KToggleAction* m_viewToolbar_action; + KToggleAction* m_viewGroupManager_action; + + /** WINDOW menu actions */ + KAction* m_windowCascade_action; + KAction* m_windowTile_action; + KToggleAction* m_windowAutoCascade_action; + KToggleAction* m_windowAutoTile_action; + KAction* m_windowCloseAll_action; + + KActionMenu* m_windowSaveProfile_action; + KActionMenu* m_windowLoadProfile_action; + KAction* m_windowEditProfiles_action; + KToggleAction* m_windowFullscreen_action; + + KHelpMenu* m_helpMenu; + + KAccel* m_keyAccel; + QSplitter* m_splitter; + CGroupManager* m_groupmanager; + CMDIArea* m_mdi; + + /** + * The list of installed SWORD modules + */ + ListCSwordModuleInfo* m_moduleList; + CProfile* m_currentProfile; + + bool m_initialized; + +protected slots: + /** + * Quit BibleTime + */ + void slotFileQuit(); + /** + * Creates a new presenter in the MDI area according to the type of the module. + */ + CSwordPresenter* + createNewSwordPresenter(ListCSwordModuleInfo, const QString&); + + /** + * No descriptions + */ + CSwordPresenter* createNewSwordPresenter(CSwordModuleInfo*, const QString&); + /** + * Is called when the window menu is about to show ;-) + */ + void slotWindowMenuAboutToShow(); + /** + * This slot is connected with the windowAutoTile_action object + */ + void slotAutoTile(); + /** + * This slot is connected with the windowAutoCascade_action object + */ + void slotAutoCascade(); + /** + * Is called when a client was selected in the window menu + */ + void slotWindowMenuActivated( int ); + /** + * Shows/hides the toolbar + */ + void slotToggleToolbar(); + /** + * Opens a toolbar editor + */ + void slotSettingsToolbar(); + /** + * Shows or hides the groupmanager. + */ + void slotToggleGroupManager(); + /** + * Starts printing and opens the printerdialog at first. + */ + void slotFilePrint(); + /** + * Enables the "Clear printer queue" action + */ + void slotSetPrintingStatus(); + /** + * Saves to the profile with the menu id ID + */ + void saveProfile(int ID); + /** + * Saves the current settings into the currently activatred profile. + */ + void saveProfile(CProfile* p); + /** + * Saves the current settings into the currently activatred profile. + */ + void editProfiles(); + /** + * Loads the profile with the menu id ID + */ + void loadProfile(int ID); + /** + * Loads the profile with the menu ID id + */ + void loadProfile(CProfile* p); + /** + * Toggles between normal and fullscreen mode. + */ + void toggleFullscreen(); + /** + * Is called when settings in the optionsdialog have been + * changed (ok or apply) + */ + void slotSettingsChanged(); + +private slots: // Private slots + /** + * No descriptions + */ + void slotPrintedPercent(const int index); + /** + * Printing was finished + */ + void slotPrintingFinished(); + /** + * Aborts the printing + */ + void slotAbortPrinting(); + /** + * Printing was started + */ + void slotPrintingStarted(); + +private: + QProgressDialog* m_progress; + CProfileMgr m_profileMgr; + CSwordBackend* m_backend; + CPrinter* m_printer; +}; + +#endif diff --git a/bibletime/bibletime_init.cpp b/bibletime/bibletime_init.cpp new file mode 100644 index 0000000..e2f4beb --- /dev/null +++ b/bibletime/bibletime_init.cpp @@ -0,0 +1,365 @@ +/*************************************************************************** + bibletime_init.cpp - functions to initialize BibleTime on startup + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "printing/cprinter.h" +#include "frontend/cmdiarea.h" +#include "frontend/kstartuplogo.h" +#include "frontend/groupmanager/cgroupmanager.h" +#include "bibletime.h" +#include "resource.h" +#include "frontend/chtmldialog.h" +#include "frontend/cprofilemgr.h" +#include "frontend/cprofile.h" +#include "backend/cswordbackend.h" +#include "whatsthisdef.h" +#include "config.h" +#include "frontend/cbtconfig.h" + + +#include + +//QT includes +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/**Initializes the view of this widget*/ +void BibleTime::initView(){ + KStartupLogo::setStatusMessage(i18n("Creating BibleTime's GUI") + QString::fromLatin1("...")); + + m_splitter = new QSplitter(this, "mainsplitter"); + + m_groupmanager = new CGroupManager( m_splitter, "groupmanager", m_moduleList ); + m_groupmanager->setFocusPolicy(ClickFocus); + + m_mdi = new CMDIArea(m_splitter, "mdiarea" ); + m_mdi->setFocusPolicy(ClickFocus); + + m_helpMenu = new KHelpMenu(this, KGlobal::instance()->aboutData(), true, actionCollection()); + + setCentralWidget(m_splitter); +} + + +/** Initializes the action objects of the GUI */ +void BibleTime::initActions() { + KStartupLogo::setStatusMessage(i18n("Initializing menu- and toolbars") + QString::fromLatin1("...")); + + KAction* action = 0; + + m_fileClearQueue_action = new KAction(i18n("Clear printing queue"), ICON_FILE_CLEAR_QUEUE ,0, + m_printer, SLOT(clearQueue()), actionCollection(), "fileClearQueue_action"); + m_fileClearQueue_action->setEnabled(false); + m_fileClearQueue_action->setToolTip( TT_FILE_CLEAR_QUEUE ); + m_fileClearQueue_action->setWhatsThis( WT_FILE_CLEAR_QUEUE ); + m_fileClearQueue_action->plugAccel( m_keyAccel ); + + m_filePrint_action = KStdAction::print(this, SLOT( slotFilePrint() ), actionCollection()); + m_filePrint_action->setEnabled(false); + m_filePrint_action->setToolTip( TT_FILE_PRINT ); + m_filePrint_action->setWhatsThis( WT_FILE_PRINT ); + m_filePrint_action->plugAccel( m_keyAccel ); + + action = KStdAction::quit(this, SLOT( slotFileQuit() ), actionCollection()); + action->setToolTip( TT_FILE_QUIT ); + action->setWhatsThis( WT_FILE_QUIT ); + action->plugAccel( m_keyAccel ); + + action = new KAction(i18n("Reset main index"), ICON_MAININDEX_RESET, IDK_GM_RESET, + m_groupmanager, SLOT(slotReset()), actionCollection(), "GMreset_action"); + action->setToolTip( TT_GM_RESET ); + action->setWhatsThis( WT_GM_RESET ); + action->plugAccel( m_keyAccel ); + + action = new KAction(i18n("Search in module(s)"), ICON_MAININDEX_SEARCH, IDK_GM_MODULES_SEARCH, + m_groupmanager, SLOT(slotSearchSelectedModules()), actionCollection(), "GMsearch_action"); + action->setToolTip( TT_GM_SEARCH_MODULES ); + action->setWhatsThis( WT_GM_SEARCH_MODULES ); + action->plugAccel( m_keyAccel ); + + action = new KAction(i18n("Remove selected item(s)"),ICON_MAININDEX_DELETE_ITEMS, IDK_GM_ITEMS_DELETE, + m_groupmanager, SLOT(slotDeleteSelectedItems()), actionCollection(), "GMdelete_action"); + action->setToolTip( TT_GM_DELETE_ITEMS ); + action->setWhatsThis( WT_GM_DELETE_ITEMS ); + action->plugAccel( m_keyAccel ); + + m_viewToolbar_action = KStdAction::showToolbar(this, SLOT( slotToggleToolbar() ), actionCollection()); + m_viewToolbar_action->setToolTip( TT_VIEW_TOOLBAR ); + m_viewToolbar_action->setWhatsThis( WT_VIEW_TOOLBAR ); + m_viewToolbar_action->plugAccel( m_keyAccel ); + + m_viewGroupManager_action = new KToggleAction(i18n("&Show main index"), ICON_VIEW_MAININDEX, IDK_VIEW_GROUPMANAGER, + this, SLOT(slotToggleGroupManager()), actionCollection(), "viewGroupManager_action"); + m_viewGroupManager_action->setToolTip( TT_VIEW_GROUPMANAGER ); + m_viewGroupManager_action->setWhatsThis( WT_VIEW_GROUPMANAGER ); + + action = KStdAction::preferences(this, SLOT( slotSettingsOptions() ), actionCollection()); + action->setToolTip( TT_SETTINGS_OPTIONS ); + action->setWhatsThis( WT_SETTINGS_OPTIONS ); + action->plugAccel( m_keyAccel ); + + action = KStdAction::configureToolbars(this, SLOT( slotSettingsToolbar() ), actionCollection()); + action->setToolTip( TT_SETTINGS_EDIT_TOOLBAR ); + action->setWhatsThis( WT_SETTINGS_EDIT_TOOLBAR ); + action->plugAccel( m_keyAccel ); + + m_windowCascade_action = new KAction(i18n("&Cascade"), ICON_WINDOW_CASCADE, IDK_WINDOW_CASCADE, + m_mdi, SLOT(cascade()), actionCollection(), "windowCascade_action"); + m_windowCascade_action->setToolTip( TT_WINDOW_CASCADE ); + m_windowCascade_action->setWhatsThis( WT_WINDOW_CASCADE ); + m_windowCascade_action->plugAccel( m_keyAccel); + + m_windowTile_action = new KAction(i18n("&Tile"), ICON_WINDOW_TILE, + IDK_WINDOW_TILE, m_mdi, SLOT(tile()), actionCollection(), "windowTile_action"); + m_windowTile_action->setToolTip( TT_WINDOW_TILE ); + m_windowTile_action->setWhatsThis( WT_WINDOW_TILE ); + m_windowTile_action->plugAccel( m_keyAccel ); + + m_windowAutoCascade_action = new KToggleAction(i18n("&Auto cascade"), ICON_WINDOW_CASCADE_AUTO, + IDK_WINDOW_AUTO_CASCADE, this, SLOT(slotAutoCascade()), actionCollection(), "windowAutoCascade_action"); + m_windowAutoCascade_action->setToolTip( TT_WINDOW_AUTO_CASCADE ); + m_windowAutoCascade_action->setWhatsThis( WT_WINDOW_AUTO_CASCADE ); + m_windowAutoCascade_action->plugAccel( m_keyAccel ); + + m_windowAutoTile_action = new KToggleAction(i18n("A&uto Tile"),ICON_WINDOW_TILE_AUTO, + IDK_WINDOW_AUTO_TILE, this, SLOT(slotAutoTile()), actionCollection(), "windowAutoTile_action"); + m_windowAutoTile_action->setToolTip( TT_WINDOW_AUTO_TILE ); + m_windowAutoTile_action->setWhatsThis( WT_WINDOW_AUTO_TILE ); + m_windowAutoTile_action->plugAccel( m_keyAccel ); + + m_windowCloseAll_action = new KAction(i18n("&Close all"), ICON_WINDOW_CLOSE_ALL, + IDK_WINDOW_CLOSE_ALL, m_mdi, SLOT(deleteAll()), actionCollection(),"windowCloseAll_action"); + m_windowCloseAll_action->setToolTip( TT_WINDOW_CLOSE_ALL ); + m_windowCloseAll_action->setWhatsThis( WT_WINDOW_CLOSE_ALL ); + m_windowCloseAll_action->plugAccel( m_keyAccel ); + + m_windowSaveProfile_action = new KActionMenu(i18n("&Save profile"), ICON_WINDOW_SAVE_PROFILE, actionCollection(),"windowSaveProfile_action"); + m_windowSaveProfile_action->setToolTip( TT_WINDOW_SAVE_PROFILE ); + m_windowSaveProfile_action->setWhatsThis( WT_WINDOW_SAVE_PROFILE ); + m_windowSaveProfile_action->plugAccel( m_keyAccel ); + + m_windowLoadProfile_action = new KActionMenu(i18n("&Load profile"), ICON_WINDOW_SAVE_PROFILE, actionCollection(),"windowLoadProfile_action"); + m_windowLoadProfile_action->setToolTip( TT_WINDOW_SAVE_PROFILE ); + m_windowLoadProfile_action->setWhatsThis( WT_WINDOW_SAVE_PROFILE ); + m_windowLoadProfile_action->plugAccel( m_keyAccel ); + + m_windowEditProfiles_action = new KAction(i18n("&Configure profiles"), ICON_WINDOW_EDIT_PROFILES, + IDK_WINDOW_EDIT_PROFILES, this, SLOT(editProfiles()), actionCollection(),"windowEditProfiles_action"); + m_windowEditProfiles_action->setToolTip( TT_WINDOW_SAVE_PROFILE ); + m_windowEditProfiles_action->setWhatsThis( WT_WINDOW_SAVE_PROFILE ); + m_windowEditProfiles_action->plugAccel( m_keyAccel ); + + m_windowFullscreen_action = new KToggleAction(i18n("&Fullscreen mode"), ICON_WINDOW_FULLSCREEN, + IDK_WINDOW_FULLSCREEN, this, SLOT(toggleFullscreen()), actionCollection(),"windowFullscreen_action"); + m_windowFullscreen_action->setToolTip( TT_WINDOW_FULLSCREEN ); + m_windowFullscreen_action->setWhatsThis( WT_WINDOW_FULLSCREEN ); + m_windowFullscreen_action->plugAccel( m_keyAccel ); + + QList profiles = m_profileMgr.profiles(); + KPopupMenu* loadPopup = m_windowLoadProfile_action->popupMenu(); + KPopupMenu* savePopup = m_windowSaveProfile_action->popupMenu(); + connect(loadPopup, SIGNAL(activated(int)), SLOT(loadProfile(int))); + connect(savePopup, SIGNAL(activated(int)), SLOT(saveProfile(int))); + for (CProfile* p = profiles.first(); p; p = profiles.next()) { + savePopup->insertItem(p->name()); + loadPopup->insertItem(p->name()); + } + + if ( actionCollection()->action("help_contents") ) //delete help action if KDE created it + actionCollection()->remove(actionCollection()->action("help_contents")); + + action = new KAction(i18n("&Handbook"), ICON_HELP_CONTENTS, 0, this, + SLOT(openOnlineHelp_Handbook()), actionCollection(), "help_handbook"); + action->setToolTip( TT_HELP_HANDBOOK ); + action->setWhatsThis( WT_HELP_HANDBOOK ); + action->plugAccel( m_keyAccel ); + + action = new KAction(i18n("&Installation"), ICON_HELP_CONTENTS, 0, this, + SLOT(openOnlineHelp_Install()), actionCollection(), "help_install"); + action->setToolTip( TT_HELP_INSTALLATION ); + action->setWhatsThis( WT_HELP_INSTALLATION ); + action->plugAccel( m_keyAccel ); + + action = new KAction(i18n("&Bible Study Howto"), ICON_HELP_CONTENTS, 0, this, + SLOT(openOnlineHelp_Howto()), actionCollection(), "help_howto"); + action->setToolTip( TT_HELP_BIBLESTUDY ); + action->setWhatsThis( WT_HELP_BIBLESTUDY ); + action->plugAccel( m_keyAccel ); + + action = KStdAction::whatsThis(this, SLOT(whatsThis()), actionCollection()); + action->setToolTip(TT_HELP_WHATSTHIS); + action->setWhatsThis(WT_HELP_WHATSTHIS); + + action = KStdAction::reportBug(m_helpMenu, SLOT(reportBug()), actionCollection()); + action->setToolTip(TT_HELP_BUGREPORT); + action->setWhatsThis(WT_HELP_BUGREPORT); + action->setIcon(ICON_BUG_REPORT); + + action = new KAction(i18n("&Daily tip"), ICON_HELP_DAILY_TIP, IDK_HELP_DAILY_TIP, this, + SLOT(slotHelpTipOfDay()), actionCollection(), "helpDailyTip_action"); + action->setToolTip(TT_HELP_DAILY_TIP); + action->setWhatsThis(WT_HELP_DAILY_TIP); + + action = KStdAction::aboutApp(m_helpMenu, SLOT(aboutApplication()), actionCollection()); + action->setToolTip(TT_HELP_ABOUT); + action->setWhatsThis(WT_HELP_ABOUT); + + //delete About KDE action if KDE created it already + if ( actionCollection()->action("help_about_kde") ) //delete About KDE action if KDE created it + actionCollection()->remove(actionCollection()->action("help_about_kde")); + action = KStdAction::aboutKDE(m_helpMenu, SLOT(aboutKDE()), actionCollection()); + action->setToolTip(TT_HELP_ABOUT_KDE); + action->setWhatsThis(WT_HELP_ABOUT_KDE); +} + +/** Initializes the menubar of BibleTime. */ +void BibleTime::initMenubar(){ + //get the window and edit menus using the actions and their properties + m_windowMenu = dynamic_cast(m_windowTile_action->container(0)); +} + +/** Initializes the SIGNAL / SLOT connections */ +void BibleTime::initConnections(){ + connect(m_mdi, SIGNAL(sigSetToplevelCaption(const QString&)), + this, SLOT(setPlainCaption(const QString&))); + connect(m_mdi, SIGNAL(createNewSwordPresenter(CSwordModuleInfo*, const QString&)), + this, SLOT(createNewSwordPresenter(CSwordModuleInfo*, const QString&))); + + if (m_windowMenu) { + connect(m_windowMenu, SIGNAL(aboutToShow()), + this, SLOT(slotWindowMenuAboutToShow())); + connect(m_windowMenu, SIGNAL(activated(int)), + this, SLOT(slotWindowMenuActivated(int))); + } + else + qWarning("can't find window menu"); + + connect(m_groupmanager, SIGNAL(createSwordPresenter(CSwordModuleInfo*, const QString&)), + this, SLOT(createNewSwordPresenter(CSwordModuleInfo*,const QString&))); + connect(m_groupmanager, SIGNAL(createSwordPresenter(ListCSwordModuleInfo, const QString&)), + this, SLOT(createNewSwordPresenter(ListCSwordModuleInfo,const QString&))); + + //connect to the signals of the printer object + connect(m_printer, SIGNAL(addedFirstQueueItem()), + this, SLOT(slotSetPrintingStatus())); + connect(m_printer, SIGNAL(printingStarted()), + this, SLOT(slotPrintingStarted())); + connect(m_printer, SIGNAL(printingFinished()), + this, SLOT(slotSetPrintingStatus())); + connect(m_printer, SIGNAL(printingFinished()), + this, SLOT(slotPrintingFinished())); + connect(m_printer, SIGNAL(printingInterrupted()), + this, SLOT(slotSetPrintingStatus())); + connect(m_printer, SIGNAL(printingInterrupted()), + this, SLOT(slotPrintingFinished())); + connect(m_printer, SIGNAL(queueCleared()), + this, SLOT(slotSetPrintingStatus())); + connect(m_printer, SIGNAL(percentCompleted(const int)), + this, SLOT(slotPrintedPercent(const int))); +} + +/** Initializes the backend */ +void BibleTime::initBackends(){ + KStartupLogo::setStatusMessage(i18n("Initializing Sword")+QString::fromLatin1("...")); + + m_backend = new CSwordBackend(); + CPointers::setBackend(m_backend); + const CSwordBackend::LoadError errorCode = m_backend->initModules(); +// qWarning("ErrorCode = %i", errorCode); + + m_moduleList = 0; + if ( errorCode == CSwordBackend::NoError ) { //no error + m_moduleList = &(m_backend->moduleList()); + } else { + m_moduleList = 0; + //show error message that initBackend failed + switch (errorCode) { + case CSwordBackend::NoSwordConfig: //mods.d or mods.conf missing + { + KStartupLogo::hideSplash(); + CHTMLDialog dlg(HELPDIALOG_NO_SWORD_MODULE_CONFIG_DIR); + dlg.exec(); + KStartupLogo::showSplash(); + break; + } + + case CSwordBackend::NoModules: //no modules installed, but config exists + { + KStartupLogo::hideSplash(); + CHTMLDialog dlg(HELPDIALOG_NO_SWORD_MODULES); + dlg.exec(); + KStartupLogo::showSplash(); + break; + } + + default: //unknown error + { + KStartupLogo::hideSplash(); + CHTMLDialog dlg(HELPDIALOG_INITBACKEND_FAILED); + dlg.exec(); + KStartupLogo::showSplash(); + break; + } + } + } + m_backend->booknameLanguage( CBTConfig::get(CBTConfig::language) ); +} + +/** Initializes the CPrinter object. */ +void BibleTime::initPrinter() { + KStartupLogo::setStatusMessage(i18n("Initializing printing system") + QString::fromLatin1("...")); + CPointers::setPrinter( (m_printer = new CPrinter(this)) ); +} + +/** Apply the settings given by the profile p*/ +void BibleTime::applyProfileSettings( CProfile* p ){ + if (!p) + return; + + if (p->fullscreen()) { //we can set only fullscreen OR geometry + m_windowFullscreen_action->setChecked( true ); + toggleFullscreen(); + } + else { + setGeometry( p->geometry() ); + m_windowFullscreen_action->setChecked( false ); + toggleFullscreen(); + } +} + +/** Stores the settings of the mainwindow in the profile p */ +void BibleTime::storeProfileSettings( CProfile* p ){ + p->setFullscreen(m_windowFullscreen_action->isChecked()); + p->setGeometry(geometry()); +} diff --git a/bibletime/bibletime_slots.cpp b/bibletime/bibletime_slots.cpp new file mode 100644 index 0000000..a289364 --- /dev/null +++ b/bibletime/bibletime_slots.cpp @@ -0,0 +1,429 @@ +/*************************************************************************** + bibletime_slots.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//own includes +#include "bibletime.h" +#include "resource.h" +#include "frontend/ctoolclass.h" +//#include "frontend/ctipwindow.h" +#include "frontend/cmdiarea.h" +#include "frontend/cprofilemgr.h" +#include "frontend/cprofile.h" +#include "frontend/cprofilewindow.h" +#include "backend/cswordversekey.h" +#include "backend/chtmlentrydisplay.h" +#include "backend/chtmlchapterdisplay.h" +#include "printing/cprinter.h" +#include "frontend/chtmldialog.h" +#include "frontend/presenters/cswordpresenter.h" +#include "frontend/groupmanager/cgroupmanager.h" +#include "frontend/coptionsdialog.h" +#include "frontend/cbtconfig.h" +#include "config.h" + +#include + +//QT includes +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//Sword includes +#include + +/** Closes the current apploication window */ +void BibleTime::slotFileQuit(){ + saveSettings(); + // close the first window, the list makes the next one the first again. + // This ensures that queryClose() is called on each window to ask for closing + + KMainWindow* w; + bool ok = true; + + if(memberList){ + for(w = memberList->first(); w && ok; w = memberList->first()){ + // only close the window if the closeEvent is accepted. If the user presses Cancel on the saveModified() dialog, + // the window and the application stay open. + ok = w->close(); + } + } + if (ok) + kapp->quit(); +} + +/** Opens the optionsdialog of BibleTime. */ +void BibleTime::slotSettingsOptions(){ + COptionsDialog *dlg = new COptionsDialog(this, "COptionsDialog", m_keyAccel); + connect(dlg, SIGNAL(signalSettingsChanged()), SLOT(slotSettingsChanged()) ); + + dlg->exec(); + dlg->delayedDestruct(); +} + +/** Is called when settings in the optionsdialog have been changed (ok or apply) */ +void BibleTime::slotSettingsChanged(){ + + const QString language = CBTConfig::get(CBTConfig::language); + m_backend->booknameLanguage(language); + //refresh the bookmark items in the groupmanager + QListViewItemIterator it( m_groupmanager ); + CGroupManagerItem* item = 0; + for ( ; it.current(); ++it ) { + if ( (item = dynamic_cast(it.current())) ) { + if (item->type() == CGroupManagerItem::Bookmark) { + CSwordVerseKey* vKey = dynamic_cast(item->getBookmarkKey()); + if ( vKey ) { + vKey->setLocale( (const char*)m_backend->booknameLanguage().local8Bit()); + item->update(); + } + } + } + } + + for ( unsigned int index = 0; index < m_mdi->windowList().count(); index++) { + CSwordPresenter* myPresenter = dynamic_cast(m_mdi->windowList().at(index)); + if (myPresenter) + myPresenter->refresh(); + } + + //refresh the load profile and save profile menus + m_profileMgr.refresh(); + KPopupMenu* savePopup = m_windowSaveProfile_action->popupMenu(); + KPopupMenu* loadPopup = m_windowLoadProfile_action->popupMenu(); + savePopup->clear(); + loadPopup->clear(); + QList profiles = m_profileMgr.profiles(); + for (CProfile* p = profiles.first(); p; p = profiles.next()) { + savePopup->insertItem(p->name()); + loadPopup->insertItem(p->name()); + } +} + + +/** Shows the daily tip */ +void BibleTime::slotHelpTipOfDay(){ + KTipDialog::setShowOnStart( CBTConfig::get(CBTConfig::tips) ); + KTipDialog::showTip(this, "bibletime/tips", true); +// CTipWindow* tipDlg = new CTipWindow(); +// tipDlg->exec(); +// delete tipDlg; +} + + +/** Is called just before the window menu is ahown. */ +void BibleTime::slotWindowMenuAboutToShow(){ + if (!m_windowMenu) + return; + + if ( m_windowSaveProfile_action->isPlugged() ) + m_windowSaveProfile_action->unplug(m_windowMenu); + if ( m_windowLoadProfile_action->isPlugged() ) + m_windowLoadProfile_action->unplug(m_windowMenu); + if ( m_windowEditProfiles_action->isPlugged() ) + m_windowEditProfiles_action->unplug(m_windowMenu); + if ( m_windowFullscreen_action->isPlugged() ) + m_windowFullscreen_action->unplug(m_windowMenu); + + if ( m_windowCascade_action->isPlugged() ) + m_windowCascade_action->unplug(m_windowMenu); + if ( m_windowTile_action->isPlugged() ) + m_windowTile_action->unplug(m_windowMenu); + if ( m_windowAutoCascade_action->isPlugged() ) + m_windowAutoCascade_action->unplug(m_windowMenu); + if ( m_windowAutoTile_action->isPlugged() ) + m_windowAutoTile_action->unplug(m_windowMenu); + if ( m_windowCloseAll_action->isPlugged() ) + m_windowAutoTile_action->unplug(m_windowMenu); + + m_windowMenu->clear(); + + m_windowSaveProfile_action->plug(m_windowMenu); + m_windowLoadProfile_action->plug(m_windowMenu); + m_windowEditProfiles_action->plug(m_windowMenu); + m_windowMenu->insertSeparator(); + m_windowFullscreen_action->plug(m_windowMenu); + m_windowMenu->insertSeparator(); + m_windowCascade_action->plug(m_windowMenu); + m_windowTile_action->plug(m_windowMenu); + m_windowAutoCascade_action->plug(m_windowMenu); + m_windowAutoTile_action->plug(m_windowMenu); + m_windowCloseAll_action->plug(m_windowMenu); + + if ( m_mdi->windowList().isEmpty() ) { + m_windowCascade_action->setEnabled(false); + m_windowTile_action->setEnabled(false); + m_windowCloseAll_action->setEnabled(false); + } + else if (m_mdi->windowList().count() == 1) { + m_windowTile_action->setEnabled( false ); + m_windowCascade_action->setEnabled( false ); + m_windowCloseAll_action->setEnabled( true ); + m_windowMenu->insertSeparator(); + } else { + m_windowTile_action->setEnabled( !m_windowAutoTile_action->isChecked() ); + m_windowCascade_action->setEnabled( !m_windowAutoCascade_action->isChecked() ); + m_windowCloseAll_action->setEnabled( true ); + m_windowMenu->insertSeparator(); + } + + QWidgetList windows = m_mdi->windowList(); + int i, id; + for ( i = 0; i < int(windows.count()); ++i ) { + id = m_windowMenu->insertItem(QString::fromLatin1("&%1 ").arg(i+1)+windows.at(i)->caption(), + this, SLOT( slotWindowMenuActivated( int ) ) ); + m_windowMenu->setItemParameter( id, i ); + m_windowMenu->setItemChecked( id, m_mdi->activeWindow() == windows.at(i) ); + } +} + +/** This slot is connected with the windowAutoTile_action object */ +void BibleTime::slotAutoTile(){ + if (m_windowAutoTile_action->isChecked()) { + m_windowAutoCascade_action->setChecked(false); + m_mdi->setGUIOption( CMDIArea::autoTile ); + } + else if (!m_windowAutoCascade_action->isChecked()) + m_mdi->setGUIOption( CMDIArea::Nothing ); +} + +/** This slot is connected with the windowAutoCascade_action object */ +void BibleTime::slotAutoCascade(){ + if (m_windowAutoCascade_action->isChecked()) { + m_windowAutoTile_action->setChecked(false); + m_mdi->setGUIOption( CMDIArea::autoCascade ); + } + else if (!m_windowAutoTile_action->isChecked()) + m_mdi->setGUIOption( CMDIArea::Nothing ); +} + +void BibleTime::slotWindowMenuActivated( int id ) { + if (!m_windowMenu) + return; + +// QString dummy; + QWidget* w = m_mdi->windowList().at( id ); + if ( w ) + w->setFocus(); +} + + +/** Shows/hides the toolbar */ +void BibleTime::slotToggleToolbar(){ + if (m_viewToolbar_action->isChecked()) + toolBar("mainToolBar")->show(); + else + toolBar("mainToolBar")->hide(); +} + +/** Shows or hides the groupmanager. */ +void BibleTime::slotToggleGroupManager() { + if (m_viewGroupManager_action->isChecked()) + m_groupmanager->show(); + else + m_groupmanager->hide(); +} + +/** Opens a toolbar editor */ +void BibleTime::slotSettingsToolbar(){ + KEditToolbar dlg(actionCollection()); + if (dlg.exec()) + createGUI(); +} + +/** The last window was closed! */ +void BibleTime::lastWindowClosed(){ +} + + +/** Opens the print dialog. */ +void BibleTime::slotFilePrint(){ + m_printer->setup(this); //opens the printer dialog +} + +/** Enables the "Clear printer queue" action */ +void BibleTime::slotSetPrintingStatus(){ + const bool enable = (m_printer->printQueue().count()>0); + m_filePrint_action->setEnabled( enable ); + m_fileClearQueue_action->setEnabled( enable ); +} + +/** Printing was started */ +void BibleTime::slotPrintingStarted(){ + m_progress = new QProgressDialog(i18n("Printing..."), i18n("Abort printing"),100,this, "progress", true); + connect(m_progress, SIGNAL(cancelled()), SLOT(slotAbortPrinting())); + m_progress->setProgress(0); + m_progress->setMinimumDuration(0); + m_progress->show(); +} + +/** Printing was finished */ +void BibleTime::slotPrintingFinished(){ + delete m_progress; + m_progress = 0; +} + +/** No descriptions */ +void BibleTime::slotPrintedPercent( const int percent ){ + if (m_progress) + m_progress->setProgress(percent); +} + +/** Aborts the printing */ +void BibleTime::slotAbortPrinting(){ + m_printer->abort(); + if (m_progress) + slotPrintingFinished(); +} + +void BibleTime::openOnlineHelp_Handbook() { +//#ifdef STATIC_BUILD +// CHTMLDialog dlg("bibletime/handbook/index.html"); +// dlg.exec(); +//#else + if (m_helpMenu) +// m_helpMenu->appHelpActivated(); + kapp->invokeHTMLHelp("bibletime/handbook/index.html"); +//#endif +} +void BibleTime::openOnlineHelp_Install() { +//#ifdef STATIC_BUILD +// CHTMLDialog dlg("bibletime/install/index.html"); +// dlg.exec(); +//#else + kapp->invokeHTMLHelp("bibletime/install/index.html"); +//#endif +} +void BibleTime::openOnlineHelp_Howto() { +//#ifdef STATIC_BUILD +// CHTMLDialog dlg("bibletime/howto/index.html"); +// dlg.exec(); +//#else + kapp->invokeHTMLHelp("bibletime/howto/index.html"); +//#endif +} + +/** Saves the current settings into the currently activatred profile. */ +void BibleTime::saveProfile(int ID){ + m_mdi->setUpdatesEnabled(false); + KPopupMenu* popup = m_windowSaveProfile_action->popupMenu(); + CProfile* p = m_profileMgr.profile( popup->text(ID) ); + if (p) + saveProfile(p); + + m_mdi->setUpdatesEnabled(true); +} + +void BibleTime::saveProfile(CProfile* profile){ + if (!profile) + return; + + //save mainwindow settings + storeProfileSettings(profile); + + QWidgetList windows = m_mdi->windowList(); + QList profileWindows; + for (QWidget* w = windows.first(); w; w = windows.next()) { + CSwordPresenter* displayWindow = dynamic_cast(w); + if (!displayWindow) + continue; + + CProfileWindow* profileWindow = new CProfileWindow(); + displayWindow->storeSettings(profileWindow); + profileWindows.append(profileWindow); + } + profile->save(profileWindows); + +//clean up memory - delete all created profile windows + profileWindows.setAutoDelete(true); + profileWindows.clear(); +} + +void BibleTime::loadProfile(int ID){ + m_mdi->setUpdatesEnabled(false); + m_mdi->deleteAll(); + + m_mdi->setUpdatesEnabled(false); + KPopupMenu* popup = m_windowLoadProfile_action->popupMenu(); + CProfile* p = m_profileMgr.profile( popup->text(ID) ); + if (p) + loadProfile(p); + + m_mdi->setUpdatesEnabled(true); +} + +void BibleTime::loadProfile(CProfile* p){ + if (!p) + return; + QList windows = p->load(); + + //load mainwindow setttings + applyProfileSettings(p); + + for (CProfileWindow* w = windows.first(); w; w = windows.next()) { + const QString key = w->key(); + QStringList usedModules = w->modules(); + ListCSwordModuleInfo modules; + for ( QStringList::Iterator it = usedModules.begin(); it != usedModules.end(); ++it ) { + CSwordModuleInfo* m = m_backend->findModuleByName(*it); + if (m) + modules.append(m); + } + if (!modules.count()) //are the modules still installed? + continue; + + if (CSwordPresenter* displayWindow = createNewSwordPresenter(modules, key)) { + displayWindow->applySettings(w); + } + } + + m_mdi->setUpdatesEnabled(true); +} + +void BibleTime::toggleFullscreen(){ + if (m_windowFullscreen_action->isChecked()) + showFullScreen(); + else + showNormal(); +} + +void BibleTime::editProfiles(){ + COptionsDialog *dlg = new COptionsDialog(this, "COptionsDialog", m_keyAccel); + connect(dlg, SIGNAL(signalSettingsChanged()), SLOT(slotSettingsChanged()) ); + dlg->showPart(COptionsDialog::ViewProfiles); + dlg->exec(); + + dlg->delayedDestruct(); +} diff --git a/bibletime/bt-printing b/bibletime/bt-printing new file mode 100644 index 0000000..f7ccf57 --- /dev/null +++ b/bibletime/bt-printing @@ -0,0 +1,98 @@ +[Black&White__DESCRIPTION] +Alignement=2 +BGColor=255,255,255 +FGColor=0,0,0 +Font=helvetica,9,5,0,50,0 +Identation=0 +has frame=false +isEnabled=true +[Black&White__HEADER] +Alignement=1 +BGColor=0,0,0 +FGColor=255,255,255 +Font=helvetica,9,5,0,50,0 +Identation=0 +has frame=false +isEnabled=true +[Black&White__MODULETEXT] +Alignement=0 +BGColor=255,255,255 +FGColor=0,0,0 +Font=helvetica,9,5,0,50,0 +Identation=0 +has frame=true +isEnabled=true +[Black&White__MODULETEXT__FRAME] +Color=0,0,0 +Thickness=2 +[Rainbow__DESCRIPTION] +Alignement=2 +BGColor=255,255,213 +FGColor=255,148,8 +Font=helvetica,9,5,0,50,0 +Identation=0 +has frame=false +isEnabled=true +[Rainbow__HEADER] +Alignement=0 +BGColor=255,255,255 +FGColor=255,148,8 +Font=helvetica,9,5,0,50,0 +Identation=0 +has frame=true +isEnabled=true +[Rainbow__HEADER__FRAME] +Color=42,156,213 +Thickness=1 +[Rainbow__MODULETEXT] +Alignement=0 +BGColor=255,255,255 +FGColor=0,0,0 +Font=futura,13,5,0,50,0 +Identation=0 +has frame=true +isEnabled=true +[Rainbow__MODULETEXT__FRAME] +Color=42,156,213 +Thickness=1 +[Settings] +Filename= +Paper size=0 +Printer=lp +left margin=39 +lower margin=39 +preview application=gv +right margin=39 +upper margin=39 +[Standard__DESCRIPTION] +Alignement=24 +BGColor=255,255,255 +FGColor=0,0,0 +Font=helvetica,10,5,0,0,0 +Identation=0 +has frame=false +isEnabled=true +[Standard__HEADER] +Alignement=2 +BGColor=255,255,255 +FGColor=0,0,192 +Font=futura,16,5,0,75,0 +Identation=8 +has frame=true +isEnabled=true +[Standard__HEADER__FRAME] +Color=0,0,0 +Thickness=1 +[Standard__MODULETEXT] +Alignement=0 +BGColor=220,220,220 +FGColor=0,0,0 +Font=arial,14,5,0,0,0 +Identation=0 +has frame=true +isEnabled=true +[Standard__MODULETEXT__FRAME] +Color=128,128,128 +Thickness=1 +[Styles] +styles=Standard,Black&White,Rainbow diff --git a/bibletime/frontend/Makefile.am b/bibletime/frontend/Makefile.am new file mode 100644 index 0000000..eb504bf --- /dev/null +++ b/bibletime/frontend/Makefile.am @@ -0,0 +1,44 @@ +INCLUDES = $(all_includes) +libfrontend_a_METASOURCES = AUTO +noinst_LIBRARIES = libfrontend.a + +libfrontend_a_SOURCES = \ +chtmldialog.cpp \ +chtmlwidget.cpp \ +ctoolclass.cpp \ +cbtconfig.cpp \ +cinputdialog.cpp \ +coptionsdialog.cpp \ +cprofilemgr.cpp \ +cprofile.cpp \ +cprofilewindow.cpp \ +cexportmanager.cpp \ +cmdiarea.cpp \ +kstartuplogo.cpp \ +cpointers.cpp + +all_headers=cmdiarea.h \ +kstartuplogo.h \ +chtmlwidget.h \ +chtmldialog.h \ +ctoolclass.h \ +cbtconfig.h \ +cinputdialog.h \ +cprofilemgr.h \ +cprofile.h \ +cprofilewindow.h \ +cpointers.h \ +cexportmanager.h + +EXTRA_DIST = $(libfrontend_a_SOURCES) $(all_headers) + +SUBDIRS = \ +groupmanager \ +keychooser \ +presenters \ +searchdialog \ +thirdparty + + + + diff --git a/bibletime/frontend/Makefile.in b/bibletime/frontend/Makefile.in new file mode 100644 index 0000000..f212e71 --- /dev/null +++ b/bibletime/frontend/Makefile.in @@ -0,0 +1,720 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) +#>- libfrontend_a_METASOURCES = AUTO +noinst_LIBRARIES = libfrontend.a + +libfrontend_a_SOURCES = chtmldialog.cpp chtmlwidget.cpp ctoolclass.cpp cbtconfig.cpp cinputdialog.cpp coptionsdialog.cpp cprofilemgr.cpp cprofile.cpp cprofilewindow.cpp cexportmanager.cpp cmdiarea.cpp kstartuplogo.cpp cpointers.cpp + + +all_headers = cmdiarea.h kstartuplogo.h chtmlwidget.h chtmldialog.h ctoolclass.h cbtconfig.h cinputdialog.h cprofilemgr.h cprofile.h cprofilewindow.h cpointers.h cexportmanager.h + + +EXTRA_DIST = $(libfrontend_a_SOURCES) $(all_headers) + +SUBDIRS = groupmanager keychooser presenters searchdialog thirdparty + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libfrontend_a_LIBADD = +#>- libfrontend_a_OBJECTS = chtmldialog.$(OBJEXT) chtmlwidget.$(OBJEXT) \ +#>- ctoolclass.$(OBJEXT) cbtconfig.$(OBJEXT) cinputdialog.$(OBJEXT) \ +#>- coptionsdialog.$(OBJEXT) cprofilemgr.$(OBJEXT) cprofile.$(OBJEXT) \ +#>- cprofilewindow.$(OBJEXT) cexportmanager.$(OBJEXT) cmdiarea.$(OBJEXT) \ +#>- kstartuplogo.$(OBJEXT) cpointers.$(OBJEXT) +#>+ 10 +libfrontend_a_final_OBJECTS = libfrontend_a.all_cpp.o +libfrontend_a_nofinal_OBJECTS = chtmldialog.$(OBJEXT) chtmlwidget.$(OBJEXT) \ +ctoolclass.$(OBJEXT) cbtconfig.$(OBJEXT) cinputdialog.$(OBJEXT) \ +coptionsdialog.$(OBJEXT) cprofilemgr.$(OBJEXT) cprofile.$(OBJEXT) \ +cprofilewindow.$(OBJEXT) cexportmanager.$(OBJEXT) cmdiarea.$(OBJEXT) \ +kstartuplogo.$(OBJEXT) cpointers.$(OBJEXT)\ +cinputdialog.moc.o cmdiarea.moc.o coptionsdialog.moc.o chtmldialog.moc.o chtmlwidget.moc.o \ +libfrontend_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libfrontend_a_OBJECTS = $(libfrontend_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libfrontend_a_OBJECTS = $(libfrontend_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=chtmlwidget.h cexportmanager.h cprofilewindow.h cpointers.h cmdiarea.h ctoolclass.h coptionsdialog.h chtmldialog.h cprofilemgr.h cprofile.h kstartuplogo.h cbtconfig.h cinputdialog.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/cbtconfig.P .deps/cexportmanager.P \ +#>- .deps/chtmldialog.P .deps/chtmlwidget.P .deps/cinputdialog.P \ +#>- .deps/cmdiarea.P .deps/coptionsdialog.P .deps/cpointers.P \ +#>- .deps/cprofile.P .deps/cprofilemgr.P .deps/cprofilewindow.P \ +#>- .deps/ctoolclass.P .deps/kstartuplogo.P +#>+ 12 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/cinputdialog.moc.P $(DEPDIR)/cmdiarea.moc.P $(DEPDIR)/coptionsdialog.moc.P $(DEPDIR)/chtmldialog.moc.P $(DEPDIR)/chtmlwidget.moc.P $(DEPDIR)/libfrontend_a_meta_unload.P $(DEPDIR)/libfrontend_a.all_cpp.P \ + .deps/cbtconfig.P .deps/cexportmanager.P \ +.deps/chtmldialog.P .deps/chtmlwidget.P .deps/cinputdialog.P \ +.deps/cmdiarea.P .deps/coptionsdialog.P .deps/cpointers.P \ +.deps/cprofile.P .deps/cprofilemgr.P .deps/cprofilewindow.P \ +.deps/ctoolclass.P .deps/kstartuplogo.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/cinputdialog.moc.P $(DEPDIR)/cmdiarea.moc.P $(DEPDIR)/coptionsdialog.moc.P $(DEPDIR)/chtmldialog.moc.P $(DEPDIR)/chtmlwidget.moc.P $(DEPDIR)/libfrontend_a_meta_unload.P .deps/cbtconfig.P .deps/cexportmanager.P \ +.deps/chtmldialog.P .deps/chtmlwidget.P .deps/cinputdialog.P \ +.deps/cmdiarea.P .deps/coptionsdialog.P .deps/cpointers.P \ +.deps/cprofile.P .deps/cprofilemgr.P .deps/cprofilewindow.P \ +.deps/ctoolclass.P .deps/kstartuplogo.P + +SOURCES = $(libfrontend_a_SOURCES) +OBJECTS = $(libfrontend_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libfrontend.a: $(libfrontend_a_OBJECTS) $(libfrontend_a_DEPENDENCIES) + -rm -f libfrontend.a + $(AR) cru libfrontend.a $(libfrontend_a_OBJECTS) $(libfrontend_a_LIBADD) + $(RANLIB) libfrontend.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile $(LIBRARIES) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs-am installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +cinputdialog.moc.cpp: $(srcdir)/cinputdialog.h + $(MOC) $(srcdir)/cinputdialog.h -o cinputdialog.moc.cpp + +#>+ 3 +cmdiarea.moc.cpp: $(srcdir)/cmdiarea.h + $(MOC) $(srcdir)/cmdiarea.h -o cmdiarea.moc.cpp + +#>+ 3 +coptionsdialog.moc.cpp: $(srcdir)/coptionsdialog.h + $(MOC) $(srcdir)/coptionsdialog.h -o coptionsdialog.moc.cpp + +#>+ 3 +chtmldialog.moc.cpp: $(srcdir)/chtmldialog.h + $(MOC) $(srcdir)/chtmldialog.h -o chtmldialog.moc.cpp + +#>+ 3 +chtmlwidget.moc.cpp: $(srcdir)/chtmlwidget.h + $(MOC) $(srcdir)/chtmlwidget.h -o chtmlwidget.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f cinputdialog.moc.cpp cmdiarea.moc.cpp coptionsdialog.moc.cpp chtmldialog.moc.cpp chtmlwidget.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/Makefile.in + + +#>+ 10 +libfrontend_a_meta_unload.cpp: cinputdialog.moc.cpp cmdiarea.moc.cpp chtmlwidget.moc.cpp chtmldialog.moc.cpp coptionsdialog.moc.cpp + @echo 'creating libfrontend_a_meta_unload.cpp' + @-rm -f libfrontend_a_meta_unload.cpp + @echo 'static const char * _metalist_libfrontend_a[] = {' > libfrontend_a_meta_unload.cpp + @cat cinputdialog.moc.cpp cmdiarea.moc.cpp chtmlwidget.moc.cpp chtmldialog.moc.cpp coptionsdialog.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libfrontend_a_meta_unload.cpp + @echo '0};' >> libfrontend_a_meta_unload.cpp + @echo '#include ' >> libfrontend_a_meta_unload.cpp + @echo '_UNLOAD(libfrontend_a)' >> libfrontend_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libfrontend_a_meta_unload.cpp + +#>+ 11 +libfrontend_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/chtmldialog.cpp $(srcdir)/chtmlwidget.cpp $(srcdir)/ctoolclass.cpp $(srcdir)/cbtconfig.cpp $(srcdir)/cinputdialog.cpp $(srcdir)/coptionsdialog.cpp $(srcdir)/cprofilemgr.cpp $(srcdir)/cprofile.cpp $(srcdir)/cprofilewindow.cpp $(srcdir)/cexportmanager.cpp $(srcdir)/cmdiarea.cpp $(srcdir)/kstartuplogo.cpp $(srcdir)/cpointers.cpp libfrontend_a_meta_unload.cpp cinputdialog.moc.cpp cmdiarea.moc.cpp coptionsdialog.moc.cpp chtmldialog.moc.cpp chtmlwidget.moc.cpp + @echo 'creating libfrontend_a.all_cpp.cpp ...'; \ + rm -f libfrontend_a.all_cpp.files libfrontend_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libfrontend_a.all_cpp.final; \ + for file in chtmldialog.cpp chtmlwidget.cpp ctoolclass.cpp cbtconfig.cpp cinputdialog.cpp coptionsdialog.cpp cprofilemgr.cpp cprofile.cpp cprofilewindow.cpp cexportmanager.cpp cmdiarea.cpp kstartuplogo.cpp cpointers.cpp libfrontend_a_meta_unload.cpp cinputdialog.moc.cpp cmdiarea.moc.cpp coptionsdialog.moc.cpp chtmldialog.moc.cpp chtmlwidget.moc.cpp; do \ + echo "#include \"$$file\"" >> libfrontend_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libfrontend_a.all_cpp.final; \ + done; \ + cat libfrontend_a.all_cpp.final libfrontend_a.all_cpp.files > libfrontend_a.all_cpp.cpp; \ + rm -f libfrontend_a.all_cpp.final libfrontend_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libfrontend_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libfrontend_a_OBJECTS="$(libfrontend_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libfrontend_a_OBJECTS="$(libfrontend_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/cbtconfig.cpp b/bibletime/frontend/cbtconfig.cpp new file mode 100644 index 0000000..7147093 --- /dev/null +++ b/bibletime/frontend/cbtconfig.cpp @@ -0,0 +1,374 @@ +/*************************************************************************** + cbtconfig.cpp - description + ------------------- + begin : Mon Nov 19 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cbtconfig.h" + +//Qt includes +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include + + +/* No constructor and destructor, because this class only contains static methods. + It won't be instantiated. */ + +const QString CBTConfig::getKey( const CBTConfig::strings ID){ + switch ( ID ){ + case bibletimeVersion: return "bibletimeVersion"; + case language: return "language"; + case standardBible: return "standardBible"; + case standardCommentary: return "standardCommentary"; + case standardLexicon: return "standardLexicon"; + case standardHebrewStrongsLexicon: return "standardHebrewLexicon"; + case standardGreekStrongsLexicon: return "standardGreekLexicon"; + case standardHebrewMorphLexicon: return "standardHebrewMorphLexicon"; + case standardGreekMorphLexicon: return "standardGreekMorphLexicon"; + } + return QString::null; +} + +const QString CBTConfig::getDefault( const CBTConfig::strings ID){ + switch ( ID ){ + case bibletimeVersion: return ( "NOT YET INSTALLED" ); + // main() will realize this and set the value to VERSION + case language: return (KGlobal::locale()->language()).local8Bit(); + case standardBible: return "KJV"; // no effect + case standardCommentary: return "MHC"; + case standardLexicon: return "Eastons"; + case standardHebrewStrongsLexicon: return "StrongsHebrew"; + case standardGreekStrongsLexicon: return "StrongsGreek"; + case standardHebrewMorphLexicon: return "StrongsHebrew"; //warning this is wrong + case standardGreekMorphLexicon: return "StrongsGreek"; //but imo has no effect + } + return QString::null; +} + +const QString CBTConfig::getKey( const CBTConfig::fonts ID){ + switch ( ID ){ + case standard: return "standard"; + case unicode: return "unicode"; + } + return QString::null; +} + +const QFont CBTConfig::getDefault( const CBTConfig::fonts ID){ + switch ( ID ){ + case standard: return QApplication::font(); + case unicode: //find an Unicode font + { + KCharsets* cs = KGlobal::charsets(); + QFontDatabase db; + QFont uniFont; + if (!cs->isAvailable(QFont::Unicode)) { //no unicode font installed! + qWarning("NO UNICODE FONT INSTALLED!"); + } + cs->setQFont(uniFont, QFont::Unicode); +// qWarning("the unicode font found by KDE is %s", uniFont.family().latin1()); + +// QStringList families = KGlobal::charsets()->availableFamilies(QFont::Unicode); +// for (QStringList::Iterator it = families.begin();it != families.end();++it) { +// qWarning((*it).latin1()); +// if (!cs->hasUnicode(*it)) +// qWarning("font %s DOESN'T have UNICODE!", (*it).latin1()); +// } +// +// QMap uniFontMap; +// for (QStringList::Iterator it = families.begin();it != families.end();++it) { +// const QString font = *it; +// if (db.isScalable(font)) { +// if (db.isSmoothlyScalable(font)) { +// qWarning("font %s is SMOOTHLY scalable!", font.latin1()); +// } +// else if (db.isBitmapScalable(font)) { +// qWarning("font %s is BITMAP scalable!", font.latin1()); +// } +// else { +// qWarning("font %s is SMOOTHLY scalable!", font.latin1()); +// } +// } +// +// //find how many charsets are supported! +// QList fonts = cs->availableCharsets(font);//db.charSets(font).count() +// uniFontMap.insert(font, fonts.count()); +// +// fonts.setAutoDelete(true); +// fonts.clear(); +// } +// +// //now find the unicode font with the most charsets +// QString bestFont = uniFont.family(); +// int oldCount = 0; +// for (QMap::Iterator it = uniFontMap.begin(); it != uniFontMap.end(); ++it) { +// if (it.data() > oldCount) { +// oldCount = it.data(); +// bestFont = it.key(); +// } +// } +// qWarning("the best font is %s and supports %i charsets", bestFont.latin1(), oldCount); + +// qWarning("--------"); +// QStringList fonts = db.families(false); +// for (QStringList::Iterator it = fonts.begin();it != fonts.end();++it) { +// QStringList charsets = db.charSets(*it); +// for (QStringList::Iterator cs = charsets.begin(); cs != charsets.end(); ++cs) { +// qWarning("Font %s has charset %s", (*it).latin1(), (*cs).latin1()); +// } +// } +// qWarning("--------"); + return uniFont; + } + + } + return QString::null; +} + +const QString CBTConfig::getKey( const CBTConfig::bools ID){ + switch ( ID ){ + case firstSearchDialog: return "firstSearchDialog"; + + case toolbar: return "toolbar"; + case mainIndex: return "mainIndex"; + + case autoTile: return "autoTile"; + case autoCascade: return "autoCascade"; + + case lexiconCache: return "lexicon_chache"; + + case footnotes: return "footnotes"; + case strongNumbers: return "strongNumbers"; + case headings: return "headings"; + case morphTags: return "morphTags"; + case lemmas: return "lemmas"; + case hebrewPoints: return "hebrewPoints"; + case hebrewCantillation: return "hebrewCantillation"; + case greekAccents: return "greekAccents"; + case textualVariants: return "textualVariants"; + + case lineBreaks: return "lineBreaks"; + case verseNumbers: return "verseNumbers"; + case scroll: return "scroll"; + + case tips: return "RunOnStart"; + case logo: return "logo"; + case restoreWorkspace: return "restoreWorkspace"; + } + return QString::null; +} + +const bool CBTConfig::getDefault( const CBTConfig::bools ID){ + switch ( ID ){ + case firstSearchDialog: return true; + + case toolbar: return true; + case mainIndex: return true; + + case autoTile: return true; + case autoCascade: return false; + + case lexiconCache: return true; + + case footnotes: return true; + case strongNumbers: return false; + case headings: return true; + case morphTags: return false; + case lemmas: return false; + case hebrewPoints: return false; + case hebrewCantillation: return false; + case greekAccents: return false; + case textualVariants: return false; + + case lineBreaks: return true; + case verseNumbers: return true; + case scroll: return true; + + case tips: return true; + case logo: return true; + case restoreWorkspace: return false; + } + return false; +} + +const QString CBTConfig::getKey( const CBTConfig::colors ID){ + switch ( ID ){ + case textColor: return "textColor"; + case backgroundColor: return "backgroundColor"; + case highlightedVerseColor: return "highlightedVerseClolor"; + case footnotesColor: return "footnotesColor"; + case strongsColor: return "strongsColor"; + case morphsColor: return "morphsColor"; + case jesuswordsColor: return "jesuswordsColor"; + case swordRefColor: return "swordRefColor"; + } + return QString::null; +} + +const QColor CBTConfig::getDefault( const CBTConfig::colors ID){ + switch ( ID ){ + case textColor: return QColor(Qt::black); + case backgroundColor: return QColor(Qt::white); + case highlightedVerseColor: return QColor(Qt::red); + case footnotesColor: return QColor(Qt::black); + case strongsColor: return QColor(Qt::green); + case morphsColor: return QColor(Qt::green); + case jesuswordsColor: return QColor(Qt::red); + case swordRefColor: return QColor(Qt::blue); + } + return Qt::blue; +} + +const QString CBTConfig::getKey( const CBTConfig::intLists ID){ + switch ( ID ){ + case splitterSizes: return "splitterSizes"; + } + return QString::null; +} + +const QValueList CBTConfig::getDefault( const CBTConfig::intLists ID){ + switch ( ID ){ + case splitterSizes: return QValueList(); + } + return QValueList(); +} + +const QString CBTConfig::getKey( const CBTConfig::stringLists ID){ + switch ( ID ){ + case searchCompletionTexts: return QString::fromLatin1("searchCompletionTexts"); + case searchTexts: return QString::fromLatin1("searchTexts"); + } + return QString::null; +} + +const QStringList CBTConfig::getDefault( const CBTConfig::stringLists ID){ + switch ( ID ){ + case searchTexts: + return QStringList(); + case searchCompletionTexts: + return QStringList(); + } + return QStringList(); +} + +const QString CBTConfig::get( const CBTConfig::strings ID){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "strings"); + return config->readEntry(getKey(ID),getDefault(ID)); +} + +const QFont CBTConfig::get(const CBTConfig::fonts ID){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "fonts"); + QFont defaultFont = getDefault(ID); + return config->readFontEntry(getKey(ID), &defaultFont); +} + +const bool CBTConfig::get( const CBTConfig::bools ID){ + //special behaviour for the KTipDialog class + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, (ID == CBTConfig::tips) ? "TipOfDay" : "bools"); + return config->readBoolEntry(getKey(ID),getDefault(ID)); +} + +const QColor CBTConfig::get( const CBTConfig::colors ID){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "colors"); + QColor defaultColor = getDefault(ID); + return config->readColorEntry(getKey(ID),&defaultColor); +} + +const QValueList CBTConfig::get( const CBTConfig::intLists ID ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "lists"); + return config->readIntListEntry(getKey(ID)); +} + +const QStringList CBTConfig::get( const CBTConfig::stringLists ID ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "lists"); + return config->readListEntry(getKey(ID)); +} + +void CBTConfig::set( const CBTConfig::strings ID, const QString value ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "strings"); + config->writeEntry(getKey(ID), value); +} + +void CBTConfig::set( const CBTConfig::fonts ID, const QFont value ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "fonts"); + config->writeEntry(getKey(ID), value); +} + +void CBTConfig::set(const CBTConfig::bools ID,const bool value ){ + KConfig* config = KGlobal::config(); + //special behaviour to work with KTipDialog class of KDE + KConfigGroupSaver groupSaver(config, (ID == CBTConfig::tips) ? "TipOfDay" : "bools"); + config->writeEntry(getKey(ID), value); +} + +void CBTConfig::set( const CBTConfig::colors ID, const QColor value ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "colors"); + config->writeEntry(getKey(ID), value); +} + +void CBTConfig::set( const CBTConfig::intLists ID, const QValueList value ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "lists"); + config->writeEntry(getKey(ID), value); +} + +void CBTConfig::set( const CBTConfig::stringLists ID, const QStringList value ){ + KConfig* config = KGlobal::config(); + KConfigGroupSaver groupSaver(config, "lists"); + config->writeEntry(getKey(ID), value); +} + + + +const CSwordBackend::DisplayOptionsBool CBTConfig::getDisplayOptionDefaults(){ + CSwordBackend::DisplayOptionsBool options; + + options.lineBreaks = get(CBTConfig::lineBreaks); + options.verseNumbers = get(CBTConfig::verseNumbers); + + return options; +} + +const CSwordBackend::FilterOptionsBool CBTConfig::getFilterOptionDefaults(){ + + CSwordBackend::FilterOptionsBool options; + + options.footnotes = get(CBTConfig::footnotes); + options.strongNumbers = get(CBTConfig::strongNumbers); + options.headings = get(CBTConfig::headings); + options.morphTags = get(CBTConfig::morphTags); + options.lemmas = get(CBTConfig::lemmas); + options.hebrewPoints = get(CBTConfig::hebrewPoints); + options.hebrewCantillation = get(CBTConfig::hebrewCantillation); + options.greekAccents = get(CBTConfig::greekAccents); + + return options; +} diff --git a/bibletime/frontend/cbtconfig.h b/bibletime/frontend/cbtconfig.h new file mode 100644 index 0000000..425a6fc --- /dev/null +++ b/bibletime/frontend/cbtconfig.h @@ -0,0 +1,131 @@ +/*************************************************************************** + cbtconfig.h - description + ------------------- + begin : Mon Nov 19 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBTCONFIG_H +#define CBTCONFIG_H + +#include +#include +#include +#include + +#include "backend/cswordbackend.h" +/**This class is the interface to the config object of BibleTime + *@author The BibleTime team + */ + +class CBTConfig { +public: + enum strings{ + bibletimeVersion, + language, + standardBible, + standardCommentary, + standardLexicon, + standardHebrewStrongsLexicon, + standardGreekStrongsLexicon, + standardHebrewMorphLexicon, + standardGreekMorphLexicon + }; + enum fonts{ + standard, + unicode + }; + enum colors{ + textColor, + backgroundColor, + highlightedVerseColor, + footnotesColor, + strongsColor, + morphsColor, + jesuswordsColor, + swordRefColor //SWORD hyperlink + }; + enum bools{ + firstSearchDialog, + + toolbar, + mainIndex, + + autoTile, + autoCascade, + + lexiconCache, + + footnotes, + strongNumbers, + headings, + morphTags, + lemmas, + hebrewPoints, + hebrewCantillation, + greekAccents, + textualVariants, + + lineBreaks, + verseNumbers, + scroll, + + tips, + logo, + restoreWorkspace + }; + enum intLists{ + splitterSizes + }; + enum stringLists{ + searchCompletionTexts, + searchTexts + }; + + static const QString get( const CBTConfig::strings ); + static const QFont get( const CBTConfig::fonts ); + static const bool get( const CBTConfig::bools ); + static const QColor get( const CBTConfig::colors ); + static const QValueList get( const CBTConfig::intLists ); + static const QStringList get( const CBTConfig::stringLists ); + + + static void set( const CBTConfig::strings, const QString value ); + static void set( const CBTConfig::fonts, const QFont value ); + static void set( const CBTConfig::bools, const bool value ); + static void set( const CBTConfig::colors, const QColor value ); + static void set( const CBTConfig::intLists, const QValueList value ); + static void set( const CBTConfig::stringLists, const QStringList value); + + + static const CSwordBackend::FilterOptionsBool getFilterOptionDefaults(); + static const CSwordBackend::DisplayOptionsBool getDisplayOptionDefaults(); + +private: + static const QString getKey( const CBTConfig::strings ); + static const QString getKey( const CBTConfig::fonts ); + static const QString getKey( const CBTConfig::bools ); + static const QString getKey( const CBTConfig::colors ); + static const QString getKey( const CBTConfig::intLists ); + static const QString getKey( const CBTConfig::stringLists ); + + static const QString getDefault( const CBTConfig::strings ); + static const QFont getDefault( const CBTConfig::fonts ); + static const bool getDefault( const CBTConfig::bools ); + static const QColor getDefault( const CBTConfig::colors ); + static const QValueList getDefault( const CBTConfig::intLists ); + static const QStringList getDefault( const CBTConfig::stringLists ); +}; + + +#endif diff --git a/bibletime/frontend/cexportmanager.cpp b/bibletime/frontend/cexportmanager.cpp new file mode 100644 index 0000000..641538f --- /dev/null +++ b/bibletime/frontend/cexportmanager.cpp @@ -0,0 +1,212 @@ +/*************************************************************************** + cexportmanager.cpp - description + ------------------- + begin : Mon Feb 25 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cexportmanager.h" +#include "backend/cswordkey.h" +#include "backend/cswordmoduleinfo.h" +#include "printing/cprintitem.h" +#include "printing/cprinter.h" +#include "util/scoped_resource.h" +#include "ctoolclass.h" + +//Qt includes +#include +#include + +//KDE includes +#include +#include +#include + +//Sword includes +#include +#include + +/** Saves the key to disk. */ +const bool CExportManager::saveKey( CSwordKey* key, const bool withText ) { + const QString file = KFileDialog::getSaveFileName(QString::null, i18n("*.txt | Text files\n *.* | All files (*.*)"), 0, i18n("Save search result ...")); + if (key && !file.isEmpty()) { + QString text = QString::fromLatin1("%1").arg(key->key()); + if (withText) + text += QString::fromLatin1("\n\t%1").arg(key->strippedText()); + CToolClass::savePlainFile(file, text); + return true; + } + return false; +} + +/** Saves the key to disk. */ +const bool CExportManager::saveKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool withText, const bool showProgress ){ + bool ret = false; + const QString file = KFileDialog::getSaveFileName(QString::null, i18n("*.txt | Text files\n *.* | All files (*.*)"), 0, i18n("Save search result ...")); + if (!file.isEmpty()) { + QProgressDialog progress( label, i18n("Cancel"), list->Count(), 0,"progress", true ); + progress.setProgress(0); + progress.setMinimumDuration(10); + progress.show(); + + util::scoped_ptr key(CSwordKey::createInstance(module)); + + QString text; + int index = 0; + *list = TOP; + while (!list->Error() && !progress.wasCancelled()) { + key->key((const char*)(*list)); + if (!key) + break; + progress.setProgress(index++); + KApplication::kApplication()->processEvents(10); //do not lock the GUI! + + if (withText) + text += QString::fromLatin1("%1:\n\t%2\n").arg( key->key() ).arg( key->strippedText() ); + else + text += key->key() + "\n"; + + (*list)++; + } + if (!progress.wasCancelled()) { + progress.setProgress(index); + CToolClass::savePlainFile(file, text); + ret = true; + } + } + + return ret; +} + +const bool CExportManager::saveKeyList( QList& list, CSwordModuleInfo* module, const QString& label, const bool withText, const bool showProgress ){ + bool ret = false; + const QString file = KFileDialog::getSaveFileName(QString::null, i18n("*.txt | Text files\n *.* | All files (*.*)"), 0, i18n("Save search result ...")); + if (!file.isEmpty()){ + + QProgressDialog progress( label, i18n("Cancel"), list.count(), 0,"progress", true ); + progress.setProgress(0); + progress.setMinimumDuration(10); + progress.show(); + + QString text; + CSwordKey* key = 0; + for (list.first(); list.current(); list.next()) { + key = list.current(); + if (!key) + break; + progress.setProgress(list.at()); + KApplication::kApplication()->processEvents(10); //do not lock the GUI! + + if (withText) + text += QString::fromLatin1("%1:\n\t%2\n").arg( key->key() ).arg( key->strippedText() ); + else + text += key->key() + "\n"; + } + + if (!progress.wasCancelled()) { + progress.setProgress(list.count()); + CToolClass::savePlainFile(file, text); + } + } + + return ret; +} + + +///////// copy functions +const bool CExportManager::copyKey( CSwordKey* key, const bool withText ) { + bool ret = true; + QString text = (withText) ? QString::fromLatin1("%1:\n\t%2").arg(key->key()).arg(key->strippedText()) : key->key()+"\n"; + + KApplication::clipboard()->setText(text); + + return ret; +} + +const bool CExportManager::copyKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool withText, const bool showProgress ){ + QProgressDialog progress( label, i18n("Cancel"), list->Count(), 0,"progress", true ); + progress.setProgress(0); + progress.setMinimumDuration(10); + progress.show(); + + QString text; + int index = 0; + util::scoped_ptr key( CSwordKey::createInstance(module) ); + *list = TOP; + while (!list->Error() && !progress.wasCancelled()) { + key->key((const char*)(*list)); + if (!key) + break; + progress.setProgress(index++); + KApplication::kApplication()->processEvents(10); //do not lock the GUI! + + text += (withText) ? QString::fromLatin1("%1:\n\t%2\n").arg(key->key()).arg(key->strippedText()) : key->key()+"\n"; + (*list)++; + } + if (progress.wasCancelled()) + return false; + + progress.setProgress(index); + KApplication::clipboard()->setText(text); + return true; +} + + +//////// printing functions ////////// + +const bool CExportManager::printKey( CSwordModuleInfo* module, const QString& startKey, const QString& stopKey, const QString& description ){ + printer()->appendItem( new CPrintItem(module, startKey, stopKey, description) ); + return true; +} + +const bool CExportManager::printKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool showProgress ){ + QProgressDialog progress( label, i18n("Cancel"), list->Count(), 0,"progress", true ); + progress.setProgress(0); + progress.setMinimumDuration(10); + progress.show(); + + int index = 0; + QList itemList; + QString startKey, stopKey; + + *list = TOP; + while (!list->Error() && !progress.wasCancelled()) { + VerseKey* vk = dynamic_cast(list); + if (vk) { + startKey = QString::fromLocal8Bit((const char*)(vk->LowerBound()) ); + stopKey = QString::fromLocal8Bit((const char*)(vk->UpperBound()) ); + } + else { + startKey = QString::fromLocal8Bit((const char*)*list); + stopKey = QString::null; + } + itemList.append( new CPrintItem(module, startKey, stopKey) ); + + progress.setProgress(index++); + KApplication::kApplication()->processEvents(10); //do not lock the GUI! + + (*list)++; + } + + //add all items to the queue + if (progress.wasCancelled()) { + itemList.setAutoDelete(true); + itemList.clear();//delete all items + return false; + } + + progress.setProgress(list->Count()); + printer()->appendItems(itemList); + + return true; +} diff --git a/bibletime/frontend/cexportmanager.h b/bibletime/frontend/cexportmanager.h new file mode 100644 index 0000000..853e2da --- /dev/null +++ b/bibletime/frontend/cexportmanager.h @@ -0,0 +1,53 @@ +/*************************************************************************** + cexportmanager.h - description + ------------------- + begin : Mon Feb 25 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CEXPORTMANAGER_H +#define CEXPORTMANAGER_H + +//BibleTime includes +#include "cpointers.h" + +//Qt includes +#include +#include + +class ListKey; +class CSwordKey; +class CSwordModuleInfo; + + +/**Contains the functions to export text to disk, clipboard or printer. + *@author The BibleTime team + */ +class CExportManager : CPointers { +public: // Public methods + //save functions + static const bool saveKey( CSwordKey* key, const bool withText = true ); + static const bool saveKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool withText = true, const bool showProgress = true ); + static const bool saveKeyList( QList& list, CSwordModuleInfo* module, const QString& label, const bool withText = true, const bool showProgress = true ); + + //clipboard functions + static const bool copyKey( CSwordKey* key, const bool withText = true ); + static const bool copyKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool withText = true, const bool showProgress = true ); + + //print function + static const bool printKey( CSwordModuleInfo* module, const QString& startKey, const QString& stopkey = QString::null, const QString& description = QString::null ); + static const bool printKeyList( ListKey* list, CSwordModuleInfo* module, const QString& label, const bool showProgress = true ); + +}; + +#endif diff --git a/bibletime/frontend/chtmldialog.cpp b/bibletime/frontend/chtmldialog.cpp new file mode 100644 index 0000000..6be6c83 --- /dev/null +++ b/bibletime/frontend/chtmldialog.cpp @@ -0,0 +1,154 @@ +/*************************************************************************** + chtmldialog.cpp - description + ------------------- + begin : Tue Jan 25 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//own includes +#include "chtmldialog.h" +#include "ctoolclass.h" + +//QT includes +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include + + +CHTMLDialog::CHTMLDialog(QWidget* parent, const char *name ) + : QDialog ( parent, name, true, WStyle_MinMax | WStyle_DialogBorder | WStyle_Dialog ) +{ + init(false); +} + +CHTMLDialog::CHTMLDialog(const QString& url, QWidget* parent, const char *name) + : QDialog ( parent, name, true, WStyle_MinMax | WStyle_DialogBorder | WStyle_Dialog ) +{ + init(); + QString file = CToolClass::locatehtml(url); + + m_textBrowser->mimeSourceFactory()->setFilePath(file); + m_textBrowser->setSource(file); +} + +CHTMLDialog::~CHTMLDialog(){ +} + +/** Sets the content of the widget */ +void CHTMLDialog::setText(const QString& text){ + m_textBrowser->setText(text); +} + +/** Initializes this widget. */ +void CHTMLDialog::init(const bool enableHistory){ + resize(600,400); + QVBoxLayout* layout = new QVBoxLayout(this, 5); + + m_textBrowser = new QTextBrowser(this); + KURL url(CToolClass::locatehtml("bibletime/helpdialog/index.docbook")); + m_textBrowser->mimeSourceFactory()->addFilePath(url.directory()); + url.cd(QString::fromLatin1("..")); + m_textBrowser->mimeSourceFactory()->addFilePath(url.directory()); + url.cd(QString::fromLatin1("..")); + m_textBrowser->mimeSourceFactory()->addFilePath(url.directory()); + url.cd(QString::fromLatin1("..")); + m_textBrowser->mimeSourceFactory()->addFilePath(url.directory()); + + + if (enableHistory) { + QHBox* toolBar = new QHBox(this, "history toolbar"); + + QToolButton *button = 0; + button = new QToolButton(toolBar); + button->setIconSet(SmallIcon("back")); + button->setTextLabel(i18n("Backward")); + button->setEnabled(false); + button->setUsesTextLabel(true); + button->setFixedSize(button->sizeHint()); + connect(button, SIGNAL(clicked()), m_textBrowser, SLOT(backward())); + connect(m_textBrowser, SIGNAL(backwardAvailable(bool)), + button, SLOT(setEnabled(bool))); + connect( m_textBrowser, SIGNAL( textChanged() ), + this, SLOT( textChanged() ) ); + + m_historyCombo = new KComboBox(toolBar); + toolBar->setStretchFactor(m_historyCombo, 5); + connect( m_historyCombo, SIGNAL( activated( const QString & ) ), + this, SLOT( historyItemSelected( const QString & ) ) ); + + + button = new QToolButton(toolBar); + button->setEnabled(false); + button->setTextLabel(i18n("Forward")); + button->setUsesTextLabel(true); + button->setIconSet(SmallIcon("forward")); + button->setFixedSize(button->sizeHint()); + connect(button, SIGNAL(clicked()), m_textBrowser, SLOT(forward())); + connect(m_textBrowser, SIGNAL(forwardAvailable(bool)), + button, SLOT(setEnabled(bool))); + + layout->addWidget(toolBar); + } + layout->addSpacing(5); + layout->addWidget(m_textBrowser,5); + + QHBoxLayout* hBox = new QHBoxLayout(); + QPushButton* closeButton = new QPushButton(this); + closeButton->setText(i18n("Close")); + connect(closeButton, SIGNAL(pressed()), this, SLOT(close())); + hBox->addStretch(5); + hBox->addWidget(closeButton,1); + + layout->addLayout(hBox); +} + +/** Is called when an item of the history combo was chosen. */ +void CHTMLDialog::historyItemSelected( const QString & file ){ + m_textBrowser->setSource(file); +} + +/** Called when the content of the textbrowser was changed. */ +void CHTMLDialog::textChanged(){ + if ( m_textBrowser->documentTitle().isNull() ) + setCaption( m_textBrowser->context() ); + else + setCaption( m_textBrowser->documentTitle() ) ; + + QString selectedURL = caption(); + if ( !selectedURL.isEmpty() && m_historyCombo ) { + bool exists = false; + int i; + for ( i = 0; i < m_historyCombo->count(); ++i ) { + if ( m_historyCombo->text( i ) == selectedURL ) { + exists = true; + break; + } + } + if ( !exists ) { + m_historyCombo->insertItem( selectedURL, -1 ); + m_historyCombo->setCurrentItem( 0 ); + } else + m_historyCombo->setCurrentItem( i ); + selectedURL = QString::null; + } +} diff --git a/bibletime/frontend/chtmldialog.h b/bibletime/frontend/chtmldialog.h new file mode 100644 index 0000000..fd22061 --- /dev/null +++ b/bibletime/frontend/chtmldialog.h @@ -0,0 +1,67 @@ +/*************************************************************************** + chtmldialog.h - description + ------------------- + begin : Tue Jan 25 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CHTMLDIALOG_H +#define CHTMLDIALOG_H + +//Qt includes +#include +#include + +//forward declarations +class QTextBrowser; +class KComboBox; + +/** This is a general dialog to show long error messages or report and solutions + * (Perhaps from an FAQ file). + * @author The BibleTime Team + */ +class CHTMLDialog : public QDialog { + Q_OBJECT + +public: + CHTMLDialog(QWidget* parent=0, const char *name=0); + CHTMLDialog(const QString& url, QWidget* parent=0, const char *name=0); + ~CHTMLDialog(); + /** + * Sets the content of the widget. Not URL is used. + */ + virtual void setText(const QString&); + +protected: + QTextBrowser* m_textBrowser; + /** + * Initializes this widget. + */ + void init(const bool enableHistory = true); + +protected slots: // Protected slots + /** + * Called when the content of the textbrowser was changed. + */ + void textChanged(); + /** + * Is called when an item of the history combo was chosen. + */ + void historyItemSelected( const QString & ); + +private: + KComboBox* m_historyCombo; +}; + +#endif + diff --git a/bibletime/frontend/chtmlwidget.cpp b/bibletime/frontend/chtmlwidget.cpp new file mode 100644 index 0000000..7fe6e2d --- /dev/null +++ b/bibletime/frontend/chtmlwidget.cpp @@ -0,0 +1,747 @@ +/*************************************************************************** + chtmlwidget.cpp - description + ------------------- + begin : Sun Feb 27 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "chtmlwidget.h" +#include "ctoolclass.h" +#include "backend/creferencemanager.h" +#include "backend/cswordldkey.h" +#include "backend/cswordversekey.h" +#include "backend/cswordbackend.h" +#include "backend/cswordmoduleinfo.h" +#include "presenters/cswordpresenter.h" +#include "thirdparty/qt3stuff/qt3stuff.h" +#include "thirdparty/qt3stuff/qrichtext_p.h" +#include "resource.h" +#include "tooltipdef.h" +#include "whatsthisdef.h" +#include "cbtconfig.h" + +#include "util/scoped_resource.h" + +#include + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//Sword includes +#include + +CHTMLWidget::ToolTip::ToolTip(QWidget* parent) + : QToolTip(parent) { + +} + +void CHTMLWidget::ToolTip::maybeTip(const QPoint& p) { +// qWarning("void CHTMLWidget::ToolTip::maybeTip(const QPoint& p) "); + if (!parentWidget()->inherits("CHTMLWidget")) + return; + + CHTMLWidget* htmlWidget = dynamic_cast(parentWidget()); + ASSERT(htmlWidget); + QPoint p1 = htmlWidget->viewportToContents(p); + QString link = QString::null; + QString text = QString::null; + + link = htmlWidget->anchorAt(p1); + if ( link.isEmpty() ) + return; + else { +// qWarning("link is valid"); + Qt3::QTextCursor c( htmlWidget->getDocument() ); + htmlWidget->placeCursor( p1, &c ); + QRect rect = c.parag()->rect(); + + //map rect coordinates to widget's ones + rect.setX( htmlWidget->contentsToViewport(rect.topLeft()).x() ); + rect.setY( htmlWidget->contentsToViewport(rect.topLeft()).y() ); + rect.setWidth( htmlWidget->contentsToViewport(rect.bottomRight()).x() - rect.x() ); + rect.setHeight( htmlWidget->contentsToViewport(rect.bottomLeft()).y() - rect.y() ); + + QString module = QString::null; + QString ref = QString::null; + CReferenceManager::Type type; + const bool ok = CReferenceManager::decodeHyperlink(link, module, ref, type); + if (!ok || ref.isEmpty()) + return; + + const QFont oldFont = font(); + + CSwordModuleInfo* m = 0; + if (module.isEmpty() || module.isNull()) { + module = CReferenceManager::preferredModule( type ); + } + m = backend()->findModuleByName(module); + if (m){ + if (m->type() == CSwordModuleInfo::Bible || m->type() == CSwordModuleInfo::Commentary) { + CSwordModuleInfo* module = htmlWidget->modules().first(); + if (module) { + ref = CReferenceManager::parseVerseReference(ref); + } + } + util::scoped_ptr key( CSwordKey::createInstance( m ) ); + if (key) { + backend()->setFilterOptions( CBTConfig::getFilterOptionDefaults() ); + + key->key(ref); + text = key->renderedText(); + } + if (m->isUnicode()) { + setFont( CBTConfig::get(CBTConfig::unicode) ); + } + } + if (!text.isEmpty()) { + text = QString::fromLatin1("%1


%2").arg(ref).arg(text); + tip(rect, text); + } + setFont(oldFont); + } +} + +CHTMLWidget::CHTMLWidget(const bool useColorsAndFonts,QWidget *parent, const char *name ) + : Qt3::QTextEdit(parent, name),m_moduleList( new ListCSwordModuleInfo ) { + + m_popup = 0; + m_anchor = QString::null; + m_anchorMenu = 0; + m_selectedWord = false; + mousePressed = inDoubleClick = false; + setTextFormat( Qt::RichText ); + setReadOnly(true); + + QFont unicodeFont = CBTConfig::get(CBTConfig::unicode); + if (!document()->charsetMap->contains(unicodeFont.family())) + document()->charsetMap->insert(unicodeFont.family(), QFont::Unicode); + + initView(); + initConnections(); + if (useColorsAndFonts) { + initColors(); + initFonts(); + } +} + +CHTMLWidget::~CHTMLWidget(){ + delete m_moduleList; + m_moduleList = 0; +} + +/** */ +void CHTMLWidget::initColors(){ +// qDebug("CHTMLWidget::initColors()"); +// setLinkColor( m_config->readColorEntry("Versenumber/URL", &Qt::darkBlue) ); +// QColor textColor = m_config->readColorEntry("Normal Text", &Qt::red); + const QColor bgColor = CBTConfig::get(CBTConfig::backgroundColor); + setPaper(QBrush(bgColor)); + +//using a standard text color doesn't work at the moment! + +// QPalette p = palette(); +// p.setBrush( QPalette::Active, QColorGroup::Base, QBrush(bgColor) ); +// QColorGroup cg = p.active(); +// p.setColor(QPalette::Active, QColorGroup::Text, textColor); +// cg.setColor(QColorGroup::Base, bgColor); +// p.setActive(cg); +// setPalette(p); +// refresh(); +} + +/** Initializes the fonts of the HTML-widget */ +void CHTMLWidget::initFonts(){ +// ACHTUNG: CBTCONFIG benutzen +// ConfigGroupSaver groupSaver(m_config, "Fonts"); +// if (document()->charsetMap->contains(font().family())) { //remove old standard font +// document()->charsetMap->remove(font().family()); +// } +// +// QFont f = m_config->readFontEntry(i18n("Display window")); +// document()->setDefaultFont( f ); +// setFont(f); +// +// document()->charsetMap->replace(f.family(), f.charSet()); +} + +/** */ +void CHTMLWidget::initView(){ + m_toolTip = new ToolTip(this); + disconnect(dragStartTimer, SIGNAL(timeout()), + this, SLOT(startDrag())); + +// QStringList paths; + + setAcceptDrops(true); + viewport()->setAcceptDrops(true); +} + + +/** Initializes the connections to SIGNALs */ +void CHTMLWidget::initConnections(){ + connect( this, SIGNAL( linkClicked( const QString & ) ), + this, SLOT( setSource( const QString & ) ) ); + if (!isReadOnly()) { + connect(this, SIGNAL(currentFontChanged(const QFont&)), + SLOT(slotCurrentFontChanged(const QFont&))); + connect(this, SIGNAL(currentColorChanged(const QColor&)), + SLOT(slotCurrentColorChanged(const QColor&))); + connect(this, SIGNAL(currentAlignmentChanged(int)), + SLOT(slotCurrentAlignementChanged(int))); + } + else { + disconnect(this, SIGNAL(currentFontChanged(const QFont&)), + this, SLOT(slotCurrentFontChanged(const QFont&))); + disconnect(this, SIGNAL(currentColorChanged(const QColor&)), + this, SLOT(slotCurrentColorChanged(const QColor&))); + disconnect(this, SIGNAL(currentAlignmentChanged(int)), + this, SLOT(slotCurrentAlignementChanged(int))); + } +} + +/** Reinitialize the colors, fonts etc. */ +void CHTMLWidget::refresh(){ +// qDebug("CHTMLWidget::refresh()"); + initColors(); + initFonts(); +} + +/** Loads a HTML file in the widget. */ +void CHTMLWidget::setHTMLSource(const QString& url){ + if (url.left(1) != "/") { //a filename without path + QString myFile = CToolClass::locatehtml( url ); + if (QFile::exists(myFile)) { + KURL kurl(myFile); + mimeSourceFactory()->addFilePath( kurl.directory() ); + + //read in the HTML file and use setText() + QFile file(myFile); + if ( file.open(IO_ReadOnly) ) { // file opened successfully + QTextStream t( &file ); // use a text stream + const QString text = t.read(); + file.close(); + setText( text/*, kurl.directory()*/ ); + } + } + else + setText( i18n("Unable to find the page %1!").arg(url) ); + } + else { + if (QFile::exists(url)) { + //read in the HTML file and use setText() + KURL kurl(url); + mimeSourceFactory()->addFilePath( kurl.directory() ); + QFile file(url); + if ( file.open(IO_ReadOnly) ) { // file opened successfully + QTextStream t( &file ); // use a text stream + const QString text = t.read(); + file.close(); + setText( text/*, kurl.directory()*/ ); + } + } + } +} + +/** Saves the HTML page */ +void CHTMLWidget::slotSaveAsHTML(){ + QString file = KFileDialog::getSaveFileName (QString::null, i18n("*.html *.htm *.shtml *.shtm | HTML files\n *.* | All files (*.*)"), 0, i18n("Save text as HTML page ...")); + if (!file.isNull()) + CToolClass::savePlainFile( file, text().utf8()); +} + +/** Saves the HTML page */ +void CHTMLWidget::slotSaveAsText(){ + const QString file = KFileDialog::getSaveFileName (QString::null, i18n("*.txt | Text file (*.txt)\n*.* | All files (*.*)"), 0, i18n("Save text as plain text ...")); + + if (!file.isNull()) { + QString html = document()->plainText(); + CToolClass::savePlainFile( file, html); + } +} + +//** */ +void CHTMLWidget::contentsDragEnterEvent(QDragEnterEvent* e){ + Qt3::QTextEdit::contentsDragEnterEvent(e); + e->accept(QTextDrag::canDecode(e)); +} + +/** */ +void CHTMLWidget::contentsDragMoveEvent(QDragMoveEvent* e){ + Qt3::QTextEdit::contentsDragMoveEvent(e); + e->accept(QTextDrag::canDecode(e)); +} + +/** */ +void CHTMLWidget::contentsDropEvent(QDropEvent* e){ + QString str; + QCString submime; + + if (isReadOnly()) { + if ( ( QTextDrag::decode(e,str,submime=BOOKMARK) || QTextDrag::decode(e,str,submime=REFERENCE) ) && !str.isEmpty() ){ + QString ref = QString::null; + QString mod = QString::null; + CReferenceManager::decodeReference(str,mod,ref); + emit referenceDropped(/*mod,*/ ref); + } + else + e->ignore(); + } + else { + QString text = QString::null; + if ( ( QTextDrag::decode(e,str,submime=BOOKMARK) || QTextDrag::decode(e,str,submime=REFERENCE) ) && !str.isEmpty() ){ + QString ref = QString::null; + QString mod = QString::null; + CReferenceManager::decodeReference(str,mod,ref); + CSwordModuleInfo* module = backend()->findModuleByName(mod); + if (module) { + CSwordKey* key = CSwordKey::createInstance(module);; + key->key(ref); + text = key->strippedText(); + delete key; + } + } + else if (QTextDrag::decode(e,str) && !str.isEmpty()) + text = str; + + if (!text.isEmpty()) + insert(text); + else { + e->ignore(); + } + } +} + + +/** Reimplementation. */ +void CHTMLWidget::contentsMousePressEvent(QMouseEvent* e) { + m_pressedPos = e->pos(); + m_anchor = anchorAt(e->pos()); + viewport()->setCursor(anchorAt(e->pos()).isEmpty() ? arrowCursor : KCursor::handCursor() ); + Qt3::QTextEdit::contentsMousePressEvent(e); + + if (!onLink.isEmpty() && (e->button() == RightButton) && m_anchorMenu) { //popup installed menu + m_anchorMenu->exec( e->globalPos() ); + } + else if (m_popup && e->button() == RightButton){ //popup normal menu + m_selectedWord = false; + QString selectedWord = QString::null; + + drawCursor(false); + placeCursor(e->pos()); + ensureCursorVisible(); + emit cursorPositionChanged(cursor); + + if (selectedText().isEmpty()) { + Qt3::QTextCursor c1 = *cursor; + Qt3::QTextCursor c2 = *cursor; + c1.gotoWordLeft(); + c2.gotoWordRight(); + doc->setSelectionStart( Qt3::QTextDocument::Standard, &c1 ); + doc->setSelectionEnd( Qt3::QTextDocument::Standard, &c2 ); + *cursor = c2; + selectedWord = selectedText(); + emit cursorPositionChanged(cursor); + ensureCursorVisible(); + repaintChanged(); + m_selectedWord = true; + } + m_popup->exec( e->globalPos() ); + if (m_selectedWord && (selectedWord == selectedText()) ) { + m_selectedWord = false; + selectAll(false); + } + } +} + +/** Reimplementation.*/ +void CHTMLWidget::contentsMouseMoveEvent(QMouseEvent* e) { + if ( mousePressed ) { + if ( mightStartDrag ) { //we might start a drag + dragStartTimer->stop(); + if ( ( e->pos() - dragStartPos ).manhattanLength() > KApplication::startDragDistance() ) + startDrag(); + if ( !isReadOnly() ) + viewport()->setCursor( ibeamCursor ); + return; + } + else if (!m_anchor.isEmpty()/*!anchorAt(e->pos()).isEmpty() && !hasSelectedText()*/) { + QString module = QString::null; + QString key = QString::null; + CReferenceManager::Type type; + const bool ok = CReferenceManager::decodeHyperlink(m_anchor, module, key, type); + if (!ok) + return; + + mousePressed = false; + inDoubleClick = false; + mightStartDrag = false; + + QTextDrag *d = new QTextDrag(CReferenceManager::encodeReference(module,key),viewport()); + d->setSubtype(REFERENCE); + d->setPixmap(REFERENCE_ICON_SMALL); + d->drag(); + return; + } + mousePos = e->pos(); + doAutoScroll(); + oldMousePos = mousePos; + } + + if ( !isReadOnly() && !mousePressed ) { + if ( doc->hasSelection( Qt3::QTextDocument::Standard ) && doc->inSelection( Qt3::QTextDocument::Standard, e->pos() ) ) + viewport()->setCursor( arrowCursor ); + else + viewport()->setCursor( ibeamCursor ); + } + if ( isReadOnly() && linksEnabled() ) { + Qt3::QTextCursor c = *cursor; + placeCursor( e->pos(), &c ); + if ( c.parag() && c.parag()->at( c.index() ) && + !anchorAt(e->pos()).isEmpty() ) { + viewport()->setCursor( pointingHandCursor ); + onLink = c.parag()->at( c.index() )->format()->anchorHref(); + QUrl u( doc->context(), onLink, true ); + m_hoverPos = e->pos(); + emitHighlighted( u.toString( false, false ) ); + } else { + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); + onLink = QString::null; + emitHighlighted( QString::null ); + } + } +} + +/** Installes a menu which will popup if the right mouse button was pressed on an anchor. */ +void CHTMLWidget::installAnchorMenu( QPopupMenu* anchorMenu ){ +// qDebug("CHTMLWidget::installAnchorMenu( QPopupMenu* anchorMenu )"); + ASSERT( anchorMenu ); + m_anchorMenu = anchorMenu; +} + +/** Returns the current anchor. */ +QString CHTMLWidget::getCurrentAnchor(){ + return anchorAt(m_pressedPos); +} + +/** No descriptions */ +void CHTMLWidget::installPopup( QPopupMenu* popup ){ + ASSERT(popup); + m_popup = popup; +} + +/** Sets the HTML widget editable or not */ +void CHTMLWidget::setReadOnly( const bool readOnly ){ + m_readOnly = readOnly; + initConnections(); + + viewport()->setCursor( m_readOnly ? arrowCursor : ibeamCursor ); + viewport()->update(); +} + +/** Returns true if this HTML widget is read only, false if it's editable */ +bool CHTMLWidget::isReadOnly() const { + return m_readOnly; +} + +/** This function returns the edit toolbar used for the HTML widget. The items of the toolbar are already connected to the correct slots. */ +void CHTMLWidget::createEditToolbar( KToolBar* bar ){ + ASSERT(bar); + if (!bar) + return; + + m_docSaveAction = new KAction(i18n("Save"), ICON_FILE_SAVE, 0, this, SLOT(slotSaveDocument()),bar, "saveDoc_action"); + m_docSaveAction->setToolTip( TT_PRESENTER_EDIT_SAVE ); + m_docSaveAction->setWhatsThis( WT_PRESENTER_EDIT_SAVE ); + m_docSaveAction->plug(bar); + + m_docDeleteAction = new KAction(i18n("Delete"), ICON_FILE_DELETE, 0, this, SIGNAL(sigDeleteDocument()),bar, "deleteDoc_action"); + m_docDeleteAction->setToolTip( TT_PRESENTER_EDIT_DELETE ); + m_docDeleteAction->setWhatsThis( WT_PRESENTER_EDIT_DELETE ); + m_docDeleteAction->plug(bar); + + m_colorChooser = new KColorButton(black, bar); + connect(m_colorChooser, SIGNAL(changed(const QColor&)),SLOT(slotSetCurrentColor(const QColor&))); + m_fontAction = new KFontAction(i18n("Choose a font:"), 0, bar); + connect(m_fontAction, SIGNAL(activated(const QString&)), SLOT(slotSetCurrentFont(const QString&))); + m_fontAction->plug(bar); + + m_fontSizeAction = new KFontSizeAction(i18n("Choose font size"), 0, bar); + connect(m_fontSizeAction, SIGNAL(fontSizeChanged(int)), SLOT(setPointSize(int))); + m_fontSizeAction->plug(bar); + + m_boldAction = new KToggleAction(i18n("Bold"), ICON_EDIT_BOLD,0,this, SLOT(slotToggleBold()), bar); + m_boldAction->plug(bar); + m_italicAction = new KToggleAction(i18n("Italic"), ICON_EDIT_ITALIC,0, this, SLOT(slotToggleItalic()),bar); + m_italicAction->plug(bar); + m_underlineAction = new KToggleAction(i18n("Underlined"), ICON_EDIT_UNDER,0, this, SLOT(slotToggleUnderline()),bar); + m_underlineAction->plug(bar); + + m_alignLeftAction = new KToggleAction(i18n("Left"), ICON_EDIT_LEFT,0, this, SLOT(slotAlignLeft()),bar); + m_alignLeftAction->plug(bar); + m_alignCenterAction = new KToggleAction(i18n("Center"), ICON_EDIT_CENTER,0, this, SLOT(slotAlignCenter()),bar); + m_alignCenterAction->plug(bar); + m_alignRightAction = new KToggleAction(i18n("Right"), ICON_EDIT_RIGHT,0, this, SLOT(slotAlignRight()),bar); + m_alignRightAction->plug(bar); + m_alignJustifyAction = new KToggleAction(i18n("Justify"), ICON_EDIT_JUST,0, this, SLOT(slotAlignJustify()),bar); + m_alignJustifyAction->plug(bar); +} + +/** emit a signal to save the text */ +void CHTMLWidget::slotSaveDocument(){ + emit sigSaveDocument(text()); +} + +/** No descriptions */ +void CHTMLWidget::slotToggleBold(){ + Qt3::QTextEdit::setBold( !bold() ); + m_boldAction->setChecked(bold()); +} + +/** No descriptions */ +void CHTMLWidget::slotToggleItalic(){ + Qt3::QTextEdit::setItalic(!italic() ); + m_italicAction->setChecked(italic()); +} + +/** No descriptions */ +void CHTMLWidget::slotToggleUnderline(){ + Qt3::QTextEdit::setUnderline( !underline() ); + m_underlineAction->setChecked(underline()); +} + +/** No descriptions */ +void CHTMLWidget::slotSetCurrentFontSize( int size ){ + if (size > 0) + setPointSize(size); +} + +void CHTMLWidget::slotSetCurrentFont(const QString& font) { + QFont newFont(font, pointSize()); + newFont.setBold(bold()); + newFont.setItalic(italic()); + newFont.setUnderline(underline()); + + setFont( newFont ); +} + +/** Is calledwhen a new color was selected. */ +void CHTMLWidget::slotSetCurrentColor( const QColor& color){ + setColor(color); +} + +/** No descriptions */ +void CHTMLWidget::slotCurrentFontChanged( const QFont& f){ + m_fontAction->setFont( f.family() ); + m_fontSizeAction->setFontSize( f.pointSize() ); + + m_boldAction->setChecked( f.bold() ); + m_italicAction->setChecked( f.italic() ); + m_underlineAction->setChecked( f.underline() ); +} + +/** No descriptions */ +void CHTMLWidget::slotCurrentColorChanged( const QColor& c){ + m_colorChooser->setColor(c); +} + +/** No descriptions */ +void CHTMLWidget::slotCurrentAlignementChanged(int a){ + m_alignLeftAction->setChecked( (a == AlignLeft) || (a == Qt3::AlignAuto) ); + m_alignCenterAction->setChecked( a == AlignHCenter ); + m_alignRightAction->setChecked( a == AlignRight ); + m_alignJustifyAction->setChecked( a == Qt3::AlignJustify ); +} + +/** No descriptions */ +void CHTMLWidget::slotAlignLeft(){ + m_alignLeftAction->setChecked(true); + m_alignCenterAction->setChecked(false); + m_alignRightAction->setChecked(false); + m_alignJustifyAction->setChecked(false); + + setAlignment(AlignLeft); +} + +/** No descriptions */ +void CHTMLWidget::slotAlignCenter(){ + m_alignLeftAction->setChecked(false); + m_alignCenterAction->setChecked(true); + m_alignRightAction->setChecked(false); + m_alignJustifyAction->setChecked(false); + + setAlignment(AlignHCenter); +} + +/** No descriptions */ +void CHTMLWidget::slotAlignRight(){ + m_alignLeftAction->setChecked(false); + m_alignCenterAction->setChecked(false); + m_alignRightAction->setChecked(true); + m_alignJustifyAction->setChecked(false); + + setAlignment(AlignRight); +} + +/** No descriptions */ +void CHTMLWidget::slotAlignJustify(){ + m_alignLeftAction->setChecked(false); + m_alignCenterAction->setChecked(false); + m_alignRightAction->setChecked(false); + m_alignJustifyAction->setChecked(true); + + setAlignment(Qt3::AlignJustify); +} + +/** No descriptions */ +void CHTMLWidget::slotSelectAll(){ + selectAll(false);//workaround + selectAll(true); +} + +/** Returns true if the links are enabled. */ +bool CHTMLWidget::linksEnabled() const { + return true; +} + +/** Reimplementation from QTextView. */ +void CHTMLWidget::emitLinkClicked( const QString& link){ + if (link.left(7) == QString::fromLatin1("mailto:")) { + qDebug("open mailer for %s", link.mid(7).latin1()); + KApplication::kApplication()->invokeMailer(link.mid(7), QString::null); + return; + } + + if (CReferenceManager::isHyperlink(link)) { + QString ref; + QString module; + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(link, module, ref, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + CSwordKey* key = CSwordKey::createInstance(m); + if (key) { + emit referenceClicked(module, key->key(ref)); + delete key; + } + } + else { + QString url = link; + if (link.left(1) == "/") + url = link.mid(1); + emit linkClicked(url); + } +} + +/** Copies the displayed document into the clipboard. */ +void CHTMLWidget::copyDocument(){ + if (!document()->text().isEmpty()) { + QClipboard* cb = KApplication::clipboard(); + cb->setText(document()->plainText()); + } +} + +/** Sets the source of this widget. */ +void CHTMLWidget::setSource(const QString& name){ + if ( isVisible() ) + qApp->setOverrideCursor( waitCursor ); + QString source = name; + QString mark; + int hash = name.find('#'); + if ( hash != -1) { + source = name.left( hash ); + mark = name.mid( hash+1 ); + } + if ( source.left(5) == "file:" ) + source = source.mid(6); + + QString url = mimeSourceFactory()->makeAbsolute( source, context() ); + QString txt; + bool dosettext = false; + + if ( !source.isEmpty()/* && url != d->curmain */) { + const QMimeSource* m = mimeSourceFactory()->data( source, context() ); + if ( !m ) + qWarning("CHTMLWidget: no mimesource for %s", source.latin1() ); + else if ( !QTextDrag::decode( m, txt ) ) + qWarning("CHTMLWidget: cannot decode %s", source.latin1() ); + dosettext = true; + } + if ( !mark.isEmpty() ) { + url += "#"; + url += mark; + } + if ( dosettext ) + setText( txt, url ); + + if ( isVisible() && !mark.isEmpty() ) + scrollToAnchor( mark ); + else + setContentsPos( 0, 0 ); + if ( isVisible() ) + qApp->restoreOverrideCursor(); +} + +/** Is called if a link was highlighted. Normally a signal should be emitted. */ +void CHTMLWidget::emitHighlighted( const QString& s ){ +} + +/** Returns the document used by this widget */ +Qt3::QTextDocument* CHTMLWidget::getDocument() const{ + return Qt3::QTextEdit::document(); +} + +/** Places the cursor at position pos */ +void CHTMLWidget::placeCursor( const QPoint &pos, Qt3::QTextCursor *c ){ + Qt3::QTextEdit::placeCursor(pos, c); +} + +/** Returns a list of modules which are used by the display window which uses this HTML widget. */ +ListCSwordModuleInfo& CHTMLWidget::modules() const { + if (m_moduleList) + return *m_moduleList; +} + +/** Sets the list of modules used by the display window which uses this widget. */ +void CHTMLWidget::setModules( ListCSwordModuleInfo& modules ) { + *m_moduleList = modules; //copy entries + //add data path of all modules tom our config + for (m_moduleList->first(); m_moduleList->current(); m_moduleList->next()) { + const QString path = m_moduleList->current()->config(CSwordModuleInfo::AbsoluteDataPath); + mimeSourceFactory()->addFilePath( path ); + }; +} diff --git a/bibletime/frontend/chtmlwidget.h b/bibletime/frontend/chtmlwidget.h new file mode 100644 index 0000000..7ed504c --- /dev/null +++ b/bibletime/frontend/chtmlwidget.h @@ -0,0 +1,291 @@ +/*************************************************************************** + chtmlwidget.h - description + ------------------- + begin : Sun Feb 27 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CHTMLWIDGET_H +#define CHTMLWIDGET_H + +//BibleTime includes +#include "cpointers.h" +#include "backend/cswordbackend.h" + +#define private public // It's a really bad hack, but I don't know how to do it in another way +#include "thirdparty/qt3stuff/qtextedit.h" +#undef private + +//Qt includes +#include +#include +#include + +class CHTMLDialog; +class CBiblePresenter; +class KPopupMenu; +class KAction; +class KToggleAction; +class KFontSizeAction; +class KToolBar; +class QToolButton; +class KFontAction; +class QComboBox; +class KColorButton; + + +/** This widget enhances the KHTMLWidget to support BibleTime's colour + * management and to support verse references and the like. + * @author The BibleTime Team + */ +class CHTMLWidget : public Qt3::QTextEdit, public CPointers { + Q_OBJECT + friend class CHTMLDialog; + +public: + /** + * The constructor of the CHTMLWidget class. + * @param useColorsAndFonts Set this to false if you don't want to use the standard colorsa dnfonts defined in the optionsdialog of BibleTime + */ + CHTMLWidget(const bool useColorsAndFonts = true, QWidget *parent=0, const char *name=0); + virtual ~CHTMLWidget(); + /** + * Reinitialize the colors, fonts etc. + */ + virtual void refresh(); + /** + * Loads a HTML file in the widget. + */ + virtual void setHTMLSource(const QString& url); + /** + * Installes a menu which will popup if the right mouse button was pressed on an anchor. + */ + virtual void installAnchorMenu( QPopupMenu* ); + /** + * Returns the current anchor. + */ + virtual QString getCurrentAnchor(); + /** + * No descriptions + */ + void installPopup( QPopupMenu* popup); + /** + * Returns true if this HTML widget is read only, false if it's editable + */ + virtual bool isReadOnly() const; + /** + * Sets the HTML widget ediatable or not + */ + virtual void setReadOnly( const bool readOnly = true); + /** + * This function returns the edit toolbar used for the HTML widget. + * The items of the toolbar are already connected to the correct slots. + */ + void createEditToolbar( KToolBar* bar ); + /** + * Returns the document used by this widget + */ + virtual Qt3::QTextDocument* getDocument() const; + /** + * Places the cursor at position pos + */ + virtual void placeCursor( const QPoint &pos, Qt3::QTextCursor *c = 0); + /** + * Sets the list of modules used by the display window which uses this widget. + */ + void setModules( ListCSwordModuleInfo& modules ) ; + /** + * Returns a list of modules which are used by the display window which uses this HTML widget. + */ + ListCSwordModuleInfo& modules() const; + + QPoint m_pressedPos; + +public slots: // Public slots + /** + * Saves the HTML page + */ + void slotSaveAsHTML(); + /** + * Saves the plain text page + */ + void slotSaveAsText(); + /** + * Copies the displayed document into the clipboard. + */ + void copyDocument(); + /** + * Sets the source of this widget. + */ + void setSource(const QString& name); + + +protected: // Protected attributes + /* + * Initializes the colors of this widget (backgrouznd, links, text) + */ + void initColors(); + /** + * Initializes the fonts of the HTML-widget + */ + void initFonts(); + /** + * Initializes the connections to SIGNALs + */ + void initConnections(); + /** + * Initializes the view of this widget (childs, popups etc.) + */ + void initView(); + /** + * Reimplementation. + */ + virtual void contentsDragEnterEvent(QDragEnterEvent* e); + /** + * Reimplementation. + */ + virtual void contentsDragMoveEvent (QDragMoveEvent* e); + /** + * Reimplementation. + */ + virtual void contentsDropEvent(QDropEvent* e); + /** + * Reimplementation. + */ + virtual void contentsMousePressEvent(QMouseEvent* e); + /** + * Reimplementation. + */ + virtual void contentsMouseMoveEvent(QMouseEvent* e); + /** + * Returns true if the links are enabled. + */ + virtual bool linksEnabled() const; + +protected slots: // Protected slots + /** + * No descriptions + */ + void slotSaveDocument(); + /** + * No descriptions + */ + void slotToggleBold(); + /** + * No descriptions + */ + void slotToggleItalic(); + /** + * No descriptions + */ + void slotToggleUnderline(); + /** + * + */ + void slotSetCurrentFont(const QString& font); + /** + * + */ + void slotSetCurrentFontSize( int ); + /** + * + */ + void slotSetCurrentColor( const QColor& color); + /** + * No descriptions + */ + void slotCurrentColorChanged( const QColor& ); + /** + * No descriptions + */ + void slotCurrentFontChanged( const QFont& ); + /** + * No descriptions + */ + void slotCurrentAlignementChanged( int ); + /** + * No descriptions + */ + void slotAlignRight(); + /** + * No descriptions + */ + void slotAlignCenter(); + /** + * No descriptions + */ + void slotAlignLeft(); + /** + * No descriptions + */ + void slotAlignJustify(); + /** + * No descriptions + */ + void slotSelectAll(); + +private: + virtual void emitLinkClicked( const QString& s); + virtual void emitHighlighted( const QString& s); + + class ToolTip : public QToolTip, public CPointers { + public: + ToolTip(QWidget* parent); + void maybeTip( const QPoint &pos); + }; + ToolTip* m_toolTip; + + bool m_readOnly; + bool m_selectedWord; + QString m_anchor; + + + QPopupMenu* m_popup; + QGuardedPtr m_anchorMenu; + + KAction* m_docDeleteAction; + KAction* m_docSaveAction; + + KToggleAction* m_boldAction; + KToggleAction* m_italicAction; + KToggleAction* m_underlineAction; + + KToggleAction* m_alignLeftAction; + KToggleAction* m_alignCenterAction; + KToggleAction* m_alignRightAction; + KToggleAction* m_alignJustifyAction; + + KFontSizeAction* m_fontSizeAction; + KFontAction* m_fontAction; + KColorButton* m_colorChooser; + QPoint m_hoverPos; + + ListCSwordModuleInfo* m_moduleList; + +signals: // Signals + void sigDeleteDocument(); + void sigSaveDocument(const QString); + /** + * First parameter is the module, the second the key. + */ + void referenceClicked(const QString& module, const QString& key); + /** + * First parameter is the module, the second the key. + */ + void referenceDropped(const QString& key); + void linkClicked(const QString&); + void insertReference(const QString& reference); +}; + + +#endif diff --git a/bibletime/frontend/cinputdialog.cpp b/bibletime/frontend/cinputdialog.cpp new file mode 100644 index 0000000..77ab827 --- /dev/null +++ b/bibletime/frontend/cinputdialog.cpp @@ -0,0 +1,103 @@ +/*************************************************************************** + cinputdialog.cpp - description + ------------------- + begin : Sun May 13 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//own includes +#include "cinputdialog.h" + +//Qt includes +#include +#include +#include +#include +#include + +//KDE includes +#include +#include + +CInputDialog::CInputDialog(const QString& caption, const QString& description, const QString& text, QWidget *parent, const char *name, const bool modal ) : KDialog(parent,name,modal) { + setPlainCaption(caption); + + QVBoxLayout* topLayout = new QVBoxLayout(this, 5,5); + + QLabel* l = new QLabel(description, this); + topLayout->addWidget(l); + + topLayout->addSpacing(10); + + m_editWidget = new QMultiLineEdit(this, "edit widget"); + m_editWidget->setWordWrap( QMultiLineEdit::WidgetWidth); + m_editWidget->setText(text); + if (!text.isEmpty()) + m_editWidget->selectAll(); + + topLayout->addWidget(m_editWidget); + + KSeparator* separator = new KSeparator(KSeparator::HLine, this); + topLayout->addWidget(separator); + + QHBoxLayout* buttonLayout = new QHBoxLayout(topLayout); + + buttonLayout->addStretch(2); + + QPushButton* cancel = new QPushButton(this); + cancel->setText(i18n("Cancel")); + connect(cancel, SIGNAL(clicked()), SLOT(reject())); + buttonLayout->addWidget(cancel,1); + + buttonLayout->addSpacing(15); + + QPushButton* clear = new QPushButton(this); + clear->setText(i18n("Clear")); + connect(clear, SIGNAL(clicked()),m_editWidget, SLOT(clear())); + buttonLayout->addWidget(clear,1); + + buttonLayout->addSpacing(15); + + QPushButton* ok = new QPushButton(this); + ok->setText(i18n("Ok")); + connect(ok, SIGNAL(clicked()), SLOT(accept())); + buttonLayout->addWidget(ok,1); + + m_editWidget->setFocus(); +} + +CInputDialog::~CInputDialog(){ +} + +/** Returns the text entered at the moment. */ +const QString CInputDialog::text() { + ASSERT(m_editWidget); + return m_editWidget->text(); +} + +/** A static function to get some using CInputDialog. */ +const QString CInputDialog::getText( const QString& caption, const QString& description, const QString& text, bool* ok, QWidget* parent, bool modal){ + qDebug("CInputDialog::getText( const QString& caption, const QString& description, const QString& text, bool* ok, QWidget* parent, bool modal)"); + ASSERT(ok); + + CInputDialog* dlg = new CInputDialog(caption, description, text, parent, "", modal); + QString ret = QString::null; + + const bool isOk = (dlg->exec() == CInputDialog::Accepted); + if (isOk) + ret = dlg->text(); + if (ok) + *ok = isOk; + delete dlg; + return ret; +} diff --git a/bibletime/frontend/cinputdialog.h b/bibletime/frontend/cinputdialog.h new file mode 100644 index 0000000..7b3b4b0 --- /dev/null +++ b/bibletime/frontend/cinputdialog.h @@ -0,0 +1,49 @@ +/*************************************************************************** + cinputdialog.h - description + ------------------- + begin : Sun May 13 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CINPUTDIALOG_H +#define CINPUTDIALOG_H + +//KDE includes +#include + +class QMultiLineEdit; +class QWidget; + +/** This is a small input dialog with + * a multiline edit for the text input. + * @author The BibleTime team + */ +class CInputDialog : public KDialog { + Q_OBJECT +public: + CInputDialog(const QString& caption, const QString& description, const QString& text, QWidget *parent=0, const char *name=0, const bool modal = true); + /** + * A static function to get some using CInputDialog. + */ + static const QString getText( const QString& caption, const QString& description, const QString& text = QString::null, bool* ok = 0, QWidget* parent = 0, bool modal = true); + /** + * Returns the text entered at the moment. + */ + const QString text(); + ~CInputDialog(); + +private: + QMultiLineEdit* m_editWidget; +}; + +#endif diff --git a/bibletime/frontend/cmdiarea.cpp b/bibletime/frontend/cmdiarea.cpp new file mode 100644 index 0000000..960a082 --- /dev/null +++ b/bibletime/frontend/cmdiarea.cpp @@ -0,0 +1,284 @@ +/*************************************************************************** + cmdiarea.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cmdiarea.h" +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordversekey.h" +#include "presenters/cbiblepresenter.h" +#include "presenters/clexiconpresenter.h" +#include "presenters/ccommentarypresenter.h" +#include "keychooser/ckeychooser.h" +#include "resource.h" +#include "whatsthisdef.h" +#include "config.h" + +//KDE includes +#include +#include +#include + +//QT includes +#include +#include +#include +#include + +CMDIArea::CMDIArea(QWidget *parent, const char *name ) + : QWorkspace(parent, name) { + m_childEvent = false; + guiOption = Nothing; + m_appCaption = QString::null; + + initView(); + initConnections(); + readSettings(); +} + +CMDIArea::~CMDIArea(){ +} + +/** Initializes the view of the MDI area */ +void CMDIArea::initView(){ + QWhatsThis::add(this, WT_MDI_AREA_WIDGET ); +} + +/** Initilizes the connectiosn to SIGNALS */ +void CMDIArea::initConnections(){ + connect(this, SIGNAL(windowActivated(QWidget*)), + this, SLOT(slotClientActivated(QWidget*))); +} + +/** Called whan a client window was activated */ +void CMDIArea::slotClientActivated(QWidget* client){ +// qWarning("slotClientActivated(QWidget* client)"); + if (!client) + return; + CSwordPresenter* sp = dynamic_cast(client); + if (sp && !sp->initialized()) + return; + + m_appCaption = client->caption().stripWhiteSpace(); +// qWarning("caption is %s", m_appCaption.latin1()); + emit sigSetToplevelCaption( m_appCaption ); + + CBiblePresenter* p = dynamic_cast(client); + if (p && p->keyChooser()) + syncCommentaries( p->keyChooser()->key() ); +} + +/** Reimplementation. Used to make use of the fixedGUIOption part. */ +void CMDIArea::childEvent ( QChildEvent * e ){ + if (m_childEvent) + return; + QWorkspace::childEvent(e); + m_childEvent = true; + + if (!windowList().count()) { + m_appCaption = QString::null; + emit sigSetToplevelCaption( KApplication::kApplication()->makeStdCaption(m_appCaption) ); + emit sigLastPresenterClosed(); + } + if (!e) { + m_childEvent = false; + return; + } + + if (e->inserted() || e->removed()) { + switch (guiOption) { + case autoTile: + QTimer::singleShot( 0, this, SLOT(tile()) ); +// tile(); + break; + case autoCascade: + QTimer::singleShot( 0, this, SLOT(cascade()) ); +// cascade(); + break; + default: + break; + } + } + + m_childEvent = false; +} + +/** Reimplementation */ +void CMDIArea::resizeEvent(QResizeEvent* e){ + QWorkspace::resizeEvent(e); + switch (guiOption) { + case autoTile: + QTimer::singleShot( 0, this, SLOT(tile()) ); +// tile(); + break; + case autoCascade: + QTimer::singleShot( 0, this, SLOT(cascade()) ); +// cascade(); + break; + default: + break; + } +} + +/** */ +void CMDIArea::saveSettings(){ +} + +/** */ +void CMDIArea::readSettings(){ +} + +/** Deletes all the presenters in the MDI area. */ +void CMDIArea::deleteAll(){ + QWidgetList windows = windowList(); + + setUpdatesEnabled(false); + for ( QWidget* w = windows.first(); w; w = windows.next() ) { + w->setUpdatesEnabled(false); + m_deleteWindows.clear(); + delete w; + } + setUpdatesEnabled(true); +} + +/** Enable / disable autoCascading */ +void CMDIArea::setGUIOption( mdiOption new_GUIOption){ + guiOption = new_GUIOption; + //now do the initial action + switch (guiOption) { + case autoTile: + tile(); + break; + case autoCascade: + cascade(); + break; + case Nothing: + break; + } +} + +/** */ +void CMDIArea::tile(){ + if (!isUpdatesEnabled() || !windowList().count() ) + return; + if (windowList().count() == 1 /*&& !windowList().at(0)->isHidden() && !windowList().at(0)->isMinimized()*/) { + m_appCaption = windowList().at(0)->caption(); + windowList().at(0)->showMaximized(); + } + else + QWorkspace::tile(); +} + +/** */ +void CMDIArea::cascade(){ + if (!isUpdatesEnabled() || !windowList().count() ) + return; + if (windowList().count() == 1 /*&& !windowList().at(0)->isHidden() && !windowList().at(0)->isMinimized()*/) { + m_appCaption = windowList().at(0)->caption(); + windowList().at(0)->showMaximized(); + } + else + QWorkspace::cascade(); +} + +/** Sync the commentaries to the given key. */ +void CMDIArea::syncCommentaries(CSwordKey* syncKey){ + QWidgetList windows = windowList(); + if (!windows.count()) + return; + + for (windows.first(); windows.current(); windows.next()) { + CCommentaryPresenter* p = dynamic_cast(windows.current()); + if (p) + p->synchronize(syncKey); + } +} + +/** Look up the text in the module. If the module has already a display window of it opne use it, otherwise create a new one. */ +void CMDIArea::lookupInLexicon(const QString& text, const QString& module){ +// qWarning("CMDIArea::lookupInLexicon(const QString& text, const QString& module)"); + CSwordModuleInfo* m = backend()->findModuleByName(module); + ASSERT(m); + if (!m) + return; + CLexiconPresenter* p = 0; + + QWidgetList windows = windowList(); + if (!windows.count()) + return; + bool found = false; + for (windows.first(); windows.current(); windows.next()) { + p = dynamic_cast(windows.current()); + if (p && (m == p->getModuleList().first())) { + found = true; + break; + } + } + if (!found) + emit createNewSwordPresenter(m, text); + else + p->lookup(module, text); +} + +/** Look up the text in the module. If the module has already a display window of it opne use it, otherwise create a new one. */ +void CMDIArea::lookupInModule(const QString& module, const QString& key){ +// qWarning("CMDIArea::lookupInLexicon(const QString& text, const QString& module)"); + CSwordModuleInfo* m = backend()->findModuleByName(module); + if (!m) + return; + CSwordPresenter* p = 0; + + bool found = false; + QWidgetList windows = windowList(); + for (windows.first(); windows.current(); windows.next()) { + p = dynamic_cast(windows.current()); + if (p && (p->getModuleList().containsRef(m))) { + found = true; + break; + } + } + if (!found) + emit createNewSwordPresenter(m, key); + else + p->lookup(module, key); +} + +/** Closes and deletes the presenter given as argument. */ +void CMDIArea::closePresenter(CSwordPresenter* p){ + if (!p) + return; + + m_deleteWindows.append(p); + QTimer::singleShot(5000, this, SLOT(deleteCurrentPresenter()) ); +} + +/** Delete the presenter. */ +void CMDIArea::deleteCurrentPresenter(){ + setUpdatesEnabled(false); + CSwordPresenter* p = m_deleteWindows.first(); +// if ( p ) { + delete p; + m_deleteWindows.removeRef(p); +// } + setUpdatesEnabled(true); + slotClientActivated(activeWindow()); + if (activeWindow()) + m_appCaption = activeWindow()->caption(); +} + +/** This works around a problem/limitation in QWorkspace. QWorkspace sets every time the application caption on its on way. This confuses BibleTime - wrong captions are generated. This function returns the right caption (using the MDI child). */ +const QString CMDIArea::currentApplicationCaption() const { + return m_appCaption; +} diff --git a/bibletime/frontend/cmdiarea.h b/bibletime/frontend/cmdiarea.h new file mode 100644 index 0000000..a1816f5 --- /dev/null +++ b/bibletime/frontend/cmdiarea.h @@ -0,0 +1,143 @@ +/*************************************************************************** + cmdiarea.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CMDIAREA_H +#define CMDIAREA_H + +#include "cpointers.h" + +#define private protected +#include +#undef private + +#include +#include +#include + +class KPopupMenu; +class CSwordModuleInfo; +class CSwordPresenter; +class CSwordKey; + +/** The MDI widget we use in BibleTime. + * Enhances QWorkspace. + * @author The BibleTime Team + */ +class CMDIArea : public QWorkspace, public CPointers { + Q_OBJECT + +public: + /** + * The options you can set for this widget. + */ + enum mdiOption { + autoTile, + autoCascade, + Nothing + }; + CMDIArea(QWidget *parent=0, const char *name = 0 ); + ~CMDIArea(); + /** + */ + void readSettings(); + /** + */ + void saveSettings(); + /** + * Enable / disable autoCascading + */ + void setGUIOption( mdiOption ); + /** This works around a problem/limitation in QWorkspace. QWorkspace sets every time the + * application caption on its on way. This confuses BibleTime - wrong captions are generated. + * This function returns the right caption (using the MDI child). + */ + const QString currentApplicationCaption() const; + +public slots: + /** + * Called whan a client window was activated + */ + void slotClientActivated(QWidget* client); + /** + * Deletes all the presenters in the MDI area. + */ + void deleteAll(); + /** + * + */ + void cascade(); + /** + * + */ + void tile(); + /** + * Sync the commentaries to the given key. + */ + void syncCommentaries(CSwordKey* syncKey); + /** + * Look up the text in the module. If the module has already a display window + * of it opne use it, otherwise create a new one. + */ + void lookupInLexicon(const QString& text, const QString& module); + void lookupInModule(const QString& module, const QString& key); + /** + * Closes and deletes the presenter given as argument. + */ + void closePresenter(CSwordPresenter* p); + +protected: // Protected methods + /** + * Used to make use of the fixedGUIOption part. + */ + virtual void childEvent (QChildEvent * e); + /** + * Reimplementation + */ + virtual void resizeEvent(QResizeEvent* e); + /** + * Initializes the connectiosn to SIGNALS + */ + void initConnections(); + /** + * Initializes the view of the MDI area + */ + void initView(); + +signals: // Signals + /** + * Emits a signal to set the acption of the toplevel widget. + */ + void sigSetToplevelCaption(const QString&); + /** + * Is emitted when the last presenter was closed. + */ + void sigLastPresenterClosed(); + void createNewSwordPresenter(CSwordModuleInfo*, const QString&); + +private: + mdiOption guiOption; + bool m_childEvent; + QList m_deleteWindows; + QString m_appCaption; + +private slots: // Private slots + /** + * Delete the presenter. + */ + void deleteCurrentPresenter(); +}; +#endif diff --git a/bibletime/frontend/coptionsdialog.cpp b/bibletime/frontend/coptionsdialog.cpp new file mode 100644 index 0000000..c0d8491 --- /dev/null +++ b/bibletime/frontend/coptionsdialog.cpp @@ -0,0 +1,806 @@ +/*************************************************************************** + coptionsdialog.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "coptionsdialog.h" +#include "cprofile.h" +#include "ctoolclass.h" +#include "presenters/cswordpresenter.h" +#include "presenters/cbiblepresenter.h" +#include "presenters/ccommentarypresenter.h" +#include "presenters/clexiconpresenter.h" +#include "presenters/cbookpresenter.h" +#include "resource.h" +#include "whatsthisdef.h" +#include "backend/cswordbackend.h" +#include "backend/cswordmoduleinfo.h" +#include "cbtconfig.h" + +#include +#include + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//Sword includes +#include + +COptionsDialog::COptionsDialog(QWidget *parent, const char *name, KAccel* accel ) + : KDialogBase(IconList, i18n("Optionsdialog"), Ok | Cancel | Apply, Ok, parent, name, true, true, QString::null, QString::null, QString::null) { + + m_settings.keys.application.accel = accel; + setIconListAllVisible(true); + + initStartup(); + initFonts(); + initColors(); + initProfiles(); + initSword(); + initAccelerators(); +} + +/** */ +void COptionsDialog::newDisplayWindowFontSelected(const QFont &newFont){ + m_settings.fonts.fontMap.replace(m_settings.fonts.usage->currentText(), newFont); +} + +/** Called when the combobox contents is changed */ +void COptionsDialog::newDisplayWindowFontAreaSelected(const QString& usage){ + m_settings.fonts.fontChooser->setFont( m_settings.fonts.fontMap[usage] ); +} + +/** Called if the OK button was clicked */ +void COptionsDialog::slotOk(){ + saveAccelerators(); + saveColors(); + saveFonts(); + saveSword(); + saveStartup(); + saveProfiles(); + + KDialogBase::slotOk(); + + emit signalSettingsChanged( ); +} + +/*called if the apply button was clicked*/ +void COptionsDialog::slotApply(){ + saveAccelerators(); + saveColors(); + saveFonts(); + saveSword(); + saveStartup(); + saveProfiles(); + + KDialogBase::slotApply(); + + emit signalSettingsChanged( ); +} + +/** Adds a new view profile to the list. */ +void COptionsDialog::addNewProfile(){ + bool ok = false; + QString name = QInputDialog::getText(i18n("Create new profile"), i18n("Please enter the name of the new profile"), QString::null, &ok); + if (ok && !name.isEmpty()) { + m_settings.profiles.mgr.create(name); + m_settings.profiles.profiles->insertItem(name); + if (m_settings.profiles.profiles->count() == 1) + m_settings.profiles.profiles->setEnabled(true); + } +} + +/** No descriptions */ +void COptionsDialog::deleteProfile(){ + const QString profile = m_settings.profiles.profiles->currentText(); + m_settings.profiles.mgr.remove(profile); + m_settings.profiles.profiles->removeItem( m_settings.profiles.profiles->currentItem() ); +} + +/** Renames the currently selected profile. */ +void COptionsDialog::renameProfile(){ + bool ok = false; + const QString currentProfile = m_settings.profiles.profiles->currentText(); + CProfile* profile = m_settings.profiles.mgr.profile(currentProfile); + if (!profile) + return; + + const QString newName = QInputDialog::getText(i18n("Rename profile"), i18n("Please enter the new name of the profile"),profile->name(), &ok); + if (ok && !newName.isEmpty()) { + profile->setName(newName); + m_settings.profiles.profiles->changeItem(newName, m_settings.profiles.profiles->currentItem()); + } +} + +/** Opens the page which contaisn the given part ID. */ +const bool COptionsDialog::showPart( COptionsDialog::Parts ID ){ + bool ret = false; + switch (ID) { + case COptionsDialog::ViewProfiles: + if(showPage(pageIndex( + m_settings.profiles.profiles->parentWidget()) )) + ret = true; + break; + default: + break; + } + return ret; +} + +/** Initializes the startup section of the OD. */ +void COptionsDialog::initStartup(){ + QFrame* page = addPage(i18n("Startup"), QString::null, OD_ICON_GENERAL); + QVBoxLayout* layout = new QVBoxLayout(page,5); + {//daily tips + m_settings.startup.showTips = new QCheckBox(page); + m_settings.startup.showTips->setText(i18n("Show tip of the day")); + QToolTip::add(m_settings.startup.showTips, TT_OD_GENERAL_DAILY_TIP); + QWhatsThis::add(m_settings.startup.showTips, WT_OD_GENERAL_DAILY_TIP); + + m_settings.startup.showTips->setChecked( CBTConfig::get(CBTConfig::tips) ); + } + layout->addWidget(m_settings.startup.showTips); + + { //startup logo + m_settings.startup.showLogo = new QCheckBox(page); + m_settings.startup.showLogo->setText(i18n("Show startuplogo")); + QWhatsThis::add(m_settings.startup.showLogo, WT_OD_GENERAL_SHOW_STARTUPLOGO); + QToolTip::add(m_settings.startup.showLogo, TT_OD_GENERAL_SHOW_STARTUPLOGO); + + m_settings.startup.showLogo->setChecked(CBTConfig::get(CBTConfig::logo)); + } + layout->addWidget(m_settings.startup.showLogo); + { //workspace + m_settings.startup.restoreWorkspace = new QCheckBox(page); + m_settings.startup.restoreWorkspace->setText(i18n("Restore windows in workspace area")); + QToolTip::add(m_settings.startup.restoreWorkspace, TT_OD_GENERAL_RESTORE_WORKSPACE); + QWhatsThis::add(m_settings.startup.restoreWorkspace, WT_OD_GENERAL_RESTORE_WORKSPACE); + + m_settings.startup.restoreWorkspace->setChecked(CBTConfig::get(CBTConfig::restoreWorkspace)); + } + layout->addWidget(m_settings.startup.restoreWorkspace); + + layout->addStretch(4); +} + +/** Init fonts section. */ +void COptionsDialog::initFonts(){ + QFrame* page = addPage(i18n("Fonts"), QString::null, OD_ICON_FONTS); + QVBoxLayout* layout = new QVBoxLayout(page,5); + + + layout->addWidget( CToolClass::explanationLabel(page, i18n("Choose fonts"), i18n("The fonts you can choose here are used in the display windows. Use the drop-down box below to choose the area of application. Then select a font for it. Make sure the charset \"iso10646-1\" is available for the selected Unicode font.!")) ); + layout->addSpacing(5); + + m_settings.fonts.usage = new QComboBox(page); + QToolTip::add(m_settings.fonts.usage, TT_OD_FONTS_TYPE_CHOOSER); + QWhatsThis::add(m_settings.fonts.usage, WT_OD_FONTS_TYPE_CHOOSER); + layout->addWidget(m_settings.fonts.usage); + + m_settings.fonts.fontMap.insert(i18n("Standard"), CBTConfig::get(CBTConfig::standard)); + m_settings.fonts.fontMap.insert(i18n("Unicode"), CBTConfig::get(CBTConfig::unicode)); + + for( QMap::Iterator it = m_settings.fonts.fontMap.begin(); it != m_settings.fonts.fontMap.end(); ++it ) + m_settings.fonts.usage->insertItem(it.key()); + + m_settings.fonts.fontChooser = new KFontChooser(page, "fonts", false, QStringList(), true, 5); + m_settings.fonts.fontChooser->setSampleText(i18n("The quick brown fox jumps over the lazy dog")); + layout->addWidget(m_settings.fonts.fontChooser); + + connect(m_settings.fonts.fontChooser, SIGNAL(fontSelected(const QFont&)), SLOT(newDisplayWindowFontSelected(const QFont&))); + connect(m_settings.fonts.usage, SIGNAL(activated(const QString&)), SLOT(newDisplayWindowFontAreaSelected(const QString&))); + QWhatsThis::add(m_settings.fonts.fontChooser, WT_OD_FONTS_CHOOSER); + + m_settings.fonts.fontChooser->setFont( m_settings.fonts.fontMap[m_settings.fonts.usage->currentText()] ); + m_settings.fonts.fontChooser->setMinimumSize(m_settings.fonts.fontChooser->sizeHint()); +} + +/** Init color section. */ +void COptionsDialog::initColors(){ + QFrame* page = addPage(i18n("Colors"), QString::null, OD_ICON_COLORS); +// QVBoxLayout* layout = new QVBoxLayout(page); + QGridLayout* gridLayout = new QGridLayout(page,5,5,5,5); + gridLayout->setResizeMode(QLayout::Minimum); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(page, + i18n("Choose colors"), + i18n("Choose the colors to change the look of the display windows to your own preferences. Some options like \"Words of Jesus\" do only apply to texts which support this special feature.") + ), + 0,0,0,-1 + ); + + m_settings.colors.text = new KColorButton(CBTConfig::get(CBTConfig::textColor), page); + QLabel* label = new QLabel(m_settings.colors.text, i18n("Text"), page); + gridLayout->addWidget(label,1,0); + gridLayout->addWidget(m_settings.colors.text,1,1); + + m_settings.colors.background = new KColorButton(CBTConfig::get(CBTConfig::backgroundColor), page); + label = new QLabel(m_settings.colors.background, i18n("Background"), page); + gridLayout->addWidget(label,1,3); + gridLayout->addWidget(m_settings.colors.background,1,4); + + m_settings.colors.highlightedVerse = new KColorButton(CBTConfig::get(CBTConfig::highlightedVerseColor), page); + label = new QLabel(m_settings.colors.highlightedVerse, i18n("Highlighted verse"), page); + gridLayout->addWidget(label,2,0); + gridLayout->addWidget(m_settings.colors.highlightedVerse,2,1); + + m_settings.colors.swordrefs = new KColorButton(CBTConfig::get(CBTConfig::swordRefColor), page); + label = new QLabel(m_settings.colors.swordrefs,i18n("Hyperlinks"), page); + gridLayout->addWidget(label,2,3); + gridLayout->addWidget(m_settings.colors.swordrefs,2,4); + + m_settings.colors.footnotes = new KColorButton(CBTConfig::get(CBTConfig::footnotesColor), page); + label = new QLabel(m_settings.colors.footnotes,i18n("Footnotes"), page); + gridLayout->addWidget(label,3,0); + gridLayout->addWidget(m_settings.colors.footnotes,3,1); + + m_settings.colors.strongs = new KColorButton(CBTConfig::get(CBTConfig::strongsColor), page); + label = new QLabel(m_settings.colors.strongs, i18n("Strong's numbers"), page); + gridLayout->addWidget(label,3,3); + gridLayout->addWidget(m_settings.colors.strongs,3,4); + + m_settings.colors.morph = new KColorButton(CBTConfig::get(CBTConfig::morphsColor), page); + label = new QLabel(m_settings.colors.morph, i18n("Morphologic tags"), page); + gridLayout->addWidget(label,4,0); + gridLayout->addWidget(m_settings.colors.morph,4,1); + + m_settings.colors.jesuswords = new KColorButton(CBTConfig::get(CBTConfig::jesuswordsColor), page); + label = new QLabel(m_settings.colors.jesuswords, i18n("Words of Jesus"), page); + gridLayout->addWidget(label,4,3); + gridLayout->addWidget(m_settings.colors.jesuswords,4,4); + + gridLayout->setRowStretch(5, 5); + gridLayout->addColSpacing(3, 5); +} + +/** Init profiles section. */ +void COptionsDialog::initProfiles(){ + QFrame* page = addPage(i18n("Profiles"),QString::null, OD_ICON_PROFILES); + QGridLayout* gridLayout = new QGridLayout(page, 3,3,5,5); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(page, + i18n("Manage your profiles"), + i18n("Profiles define the appereance of the work area, \ +for example which windows are open and which texts should displayed in these windows. \ +Don't forget that new profiles only work after you've saved something in them.") + ), + 0,0,0,-1 + ); + + m_settings.profiles.profiles = new QListBox(page); + gridLayout->addMultiCellWidget(m_settings.profiles.profiles, 1,1,0,-1); + gridLayout->setRowStretch(1,10); + + m_settings.profiles.createProfile = new QPushButton(i18n("Create new profile"), page); + connect(m_settings.profiles.createProfile, SIGNAL(clicked()), SLOT(addNewProfile())); + gridLayout->addWidget(m_settings.profiles.createProfile,2,0); + + m_settings.profiles.deleteProfile = new QPushButton(i18n("Delete selected profile"), page); + connect(m_settings.profiles.deleteProfile, SIGNAL(clicked()), SLOT(deleteProfile())); + gridLayout->addWidget(m_settings.profiles.deleteProfile,2,1); + + m_settings.profiles.renameProfile = new QPushButton(i18n("Rename selected profile"), page); + connect(m_settings.profiles.renameProfile, SIGNAL(clicked()), SLOT(renameProfile())); + gridLayout->addWidget(m_settings.profiles.renameProfile,2,2); + + //fill the profile list box + QList profiles = m_settings.profiles.mgr.profiles(); + if (profiles.count()) { + for (CProfile* p = profiles.first(); p; p = profiles.next()) { + m_settings.profiles.profiles->insertItem(p->name()); + } + } + else { + m_settings.profiles.profiles->setEnabled(false); + } +} + +/** Init accel key section. */ +void COptionsDialog::initAccelerators(){ + QVBox* page = addVBoxPage(i18n("Accelerators"),QString::null, OD_ICON_KEY_BINDINGS); + + KTabCtl* tabCtl = new KTabCtl(page); + QFrame* currentTab = new QVBox(tabCtl); + currentTab->setMargin(3); + tabCtl->addTab(currentTab, i18n("Application wide")); + + m_settings.keys.application.dict = m_settings.keys.application.accel->keyDict(); + m_settings.keys.application.keyChooser = new KKeyChooser( &m_settings.keys.application.dict, currentTab, false ); + QToolTip::add(m_settings.keys.application.keyChooser, TT_OD_KEYS_CHOOSER); + QWhatsThis::add(m_settings.keys.application.keyChooser, WT_OD_KEYS_CHOOSER); + +// ----- new tab: All display windows ------ // +// currentTab = new QVBox(tabCtl); +// currentTab->setMargin(3); +// tabCtl->addTab(currentTab, i18n("All display windows")); +// +// m_settings.keys.general.accel = new KAccel(this); //delete in destructor +// CSwordPresenter::insertKeyboardActions( m_settings.keys.general.accel ); +// m_settings.keys.general.accel->readSettings(); +// m_settings.keys.general.dict = m_settings.keys.general.accel->keyDict(); +// m_settings.keys.general.keyChooser = new KKeyChooser( &m_settings.keys.general.dict, currentTab, false ); +// QToolTip::add(m_settings.keys.general.keyChooser, TT_OD_DISPLAY_WINDOW_KEYS_GENERAL); +// QWhatsThis::add(m_settings.keys.general.keyChooser, WT_OD_DISPLAY_WINDOW_KEYS_GENERAL); + +// ----- new tab: Bible windows ------ // + currentTab = new QVBox(tabCtl); + currentTab->setMargin(3); + tabCtl->addTab(currentTab, i18n("Bible windows")); + + m_settings.keys.bible.accel = new KAccel(this); //delete in destructor + CBiblePresenter::insertKeyboardActions( m_settings.keys.bible.accel ); + m_settings.keys.bible.accel->readSettings(); + m_settings.keys.bible.dict = m_settings.keys.bible.accel->keyDict(); + m_settings.keys.bible.keyChooser = new KKeyChooser( &m_settings.keys.bible.dict, currentTab, false ); + QToolTip::add(m_settings.keys.bible.keyChooser, TT_OD_DISPLAY_WINDOW_KEYS_BIBLE); + QWhatsThis::add(m_settings.keys.bible.keyChooser, WT_OD_DISPLAY_WINDOW_KEYS_BIBLE); + +// ----- new tab: Commentary windows ------ // + currentTab = new QVBox(tabCtl); + currentTab->setMargin(3); + tabCtl->addTab(currentTab, i18n("Commentary windows")); + + m_settings.keys.commentary.accel = new KAccel(this); //delete in destructor + CCommentaryPresenter::insertKeyboardActions( m_settings.keys.commentary.accel ); + m_settings.keys.commentary.accel->readSettings(); + m_settings.keys.commentary.dict = m_settings.keys.commentary.accel->keyDict(); + m_settings.keys.commentary.keyChooser = new KKeyChooser( &m_settings.keys.commentary.dict, currentTab, false ); + QToolTip::add(m_settings.keys.commentary.keyChooser, TT_OD_DISPLAY_WINDOW_KEYS_COMMENTARY); + QWhatsThis::add(m_settings.keys.commentary.keyChooser, WT_OD_DISPLAY_WINDOW_KEYS_COMMENTARY); + +// ----- new tab: Lexicon windows ------ // + currentTab = new QVBox(tabCtl); + currentTab->setMargin(3); + tabCtl->addTab(currentTab, i18n("Lexicon windows")); + + m_settings.keys.lexicon.accel = new KAccel(this); //delete in destructor + CLexiconPresenter::insertKeyboardActions( m_settings.keys.lexicon.accel ); + m_settings.keys.lexicon.accel->readSettings(); + m_settings.keys.lexicon.dict = m_settings.keys.lexicon.accel->keyDict(); + m_settings.keys.lexicon.keyChooser = new KKeyChooser( &m_settings.keys.lexicon.dict, currentTab, false ); + QToolTip::add(m_settings.keys.lexicon.keyChooser, TT_OD_DISPLAY_WINDOW_KEYS_LEXICON); + QWhatsThis::add(m_settings.keys.lexicon.keyChooser, WT_OD_DISPLAY_WINDOW_KEYS_LEXICON); + + +// ----- new tab: Lexicon windows ------ // + currentTab = new QVBox(tabCtl); + currentTab->setMargin(3); + tabCtl->addTab(currentTab, i18n("Book windows")); + + m_settings.keys.book.accel = new KAccel(this); //delete in destructor + CBookPresenter::insertKeyboardActions( m_settings.keys.book.accel ); + m_settings.keys.book.accel->readSettings(); + m_settings.keys.book.dict = m_settings.keys.book.accel->keyDict(); + m_settings.keys.book.keyChooser = new KKeyChooser( &m_settings.keys.book.dict, currentTab, false ); +// QToolTip::add(m_settings.keys.book.keyChooser, TT_OD_DISPLAY_WINDOW_KEYS_LEXICON); +// QWhatsThis::add(m_settings.keys.book.keyChooser, WT_OD_DISPLAY_WINDOW_KEYS_LEXICON); + +} + +/** Init Sword section. */ +void COptionsDialog::initSword(){ + QVBox* page = addVBoxPage(i18n("Sword"),QString::null, OD_ICON_SWORD); + KTabCtl* tabCtl = new KTabCtl(page); + QFrame* currentTab = new QFrame(tabCtl); + tabCtl->addTab(currentTab, i18n("General")); + + QGridLayout* gridLayout = new QGridLayout(currentTab,7,2,5,5); + gridLayout->setResizeMode(QLayout::Minimum); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(currentTab, i18n("Use key cache for lexicons"), + i18n("BibleTime can create a key cache for lexicons, which speeds up opening large lexicon modules a lot. \ +However these files consume some disk space (usually not much), and reside in \ +$KDEHOME/share/apps/bibletime/cache.")), + 0,0,0,-1 + ); + + m_settings.sword.lexiconCache = new QCheckBox(currentTab); + m_settings.sword.lexiconCache->setText(i18n("Use key cache for lexicons")); + QToolTip::add(m_settings.sword.lexiconCache, TT_OD_SWORD_USE_LEXICON_CACHE); + QWhatsThis::add(m_settings.sword.lexiconCache, WT_OD_SWORD_USE_LEXICON_CACHE); + + m_settings.sword.lexiconCache->setChecked( CBTConfig::get(CBTConfig::lexiconCache) ); + gridLayout->addMultiCellWidget(m_settings.sword.lexiconCache,1,1,0,-1); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(currentTab, i18n("Scrolling behaviour"), + i18n("The down arrow moves to the next verse by default. Uncheck this box \ +if you want it to move to the previous verse.")), + 2,2,0,-1 + ); + + m_settings.sword.useDownArrow = new QCheckBox(currentTab); + m_settings.sword.useDownArrow->setText(i18n("Use down arrow to scroll to next verse")); + m_settings.sword.useDownArrow->setChecked(CBTConfig::get(CBTConfig::scroll)); + QWhatsThis::add(m_settings.sword.useDownArrow, WT_OD_GENERAL_SCROLL_PREVIOUS); + QToolTip::add(m_settings.sword.useDownArrow, TT_OD_GENERAL_SCROLL_PREVIOUS); + gridLayout->addMultiCellWidget(m_settings.sword.useDownArrow,3,3,0,-1); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(currentTab, i18n("Specify a language for biblical booknames"), + i18n("Sword has a number of locales available which can be used to internationalize the \ +booknames of the bible. You can specify which locale to choose. If you want to \ +create a new locale, see http://www.crosswire.org/sword/develop for details.")), + 4,4,0,-1 + ); + + m_settings.sword.localeCombo = new QComboBox(currentTab); + QLabel* label = new QLabel(m_settings.sword.localeCombo, i18n("Language for booknames"), currentTab); + QToolTip::add(m_settings.sword.localeCombo, TT_OD_GENERAL_INTERNATIONAL_BOOKNAMES); + QWhatsThis::add(m_settings.sword.localeCombo, WT_OD_GENERAL_INTERNATIONAL_BOOKNAMES); + gridLayout->addWidget(label, 5,0); + gridLayout->addWidget(m_settings.sword.localeCombo, 5,1); + + gridLayout->setRowStretch(6,5); //eat up remaining space :) + + m_settings.sword.localeCombo->insertItem( i18n("English") ); + list locales = LocaleMgr::systemLocaleMgr.getAvailableLocales(); + for (list ::iterator it = locales.begin(); it != locales.end(); it++) { + m_settings.sword.localeCombo->insertItem( i18n(LocaleMgr::systemLocaleMgr.getLocale((*it).c_str())->getDescription()) ); + } + + int current_item = -1; + for(int test_item = 0; test_item < m_settings.sword.localeCombo->count(); test_item++) { + SWLocale* locale = LocaleMgr::systemLocaleMgr.getLocale(CBTConfig::get(CBTConfig::language).local8Bit()); + if (locale && m_settings.sword.localeCombo->text(test_item).contains(i18n(locale->getDescription())) ) + current_item = test_item; + } + if (current_item!=-1) + m_settings.sword.localeCombo->setCurrentItem(current_item); + + +// ---------- new tab: Default modules -------- // + currentTab = new QFrame(tabCtl); + tabCtl->addTab(currentTab, i18n("Default modules")); + gridLayout = new QGridLayout(currentTab,9,2, 5,5); //the last row is for stretching available space + gridLayout->setResizeMode(QLayout::Minimum); + + gridLayout->addMultiCellWidget( + CToolClass::explanationLabel(currentTab, i18n("Default modules"), i18n("Default modules are used, when no module is specified. This may happen with references into modules like Bibles or Lexicons.")), + 0,0,0,-1 /*fill the horizontal space*/ + ); + + m_settings.sword.standardBible = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardBible, i18n("Default Bible"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardBible, TT_OD_SWORD_STANDARD_BIBLE); + QWhatsThis::add(m_settings.sword.standardBible, WT_OD_SWORD_STANDARD_BIBLE); + gridLayout->addWidget(label,1,0); + gridLayout->addWidget(m_settings.sword.standardBible,1,1); + + m_settings.sword.standardCommentary = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardCommentary, i18n("Default Commentary"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardCommentary, TT_OD_SWORD_STANDARD_COMMENTARY); + QWhatsThis::add(m_settings.sword.standardCommentary, WT_OD_SWORD_STANDARD_COMMENTARY); + gridLayout->addWidget(label,2,0); + gridLayout->addWidget(m_settings.sword.standardCommentary,2,1); + + + m_settings.sword.standardLexicon = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardLexicon, i18n("Default Lexicon"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardLexicon, TT_OD_SWORD_STANDARD_LEXICON); + QWhatsThis::add(m_settings.sword.standardLexicon, WT_OD_SWORD_STANDARD_LEXICON); + gridLayout->addWidget(label,3,0); + gridLayout->addWidget(m_settings.sword.standardLexicon,3,1); + + m_settings.sword.standardHebrewStrong = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardHebrewStrong, i18n("Default Hebrew Strong's Lexicon"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardHebrewStrong, TT_OD_SWORD_STANDARD_HEBREW_STRONG); + QWhatsThis::add(m_settings.sword.standardHebrewStrong, WT_OD_SWORD_STANDARD_HEBREW_STRONG); + gridLayout->addWidget(label,4,0); + gridLayout->addWidget(m_settings.sword.standardHebrewStrong,4,1); + + m_settings.sword.standardGreekStrong = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardGreekStrong, i18n("Default Greek Strong's Lexicon"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardGreekStrong, TT_OD_SWORD_STANDARD_GREEK_STRONG); + QWhatsThis::add(m_settings.sword.standardGreekStrong, WT_OD_SWORD_STANDARD_GREEK_STRONG); + gridLayout->addWidget(label,5,0); + gridLayout->addWidget(m_settings.sword.standardGreekStrong,5,1); + + m_settings.sword.standardHebrewMorph = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardHebrewMorph, i18n("Default Hebrew Morphological Lexicon"), currentTab); + QToolTip::add(m_settings.sword.standardHebrewMorph, TT_OD_SWORD_STANDARD_HEBREW_MORPH); + QWhatsThis::add(m_settings.sword.standardHebrewMorph, WT_OD_SWORD_STANDARD_HEBREW_MORPH); + gridLayout->addWidget(label,6,0); + gridLayout->addWidget(m_settings.sword.standardHebrewMorph,6,1); + + m_settings.sword.standardGreekMorph = new QComboBox(currentTab); + label = new QLabel(m_settings.sword.standardGreekMorph, i18n("Default Greek Morphological Lexicon"), currentTab); + label->setAutoResize(true); + QToolTip::add(m_settings.sword.standardGreekMorph, TT_OD_SWORD_STANDARD_GREEK_MORPH); + QWhatsThis::add(m_settings.sword.standardGreekMorph, WT_OD_SWORD_STANDARD_GREEK_MORPH); + gridLayout->addWidget(label,7,0); + gridLayout->addWidget(m_settings.sword.standardGreekMorph,7,1); + + gridLayout->setRowStretch(8,5); + + //fill the comboboxes with the right modules + ListCSwordModuleInfo& modules = backend()->moduleList(); + QString modDescript; + for ( modules.first(); modules.current(); modules.next() ) { + modDescript = modules.current()->config(CSwordModuleInfo::Description); + switch (modules.current()->type()) { + case CSwordModuleInfo::Bible: + m_settings.sword.standardBible->insertItem(modDescript); + break; + case CSwordModuleInfo::Commentary: + m_settings.sword.standardCommentary->insertItem(modDescript); + break; + case CSwordModuleInfo::Lexicon: + { + m_settings.sword.standardLexicon->insertItem(modDescript); + if (modules.current()->has(CSwordModuleInfo::HebrewDef)) { + m_settings.sword.standardHebrewStrong->insertItem(modDescript); + } + if (modules.current()->has(CSwordModuleInfo::GreekDef)) { + m_settings.sword.standardGreekStrong->insertItem(modDescript); + } + if (modules.current()->has(CSwordModuleInfo::HebrewParse)) { + m_settings.sword.standardHebrewMorph->insertItem(modDescript); + } + if (modules.current()->has(CSwordModuleInfo::GreekParse)) { + m_settings.sword.standardGreekMorph->insertItem(modDescript); + } + break; + } + default://unknown type + break; + } + } + +//using two lists and one loop is better than six loops with almost the same code :) + QList comboList; + comboList.setAutoDelete(false);//don't delete the combos accidentally + comboList.append(m_settings.sword.standardBible); + comboList.append(m_settings.sword.standardCommentary); + comboList.append(m_settings.sword.standardLexicon); + comboList.append(m_settings.sword.standardHebrewStrong); + comboList.append(m_settings.sword.standardGreekStrong); + comboList.append(m_settings.sword.standardHebrewMorph); + comboList.append(m_settings.sword.standardGreekMorph); + + QStringList moduleList; + moduleList + << CBTConfig::get(CBTConfig::standardBible) + << CBTConfig::get(CBTConfig::standardCommentary) + << CBTConfig::get(CBTConfig::standardLexicon) + << CBTConfig::get(CBTConfig::standardHebrewStrongsLexicon) + << CBTConfig::get(CBTConfig::standardGreekStrongsLexicon) + << CBTConfig::get(CBTConfig::standardHebrewMorphLexicon) + << CBTConfig::get(CBTConfig::standardGreekMorphLexicon); + + QString module = QString::null; + int item = 0; + int count = 0; + for (QComboBox* combo = comboList.first(); combo; combo = comboList.next() ) { + module = moduleList[comboList.at()]; + count = combo->count(); + combo->setMaximumWidth(300); + for (item = 0; item < count; item++) { + if (combo->text(item) == module ) { + combo->setCurrentItem(item); + break; + } + } + } + + + +// ---------- new tab: filters -------- // + currentTab = new QFrame(tabCtl); + tabCtl->addTab(currentTab, i18n("Filter settings")); + QVBoxLayout* layout = new QVBoxLayout(currentTab,5); + + layout->addWidget( CToolClass::explanationLabel(currentTab, i18n("Filter settings"), i18n("Filters control the appereance of the text in the display windows. Here you can choose the default settings of the various filter settings. You can change the settings in each display window, too.")) ); + layout->addSpacing(5); + + m_settings.sword.lineBreaks = new QCheckBox(currentTab); + m_settings.sword.lineBreaks->setText(i18n("Show line break after each verse")); + m_settings.sword.lineBreaks->setChecked(CBTConfig::get(CBTConfig::lineBreaks)); + layout->addWidget(m_settings.sword.lineBreaks); + + m_settings.sword.verseNumbers = new QCheckBox(currentTab); + m_settings.sword.verseNumbers->setText(i18n("Show verse numbers")); + m_settings.sword.verseNumbers->setChecked(CBTConfig::get(CBTConfig::verseNumbers)); + layout->addWidget(m_settings.sword.verseNumbers); + + m_settings.sword.footnotes = new QCheckBox(currentTab); + m_settings.sword.footnotes->setText(i18n("Show footnotes")); + m_settings.sword.footnotes->setChecked(CBTConfig::get(CBTConfig::footnotes)); + layout->addWidget(m_settings.sword.footnotes); + + m_settings.sword.strongNumbers = new QCheckBox(currentTab); + m_settings.sword.strongNumbers->setText(i18n("Show Strong's Numbers")); + m_settings.sword.strongNumbers->setChecked(CBTConfig::get(CBTConfig::strongNumbers)); + layout->addWidget(m_settings.sword.strongNumbers); + + m_settings.sword.headings = new QCheckBox(currentTab); + m_settings.sword.headings->setText(i18n("Show headings")); + m_settings.sword.headings->setChecked(CBTConfig::get(CBTConfig::headings)); + layout->addWidget(m_settings.sword.headings); + + m_settings.sword.morphTags = new QCheckBox(currentTab); + m_settings.sword.morphTags->setText(i18n("Show morphologic tags")); + m_settings.sword.morphTags->setChecked(CBTConfig::get(CBTConfig::morphTags)); + layout->addWidget(m_settings.sword.morphTags); + + m_settings.sword.lemmas = new QCheckBox(currentTab); + m_settings.sword.lemmas->setText(i18n("Show lemmas")); + m_settings.sword.lemmas->setChecked(CBTConfig::get(CBTConfig::lemmas)); + layout->addWidget(m_settings.sword.lemmas); + + m_settings.sword.hebrewPoints = new QCheckBox(currentTab); + m_settings.sword.hebrewPoints->setText(i18n("Show Hebrew vowel points")); + m_settings.sword.hebrewPoints->setChecked(CBTConfig::get(CBTConfig::hebrewPoints)); + layout->addWidget(m_settings.sword.hebrewPoints); + + m_settings.sword.hebrewCantillation = new QCheckBox(currentTab); + m_settings.sword.hebrewCantillation->setText(i18n("Show Hebrew cantillation marks")); + m_settings.sword.hebrewCantillation->setChecked(CBTConfig::get(CBTConfig::hebrewCantillation)); + layout->addWidget(m_settings.sword.hebrewCantillation); + + m_settings.sword.greekAccents = new QCheckBox(currentTab); + m_settings.sword.greekAccents->setText(i18n("Show Greek accents")); + m_settings.sword.greekAccents->setChecked(CBTConfig::get(CBTConfig::greekAccents)); + layout->addWidget(m_settings.sword.greekAccents); + + m_settings.sword.textualVariants = new QCheckBox(currentTab); + m_settings.sword.textualVariants->setText(i18n("Use textual variants")); + m_settings.sword.textualVariants->setChecked(CBTConfig::get(CBTConfig::textualVariants)); + layout->addWidget(m_settings.sword.textualVariants); + + layout->addStretch(4); +} + +void COptionsDialog::saveAccelerators(){ + m_settings.keys.application.accel->setKeyDict( m_settings.keys.application.dict ); + m_settings.keys.application.accel->writeSettings(); + +// m_settings.keys.general.accel->setKeyDict( m_settings.keys.general.dict ); +// m_settings.keys.general.accel->writeSettings(); + + m_settings.keys.bible.accel->setKeyDict( m_settings.keys.bible.dict ); + m_settings.keys.bible.accel->writeSettings(); + + m_settings.keys.commentary.accel->setKeyDict( m_settings.keys.commentary.dict ); + m_settings.keys.commentary.accel->writeSettings(); + + m_settings.keys.lexicon.accel->setKeyDict( m_settings.keys.lexicon.dict ); + m_settings.keys.lexicon.accel->writeSettings(); + + m_settings.keys.book.accel->setKeyDict( m_settings.keys.book.dict ); + m_settings.keys.book.accel->writeSettings(); +} + +/** No descriptions */ +void COptionsDialog::saveColors(){ + CBTConfig::set(CBTConfig::textColor, m_settings.colors.text->color().name()); + CBTConfig::set(CBTConfig::backgroundColor, m_settings.colors.background->color().name()); + CBTConfig::set(CBTConfig::highlightedVerseColor, m_settings.colors.highlightedVerse->color().name()); + CBTConfig::set(CBTConfig::swordRefColor, m_settings.colors.swordrefs->color().name()); + CBTConfig::set(CBTConfig::footnotesColor, m_settings.colors.footnotes->color().name()); + CBTConfig::set(CBTConfig::strongsColor, m_settings.colors.strongs->color().name()); + CBTConfig::set(CBTConfig::morphsColor, m_settings.colors.morph->color().name()); + CBTConfig::set(CBTConfig::jesuswordsColor, m_settings.colors.jesuswords->color().name()); +} + +/** No descriptions */ +void COptionsDialog::saveFonts(){ + for(QMap::Iterator it = m_settings.fonts.fontMap.begin(); it != m_settings.fonts.fontMap.end(); ++it ){ + if (it.key() == i18n("Standard")) { + CBTConfig::set(CBTConfig::standard, it.data()); + } + else if (it.key() == i18n("Unicode")) { + QFont font = it.data(); + font.setCharSet(QFont::Unicode); //try to set the unicode charset + CBTConfig::set(CBTConfig::unicode, font); + } + } +} + +/** No descriptions */ +void COptionsDialog::saveProfiles(){ +} + +/** No descriptions */ +void COptionsDialog::saveStartup(){ + CBTConfig::set( CBTConfig::logo, m_settings.startup.showLogo->isChecked() ); + CBTConfig::set( CBTConfig::tips, m_settings.startup.showTips->isChecked() ); + CBTConfig::set( CBTConfig::restoreWorkspace, m_settings.startup.restoreWorkspace->isChecked() ); +} + +/** No descriptions */ +void COptionsDialog::saveSword(){ + bool old_lexiconCache = CBTConfig::get(CBTConfig::lexiconCache); + bool new_lexiconCache = m_settings.sword.lexiconCache->isChecked(); + + CBTConfig::set( CBTConfig::lexiconCache, new_lexiconCache ); + + if (old_lexiconCache && !new_lexiconCache){ //delete cache files + QString dirname = KGlobal::dirs()->saveLocation("data", "bibletime/cache/"); + QDir dir = QDir(dirname); + QStringList files = QStringList( dir.entryList() ); + for (QStringList::Iterator it = files.begin(); it != files.end(); ++it) + dir.remove((*it),false); + } + + CBTConfig::set(CBTConfig::standardBible, m_settings.sword.standardBible->currentText()); + CBTConfig::set(CBTConfig::standardCommentary, m_settings.sword.standardCommentary->currentText()); + CBTConfig::set(CBTConfig::standardLexicon, m_settings.sword.standardLexicon->currentText()); + CBTConfig::set(CBTConfig::standardHebrewStrongsLexicon, m_settings.sword.standardHebrewStrong->currentText()); + CBTConfig::set(CBTConfig::standardGreekStrongsLexicon, m_settings.sword.standardGreekStrong->currentText() ); + CBTConfig::set(CBTConfig::standardHebrewMorphLexicon, m_settings.sword.standardHebrewMorph->currentText()); + CBTConfig::set(CBTConfig::standardGreekMorphLexicon, m_settings.sword.standardGreekMorph->currentText() ); + + const QString currentText = m_settings.sword.localeCombo->currentText(); + list locales = LocaleMgr::systemLocaleMgr.getAvailableLocales(); + QString localeName = QString::null; + for (list ::iterator it = locales.begin(); it != locales.end(); it++) { + if ( i18n(LocaleMgr::systemLocaleMgr.getLocale((*it).c_str())->getDescription()) == currentText ) { + localeName = (*it).c_str(); //we found the abbrevation for the current language + break; + } + } + if (!localeName.isEmpty()) + CBTConfig::set(CBTConfig::language, localeName); + else + CBTConfig::set(CBTConfig::language, currentText); + + CBTConfig::set(CBTConfig::scroll, m_settings.sword.useDownArrow->isChecked()); + CBTConfig::set(CBTConfig::lineBreaks, m_settings.sword.lineBreaks->isChecked()); + CBTConfig::set(CBTConfig::verseNumbers, m_settings.sword.verseNumbers->isChecked()); + CBTConfig::set(CBTConfig::footnotes, m_settings.sword.footnotes->isChecked()); + CBTConfig::set(CBTConfig::strongNumbers, m_settings.sword.strongNumbers->isChecked()); + CBTConfig::set(CBTConfig::headings, m_settings.sword.headings->isChecked()); + CBTConfig::set(CBTConfig::morphTags, m_settings.sword.morphTags->isChecked()); + CBTConfig::set(CBTConfig::lemmas, m_settings.sword.lemmas->isChecked()); + CBTConfig::set(CBTConfig::hebrewPoints, m_settings.sword.hebrewPoints->isChecked()); + CBTConfig::set(CBTConfig::hebrewCantillation, m_settings.sword.hebrewCantillation->isChecked()); + CBTConfig::set(CBTConfig::greekAccents, m_settings.sword.greekAccents->isChecked()); + CBTConfig::set(CBTConfig::textualVariants, m_settings.sword.textualVariants->isChecked()); +} diff --git a/bibletime/frontend/coptionsdialog.h b/bibletime/frontend/coptionsdialog.h new file mode 100644 index 0000000..c63d80b --- /dev/null +++ b/bibletime/frontend/coptionsdialog.h @@ -0,0 +1,210 @@ +/*************************************************************************** + coptionsdialog.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef COPTIONSDIALOG_H +#define COPTIONSDIALOG_H + +#include "cprofilemgr.h" +#include "cpointers.h" + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include + +class QHBox; +class QCheckBox; +class QRadioButton; +class KListBox; +class KKeyChooser; +class KTabCtl; +class CBackEnd; + +/** + * The optionsdialog of BibleTime + * @author The BibleTime Team + */ +class COptionsDialog : public KDialogBase, public CPointers { + Q_OBJECT + +public: + COptionsDialog(QWidget *parent=0, const char *name=0, KAccel* key_accel=0); + + enum Parts { + Startup, + Font, + Color, + ViewProfiles, + Sword, + accelerators + }; + + /** Opens the page which contaisn the given part ID. */ + const bool showPart( COptionsDialog::Parts ID ); + +private: + struct settings { + struct StartupSettings { + QCheckBox* showTips; + QCheckBox* showLogo; + QCheckBox* restoreWorkspace; + } startup; + + struct SwordSettings { + QCheckBox* lexiconCache; + QComboBox* standardBible; + QComboBox* standardCommentary; + QComboBox* standardLexicon; + QComboBox* standardHebrewStrong; + QComboBox* standardGreekStrong; + QComboBox* standardHebrewMorph; + QComboBox* standardGreekMorph; + QComboBox* localeCombo; + QCheckBox* useDownArrow; + QCheckBox* lineBreaks; + QCheckBox* verseNumbers; + QCheckBox* footnotes; + QCheckBox* strongNumbers; + QCheckBox* headings; + QCheckBox* morphTags; + QCheckBox* lemmas; + QCheckBox* hebrewPoints; + QCheckBox* hebrewCantillation; + QCheckBox* greekAccents; + QCheckBox* textualVariants; + } sword; + + struct KeySettings { + struct WindowType { + KKeyChooser* keyChooser; + KKeyEntryMap dict; + KAccel* accel; + }; + WindowType application; + WindowType general; + WindowType bible; + WindowType commentary; + WindowType lexicon; + WindowType book; + } keys; + + struct ColorSettings { + KColorButton* text; + KColorButton* background; + KColorButton* highlightedVerse; + KColorButton* swordrefs; + KColorButton* footnotes; + KColorButton* strongs; + KColorButton* morph; + KColorButton* jesuswords; + } colors; + + struct FontSettings { + KFontChooser* fontChooser; + QComboBox* usage; + QMap fontMap; + } fonts; + + struct ProfileSettings { + QListBox* profiles; + QPushButton* createProfile; + QPushButton* deleteProfile; + QPushButton* renameProfile; + CProfileMgr mgr; + } profiles; + } m_settings; + +protected slots: // Protected slots + /** + * Adds a new view profile to the list. + */ + void addNewProfile(); + /** + * Called when a new font in the fonts page was selected. + */ + void newDisplayWindowFontSelected(const QFont &); + /** + * Called when the combobox contents is changed + */ + void newDisplayWindowFontAreaSelected(const QString&); + /** + * Called if the OK button was clicked + */ + void slotOk(); + /** + * Called if the Apply button was clicked + * commented out for the time being. ck + */ + void slotApply(); + /** + * Renames the currently selected profile. + */ + void renameProfile(); + /** + * Delete the selected profile. + */ + void deleteProfile(); + +protected: // Protected methods + /** + * Init Sword section. + */ + void initSword(); + /** + * Init accel key section. + */ + void initAccelerators(); + /** + * Init fonts section. + */ + void initFonts(); + /** + * Init profiles section. + */ + void initProfiles(); + /** + * Init color section. + */ + void initColors(); + /** + * Initializes the startup section of the OD. + */ + void initStartup(); + void saveAccelerators(); + void saveColors(); + void saveFonts(); + void saveProfiles(); + void saveStartup(); + void saveSword(); + +signals: // Signals + void signalSettingsChanged(); +}; + +#endif diff --git a/bibletime/frontend/cpointers.cpp b/bibletime/frontend/cpointers.cpp new file mode 100644 index 0000000..01dc2b3 --- /dev/null +++ b/bibletime/frontend/cpointers.cpp @@ -0,0 +1,52 @@ +/*************************************************************************** + cpointers.cpp - description + ------------------- + begin : Sun Feb 17 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cpointers.h" +#include "backend/cswordbackend.h" +#include "printing/cprinter.h" + +//the static pointers +static CSwordBackend* m_backend = 0; +static CPrinter* m_printer = 0; + +/** Returns a pointer to the backend ... */ +CSwordBackend* const CPointers::backend() { + return m_backend; +} + +/** Returns a pointer to the printer object. */ +CPrinter* const CPointers::printer() { + return m_printer; +} + +void CPointers::setPrinter(CPrinter* const printer) { + m_printer = printer; +} + +void CPointers::setBackend(CSwordBackend* backend) { + m_backend = backend; +} + +void CPointers::deletePrinter() { + delete m_printer; + m_printer = 0; +} + +void CPointers::deleteBackend() { + delete m_backend; + m_backend = 0; +} diff --git a/bibletime/frontend/cpointers.h b/bibletime/frontend/cpointers.h new file mode 100644 index 0000000..0fad9b8 --- /dev/null +++ b/bibletime/frontend/cpointers.h @@ -0,0 +1,48 @@ +/*************************************************************************** + cpointers.h - description + ------------------- + begin : Sun Feb 17 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPOINTERS_H +#define CPOINTERS_H + + +class CSwordBackend; +class CPrinter; + +/** Holds the pointers to important classes like modules, backend etc. + * @author The BibleTime team + */ +class CPointers { +protected: + friend class BibleTime; //BibleTime may initialize this object + friend int main(int argc, char* argv[]); + static void setBackend(CSwordBackend* const); + static void setPrinter(CPrinter* const); + static void deleteBackend(); + static void deletePrinter(); + +public: // Public methods + /** + * Returns a pointer to the printer object. + */ + static CPrinter* const printer(); + /** + * Returns a pointer to the backend ... + */ + static CSwordBackend* const backend(); +}; + +#endif diff --git a/bibletime/frontend/cprofile.cpp b/bibletime/frontend/cprofile.cpp new file mode 100644 index 0000000..176b7ea --- /dev/null +++ b/bibletime/frontend/cprofile.cpp @@ -0,0 +1,375 @@ +/*************************************************************************** + cprofile.cpp - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cprofile.h" + +//Qt includes +#include +#include +#include +#include + +//KDE includes +#include +#include + +#define CURRENT_SYNTAX_VERSION 1 + +CProfile::CProfile( const QString& file, const QString& name ): + m_name(name.isEmpty() ? i18n("unknown") : name), + m_filename(file), + m_fullscreen(false), + m_geometry(0,0,640,480) +{ + + m_profileWindows.setAutoDelete(true); + if (!m_filename.isEmpty() && name.isEmpty()) { + loadBasics(); + } + else if (m_filename.isEmpty() && !name.isEmpty()) { + m_filename = name; + m_filename.replace(QRegExp("\\s=#."),"_"); + KStandardDirs stdDirs; + m_filename = stdDirs.saveLocation("data", "bibletime/profiles/") + m_filename + ".xml"; + init(m_filename); + } + else + qWarning("CProfile: empty file name!"); +} + +CProfile::~CProfile(){ + m_profileWindows.clear(); //delete all CProfileWindows objects (autodelete is enabled) +} + +/** Loads the profile from the file given in the constructor. */ +QList CProfile::load(){ + QFile file(m_filename); + if (!file.exists()) + return QList(); + + QDomDocument doc; + if (file.open(IO_ReadOnly)) { + QTextStream t( &file ); + t.setEncoding(QTextStream::UnicodeUTF8); + doc.setContent(t.read()); + file.close(); + } + + QDomElement document = doc.documentElement(); + if(document.tagName() != "BibleTime") { + qWarning("CProfile::load: Missing BibleTime doc"); + return m_profileWindows; + } + if (document.hasAttribute("name")) { + m_name = document.attribute("name"); + } + + + //load settings of the main window + { + // see if there's a section with the name MAINWINDOW + QDomElement elem = document.firstChild().toElement(); + QDomElement mainWindow; + while (!elem.isNull()) { + if (elem.tagName() == "MAINWINDOW") { + mainWindow = elem; + break; //found the element + } + elem = elem.nextSibling().toElement(); + } + if (!mainWindow.isNull()) { //was found + setFullscreen( (bool)mainWindow.attribute("fullscreen").toInt()); + QDomElement object = mainWindow.namedItem("GEOMETRY").toElement(); + QRect rect; + if(!object.isNull()) { + if (object.hasAttribute("x")) { + rect.setX(object.attribute("x").toInt()); + } + if (object.hasAttribute("y")) { + rect.setY(object.attribute("y").toInt()); + } + if (object.hasAttribute("width")) { + rect.setWidth(object.attribute("width").toInt()); + } + if (object.hasAttribute("height")) { + rect.setHeight(object.attribute("height").toInt()); + } + } + setGeometry(rect); + } + } + + m_profileWindows.clear(); + QDomElement elem = document.firstChild().toElement(); + while (!elem.isNull()) { + CProfileWindow* p = 0; + if (elem.tagName() == "BIBLE") { + p = new CProfileWindow(CSwordModuleInfo::Bible); + } + else if (elem.tagName() == "COMMENTARY") { + p = new CProfileWindow(CSwordModuleInfo::Commentary); + } + else if (elem.tagName() == "LEXICON") { + p = new CProfileWindow(CSwordModuleInfo::Lexicon); + } + else if (elem.tagName() == "BOOK") { + p = new CProfileWindow(CSwordModuleInfo::GenericBook); + } + + if (p) { + m_profileWindows.append(p); + + if (elem.hasAttribute("windowSettings")) { + p->setWindowSettings( elem.attribute("windowSettings").toInt() ); + } + + QRect rect; + + QDomElement object = elem.namedItem("GEOMETRY").toElement(); + if(!object.isNull()) { + if (object.hasAttribute("x")) { + rect.setX(object.attribute("x").toInt()); + } + if (object.hasAttribute("y")) { + rect.setY(object.attribute("y").toInt()); + } + if (object.hasAttribute("width")) { + rect.setWidth(object.attribute("width").toInt()); + } + if (object.hasAttribute("height")) { + rect.setHeight(object.attribute("height").toInt()); + } + if (object.hasAttribute("isMaximized")) { + p->setMaximized( static_cast(object.attribute("isMaximized").toInt()) ); + } + } + p->setGeometry(rect); + + object = elem.namedItem("MODULES").toElement(); + if(!object.isNull()) { + if (object.hasAttribute("list")) { + const QString sep = object.hasAttribute("separator") ? object.attribute("separator") : "|"; + QStringList modules = QStringList::split(sep, object.attribute("list")); + p->setModules(modules); + } + } + + object = elem.namedItem("KEY").toElement(); + if(!object.isNull()) { + if (object.hasAttribute("name")) + p->setKey(object.attribute("name")); + } + + object = elem.namedItem("SCROLLBARS").toElement(); + if(!object.isNull()) { + int horizontal = 0, vertical = 0; + if (object.hasAttribute("horizontal")) + horizontal = object.attribute("horizontal").toInt(); + if (object.hasAttribute("vertical")) + vertical = object.attribute("vertical").toInt(); + + p->setScrollbarPositions(horizontal, vertical); + } + } + elem = elem.nextSibling().toElement(); + } + return m_profileWindows; +} + +/** Saves the profile to the file given in the constructor. */ +const bool CProfile::save(QList windows){ + /** Save the settings using a XML file + * Save the CProfileWindow objects using a XML file which name is in m_filename + */ + bool ret = false; + QDomDocument doc("DOC"); + doc.appendChild( doc.createProcessingInstruction( "xml", "version=\"1.0\" encoding=\"UTF-8\"" ) ); + + QDomElement content = doc.createElement("BibleTime"); + content.setAttribute("syntaxVersion", CURRENT_SYNTAX_VERSION); + content.setAttribute("name", m_name); + doc.appendChild(content); + + //save mainwindow settings + { + QDomElement mainWindow = doc.createElement("MAINWINDOW"); + mainWindow.setAttribute("fullscreen", fullscreen()); + + QDomElement geometry = doc.createElement("GEOMETRY"); + mainWindow.appendChild(geometry); + const QRect r = this->geometry(); + geometry.setAttribute("x",r.x()); + geometry.setAttribute("y",r.y()); + geometry.setAttribute("width",r.width()); + geometry.setAttribute("height",r.height()); + + content.appendChild(mainWindow); + } + + for (CProfileWindow* p = windows.first(); p; p = windows.next()) { + QDomElement window; + switch (p->type()) { + case CSwordModuleInfo::Bible: + window = doc.createElement("BIBLE"); + break; + case CSwordModuleInfo::Commentary: + window = doc.createElement("COMMENTARY"); + break; + case CSwordModuleInfo::Lexicon: + window = doc.createElement("LEXICON"); + break; + case CSwordModuleInfo::GenericBook: + window = doc.createElement("BOOK"); + break; + default: + break; + } + if (window.isNull()) + break; + window.setAttribute("windowSettings", p->windowSettings()); + + //save geomtery + const QRect r = p->geometry(); + QDomElement geometry = doc.createElement("GEOMETRY"); + geometry.setAttribute("x",r.x()); + geometry.setAttribute("y",r.y()); + geometry.setAttribute("width",r.width()); + geometry.setAttribute("height",r.height()); + geometry.setAttribute("isMaximized",static_cast(p->maximized())); + window.appendChild( geometry ); + + QDomElement modules = doc.createElement("MODULES"); + modules.setAttribute("separator", "|"); + modules.setAttribute("list", p->modules().join("|")); + window.appendChild( modules ); + + QDomElement key = doc.createElement("KEY"); + key.setAttribute("name", p->key()); + window.appendChild( key ); + + QDomElement scrollbars = doc.createElement("SCROLLBARS"); + scrollbars.setAttribute("horizontal", p->scrollbarPositions().horizontal); + scrollbars.setAttribute("vertical", p->scrollbarPositions().vertical); + window.appendChild( scrollbars ); + + content.appendChild( window ); + } + + QFile file(m_filename); + if ( file.open(IO_WriteOnly) ) { + ret = true; + QTextStream t( &file ); + t.setEncoding(QTextStream::UnicodeUTF8); + t << doc.toString(); + file.close(); + } + else + ret = false; + + return ret; +} + +/** Saves the profile to the file given in the constructor. */ +const bool CProfile::save(){ + return save(m_profileWindows); +} + +/** Returns the filename used for this profile. */ +const QString& CProfile::filename(){ + return m_filename; +} + +/** Returns the name of this profile. */ +const QString& CProfile::name(){ + return m_name; +} + +/** Initializes the XML for the first time (use to create a new profile) */ +void CProfile::init(const QString file){ + const QString oldFile = m_filename; + m_filename = file; + save(QList()); + m_filename = oldFile; +} + +/** Changes the name of this profile. */ +void CProfile::setName( const QString& newName ){ + m_name = newName; + saveBasics(); //save chanegd name +} + +/** Loads the basic settings requires for proper operation. */ +void CProfile::loadBasics(){ + QFile file(m_filename); + if (!file.exists()) + return; + + QDomDocument doc; + if (file.open(IO_ReadOnly)) { + QTextStream t( &file ); + t.setEncoding(QTextStream::UnicodeUTF8); + doc.setContent(t.read()); + file.close(); + } + QDomElement document = doc.documentElement(); + if (document.hasAttribute("name")) + m_name = document.attribute("name"); +} + +void CProfile::saveBasics(){ + QFile file(m_filename); + if (!file.exists()) + return; + + QDomDocument doc; + if (file.open(IO_ReadOnly)) { + QTextStream t(&file); + t.setEncoding(QTextStream::UnicodeUTF8); + doc.setContent(t.read()); + file.close(); + } + + QDomElement document = doc.documentElement(); + document.setAttribute("name", m_name); + + if (file.open(IO_WriteOnly)) { + QTextStream t( &file ); + t.setEncoding(QTextStream::UnicodeUTF8); + t << doc.toString(); + file.close(); + } +} + +/** Returns true if the main window was in fullscreen mode as the profile was saved. */ +const bool CProfile::fullscreen() const { + return m_fullscreen; +} + +/** Set the parameter to true if the main window coveres the full screen size. */ +void CProfile::setFullscreen( const bool fullscreen ){ + m_fullscreen = fullscreen; +} + +/** Returns the geometry of the main window */ +const QRect CProfile::geometry(){ + return m_geometry; +} + +/** Stes the geoemtry of the main window */ +void CProfile::setGeometry( const QRect rect ){ + m_geometry = rect; +} diff --git a/bibletime/frontend/cprofile.h b/bibletime/frontend/cprofile.h new file mode 100644 index 0000000..0187b09 --- /dev/null +++ b/bibletime/frontend/cprofile.h @@ -0,0 +1,95 @@ +/*************************************************************************** + cprofile.h - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPROFILE_H +#define CPROFILE_H + +#include "cprofilewindow.h" + +//Qt includes +#include + +/** Manages one profile file. Provides functions to save and restore settings of the available display windows. + * @author The BibleTime team + */ +class CProfile { +public: + CProfile(const QString& fileName, const QString& name = QString::null); + ~CProfile(); + + /** + * Saves the profile to the file given in the constructor. + * @param windows The list of windows available in the profile. + */ + const bool save( QList windows ); + /** + * Saves the profile to the file given in the constructor. + */ + const bool save(); + /** + * Loads the profile from the file given in the constructor. + * @return The list of profiled window which exist in the profile. + */ + QList load(); + /** + * Returns the name of this profile. + */ + const QString& name(); + /** + * Returns the filename used for this profile. + */ + const QString& filename(); + /** + * Initializes the XML for the first time (use to create a new profile) + */ + void init(const QString); + /** + * Chnages the name of this profile. + */ + void setName( const QString& ); + /** + * Set the parameter to true if the main window coveres the full screen size. + */ + void setFullscreen( const bool fullscreen ); + /** + * Returns true if the main window was in fullscreen mode as the profile was saved. + */ + const bool fullscreen() const; + /** + * Sets the geoemtry of the main window + */ + void setGeometry( const QRect rect ); + /** + * Returns the geometry of the main window + */ + const QRect geometry(); + +private: + /** + * Loads the basic settings requires for proper operation. + */ + void loadBasics(); + void saveBasics(); + + QList m_profileWindows; + QString m_name; + QString m_filename; + bool m_fullscreen; + QRect m_geometry; +}; + +#endif diff --git a/bibletime/frontend/cprofilemgr.cpp b/bibletime/frontend/cprofilemgr.cpp new file mode 100644 index 0000000..11ed004 --- /dev/null +++ b/bibletime/frontend/cprofilemgr.cpp @@ -0,0 +1,115 @@ +/*************************************************************************** + cprofilemgr.cpp - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cprofilemgr.h" + +//Qt includes +#include +#include +#include + +//KDE includes +#include + +CProfileMgr::CProfileMgr() : m_startupProfile(0) { + m_profiles.setAutoDelete(true); + + KStandardDirs stdDirs; + m_profilePath = stdDirs.saveLocation("data", "bibletime/profiles/"); + + QDir d( m_profilePath ); + QStringList files = d.entryList("*.xml"); + for ( QStringList::Iterator it = files.begin(); it != files.end(); ++it ) { + if ((*it) != "_startup_.xml") + m_profiles.append(new CProfile(m_profilePath + *it)); + else + m_startupProfile = new CProfile(m_profilePath + *it); + } +} + +CProfileMgr::~CProfileMgr(){ + m_profiles.clear();//autoDelete is enabled, so all profiles are deleted +} + +/** Returns a list of available profiles. */ +const QList& CProfileMgr::profiles(){ + return m_profiles; +} + +/** Creates a new profile with the name "name" (first parameter). @return The profile object */ +CProfile* CProfileMgr::create( const QString name ){ + CProfile* p = new CProfile(QString::null, name); + m_profiles.append(p); + + return p; +} + +/** Removes the profile from the list and from the directory containg the profile files. */ +const bool CProfileMgr::remove( CProfile* p ){ + bool ret = false; + QFile f( p->filename() ); + if (f.exists()) + f.remove(); + if(m_profiles.remove(p)); //auto delete is enabled + ret = true; + return ret; +} + +const bool CProfileMgr::remove( const QString& profile) { + bool ret = false; + for (CProfile* p = m_profiles.first(); p; p = m_profiles.next()) { + if (p->name() == profile) { + remove(p); + ret = true; + } + } + return ret; +} + +/** Returns the profile with the desired name. If there's no such profile 0 is returned. */ +CProfile* CProfileMgr::profile(const QString& name) { + for (m_profiles.first(); m_profiles.current(); m_profiles.next()) { + if (m_profiles.current()->name() == name) { + return m_profiles.current(); + } + } + return 0; +} + +/** Returns the startup profile if it exists, otherwise return 0. */ +CProfile* CProfileMgr::startupProfile(){ + if (!m_startupProfile) + m_startupProfile = new CProfile(QString::null, "_startup_"); + return m_startupProfile; +} + +/** Refreshes the profiles available on disk. Use this function to update the list of profiles after another instance of CProfileMgr created a new profile. */ +void CProfileMgr::refresh(){ + m_profiles.clear(); //delete all profiles + QDir d( m_profilePath ); + QStringList files = d.entryList("*.xml"); + for ( QStringList::Iterator it = files.begin(); it != files.end(); ++it ) { + CProfile p(m_profilePath + *it); + if (p.name() == "_startup_") { //new startup profile + if (!m_startupProfile) //don't put this in the if clause above,it doesn't work! + m_startupProfile = new CProfile(m_profilePath + *it); + } + else if (!profile(p.name())) { //don't have it already + m_profiles.append(new CProfile(m_profilePath + *it)); + } + } +} diff --git a/bibletime/frontend/cprofilemgr.h b/bibletime/frontend/cprofilemgr.h new file mode 100644 index 0000000..4cbbb0c --- /dev/null +++ b/bibletime/frontend/cprofilemgr.h @@ -0,0 +1,71 @@ +/*************************************************************************** + cprofilemgr.h - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPROFILEMGR_H +#define CPROFILEMGR_H + +#include "cprofile.h" + +//Qt includes +#include + +/** The manager for profiles. + * Provides functions to create, delete, save and load profiles. + * @author The BibleTime team + */ + +class CProfileMgr { +public: + CProfileMgr(); + ~CProfileMgr(); + + /** Creates a new profile with the name "name" (first parameter). + * @return The profile object + */ + CProfile* create( const QString name ); + /** + * @return a list of available profiles + */ + const QList& profiles(); + /** + * Removes the profile from the list and from the directory containg the profile files. + */ + const bool remove( CProfile* p ); + /** + * Removes the profile from the list and from the directory containg the profile files. + */ + const bool remove( const QString& ); + /** + * Returns the profile with the desired name. If there's no such profile 0 is returned. + */ + CProfile* profile(const QString&); + /** + * Returns the startup profile if it exists, otherwise return 0. + */ + CProfile* startupProfile(); + /** + * Refreshes the profiles available on disk. Use this function to update the list of profiles after another instance of CProfileMgr created a new profile. + */ + void refresh(); + +protected: + QList m_profiles; + QString m_profilePath; + CProfile* m_startupProfile; +}; + +#endif diff --git a/bibletime/frontend/cprofilewindow.cpp b/bibletime/frontend/cprofilewindow.cpp new file mode 100644 index 0000000..4f01cc5 --- /dev/null +++ b/bibletime/frontend/cprofilewindow.cpp @@ -0,0 +1,105 @@ +/*************************************************************************** + cprofilewindow.cpp - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cprofilewindow.h" + +CProfileWindow::CProfileWindow(CSwordModuleInfo::ModuleType type) + : m_type(type), m_windowGeometry(),m_moduleList(), m_key(QString::null), + m_maximized(false), m_windowSettings(0) { + +} + +CProfileWindow::~CProfileWindow(){ + +} + +/** Returns the size of the window including the x,y coordinates. */ +const QRect CProfileWindow::geometry() { + return m_windowGeometry; +} + +/** Sets the size of the window. */ +void CProfileWindow::setGeometry( const QRect rect ){ + m_windowGeometry = rect; +} + +/** Returns the type of the managed window (bible window, commentary window or lexicon window). */ +const CSwordModuleInfo::ModuleType CProfileWindow::type(){ + if (m_type != CSwordModuleInfo::Unknown) + return m_type; +} + +/** Sets the modules. */ +void CProfileWindow::setModules( QStringList modules ){ + m_moduleList = modules; //copy module pointers into our own list +} + +/** Returns a list of module names which are chosen in the managed window profile. */ +const QStringList CProfileWindow::modules(){ +// QStringList modules; +// for (CSwordModuleInfo* m = m_moduleList.first(); m; m = m_moduleList.next()) { +// modules.append(m->getName()); +// } +// return modules; + return m_moduleList; +} + +/** Returns the current key set in the modules. */ +const QString& CProfileWindow::key(){ + return m_key; +} + +/** Set the key used in the modules. */ +void CProfileWindow::setKey( const QString& key ){ + m_key = key; +} + +/** Sets the current position of the scrollbars. */ +void CProfileWindow::setScrollbarPositions(const int horizontal, const int vertical) { +// m_scrollbarPos = {x,y}; + m_scrollbarPos.horizontal = horizontal; + m_scrollbarPos.vertical = vertical; +} +/** Returns tghe position of the scrollbars */ +const CProfileWindow::ScrollbarPos CProfileWindow::scrollbarPositions(){ + return m_scrollbarPos; +} + +/** Sets the type of the used modules. */ +void CProfileWindow::setType(const CSwordModuleInfo::ModuleType type){ + m_type = type; +} + +/** Returns true if the window is maximized. */ +const bool CProfileWindow::maximized(){ + return m_maximized; +} + +/** Sets the windows maximized state to true or false. */ +void CProfileWindow::setMaximized( const bool maximized ){ + m_maximized = maximized; +} + +/** Returns an integer with the window specific settings */ +const int CProfileWindow::windowSettings(){ + return m_windowSettings; +} + +/** Sets the window specific settings. */ +void CProfileWindow::setWindowSettings( const int settings ){ + m_windowSettings = settings; +} diff --git a/bibletime/frontend/cprofilewindow.h b/bibletime/frontend/cprofilewindow.h new file mode 100644 index 0000000..dec8125 --- /dev/null +++ b/bibletime/frontend/cprofilewindow.h @@ -0,0 +1,110 @@ +/*************************************************************************** + cprofilewindow.h - description + ------------------- + begin : Sun Jul 29 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPROFILEWINDOW_H +#define CPROFILEWINDOW_H + +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordbackend.h" + +//Qt includes +#include +#include +#include +#include + +/** Contains the settings for one window saved in the profile. + * @author The BibleTime team + */ +class CProfileWindow { +public: + struct ScrollbarPos { + int horizontal; //the position of the horizontal scrollbar + int vertical; //the position of the vertical scrollbar + }; + + CProfileWindow(CSwordModuleInfo::ModuleType type = CSwordModuleInfo::Unknown); + ~CProfileWindow(); + /** + * Sets the modules. + */ + void setModules( QStringList modules ); + /** + * Returns the type of the managed window (bible window, commentary window or lexicon window). + */ + const CSwordModuleInfo::ModuleType type(); + /** + * Sets the type of the used modules. + */ + void setType(const CSwordModuleInfo::ModuleType type); + /** + * Sets the size of the window. + */ + void setGeometry( const QRect s ); + /** + * Returns the size of the window including the x,y coordinates. + */ + const QRect geometry(); + /** + * Returns a list of module names which are chosen in the managed window profile. + */ + const QStringList modules(); + /** + * Set the key used in the modules. + */ + void setKey( const QString& ); + /** + * Returns the current key set in the modules. + */ + const QString& key(); + /** + * Sets the current position of the scrollbars. + */ + void setScrollbarPositions(const int x, const int y); + /** + * Sets the windows maximized state to true or false. + */ + void setMaximized( const bool maximized ); + /** + * Sets the window specific settings. + */ + void setWindowSettings( const int settings ); + /** + * Returns an integer with the window specific settings + */ + const int windowSettings(); + /** + * Returns true if the window is maximized. + */ + const bool maximized(); + /** + * Returns tghe position of the scrollbars + */ + const CProfileWindow::ScrollbarPos scrollbarPositions(); + +private: + CSwordModuleInfo::ModuleType m_type; + QRect m_windowGeometry; + QStringList m_moduleList; + QString m_key; + ScrollbarPos m_scrollbarPos; + bool m_maximized; + int m_windowSettings; +}; + +#endif + diff --git a/bibletime/frontend/ctoolclass.cpp b/bibletime/frontend/ctoolclass.cpp new file mode 100644 index 0000000..2d7f209 --- /dev/null +++ b/bibletime/frontend/ctoolclass.cpp @@ -0,0 +1,185 @@ +/*************************************************************************** + ctoolclass.cpp - some methods,that would be normal global,but + I hate global function :-) + + begin : 20 Jan 1999 + copyright : (C) 1999 by Sandy Meier + email : smeier@rz.uni-potsdam.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//own includes +#include "ctoolclass.h" + +#include "resource.h" +#include "backend/cswordmoduleinfo.h" + +//QT includes +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include + + +QString CToolClass::locatehtml(const QString &filename) { + QString path = locate("html", KGlobal::locale()->language() + '/' + filename); + if (path.isNull()) + path = locate("html", "default/" + filename); + if (path.isNull()) + path = locate("html", "en/" + filename); + return path; +} + +/** Converts HTML text to plain text */ +QString CToolClass::htmlToText(const QString& html) { + QString newText = html; + // convert some tags we need in code + newText.replace( QRegExp(" "),"#SPACE#" ); + newText.replace( QRegExp("
\\s*"), "
\n" ); + newText.replace( QRegExp("#SPACE#")," " ); + return newText; +} + +/** Converts text to HTML (\n to
) */ +QString CToolClass::textToHTML(const QString& text){ + QString newText = text; + newText.replace( QRegExp("
\n"),"#NEWLINE#" ); + newText.replace( QRegExp("\n"),"
\n" ); + newText.replace( QRegExp("#NEWLINE#"),"
\n"); + return newText; +} + +/** Creates the file filename and put text into the file. + */ +bool CToolClass::savePlainFile( const QString& filename, const QString& text){ + QFile saveFile(filename); + bool ret; + + if (saveFile.exists()) { + if (KMessageBox::warningYesNo(0, + QString::fromLatin1("%1
%2
") + .arg( i18n("The file does already exist!") ) + .arg( i18n("Do you want to overwrite it?"))) + == KMessageBox::No + ) + return false; + else + saveFile.remove(); + } + + if ( saveFile.open(IO_ReadWrite) ) { + QTextStream textstream( &saveFile ); + textstream << text; + saveFile.close(); + ret = true; + } + else { + KMessageBox::error(0, QString::fromLatin1("%1
%2
") + .arg( i18n("Sorry! But the file couldn't be saved!") ) + .arg( i18n("Please check permissions etc. !"))); + saveFile.close(); + ret = false; + } + return ret; +} + + +/** Returns the icon used for the module given as aparameter. */ +QPixmap CToolClass::getIconForModule( CSwordModuleInfo* module_info ){ + if (!module_info) + return QPixmap(BIBLE_ICON_SMALL); + + switch (module_info->type()){ + case CSwordModuleInfo::Bible: + if (module_info->isLocked()) + return QPixmap(BIBLE_LOCKED_ICON_SMALL); + else + return QPixmap(BIBLE_ICON_SMALL); + + case CSwordModuleInfo::Lexicon: + if (module_info->isLocked()) + return QPixmap(LEXICON_LOCKED_ICON_SMALL); + else + return QPixmap(LEXICON_ICON_SMALL); + + case CSwordModuleInfo::Commentary: + if (module_info->isLocked()) + return QPixmap(COMMENTARY_LOCKED_ICON_SMALL); + else + return QPixmap(COMMENTARY_ICON_SMALL); + + case CSwordModuleInfo::GenericBook: + if (module_info->isLocked()) + return QPixmap(BOOK_LOCKED_ICON_SMALL); + else + return QPixmap(BOOK_ICON_SMALL); + + case CSwordModuleInfo::Unknown: + default: + return QPixmap(BIBLE_ICON_SMALL); + } +} + +int CToolClass::makeLogicFontSize( const int s ) { + const int defSize = QApplication::font().pointSize(); + if ( s < defSize - 4 ) + return 1; + if ( s < defSize ) + return 2; + if ( s < defSize + 4 ) + return 3; + if ( s < defSize + 8 ) + return 4; + if ( s < defSize + 12 ) + return 5; + if (s < defSize + 16 ) + return 6; + return 7; +} + +QLabel* CToolClass::explanationLabel(QWidget* parent, const QString& heading, const QString& text ){ + QLabel* label = new QLabel( QString::fromLatin1("%1
%2").arg(heading).arg(text),parent ); + label->setAutoResize(true); + label->setMargin(1); + label->setFrameStyle(QFrame::Box | QFrame::Plain); + return label; +} +/** No descriptions */ +bool CToolClass::inHTMLTag(int pos, QString & text){ + int i1=text.findRev("<",pos); + int i2=text.findRev(">",pos); + int i3=text.find(">",pos); + int i4=text.find("<",pos); + + +// if ((i1>0) && (i2==-1)) //we're in th first html tag +// i2=i1; // not ncessary, just for explanation + + if ((i3>0) && (i4==-1)) //we're in the last html tag + i4=i3+1; + +// qWarning("%d > %d && %d < %d",i1,i2,i3,i4); + + if ( (i1>i2) && (i3 +#include + + +#ifndef CTOOLCLASS_H +#define CTOOLCLASS_H + + +class CSwordModuleInfo; +class QLabel; + +/** + * Provides some useful functions which would be normally global. + * + * Some methods,that would be normaly global, but I hate global functions :-) + * (the function locateHTML is from Sandy Meier (KDevelop)) + * + * @short A class which contains static members to do small things. + * @author Joachim Ansorg + */ +class CToolClass { + +public: + /** + * @return The path of the HTML file "filename". This function searches only in $KDEDIR. + * @author Sandy Meier of the KDevelop team. + */ + static QString locatehtml(const QString &filename); + /** + * Converts HTML text to plain text. + * This function converts some HTML tags in text (e.g.
to \n) + * @return The text withput HTML tags and with converted
to \n + * @author Joachim Ansorg + */ + static QString htmlToText(const QString&); + /** + * Converts text to HTML converting some text commands into HTML tags (e.g. \n to
) + * @return The HTML formatted text we got after changing \n to
+ * @author Joachim Ansorg + */ + static QString textToHTML(const QString&); + /** + * Creates the file filename and put the text of parameter "text" into the file. + * @return True if saving was sucessful, otherwise false + * @author Joachim Ansorg + */ + static bool savePlainFile( const QString& filename, const QString& text); + /** + * Returns the icon used for the module given as aparameter. + */ + static QPixmap getIconForModule( CSwordModuleInfo* ); + /** + * Returns the logical font size which should + * be used for the absolute size s + */ + static int makeLogicFontSize( const int s ); + static QLabel* explanationLabel(QWidget* parent, const QString& heading, const QString& text ); + static bool inHTMLTag(int pos, QString & text); +}; + +#endif diff --git a/bibletime/frontend/groupmanager/Makefile.am b/bibletime/frontend/groupmanager/Makefile.am new file mode 100644 index 0000000..f14759b --- /dev/null +++ b/bibletime/frontend/groupmanager/Makefile.am @@ -0,0 +1,18 @@ +INCLUDES = $(all_includes) +libgroupmanager_a_METASOURCES = AUTO +noinst_LIBRARIES = libgroupmanager.a + +libgroupmanager_a_SOURCES = \ +cgroupmanager.cpp \ +cgroupmanageritem.cpp + +all_headers = cgroupmanager.h \ +cgroupmanageritem.h + +EXTRA_DIST = \ +$(libgroupmanager_a_SOURCES) $(all_headers) + + + + + diff --git a/bibletime/frontend/groupmanager/Makefile.in b/bibletime/frontend/groupmanager/Makefile.in new file mode 100644 index 0000000..4cbd948 --- /dev/null +++ b/bibletime/frontend/groupmanager/Makefile.in @@ -0,0 +1,608 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) +#>- libgroupmanager_a_METASOURCES = AUTO +noinst_LIBRARIES = libgroupmanager.a + +libgroupmanager_a_SOURCES = cgroupmanager.cpp cgroupmanageritem.cpp + + +all_headers = cgroupmanager.h cgroupmanageritem.h + + +EXTRA_DIST = $(libgroupmanager_a_SOURCES) $(all_headers) + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libgroupmanager_a_LIBADD = +#>- libgroupmanager_a_OBJECTS = cgroupmanager.$(OBJEXT) \ +#>- cgroupmanageritem.$(OBJEXT) +#>+ 7 +libgroupmanager_a_final_OBJECTS = libgroupmanager_a.all_cpp.o +libgroupmanager_a_nofinal_OBJECTS = cgroupmanager.$(OBJEXT) \ +cgroupmanageritem.$(OBJEXT)\ +cgroupmanager.moc.o \ +libgroupmanager_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libgroupmanager_a_OBJECTS = $(libgroupmanager_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libgroupmanager_a_OBJECTS = $(libgroupmanager_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=cgroupmanager.h cgroupmanageritem.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/cgroupmanager.P .deps/cgroupmanageritem.P +#>+ 4 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/cgroupmanager.moc.P $(DEPDIR)/libgroupmanager_a_meta_unload.P $(DEPDIR)/libgroupmanager_a.all_cpp.P \ + .deps/cgroupmanager.P .deps/cgroupmanageritem.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/cgroupmanager.moc.P $(DEPDIR)/libgroupmanager_a_meta_unload.P .deps/cgroupmanager.P .deps/cgroupmanageritem.P + +SOURCES = $(libgroupmanager_a_SOURCES) +OBJECTS = $(libgroupmanager_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/groupmanager/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/groupmanager/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/groupmanager/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libgroupmanager.a: $(libgroupmanager_a_OBJECTS) $(libgroupmanager_a_DEPENDENCIES) + -rm -f libgroupmanager.a + $(AR) cru libgroupmanager.a $(libgroupmanager_a_OBJECTS) $(libgroupmanager_a_LIBADD) + $(RANLIB) libgroupmanager.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/groupmanager + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/groupmanager/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +cgroupmanager.moc.cpp: $(srcdir)/cgroupmanager.h + $(MOC) $(srcdir)/cgroupmanager.h -o cgroupmanager.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f cgroupmanager.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/groupmanager/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/groupmanager/Makefile.in + + +#>+ 10 +libgroupmanager_a_meta_unload.cpp: cgroupmanager.moc.cpp + @echo 'creating libgroupmanager_a_meta_unload.cpp' + @-rm -f libgroupmanager_a_meta_unload.cpp + @echo 'static const char * _metalist_libgroupmanager_a[] = {' > libgroupmanager_a_meta_unload.cpp + @cat cgroupmanager.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libgroupmanager_a_meta_unload.cpp + @echo '0};' >> libgroupmanager_a_meta_unload.cpp + @echo '#include ' >> libgroupmanager_a_meta_unload.cpp + @echo '_UNLOAD(libgroupmanager_a)' >> libgroupmanager_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libgroupmanager_a_meta_unload.cpp + +#>+ 11 +libgroupmanager_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/cgroupmanager.cpp $(srcdir)/cgroupmanageritem.cpp libgroupmanager_a_meta_unload.cpp cgroupmanager.moc.cpp + @echo 'creating libgroupmanager_a.all_cpp.cpp ...'; \ + rm -f libgroupmanager_a.all_cpp.files libgroupmanager_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libgroupmanager_a.all_cpp.final; \ + for file in cgroupmanager.cpp cgroupmanageritem.cpp libgroupmanager_a_meta_unload.cpp cgroupmanager.moc.cpp; do \ + echo "#include \"$$file\"" >> libgroupmanager_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libgroupmanager_a.all_cpp.final; \ + done; \ + cat libgroupmanager_a.all_cpp.final libgroupmanager_a.all_cpp.files > libgroupmanager_a.all_cpp.cpp; \ + rm -f libgroupmanager_a.all_cpp.final libgroupmanager_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libgroupmanager_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libgroupmanager_a_OBJECTS="$(libgroupmanager_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libgroupmanager_a_OBJECTS="$(libgroupmanager_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/groupmanager/cgroupmanager.cpp b/bibletime/frontend/groupmanager/cgroupmanager.cpp new file mode 100644 index 0000000..af4f59d --- /dev/null +++ b/bibletime/frontend/groupmanager/cgroupmanager.cpp @@ -0,0 +1,1615 @@ +/*************************************************************************** + cgroupmanager.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#define BOOKMARK_FORMAT_VERSION 1 + + +//own includes +#include "cgroupmanager.h" +#include "cgroupmanageritem.h" + +#include "backend/cswordbiblemoduleinfo.h" +#include "backend/cswordcommentarymoduleinfo.h" +#include "backend/cswordlexiconmoduleinfo.h" +#include "backend/cswordversekey.h" +#include "backend/cswordldkey.h" +#include "backend/creferencemanager.h" +#include "printing/cprintitem.h" +#include "printing/cprinter.h" + +#include "frontend/chtmldialog.h" +#include "frontend/cinputdialog.h" +#include "frontend/searchdialog/csearchdialog.h" +#include "frontend/cbtconfig.h" +#include "frontend/cexportmanager.h" + +#include "whatsthisdef.h" +#include "resource.h" + +#include + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +CGroupManager::ToolTip::ToolTip(QWidget* parent) : QToolTip(parent) { +} + +void CGroupManager::ToolTip::maybeTip(const QPoint& p) { + if (!parentWidget()->inherits("CGroupManager")) + return; + + CGroupManager* m = 0; + if ( !(m = dynamic_cast(parentWidget())) ) + return; + CGroupManagerItem* i = 0; + if ( !( i = dynamic_cast(m->itemAt(p))) ) + return; + + QRect r = m->itemRect(i); + if (!r.isValid()) + return; + + //get type of item and display correct text + const QString text = i->getToolTip(); + if (!text.isEmpty()) { + const QFont oldFont = font(); + CSwordModuleInfo* m = dynamic_cast(i->moduleInfo()); + + //Module is Unicode-based. Only set font if a bookmark should be displayed + if (i->getBookmarkKey() && m && m->isUnicode() ) + setFont(CBTConfig::get( CBTConfig::unicode )); + + tip(r, text); + setFont(oldFont); + } +} + + +CGroupManager::CGroupManager(QWidget *parent, const char *name, ListCSwordModuleInfo *swordList, const bool useBookmarks, const bool saveSettings, const bool useDnD, const bool useExtendedMode, const bool useRMBMenu, const bool showHelpDialogs) + : KListView(parent, name), + m_swordList(swordList), + m_config( new KConfig("bt-groupmanager", false, false ) ), + m_menu(false), + m_searchDialog(0), + m_pressedItem(0), + m_useBookmarks(useBookmarks), + m_saveSettings(saveSettings), + m_useDragDrop(useDnD), + m_useExtendedMode(useExtendedMode), + m_useRMBMenu(useRMBMenu), + m_showHelpDialogs(showHelpDialogs) +{ + initView(); + initConnections(); + readSettings(); +} + +CGroupManager::~CGroupManager(){ + saveSettings(); + m_config->sync(); + delete m_config; + m_config = 0; +} + +/** Initializes the tree of this CGroupmanager */ +void CGroupManager::setupSwordTree() { + readGroups(m_config, 0); + readSwordModules(m_config, 0); + if (m_useBookmarks) + readSwordBookmarks(m_config, 0); + setupStandardSwordTree(); +} + +/** Initializes the tree of this CGroupmanager */ +void CGroupManager::setupStandardSwordTree() { + if (!m_swordList || (m_swordList && !m_swordList->count())) { + qWarning("CGroupManager::setupStandardSwordTree: m_swordList is empty or qual to NULL. return now."); + return; + } + + const bool initialized = m_config->readBoolEntry("initialized", false); + CSwordModuleInfo* moduleInfo = 0; + QListViewItemIterator it( this ); + + CGroupManagerItem* bibleGroup = findGroup(i18n("Bibles")); + CGroupManagerItem* bookGroup = findGroup(i18n("Books")); + CGroupManagerItem* commentaryGroup = findGroup(i18n("Commentaries")); + CGroupManagerItem* lexiconGroup = findGroup(i18n("Lexicons")); + + for(moduleInfo = m_swordList->first(); moduleInfo; moduleInfo = m_swordList->next()) { + bool alreadyCreated = false; + QListViewItemIterator it( this ); + for ( ; it.current(); ++it ) { + CGroupManagerItem* item = dynamic_cast(it.current()); + if (item && item->type() == CGroupManagerItem::Module && item->moduleInfo() == moduleInfo) { //already there + alreadyCreated = true; + break; + } + } + if ( moduleInfo && !alreadyCreated) { //module was probably newly installed, insert it + CGroupManagerItem* itemParent = 0; + switch (moduleInfo->type()) { + case CSwordModuleInfo::Bible: + itemParent = bibleGroup; + break; + case CSwordModuleInfo::Commentary: + itemParent = commentaryGroup; + break; + case CSwordModuleInfo::Lexicon: + itemParent = lexiconGroup; + break; + case CSwordModuleInfo::GenericBook: + itemParent = bookGroup; + break; + default: + break; + } + if (itemParent) + (void)new CGroupManagerItem(itemParent,QString::null,QString::null, moduleInfo,0, CGroupManagerItem::Module); + } + } + if (!initialized) { + bibleGroup->sortChildItems(0,true); + lexiconGroup->sortChildItems(0,true); + commentaryGroup->sortChildItems(0,true); + bookGroup->sortChildItems(0,true); + sort(); + } + + // Now delete the groupes which have no child items + if (!bibleGroup->childCount()) { + delete bibleGroup; + bibleGroup = 0; + } + if (!lexiconGroup->childCount()) { + delete lexiconGroup; + lexiconGroup = 0; + } + if (!commentaryGroup->childCount()) { + delete commentaryGroup; + commentaryGroup = 0; + } + if (!bookGroup->childCount()) { + delete bookGroup; + bookGroup = 0; + } +} + +/** Initializes the connections of this class */ +void CGroupManager::initConnections(){ + connect(this, SIGNAL(returnPressed(QListViewItem*)), SLOT(slotReturnPressed(QListViewItem*))); + if (m_useRMBMenu) + connect(m_popupMenu, SIGNAL(aboutToShow()), + this, SLOT(slotPopupAboutToShow())); +} + +/** */ +void CGroupManager::saveSettings(){ + KConfigGroupSaver groupSaver(m_config, "Groupmanager"); + + if (!m_saveSettings) { + return; + } + + //save column width + m_config->writeEntry("initialized", true); + m_config->writeEntry("First column", columnWidth(0)); + + //save the bookmarks and the groups + + saveGroups(m_config,0); + saveSwordModules(m_config,0); + saveSwordBookmarks(m_config, 0); + + m_config->sync(); +} + +/** */ +void CGroupManager::readSettings(){ + KConfigGroupSaver groupSaver(m_config, "Groupmanager"); + if (m_config->readBoolEntry("initialized")) + setupSwordTree(); + else + setupStandardSwordTree(); + setColumnWidth(0, m_config->readNumEntry("First column", visibleWidth()) ); +} + +/** Initializes this widget */ +void CGroupManager::initView(){ + m_toolTip = new ToolTip(this); + + QWhatsThis::add(this, WT_GM_WIDGET ); + m_singleClick = KGlobalSettings::singleClick(); + + setBackgroundMode(PaletteBase); + setSorting(-1); + + if (m_useDragDrop) + viewport()->setAcceptDrops(true); + if (m_useExtendedMode) + setSelectionModeExt(KListView::Extended); + setRootIsDecorated(false); + setAllColumnsShowFocus(true); + + addColumn(i18n("Caption")); + header()->hide(); + + if (!m_useRMBMenu) { + m_popupMenu = 0; + } + else { + m_popupMenu = new KPopupMenu(this); + m_popupMenu->insertTitle(i18n("Main index")); + m_popupMenu->insertItem(GROUP_NEW_ICON_SMALL, i18n("Create a new folder"), + this, SLOT(slotCreateNewGroup()),0,ID_GM_GROUP_CREATE); + m_popupMenu->setWhatsThis(ID_GM_GROUP_CREATE, WT_GM_NEW_GROUP); + m_popupMenu->insertItem(GROUP_CHANGE_ICON_SMALL, i18n("Change this folder"), + this, SLOT(slotChangeGroup()),0,ID_GM_GROUP_CHANGE); + m_popupMenu->setWhatsThis(ID_GM_GROUP_CHANGE, WT_GM_CHANGE_GROUP); + m_popupMenu->insertSeparator(); + m_popupMenu->insertItem(BOOKMARK_CHANGE_ICON_SMALL,i18n("Change this bookmark"), + this,SLOT(slotChangeBookmark()),0,ID_GM_BOOKMARK_CHANGE); + m_popupMenu->setWhatsThis(ID_GM_BOOKMARK_CHANGE, WT_GM_CHANGE_BOOKMARK); + m_popupMenu->insertItem(BOOKMARK_IMPORT_ICON_SMALL,i18n("Import bookmarks"), + this,SLOT(slotImportBookmarks()),0,ID_GM_BOOKMARKS_IMPORT); + m_popupMenu->setWhatsThis(ID_GM_BOOKMARKS_IMPORT, WT_GM_IMPORT_BOOKMARKS); + m_popupMenu->insertItem(BOOKMARK_EXPORT_ICON_SMALL,i18n("Export bookmarks"), + this,SLOT(slotExportBookmarks()),0,ID_GM_BOOKMARKS_EXPORT); + m_popupMenu->setWhatsThis(ID_GM_BOOKMARKS_EXPORT, WT_GM_EXPORT_BOOKMARKS); + m_popupMenu->insertItem(BOOKMARK_PRINT_ICON_SMALL,i18n("Print bookmark"), + this,SLOT(slotPrintBookmark()),0,ID_GM_BOOKMARK_PRINT); + m_popupMenu->setWhatsThis(ID_GM_BOOKMARK_PRINT, WT_GM_PRINT_BOOKMARK); + m_popupMenu->insertItem(ITEMS_DELETE_ICON_SMALL, i18n("Remove selected item(s)"), + this, SLOT(slotDeleteSelectedItems()),0,ID_GM_ITEMS_DELETE); + m_popupMenu->insertSeparator(); + m_popupMenu->insertItem(MODULE_SEARCH_ICON_SMALL,i18n("Search in selected module(s)"), + this, SLOT(slotSearchSelectedModules()),0,ID_GM_MODULES_SEARCH); + m_popupMenu->insertSeparator(); + m_popupMenu->insertItem(MODULE_UNLOCK_ICON_SMALL,i18n("Unlock this module"), + this, SLOT(slotUnlockModule()),0,ID_GM_MODULE_UNLOCK); + m_popupMenu->setWhatsThis(ID_GM_MODULE_UNLOCK, WT_GM_UNLOCK_MODULE); + m_popupMenu->insertItem(MODULE_ABOUT_ICON_SMALL, i18n("About this module"), + this, SLOT(slotShowAbout()),0,ID_GM_MODULE_ABOUT); + m_popupMenu->setWhatsThis(ID_GM_MODULE_ABOUT, WT_GM_ABOUT_MODULE); + } +} + +/** Deletes the item given as parameter */ +void CGroupManager::slotDeleteSelectedItems(){ + QListViewItemIterator it( this ); + for ( ; it.current(); ++it ) { + if ( it.current()->isSelected() ) + delete it.current(); + } +} + +/** call the search dialog */ +void CGroupManager::slotSearchSelectedModules() { + ListCSwordModuleInfo searchList; + CGroupManagerItem *item = 0; + + QList items = selectedItems(); + for (items.first(); items.current(); items.next()) { + item = dynamic_cast(items.current()); + if (item && item->type() == CGroupManagerItem::Module) + searchList.append(item->moduleInfo()); + } + saveSettings(); + m_config->sync(); + + if (!m_searchDialog) + m_searchDialog = new CSearchDialog(searchList,0,0); + else + m_searchDialog->setModuleList(searchList); + connect(m_searchDialog, SIGNAL(finished()), + this, SLOT(slotDeleteSearchdialog())); + m_searchDialog->setSearchText(QString::null); + m_searchDialog->show(); + m_searchDialog->raise(); +} + +void CGroupManager::searchBookmarkedModule(const QString& text, CGroupManagerItem* item) { +// qWarning("CGroupManager::searchBookmarkedModule(const QString& text, CGroupManagerItem* item)"); +// ASSERT(item); + if (!item->moduleInfo()) + return; + ListCSwordModuleInfo searchList; + searchList.append(item->moduleInfo()); + + if (!m_searchDialog) + m_searchDialog = new CSearchDialog(searchList,0,0); + else + m_searchDialog->setModuleList(searchList); + connect(m_searchDialog, SIGNAL(finished()), + this, SLOT(slotDeleteSearchdialog())); + + m_searchDialog->setSearchText(text); + m_searchDialog->show(); + m_searchDialog->raise(); + m_searchDialog->startSearch(); +} + +/** */ +void CGroupManager::createNewBookmark(CGroupManagerItem* parent, CSwordModuleInfo* module, const QString& ref){ + CSwordModuleInfo* swordModule = dynamic_cast(module); + if (!swordModule) + return; + + CGroupManagerItem* myItem = 0; + bool ok = false; + const QString description = CInputDialog::getText(i18n("Bookmark description - BibleTime"), i18n("Please enter here the description:"), QString::null, &ok); + if (!ok) + return; + + myItem = 0; + if ( parent && (parent->type() == CGroupManagerItem::Group) ) { + myItem = new CGroupManagerItem(parent,QString::null,QString::null,module, 0, CGroupManagerItem::Bookmark); + parent->setOpen(true); + } + else + myItem = new CGroupManagerItem(this,QString::null,QString::null,module, 0, CGroupManagerItem::Bookmark); + + if (myItem) { //it's a Sword module + CSwordKey* key = CSwordKey::createInstance(module); + if (key) { + key->key(ref); + myItem->setBookmarkKey(key); //the key is deleted by the groupmmanager item + } + } + if (myItem) //set the description + myItem->setDescription(description); + setFocus(); +} + + +/** Changes the current item */ +void CGroupManager::slotChangeBookmark(){ + if (!m_pressedItem) + return; + bool isOk; + QString description = CInputDialog::getText(i18n("Change bookmark description - BibleTime"),i18n("Please change the description of the item!"), m_pressedItem->description(), &isOk, 0); + if (isOk) + m_pressedItem->setDescription(description); +} + +/** Changes a group. */ +void CGroupManager::slotChangeGroup(){ + if (!m_pressedItem) + return; + + bool isOk; + QString description = QInputDialog::getText(i18n("Change folder - BibleTime"),i18n("Please change the name of the group!"), m_pressedItem->text(0), &isOk, 0); + if (isOk) + m_pressedItem->setText( 0, description ); +} + +/** Is called before the menu is shown */ +void CGroupManager::slotPopupAboutToShow(){ + if (!m_useRMBMenu) + return; + + m_menu = true; + + + if (m_pressedItem) { + if (m_pressedItem->type() == CGroupManagerItem::Module) { + bool moduleIsEncrypted = m_pressedItem->moduleInfo()->isEncrypted(); + + m_popupMenu->setItemEnabled(ID_GM_PRESENTER_CREATE, true); + + m_popupMenu->setItemEnabled(ID_GM_GROUP_CREATE, false); + m_popupMenu->setItemEnabled(ID_GM_GROUP_CHANGE, false); + + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_CHANGE, false); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_IMPORT, false); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_EXPORT, false); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_PRINT, false); + + m_popupMenu->setItemEnabled(ID_GM_ITEMS_DELETE, false); + + m_popupMenu->setItemEnabled(ID_GM_MODULES_SEARCH, true); + m_popupMenu->setItemEnabled(ID_GM_MODULE_UNLOCK, moduleIsEncrypted); + m_popupMenu->setItemEnabled(ID_GM_MODULE_ABOUT, true); + } + else if (m_pressedItem->type() == CGroupManagerItem::Bookmark) { + m_popupMenu->setItemEnabled(ID_GM_PRESENTER_CREATE, true); + + m_popupMenu->setItemEnabled(ID_GM_GROUP_CREATE, false); + m_popupMenu->setItemEnabled(ID_GM_GROUP_CHANGE, false); + + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_CHANGE, true); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_IMPORT, false); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_EXPORT, false); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_PRINT, true); + + m_popupMenu->setItemEnabled(ID_GM_ITEMS_DELETE, true); + + m_popupMenu->setItemEnabled(ID_GM_MODULES_SEARCH, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_UNLOCK, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_ABOUT, false); + + } + else if (m_pressedItem->type() == CGroupManagerItem::Group) { + m_popupMenu->setItemEnabled(ID_GM_PRESENTER_CREATE, false); + + m_popupMenu->setItemEnabled(ID_GM_GROUP_CREATE, true); + m_popupMenu->setItemEnabled(ID_GM_GROUP_CHANGE, true); + + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_CHANGE, false); + + //enable import and export only if a bookmark exists in this group + bool foundBookmark = false; + QListViewItem * myChild = m_pressedItem->firstChild(); + while( myChild && !foundBookmark) { + CGroupManagerItem* i = dynamic_cast(myChild); + if (i && i->type() == CGroupManagerItem::Bookmark) + foundBookmark = true; + myChild = myChild->nextSibling(); + } + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_IMPORT, true); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_EXPORT, foundBookmark); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_PRINT, false); + + m_popupMenu->setItemEnabled(ID_GM_ITEMS_DELETE, true); + + m_popupMenu->setItemEnabled(ID_GM_MODULES_SEARCH, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_UNLOCK, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_ABOUT, false); + } + } + else { //top level + m_popupMenu->setItemEnabled(ID_GM_PRESENTER_CREATE, false); + + m_popupMenu->setItemEnabled(ID_GM_GROUP_CREATE, true); + m_popupMenu->setItemEnabled(ID_GM_GROUP_CHANGE, false); + + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_CHANGE, false); + + bool foundBookmark = false; + QListViewItemIterator it( this ); + for ( ; it.current() && !foundBookmark; ++it ) { + CGroupManagerItem* i = dynamic_cast(it.current()); + if (i && i->type() == CGroupManagerItem::Bookmark) + foundBookmark = true; + } + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_IMPORT, true); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARKS_EXPORT, foundBookmark); + m_popupMenu->setItemEnabled(ID_GM_BOOKMARK_PRINT, false); + + m_popupMenu->setItemEnabled(ID_GM_ITEMS_DELETE, false); + + m_popupMenu->setItemEnabled(ID_GM_MODULES_SEARCH, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_UNLOCK, false); + m_popupMenu->setItemEnabled(ID_GM_MODULE_ABOUT, false); + } +} + +/** */ +void CGroupManager::slotShowAbout(){ + CSwordModuleInfo* module = dynamic_cast(m_pressedItem->moduleInfo()); + if (!m_pressedItem || !m_pressedItem->moduleInfo() || !module) + return; + QString text; + + if (module->hasVersion()) + text += QString::fromLatin1("%1: %2
") + .arg(i18n("Version")) + .arg(module->config(CSwordModuleInfo::ModuleVersion)); + + text += QString::fromLatin1("%1: %2
%3: %4
") + .arg(i18n("Location")) +// .arg(backend()->modulePath(module->name())) + .arg(module->config(CSwordModuleInfo::AbsoluteDataPath)) + .arg(i18n("Language")) + .arg(module->module()->Lang()); + + if (module->module()->isWritable()) + text += QString::fromLatin1("%1: %2
") + .arg(i18n("Writable")) + .arg(i18n("yes")); + + if ( module->isEncrypted() ) + text += QString::fromLatin1("%1: %2
") + .arg(i18n("Unlock key")) + .arg(module->config(CSwordModuleInfo::CipherKey)); + text += QString::fromLatin1("%1: %2
").arg(i18n("Encoding")).arg(module->isUnicode() ? i18n("Unicode") : i18n("iso8859-1")); + + QString options; + unsigned int opts; + for (opts = CSwordBackend::filterOptionsMIN; opts <= CSwordBackend::filterOptionsMAX; ++opts){ + if (module->has( (CSwordBackend::FilterOptions)opts)){ + if (!options.isEmpty()) + options += QString::fromLatin1(", "); + options += CSwordBackend::translatedOptionName( (CSwordBackend::FilterOptions)opts); + } + } + if (!options.isEmpty()) + text += QString("%1: %2
") + .arg(i18n("Features")) + .arg(options); + + text += QString::fromLatin1("%1:
%2") + .arg("About") + .arg(module->config(CSwordModuleInfo::AboutInformation)); + + KMessageBox::about(this, text, module->config(CSwordModuleInfo::Description), false); +} + +/** */ +void CGroupManager::slotCreateNewPresenter(){ + if (m_pressedItem && m_pressedItem->moduleInfo()) { + if (m_pressedItem->type() == CGroupManagerItem::Module || m_pressedItem->type() == CGroupManagerItem::Bookmark) + emit createSwordPresenter( m_pressedItem->moduleInfo(), QString::null ); + } +} + +/** */ +void CGroupManager::contentsDragEnterEvent( QDragEnterEvent* e){ + if (QTextDrag::canDecode(e)) { + e->accept(true); + QString str; + QCString submime; + if (QTextDrag::decode(e,str,submime=BOOKMARK)) + m_dragType = BOOKMARK; + else if (QTextDrag::decode(e,str,submime=REFERENCE)) + m_dragType = REFERENCE; + else if (QTextDrag::decode(e,str,submime=MODULE)) + m_dragType = MODULE; + else if (QTextDrag::decode(e,str,submime=GROUP)) + m_dragType = GROUP; + else if (QTextDrag::decode(e,str,submime=TEXT)) + m_dragType = TEXT; + else + m_dragType = ""; + } + else { + e->ignore(); + m_dragType = ""; + } +} + +/** */ +void CGroupManager::contentsDragMoveEvent( QDragMoveEvent* e){ + //open folders + CGroupManagerItem* item = (CGroupManagerItem*)itemAt( contentsToViewport(e->pos()) ); + e->accept(QTextDrag::canDecode(e)); + if (item && item->type() == CGroupManagerItem::Group && !item->isOpen()) + item->setOpen(true); + + m_afterItemDrop = item; + if (item) + m_parentItemDrop = (CGroupManagerItem*)item->parent(); + else + m_parentItemDrop = 0; + + QRect tmpRect = drawDropVisualizer(0, m_parentItemDrop, m_afterItemDrop, m_dragType ); + if (tmpRect != m_oldDragRect ) { + cleanDropVisualizer(); + m_oldDragRect = tmpRect; + if (tmpRect.isValid()) + viewport()->repaint(tmpRect); + } +} + +/** */ +void CGroupManager::contentsDragLeaveEvent( QDragLeaveEvent* e){ + KListView::contentsDragLeaveEvent(e); + cleanDropVisualizer(); + + m_oldDragRect = QRect(); + m_dragType = ""; +} + +/** This define is used to use one block of code for the different sections (bookmarks, + * references, modules, groups etc.). We have only to maintain this code. + */ +#define MOVE_ITEMS \ + for ( item = m_itemList->last(); item != 0; item = m_itemList->prev()){ \ + if ( item && (item != target) ){ \ + parentItem = dynamic_cast(item->parent()); \ + if ( isChild(item, target) ) \ + continue; \ + if (parentItem && parentItem != item) \ + parentItem->takeItem(item); \ + else \ + takeItem(item); \ + if ( target && target!=item ) \ + if (target->type()==CGroupManagerItem::Group) \ + target->insertItem(item); \ + else{ \ + if (target->parent()) \ + target->parent()->insertItem(item); \ + else \ + this->insertItem(item); \ + } \ + else \ + this->insertItem(item); \ + } \ + } + +/** */ +void CGroupManager::contentsDropEvent( QDropEvent* e){ + CGroupManagerItem* target = dynamic_cast(itemAt(contentsToViewport(e->pos()))); + + QString str; + QCString submime; + if (QTextDrag::decode(e,str,submime=BOOKMARK)){ + //a bookmark was dragged + if ( e->source() != viewport() ){ + return; + } + if ( !(m_itemList) ){ + return; + } + CGroupManagerItem* item = 0; + CGroupManagerItem* parentItem = 0; + // Bookmark dragged on module - open a presenter + if ( (m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Bookmark) + && target && (target->type() == CGroupManagerItem::Module) ){ + emit createSwordPresenter(target->moduleInfo(),m_pressedItem->getKeyText() ); + } + //move around bookmarks + else{ + MOVE_ITEMS + }//else + }//Bookmark + else if (QTextDrag::decode(e,str,submime=GROUP)){ + //a group was dragged + if ( e->source() != this->viewport() ) + return; + if ( !(m_itemList) ) + return; + CGroupManagerItem* item = 0; + CGroupManagerItem* parentItem = 0; + //move around groups + MOVE_ITEMS + }//group + else if (QTextDrag::decode(e,str,submime=MODULE)){ + //a module was dragged + if ( e->source() != this->viewport() ){ + return; + } + if ( !(m_itemList) ){ + return; + } + CGroupManagerItem* item = 0; + CGroupManagerItem* parentItem = 0; + MOVE_ITEMS + }//module + else if (QTextDrag::decode(e,str,submime=REFERENCE)){ + //a reference was dragged + QString ref; + QString mod; + CReferenceManager::decodeReference(str,mod,ref); + + CSwordModuleInfo* info = backend()->findModuleByName(mod); + if ( info /*&& (info->name() == mod)*/ ){ + if (!target){ //Reference was dragged on no item + createNewBookmark(0, info, ref); //CREATE A NEW BOOKMARK + } + else{ + switch (target->type()){ + case (CGroupManagerItem::Group): + if (info) //Create a bookmark + createNewBookmark(target,info, ref); + break; + case (CGroupManagerItem::Bookmark): + if (target->parent()) + createNewBookmark(target->parent(),info, ref); + else + createNewBookmark(0,info, ref); + break; + case (CGroupManagerItem::Module): + if (target->moduleInfo()){ + /** + * In bibles or commentaries, the reference is opened + * in lexicons, the reference is searched + */ + if (target->moduleInfo()->type() == CSwordModuleInfo::Bible || target->moduleInfo()->type() == CSwordModuleInfo::Commentary ) + emit createSwordPresenter( target->moduleInfo(), ref ); + else + searchBookmarkedModule(ref,target); + } + break; + }//switch; + }//(target) + }//(info) + }//reference + else if (QTextDrag::decode(e,str,submime=TEXT)){ + //plain text was dragged -> open searchdialog + if ( target && target->type()==CGroupManagerItem::Module && target->moduleInfo() ) + searchBookmarkedModule(str,target); + } + m_dragType = ""; + cleanDropVisualizer(); +} +#undef MOVE_ITEMS + +/** */ +void CGroupManager::contentsMousePressEvent( QMouseEvent* e ) { + m_pressedPos = e->pos(); + m_pressedItem = dynamic_cast(itemAt(contentsToViewport(m_pressedPos))); + const bool open = m_pressedItem ? m_pressedItem->isOpen() : false; + KListView::contentsMousePressEvent(e); + + if ((e->state() & ControlButton) || (e->state() & ShiftButton)) + return; + + if (e->button() == LeftButton) { + if (m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Group + && m_singleClick && (m_pressedItem->isOpen() == open) ) { + //open group with first click if it's a global setting of KDE + m_pressedItem->setOpen( !m_pressedItem->isOpen() ); + } + } + else if (e->button() == RightButton & m_useRMBMenu) { + m_menu = true; + m_popupMenu->exec( viewport()->mapToGlobal( contentsToViewport(m_pressedPos) )); + m_menu = false; + } +} + +/** Reimplementation. */ +void CGroupManager::contentsMouseDoubleClickEvent ( QMouseEvent * e){ +// qDebug("CGroupManager::contentsMouseDoubleClickEvent ( QMouseEvent * e)"); + bool open = false; + if (m_pressedItem) + open = m_pressedItem->isOpen(); + + KListView::contentsMouseDoubleClickEvent(e); + + if ((e->state() & ControlButton) || (e->state() & ShiftButton)) + return; + if (e->button() == LeftButton) { + if (m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Group + && !m_singleClick && (m_pressedItem->isOpen() == open) ) { + //open group with first click if it's a global setting of KDE + m_pressedItem->setOpen( !m_pressedItem->isOpen() ); + } + } +} + +void CGroupManager::contentsMouseReleaseEvent ( QMouseEvent* e ) { + KListView::contentsMouseReleaseEvent(e); + if ( !(m_pressedItem = dynamic_cast(itemAt(contentsToViewport(e->pos())))) ) + return; + if ((e->state() & ControlButton) || (e->state() & ShiftButton)) + return; + + if (m_pressedItem && (e->button() == LeftButton)) { + if (m_pressedItem->type() == CGroupManagerItem::Module && m_pressedItem->moduleInfo()) { + //check if module is encrypted and show dialog if it wasn't opened before + QList items = selectedItems(); + if (items.count() > 1) { + ListCSwordModuleInfo modules; + for (items.first(); items.current(); items.next()) { + CGroupManagerItem* i = dynamic_cast(items.current()); + if (i && i->type() == CGroupManagerItem::Module && i->moduleInfo()) + modules.append(i->moduleInfo()); + } + emit createSwordPresenter( modules, QString::null ); + } + else + emit createSwordPresenter( m_pressedItem->moduleInfo(), QString::null ); + + if (m_pressedItem->moduleInfo()->isEncrypted()) { + KConfigGroupSaver groupSaver(m_config, "Groupmanager"); + if (m_showHelpDialogs && !m_config->readBoolEntry(QString::fromLatin1("shown %1 encrypted").arg(m_pressedItem->moduleInfo()->name()), false)) { + CHTMLDialog dlg(HELPDIALOG_MODULE_LOCKED); + dlg.exec(); + } + if (m_showHelpDialogs) + m_config->writeEntry(QString::fromLatin1("shown %1 encrypted").arg(m_pressedItem->moduleInfo()->name()), true); + } + } + else if (m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Bookmark) { + if (m_pressedItem->moduleInfo() && m_pressedItem->getBookmarkKey() ) + emit createSwordPresenter( m_pressedItem->moduleInfo(), m_pressedItem->getKeyText() ); + } + } +} + +/** Reimplementation */ +void CGroupManager::contentsMouseMoveEvent ( QMouseEvent * e) { + KListView::contentsMouseMoveEvent( e ); + if (!m_useDragDrop) + return; + + CGroupManagerItem* dragItem=(CGroupManagerItem *)itemAt( contentsToViewport(e->pos()) ); + + //mouse is pressed, an item is selected and the popup menu isn't opened + if ( (e->state()&LeftButton) && (e->stateAfter()&LeftButton) && dragItem && !m_menu) { + //Is it time to start a drag? + if (abs(e->pos().x() - m_pressedPos.x()) > KGlobalSettings::dndEventDelay() || + abs(e->pos().y() - m_pressedPos.y()) > KGlobalSettings::dndEventDelay() ) { + // Collect all selected items + ASSERT(m_itemList); + m_itemList = new QList; + QListViewItemIterator it( this ); + for( ; it.current(); it++ ) + if ( it.current()->isSelected() ) + m_itemList->append( (CGroupManagerItem*)it.current() ); + QTextDrag *d = 0; + if (!dragItem) + return; + switch (dragItem->type()){ + case (CGroupManagerItem::Bookmark): + if (dragItem->moduleInfo()) { + QString ref = dragItem->getKeyText(); + QString mod = dragItem->moduleInfo()->name(); + + d = new QTextDrag(CReferenceManager::encodeReference(mod,ref), viewport()); + d->setSubtype(BOOKMARK); + m_dragType = BOOKMARK; + } + break; + case (CGroupManagerItem::Module): + d = new QTextDrag( "" , viewport()); + d->setSubtype(MODULE); + m_dragType = MODULE; + break; + case (CGroupManagerItem::Group): + d = new QTextDrag( "" , viewport()); + d->setSubtype(GROUP); + m_dragType = GROUP; + break; + } + + if (d) { + d->setPixmap( *(dragItem->pixmap(0)) ); + m_menu = false; + d->drag(); + } + } + } +} + +/** Creates a new group */ +void CGroupManager::slotCreateNewGroup(){ + bool isOk; + QString groupname = QInputDialog::getText(i18n("Enter name of folder - BibleTime"),i18n("Please enter the name of the folder!"),"", &isOk, 0); + + if (isOk) { + if (m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Group) { + (void)new CGroupManagerItem(m_pressedItem, groupname, QString::null, 0,0, CGroupManagerItem::Group); + m_pressedItem->setOpen(true); + } + else if (m_pressedItem && m_pressedItem->parent() && m_pressedItem->parent()->type() == CGroupManagerItem::Group){ + (void)new CGroupManagerItem(m_pressedItem->parent(), groupname, QString::null, 0,0, CGroupManagerItem::Group); + m_pressedItem->parent()->setOpen(true); + } + else { + (void)new CGroupManagerItem(this, groupname, QString::null, 0, 0,CGroupManagerItem::Group); + } + } +} + +const int CGroupManager::parentId(CGroupManagerItem *item, CGroupManagerItem* parentItem) +{ + // search parent of item and return the id of the parent + int ret = -1; // the view and the parent item have id -1 + int index = 0; + CGroupManagerItem* myItem = 0; + + if (item) { + if (item->parent() && item != parentItem) { + QListViewItemIterator it; + if (parentItem) { + it = QListViewItemIterator( parentItem ); + } + else + it = QListViewItemIterator( this ); + + if (item->parent() == parentItem) + return -1; + while (it.current() && (it.current() != item->parent()) ) { + myItem = (CGroupManagerItem*)it.current(); + if (parentItem && !isChild(parentItem, myItem) ) { + it++; + continue; + } + if (myItem && myItem->type() == CGroupManagerItem::Group) { + index++; + } + it++; + } + if (it.current()) + ret = index; + } + } + return ret; +} + +/** returns the parent of the item with the id ID */ +CGroupManagerItem* CGroupManager::findParent( const int ID, CGroupManagerItem* parentItem){ + CGroupManagerItem* myItem = 0; + int index = 0; + + QListViewItemIterator it; + if (parentItem) + it = QListViewItemIterator(parentItem); + else + it = QListViewItemIterator(this); + + //traverse the tree and try to find the group with the id ID index using comparision + for( ; it.current(); it++ ) { + myItem = dynamic_cast( it.current() ); + if ( parentItem && !isChild(parentItem, myItem) ) { + continue; + } + if (myItem && myItem->type() == CGroupManagerItem::Group) { + if (index == ID) { + return myItem; + } + else + index++; + } + } + return 0; // return 0 if parent wasn't found +} + +/** Opens a dialog to enter the key to unlock an encrypted module. */ +void CGroupManager::slotUnlockModule(){ + bool ok; + QString unlockKey = QInputDialog::getText(i18n("BibleTime - Unlock module"),i18n("Enter the key to unlock the module!"), m_pressedItem->moduleInfo()->config(CSwordModuleInfo::CipherKey), &ok, 0 ); + if (ok) { + CSwordModuleInfo::UnlockErrorCode ret = m_pressedItem->moduleInfo()->unlock( unlockKey ); + if ( ret != CSwordModuleInfo::noError) { + //an error occured + switch (ret) { + case CSwordModuleInfo::noPermission: + break; + case CSwordModuleInfo::wrongUnlockKey: + break; + case CSwordModuleInfo::notLocked: + break; + + default: + break; + } + } + } +} + +/** Reads in bookmarks from m_config and creates them as subitems of group. If group is 0 we create them a toplevel items. */ +const bool CGroupManager::readSwordBookmarks(KConfig* configFile, CGroupManagerItem* group, const Action){ + //read and create group entries + CGroupManagerItem* parentItem = 0; + + QStringList groupList = configFile->readListEntry("Groups"); + + //read in all bookmarks + QStringList bookmarkList = configFile->readListEntry("Bookmarks"); + QStringList bookmarkModulesList = configFile->readListEntry("Bookmark modules"); + QStringList bookmarkDescriptionsList = configFile->readListEntry("Bookmark descriptions"); + QValueList parentList = configFile->readIntListEntry("Bookmark parents"); + + QStringList::Iterator it_bookmarks = bookmarkList.begin(); + QStringList::Iterator it_modules = bookmarkModulesList.begin(); + QStringList::Iterator it_descriptions = bookmarkDescriptionsList.begin(); + QValueList::Iterator it_parents = parentList.begin(); + + CSwordModuleInfo* moduleInfo = 0; + CGroupManagerItem *myItem = 0; + CGroupManagerItem *oldItem = 0; + + while ( it_bookmarks != bookmarkList.end() && it_parents != parentList.end() + && it_modules != bookmarkModulesList.end() ) { + moduleInfo = backend()->findModuleByName((*it_modules)); + if ( (*it_parents) == -1) { + if (group) + myItem = new CGroupManagerItem(group, (*it_bookmarks), (*it_modules), moduleInfo, 0, CGroupManagerItem::Bookmark); + else + myItem = new CGroupManagerItem(this, (*it_bookmarks), (*it_modules), moduleInfo, 0, CGroupManagerItem::Bookmark); + } + else { + parentItem = findParent( (*it_parents), group ? group : 0 ); + if (parentItem) + myItem = new CGroupManagerItem(parentItem, (*it_bookmarks), (*it_modules), moduleInfo,0, CGroupManagerItem::Bookmark); + else if (group) + myItem = new CGroupManagerItem(group, (*it_bookmarks), (*it_modules), moduleInfo,0, CGroupManagerItem::Bookmark); + else + myItem = new CGroupManagerItem(this, (*it_bookmarks), (*it_modules), moduleInfo,0, CGroupManagerItem::Bookmark); + } + if (myItem && it_descriptions != bookmarkDescriptionsList.end()) + myItem->setDescription( *it_descriptions ); + if (myItem && oldItem) { + myItem->moveAfter(oldItem); + } + oldItem = myItem; + + ++it_parents; + ++it_modules; + ++it_descriptions; + ++it_bookmarks; + } + return true; +} + +/** Save items of group to m_config. If grou is 0 we save all items. The path to the group-item itself is saved, too. */ +const bool CGroupManager::saveSwordBookmarks(KConfig* configFile, CGroupManagerItem* group, const Action){ + int parentID = 0; + CGroupManagerItem* myItem = 0; + QStringList groupList; + QValueList parentList; + QStringList bookmarkList; + QStringList bookmarkModuleList; + QStringList bookmarkDescriptionList; + QListViewItemIterator it; + + //save bookmarks + parentList.clear(); + bookmarkList.clear(); + bookmarkModuleList.clear(); + bookmarkDescriptionList.clear(); + + if (group) + it = QListViewItemIterator ( group ); + else if (group && group->childCount() == 0) { + return false; + } + else + it = QListViewItemIterator (this); + + for( ; it.current(); it++ ) { + myItem = (CGroupManagerItem*)it.current(); + if (group) + if (!isChild(m_pressedItem, myItem)) { + continue; + } + if (myItem && myItem->type() == CGroupManagerItem::Bookmark) { + if (group) { + parentID = parentId( dynamic_cast(it.current()),m_pressedItem ); + } + else { + parentID = parentId( dynamic_cast(it.current()) ); + } + parentList.append( parentID ); + + CSwordKey* key = myItem->getBookmarkKey(); + if (key) { + VerseKey* vk = dynamic_cast(key); + QString oldLocale; + if (vk) { + oldLocale = QString::fromLatin1(vk->getLocale()); + vk->setLocale("en"); //save the english key names + } + bookmarkList.append( key->key() ); + if (vk) { + vk->setLocale(oldLocale.latin1()); + } + } + else + bookmarkList.append(""); //invalid key + + if (myItem && !myItem->description().isEmpty()) //save description + bookmarkDescriptionList.append( myItem->description() ); + else + bookmarkDescriptionList.append( QString::null ); + + if (myItem->moduleInfo()) { //save the module + bookmarkModuleList.append( myItem->moduleInfo()->name() ); + } + else { + bookmarkModuleList.append( myItem->m_moduleName ); + } + } + } + + configFile->writeEntry("Bookmarks", bookmarkList); + configFile->writeEntry("Bookmark descriptions", bookmarkDescriptionList); + configFile->writeEntry("Bookmark modules", bookmarkModuleList); + configFile->writeEntry("Bookmark parents", parentList); + + return true; +} + +/** Impoorts bookmarks */ +void CGroupManager::slotImportBookmarks(){ + if (!m_pressedItem || ( m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Group) ) { + QString file = KFileDialog::getOpenFileName(QString::null, "*.btb | *.btb", 0, i18n("Import bookmarks ...")); + if (!file.isNull()) { + KSimpleConfig simpleConfig(file, false); + simpleConfig.setGroup("Bookmarks"); + short int formatVersion = simpleConfig.readNumEntry("Bookmark format version", -1); + + //bookmark format of imported file is newer than our version + if (formatVersion > BOOKMARK_FORMAT_VERSION) { + const int retValue = KMessageBox::warningContinueCancel(this, i18n("A problem occurred while importing bookmarks!
\ +The bookmarks format of the imported file is newer
\ +than the bookmarks format version of this version of BibleTime!
\ +Importing the bookmarks may not work correctly!
Do you want to continue?
"), i18n("Import of bookmarks"), i18n("Continue") ); + if ( retValue != KMessageBox::Continue ) + return; + } + + readGroups(&simpleConfig, m_pressedItem, Import); + readSwordBookmarks(&simpleConfig, m_pressedItem, Import); + } + } +} + +/** Exports bookmarks of selected group */ +void CGroupManager::slotExportBookmarks(){ + if (!m_pressedItem || ( m_pressedItem && m_pressedItem->type() == CGroupManagerItem::Group) ) { + QString file = KFileDialog::getSaveFileName (QString::null, "*.btb | *.btb", 0, i18n("Export bookmarks ...")); + if (!file.isNull()) { + KSimpleConfig simpleConfig(file, false); + simpleConfig.setGroup("Bookmarks"); + simpleConfig.writeEntry("Bookmark format version", BOOKMARK_FORMAT_VERSION); + + saveGroups(&simpleConfig, m_pressedItem, Export); + saveSwordBookmarks(&simpleConfig, m_pressedItem, Export); + simpleConfig.sync(); + } + } +} + + +const bool CGroupManager::readSwordModules(KConfig* configFile, CGroupManagerItem* group) { + if (!m_swordList) { + qWarning("CGroupManager::readSwordModules: no sword modules, return and do nothing."); + return false; + } + CGroupManagerItem* parentItem = 0; + + QStringList moduleList = configFile->readListEntry("Modules"); + QValueList parentList = configFile->readIntListEntry("Module parents"); + QStringList::Iterator it_modules = moduleList.begin(); + QValueList::Iterator it_parents = parentList.begin(); + + CSwordModuleInfo* myModuleInfo = 0; + CGroupManagerItem* myItem = 0; + CGroupManagerItem* oldItem = 0; + + while ( it_modules != moduleList.end() && it_parents != parentList.end() ) { + if ((*it_modules).isEmpty() || !( myModuleInfo = backend()->findModuleByName(*it_modules) )) { //the module was removed so we don't show it + ++it_parents; + ++it_modules; + continue; + } + + if ( (*it_parents) == -1) { //module on top + parentItem = group; //instead of group ? group : 0; + } + else { + parentItem = findParent( (*it_parents), group ); + if (!parentItem) + parentItem = group; + } + + if (parentItem) { + myItem = new CGroupManagerItem(parentItem, QString::null, QString::null, myModuleInfo,0, CGroupManagerItem::Module); + } + else + myItem = new CGroupManagerItem(this, QString::null, QString::null, myModuleInfo,0, CGroupManagerItem::Module); + + if (myItem && oldItem) + myItem->moveAfter(oldItem); + + oldItem = myItem; + + ++it_parents; + ++it_modules; + } + return true; +}; + +const bool CGroupManager::saveSwordModules(KConfig* configFile, CGroupManagerItem* group) { + int parentID = 0; + CGroupManagerItem* myItem = 0; + QValueList parentList; + QStringList moduleList; + + QListViewItemIterator it; + + parentList.clear(); + moduleList.clear(); + + if (group) + it = QListViewItemIterator( group ); + else + it = QListViewItemIterator(this); + + for( ; it.current(); it++ ) { + myItem = (CGroupManagerItem*) it.current(); + if (group) + if (!isChild(m_pressedItem, myItem)) + continue; + + if (myItem && myItem->type() == CGroupManagerItem::Module) { + if (group) + parentID = parentId( (CGroupManagerItem*)it.current(),m_pressedItem ); + else + parentID = parentId( (CGroupManagerItem*)it.current() ); + parentList.append( parentID ); + + if (myItem->moduleInfo()) + moduleList.append( myItem->moduleInfo()->name() ); + else { + moduleList.append( myItem->text(0) ); //first column is the modulename + } + } + } + configFile->writeEntry("Modules", moduleList); + configFile->writeEntry("Module parents", parentList); + + return true; +} + +const bool CGroupManager::readGroups(KConfig* configFile, CGroupManagerItem* group, const Action action) { + //read and create group entries + CGroupManagerItem* parentItem = 0; + bool groupExists = false; + CGroupManagerItem* oldItem = 0; + CGroupManagerItem* newItem = 0; + + QStringList groupList = configFile->readListEntry("Groups"); + QValueList parentList = configFile->readIntListEntry("Group parents"); + + QStringList::Iterator it_groups = groupList.begin(); + QValueList::Iterator it_parents = parentList.begin(); + + while ( (it_groups != groupList.end()) && (it_parents != parentList.end()) ) { + groupExists = false; + if ( (*it_parents) == -1) { //no parent item saved + if (action == Import) { //try to find existing group + if (CGroupManagerItem* existingGroup = findGroup(*it_groups, group, *it_parents)) + groupExists = true; + } + else + parentItem = group; + } + else { + parentItem = findParent( (*it_parents),group ); + if (!parentItem) + parentItem = group; + } + + if (!groupExists) { + if (parentItem) { + newItem = new CGroupManagerItem(parentItem, (*it_groups), QString::null, 0,0, CGroupManagerItem::Group); + } + else { + newItem = new CGroupManagerItem(this, (*it_groups), QString::null, 0,0, CGroupManagerItem::Group); + } + + if (newItem && oldItem ) { + newItem->moveAfter( oldItem ); + } + if (newItem) { + /* we can't move a topgroup behind a subgroup, so we use multiple + parent calls + */ + while (parentId(newItem) > *it_parents) { + if ( (group && isChild(group, newItem)) || (newItem && newItem->parent()) ) + newItem = newItem->parent(); + else + break; + } + oldItem = newItem; + } + } + + ++it_parents; + ++it_groups; + } + return true; +}; + +const bool CGroupManager::saveGroups(KConfig* configFile, CGroupManagerItem* group, Action normal) { + int parentID = 0; + CGroupManagerItem* myItem = 0; + QStringList groupList; + QValueList parentList; + + QListViewItemIterator it; + + //save groups + if (group && group->childCount() > 0) + it = QListViewItemIterator ( group->firstChild() ); + else if (group && group->childCount() == 0) { + return false; + } + else + it = QListViewItemIterator ( this ); + + for( ; it.current(); it++ ) { + myItem = (CGroupManagerItem*) it.current(); + if (group && !isChild(m_pressedItem, myItem)) + continue; + if (myItem && myItem->type() == CGroupManagerItem::Group) { + if (group) + parentID = parentId( (CGroupManagerItem*)it.current(), m_pressedItem ); + else + parentID = parentId( (CGroupManagerItem*)it.current() ); + groupList.append( myItem->text(0) ); + parentList.append( parentID ); + } + } + configFile->writeEntry("Groups", groupList); + configFile->writeEntry("Group parents", parentList); + return true; +} + +/** Returns true if the item "item" is a child of item "parent". */ +const bool CGroupManager::isChild(QListViewItem* parent, QListViewItem* child){ + QListViewItem *myParent = child; + while (myParent && myParent != parent ) + myParent = myParent->parent(); + return (myParent == parent) && (parent != child); +} + +/** Reimplementatuiion. */ +void CGroupManager::viewportPaintEvent(QPaintEvent* e) { + KListView::viewportPaintEvent(e); + + if (m_oldDragRect.isValid()) + { + static bool invalidated=false; + if (!invalidated) + { + invalidated=true; + viewport()->repaint(m_oldDragRect); + } + QPainter painter(viewport()); + drawDropVisualizer(&painter, m_parentItemDrop, m_afterItemDrop, ""); + invalidated=false; + } +} + +/** Reimplementation with different parameters */ +const QRect CGroupManager::drawDropVisualizer (QPainter *p, CGroupManagerItem */*parent*/, CGroupManagerItem *after, const QString& /*type*/){ + QRect insertmarker; + bool useParent = false; + + if ( m_dragType == BOOKMARK ) { //we are moving a module + if ( after && after->type() == CGroupManagerItem::Group) + insertmarker = itemRect(after); + else if ( after && after && after->type() == CGroupManagerItem::Module ) + insertmarker = QRect(itemRect(after)); + else if ( after && after && after->type() == CGroupManagerItem::Bookmark ) { + if (after->parent()) { + useParent = true; + insertmarker = itemRect(after->parent()); //paint nothing + } + else + insertmarker = QRect(); + } + else if ( after && after->parent() && after->parent()->type() == CGroupManagerItem::Group ) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else //if (!after) + insertmarker = QRect(); //this->visibleRect(); +// else +// insertmarker = QRect(); + } + else if ( m_dragType == REFERENCE ) { //we are moving a reference + if ( after && after->type() == CGroupManagerItem::Group) + insertmarker = itemRect(after); + else if ( after && after->type() == CGroupManagerItem::Module ) + insertmarker = QRect(itemRect(after)); + else if ( after && after->type() == CGroupManagerItem::Bookmark ) { + if (after->parent()) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else + insertmarker = QRect(); //paint nothing + } + else if ( after && after->parent() && after->parent()->type() == CGroupManagerItem::Group ) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else if (!after) + insertmarker = QRect(); //this->visibleRect(); + else + insertmarker = QRect(); + } + else if ( m_dragType == MODULE ) { //we are moving a reference + if ( after && after->type() == CGroupManagerItem::Group) + insertmarker = itemRect(after); + else if ( after && (after->type() == CGroupManagerItem::Module || after->type() == CGroupManagerItem::Bookmark) ) { + if (after->parent()) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else + insertmarker = QRect(); //paint nothing + } + else if ( after && after->parent() && after->parent()->type() == CGroupManagerItem::Group ) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else if (!after) + insertmarker = QRect();//this->visibleRect(); + else + insertmarker = QRect(); + } + else if (m_dragType == TEXT) { + if ( after && after && after->type() == CGroupManagerItem::Module ) + insertmarker = QRect(itemRect(after)); + else + insertmarker = QRect(); + } + else if (m_pressedItem) { + if ( m_pressedItem->type() == CGroupManagerItem::Group ) { //we are moving a group + if (after && after->type() == CGroupManagerItem::Group) + insertmarker = itemRect(after); + else if (after && after->parent() && after->parent()->type() == CGroupManagerItem::Group) { + useParent = true; + insertmarker = itemRect(after->parent()); + } + else if (!after) + insertmarker = QRect();//this->visibleRect(); + else + insertmarker = QRect(); + } + } + + if ( p && insertmarker.isValid() ) { + if (useParent) + insertmarker.setLeft( treeStepSize()*(after->parent()->depth()+(rootIsDecorated() ? 1 :0 ))+itemMargin()- contentsX()); + else + insertmarker.setLeft( treeStepSize()*(after->depth()+(rootIsDecorated() ? 1 :0 ))+itemMargin() - contentsX()); + style().drawFocusRect( p, insertmarker, colorGroup(), after->isSelected() ? &colorGroup().highlight() : &colorGroup().base(), after->isSelected() && !useParent ); + } + else if (!insertmarker.isValid()) { + cleanDropVisualizer(); + } + return insertmarker; +} + +/** Reimplementation. */ +void CGroupManager::cleanDropVisualizer(){ + if ( m_oldDragRect.isValid() ) { + QRect rect = m_oldDragRect; + m_oldDragRect = QRect(); + viewport()->repaint(rect,true); + } +} + +/** Resets the groupmanager. Recreates the original Bibles, Lexicons and Commentary groups. */ +void CGroupManager::slotReset(){ + int result = 0; + if (m_showHelpDialogs) + result = KMessageBox:: warningContinueCancel( this, i18n("This function will reset the main index!
This will recreate the original groups and delete all other items!
Be sure no important bookmarks will be deleted!
Do you want to continue?
"), i18n("BibleTime - Reset main index"), i18n("Continue")); + else + result = KMessageBox::Continue; + + if (result == KMessageBox::Continue) { + clear(); + setupStandardSwordTree(); + } +} + +/** Prints the selected bookmark. */ +void CGroupManager::slotPrintBookmark(){ + if (!m_pressedItem || ( m_pressedItem && m_pressedItem->type() != CGroupManagerItem::Bookmark) ) + return; + CExportManager::printKey( m_pressedItem->moduleInfo(), m_pressedItem->getBookmarkKey()->key(), QString::null, m_pressedItem->description() ); +} + +/** Deletes the searchdialog. */ +void CGroupManager::slotDeleteSearchdialog(){ + if (m_searchDialog) + m_searchDialog->delayedDestruct(); //delete the search dialog + m_searchDialog = 0; +} + +/** Reimplementation. */ +void CGroupManager::resizeEvent( QResizeEvent* e ) { + KListView::resizeEvent(e); + setColumnWidth(0, visibleWidth() ); + triggerUpdate(); + +} + +/** Is called when the return key was pressed on a listview item. */ +void CGroupManager::slotReturnPressed( QListViewItem* i){ + CGroupManagerItem* item = dynamic_cast(i); + if (!item) + return; + switch (item->type()) { + case CGroupManagerItem::Bookmark: + if (item->moduleInfo()) + emit createSwordPresenter(item->moduleInfo(),item->getKeyText() ); + break; + case CGroupManagerItem::Module: + if (item->moduleInfo()) + emit createSwordPresenter(item->moduleInfo(), QString::null); + break; + case CGroupManagerItem::Group: + item->setOpen( !item->isOpen() ); + break; + default: + break; + } +} + +/** Updates the content size of this list view. */ +void CGroupManager::resizeContents( int w, int h ){ + if (m_useDragDrop) + KListView::resizeContents(w,h+25); + else + KListView::resizeContents(w,h); +} + +/** Returns the standard group with the given name if it alredy exists. Otherwise the group will be created. */ +CGroupManagerItem* CGroupManager::findGroup(const QString& name, CGroupManagerItem* group, const int id){ + CGroupManagerItem* item = 0; + QListViewItemIterator it ; + if (group) + it = QListViewItemIterator(group); + else + it = QListViewItemIterator(this); + + for ( ; it.current(); ++it ) { + item = dynamic_cast(it.current()); + if (item && item->type() == CGroupManagerItem::Group && item->text(0) == name && parentId(item, group) == id) { //found the right group + if (group && !isChild(group, item)) + item = 0; + else + break; + } + else { + item = 0; + } + } + if (!item) { + if (group) + item = new CGroupManagerItem(group, name, QString::null, 0, 0, CGroupManagerItem::Group); + else + item = new CGroupManagerItem(this, name, QString::null, 0, 0, CGroupManagerItem::Group); + } + return item; +} + +/** Debugs the tree items */ +void CGroupManager::printTree() { + QListViewItemIterator it(this); + while (it.current()) { + QListViewItem* item = it.current(); + for (int i = 0; i < item->depth(); ++i) { + cout << "\t"; + } + cout << item->text(0).latin1() << endl; + ++it; + }; +} diff --git a/bibletime/frontend/groupmanager/cgroupmanager.h b/bibletime/frontend/groupmanager/cgroupmanager.h new file mode 100644 index 0000000..2447e3b --- /dev/null +++ b/bibletime/frontend/groupmanager/cgroupmanager.h @@ -0,0 +1,275 @@ +/*************************************************************************** + cgroupmanager.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CGROUPMANAGER_H +#define CGROUPMANAGER_H + +//BibleTime includes +#include "cgroupmanageritem.h" +#include "backend/cswordmoduleinfo.h" +#include "frontend/cpointers.h" + +//QT includes +#include +#include +#include +#include + +//KDE includes +#include + +class KPopupMenu; +class KConfig; + +class CSearchDialog; + +/** + * The groupmanager which handles all the modules and bookmarks + * @author The BibleTime Team + */ +class CGroupManager : public KListView, public CPointers { + Q_OBJECT + +public: + enum Action {Import, Export, Normal}; + + CGroupManager(QWidget *parent=0, const char *name=0, ListCSwordModuleInfo *moduleInfo_list = 0, const bool useBookmarks = true, const bool saveSettings = true, const bool useDnD=true, const bool useExtendedMode=true, const bool useRMBMenu = true, const bool showHelpDialogs = true); + ~CGroupManager(); + /** + * Initializes the tree of this CGroupmanager + */ + void setupSwordTree(); + /** + * + */ + void setupStandardSwordTree(); + /** + * Read settings from config + */ + void readSettings(); + /** + * Saves settings to config file + */ + void saveSettings(); + /** + * + */ + void initView(); + /** + * + */ + void searchBookmarkedModule(const QString&, CGroupManagerItem *); + /** + * Returns true if the item "item" is a child of item "parent". + */ + const bool isChild(QListViewItem* parent, QListViewItem* child); + +public slots: // Public slots + /** + * Opens a dialog to enter the key to + * unlock an encrypted module. + */ + void slotUnlockModule(); + /** + * Resets the groupmanager. Recreates the original Bibles, Lexicons and Commentary groups. + */ + void slotReset(); + /** + * Resizes the content size of this list view. + */ + virtual void resizeContents(int w, int h); + + +signals: // Signals + /** + * Is emitted when a module in the tree was selected. + */ + void createSwordPresenter(CSwordModuleInfo*, const QString&); + /** + * Is emitted when more than one module are selected + */ + void createSwordPresenter(ListCSwordModuleInfo, const QString&); + +protected slots: // Protected slots + /** + * Deletes the item given as parameter + */ + void slotDeleteSelectedItems(); + /** + * Changes the current item + */ + void slotChangeBookmark(); + /** + * Is called before the menu is shown + */ + void slotPopupAboutToShow(); + /** + * search the modules that were selected + */ + void slotSearchSelectedModules(); + /** + * Shows an about dialog containing information about a module + */ + void slotShowAbout(); + /** + * + */ + void slotCreateNewPresenter(); + /** + * Creates a new group + */ + void slotCreateNewGroup(); + /** + * Exports bookmarks of selected group + */ + void slotExportBookmarks(); + /** + * Impoorts bookmarks + */ + void slotImportBookmarks(); + /** + * Reimplementatuiion. + */ + void viewportPaintEvent(QPaintEvent*) ; + /** + * Reimplementation with different parameters + */ + const QRect drawDropVisualizer(QPainter *p, CGroupManagerItem *parent, CGroupManagerItem *after, const QString& type); + /** + * Reimplementation. + */ + void cleanDropVisualizer(); + /** + * Reimplementation. + */ + void contentsMouseDoubleClickEvent ( QMouseEvent * e); + /** + * Changes a group. + */ + void slotChangeGroup(); + /** + * Prints the selected bookmark. + */ + void slotPrintBookmark(); + /** + * Reimplementation. + */ + void resizeEvent( QResizeEvent * ) ; + /** + * Deletes the searchdialog. + */ + void slotDeleteSearchdialog(); + +private: + /** + * Our tooltip class. It displays a tooltip depending on the current item under the mouse cursor. + */ + class ToolTip : public QToolTip { + public: + ToolTip(QWidget* parent); + /** + * Displays a tooltip for position p using the getToolTip() function of CGroupManagerItem + */ + void maybeTip( const QPoint &pos); + }; + /** + * + */ + ListCSwordModuleInfo *m_swordList; + void initConnections(); + void contentsDragEnterEvent( QDragEnterEvent* e); + void contentsDragMoveEvent( QDragMoveEvent* e); + void contentsDragLeaveEvent( QDragLeaveEvent* e); + void contentsDropEvent( QDropEvent* e); + void contentsMousePressEvent(QMouseEvent*); + void contentsMouseReleaseEvent(QMouseEvent*); + void contentsMouseMoveEvent ( QMouseEvent * ) ; + /** + * Find ID of parent item. + */ + const int parentId(CGroupManagerItem *item, CGroupManagerItem* parentItem = 0); + /** + * returns the parent of the item with the ID index + */ + CGroupManagerItem* findParent( const int ID, CGroupManagerItem* parentItem = 0 ); + void createNewBookmark(CGroupManagerItem* parent, CSwordModuleInfo* module, const QString& ref); + /** + * Save items of group to config. If grou is 0 we save all items. + * The path to the group-item itself is saved, too. + */ + const bool saveSwordBookmarks(KConfig* configFile, CGroupManagerItem* group, const Action = Normal); + /** + * Reads in bookmarks from config and creates them as subitems of group. + * If group is 0 we create them a toplevel items. + */ + const bool readSwordBookmarks(KConfig* configFile, CGroupManagerItem* group, const Action = Normal); + /** + * Save items of group to config. If grou is 0 we save all items. + * The path to the group-item itself is saved, too. + */ + const bool saveSwordModules(KConfig* configFile, CGroupManagerItem* group); + /** + * Reads in bookmarks from config and creates them as subitems of group. + * If group is 0 we create them a toplevel items. + */ + const bool readSwordModules(KConfig* configFile, CGroupManagerItem* group); + /** + * Save items of group to config. If grou is 0 we save all items. + * The path to the group-item itself is saved, too. + */ + const bool saveGroups(KConfig* configFile, CGroupManagerItem* group, const Action = Normal); + /** + * Reads in bookmarks from config and creates them as subitems of group. + * If group is 0 we create them a toplevel items. + */ + const bool readGroups(KConfig* configFile, CGroupManagerItem* group, const Action = Normal); + /** + * Returns the standard group with the given name if it alredy exists. + * Otherwise the group will be created. + */ + CGroupManagerItem* findGroup(const QString& name, CGroupManagerItem* group = 0, const int id = -1); + + void printTree(); + + KConfig* m_config; + KPopupMenu* m_popupMenu; + bool m_menu; + QPoint m_pressedPos; + QRect m_oldDragRect; + CGroupManagerItem* m_parentItemDrop; + CGroupManagerItem* m_afterItemDrop; + QString m_dragType; + CSearchDialog* m_searchDialog; + ToolTip* m_toolTip; + CGroupManagerItem* m_pressedItem; + QList* m_itemList; + bool m_singleClick; + bool m_useBookmarks; + bool m_saveSettings; + bool m_useDragDrop; + bool m_useExtendedMode; + bool m_useRMBMenu; + bool m_showHelpDialogs; + +private slots: // Private slots + /** + * Is called when the return key was pressed on a listview item. + */ + void slotReturnPressed( QListViewItem* ); +}; + +#endif + diff --git a/bibletime/frontend/groupmanager/cgroupmanageritem.cpp b/bibletime/frontend/groupmanager/cgroupmanageritem.cpp new file mode 100644 index 0000000..7562cbe --- /dev/null +++ b/bibletime/frontend/groupmanager/cgroupmanageritem.cpp @@ -0,0 +1,287 @@ +/*************************************************************************** + cgroupmanageritem.cpp - description + ------------------- + begin : Tue Jan 25 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cgroupmanageritem.h" +#include "cgroupmanager.h" + +#include "backend/cswordversekey.h" +#include "backend/cswordldkey.h" +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordbiblemoduleinfo.h" +#include "backend/cswordlexiconmoduleinfo.h" + +#include "frontend/ctoolclass.h" +#include "frontend/cbtconfig.h" + +#include "resource.h" + +//Qt includes +#include + +//KDE includes +#include +#include +#include + +//Sword includes +#include + + +CGroupManagerItem::CGroupManagerItem(CGroupManager *parent, const QString& caption, + const QString& modulename, CSwordModuleInfo *module_info, CSwordKey* bookmarkKey, CGroupManagerItem::ItemType Type) + : KListViewItem(static_cast(parent) ) { + + init(caption, modulename, module_info, bookmarkKey, Type); +} + +CGroupManagerItem::CGroupManagerItem(CGroupManagerItem *parent, const QString& caption, + const QString& modulename, CSwordModuleInfo *module_info, CSwordKey* bookmarkKey, CGroupManagerItem::ItemType Type) + : KListViewItem(static_cast(parent)) { + + init(caption, modulename, module_info,bookmarkKey, Type); +} + +CGroupManagerItem::~CGroupManagerItem(){ + if (m_bookmarkKey && m_createdOwnKey) { + delete m_bookmarkKey; + m_bookmarkKey = 0; + } +} + +/** Returns the CModuleInfo object for this tree-item. */ +CSwordModuleInfo* CGroupManagerItem::moduleInfo() const { + return m_moduleInfo; +} + +/** Returns the type of this item */ +const CGroupManagerItem::ItemType CGroupManagerItem::type() const { + return m_type; +} + +/** Shows child or not */ +void CGroupManagerItem::setOpen( bool open ){ + QListViewItem::setOpen(open); + if (m_type == Group) { + if (open && this->childCount() > 0) + setPixmap(0,m_openFolderIcon); + else + setPixmap(0,m_folderIcon); + } +} + +/** Initializes the item Used by both constructors to share the double used source code */ +void CGroupManagerItem::init( const QString& caption, const QString& modulename, CSwordModuleInfo *module_info, CSwordKey* bookmarkKey, CGroupManagerItem::ItemType Type ){ + m_bookmarkKey = 0; + m_createdOwnKey = false; + m_moduleInfo = 0; + m_caption = QString::null; + m_description = QString::null; + + setType(Type); + if (bookmarkKey) + setBookmarkKey( bookmarkKey ); + setModuleInfo( module_info ); + m_caption = caption; + m_moduleName = modulename; + + update(); //refresh the pixmap, texts etc. +} + +/** Sets / changes the description */ +void CGroupManagerItem::setDescription(const QString& new_description) { + m_description = new_description; + update(); +} + +/** Returns the description of the item */ +const QString CGroupManagerItem::description() const { + return m_description; +} + +/** Returns the parent of this item. Reimplementation. */ +CGroupManagerItem* CGroupManagerItem::parent(){ + CGroupManagerItem* myParent = dynamic_cast(QListViewItem::parent()); + if (myParent) + return myParent; + else + return 0; +} + +/** Returns the listview of this item */ +CGroupManager* CGroupManagerItem::listView(){ + CGroupManager* myListView = dynamic_cast(QListViewItem::listView()); + if (myListView) + return myListView; + else + return 0; +} + +/** Returns the key if it's a Bookmark, othwerwise return 0 */ +CSwordKey* CGroupManagerItem::getBookmarkKey() const{ + return m_bookmarkKey; +} + +/** Sets the key, which is only used if this item is a Bookmark */ +void CGroupManagerItem::setBookmarkKey( CSwordKey* key ){ + if (m_bookmarkKey && m_createdOwnKey) + delete m_bookmarkKey; + m_bookmarkKey = key; + m_createdOwnKey = false; + update(); +} + +/** Updates this item (icons, captions, etc.) */ +void CGroupManagerItem::update(){ + if (m_type == Group) { + m_folderIcon = GROUP_ICON_SMALL; + m_openFolderIcon = GROUP_OPEN_ICON_SMALL; + setPixmap(0, m_folderIcon); + setText(0, m_caption); + } + else if (m_type == Bookmark) { + QString title = QString::null; + setPixmap(0, BOOKMARK_ICON_SMALL); + CSwordKey* bookmarkKey = getBookmarkKey(); + if ( bookmarkKey ) { //if we have a valid key + title = bookmarkKey->key(); + } + else if (!m_caption.isEmpty()){ //bookmark key is 0, we use now the m_caption member to create a valid key + CSwordKey* key = CSwordKey::createInstance(m_moduleInfo); + ASSERT(key); + if (key) { + m_createdOwnKey = true; + key->key(m_caption); + setBookmarkKey(key); + update();// this won't lead to a infinite loop because we have now a valid key + } + else { //no key and now module but a valid caption + title = m_caption; + } + } + if (!title.isEmpty()) { + title = QString::fromLatin1("%1 (%2)") + .arg(title) + .arg(m_moduleInfo ? m_moduleInfo->name() : i18n("unknown")); + setText(0,title); + } + } + else if ( m_type == CGroupManagerItem::Module ) { + setPixmap(0, CToolClass::getIconForModule(m_moduleInfo)); + if (m_moduleInfo) + setText(0, m_moduleInfo->name()); + else if (!m_moduleName.isEmpty()) + setText(0, m_moduleName); + else + setText(0, i18n("unknown")); + } +} + +/** Sets the type of the item. */ +void CGroupManagerItem::setType( const CGroupManagerItem::ItemType type) { + m_type = type; +} + +/** Sets the module of ths item. */ +void CGroupManagerItem::setModuleInfo( CSwordModuleInfo* moduleInfo ){ + m_moduleInfo = dynamic_cast(moduleInfo); +} + +/** Returns a QString version of the key. */ +const QString CGroupManagerItem::getKeyText(){ + return m_bookmarkKey ? m_bookmarkKey->key() : QString::null; +} + +/** Returns the tooltip for this ite, QString::null is returned if this item has no tooltip. */ +const QString CGroupManagerItem::getToolTip(){ + QString text = QString::null; + switch ( type() ) { + case Bookmark: + { + text = i18n("Bookmark to" ) + QString::fromLatin1(" "); + text.append(QString::fromLatin1("") + getKeyText() + QString::fromLatin1("
")); + if (!description().stripWhiteSpace().isEmpty()) + text.append(QString::fromLatin1("(") + description().stripWhiteSpace() + QString::fromLatin1(")
")); + text.append(QString::fromLatin1("
")); + + CSwordKey* key = dynamic_cast(getBookmarkKey()); + if (!key) + return QString::null; + QString bookmarkText = key ? key->renderedText() : QString(); + if (bookmarkText.length() > 150 && (moduleInfo()->type() != CSwordModuleInfo::Bible)) + bookmarkText = bookmarkText.left(150) + "
[...]"; + + //Module is Unicode-based + if (moduleInfo() && moduleInfo()->isUnicode() ) { + QFont f = CBTConfig::get(CBTConfig::unicode); + text.append( QString::fromLatin1("%3").arg(f.family())/*.arg(CToolClass::makeLogicFontSize(f.pointSize()))*/.arg(bookmarkText) ); + } + else + text.append(bookmarkText); + + return text; + } + case Module: + { + text = i18n("Module") + QString::fromLatin1(": %1
").arg( moduleInfo()->name() ); + text += moduleInfo()->config(CSwordModuleInfo::Description) + QString::fromLatin1("
"); + text += i18n("Language")+ QString::fromLatin1(": %1
").arg(moduleInfo()->module()->Lang()); + if (moduleInfo()->isEncrypted()) + text += i18n("Unlock key") + QString::fromLatin1(": %1
") + .arg(!moduleInfo()->config(CSwordModuleInfo::CipherKey).isEmpty() ? moduleInfo()->config(CSwordModuleInfo::CipherKey) : QString("%1").arg(i18n("not set"))); + if (moduleInfo()->hasVersion()) + text += i18n("Version") + QString::fromLatin1(": %1
").arg(moduleInfo()->config(CSwordModuleInfo::ModuleVersion)); + + QString options; + unsigned int opts; + for (opts = CSwordBackend::filterOptionsMIN; opts <= CSwordBackend::filterOptionsMAX; ++opts){ + if (moduleInfo()->has( (CSwordBackend::FilterOptions) opts )) { + if (!options.isEmpty()) + options += QString::fromLatin1(", "); + options += CSwordBackend::translatedOptionName( (CSwordBackend::FilterOptions) opts); + } + } + if (!options.isEmpty()) + text += i18n("Options") + QString::fromLatin1(": ") + options + QString::fromLatin1(""); + + if (text.right(4) == QString::fromLatin1("
")) + text = text.left(text.length()-4); + return text; + } + case Group: + default: + return QString::null; + } +} + +/** Moves this item after the item "item". */ +void CGroupManagerItem::moveAfter( CGroupManagerItem* item, const MoveType type ){ + if (!item) + return; + + if ( parent() != item->parent() ) { //different levels + if (type == AllowDifferentParents) { //different parents are allowed + if (item->parent()) + item->parent()->insertItem(this); //insert item to the childs + else + listView()->insertItem(this); + moveItem(item); + } + } + else { + moveItem(item); //both items are on the same level, so we can use moveItem + } +} diff --git a/bibletime/frontend/groupmanager/cgroupmanageritem.h b/bibletime/frontend/groupmanager/cgroupmanageritem.h new file mode 100644 index 0000000..708aa24 --- /dev/null +++ b/bibletime/frontend/groupmanager/cgroupmanageritem.h @@ -0,0 +1,190 @@ +/*************************************************************************** + cgroupmanageritem.h - The items in a CGroupManager + ------------------- + begin : Tue Jan 25 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CGROUPMANAGERITEM_H +#define CGROUPMANAGERITEM_H + +//BibleTime includes +#include "../cpointers.h" + +//Qt includes +#include + +//KDE includes +#include +#include + +class CSwordKey; +class CSwordModuleInfo; + +class CGroupManager; +class CSwordModuleInfo; +class QListViewItem; + +/** + * An item which implements functions to get the module of this item. + * + * An item which implements functions to get the module of this item. The constructor gets the required arguments to operate + * @author Joachim Ansorg + */ +class CGroupManagerItem : public KListViewItem, public CPointers { + + friend class CGroupManager; + +public: + enum ItemType { Bookmark, Module, Group }; + enum MoveType { OnlySameParents, AllowDifferentParents }; + + /** + * The constructor. This constructor takes a CGroupManager as parent, the created item will be on the top of the tree. + * @param parent The CGRoupManager which will contain the new item + * @param caption The caption of the item. This parameter will eb passes to @see #init() + * @param modulename The name of our module. This is used in addition to the CModuleInfo object because sometimes the moduleinfo is missing and we don't want to loose bookmarks. + * @param module_info The CModuleInfo object we use for the item. May be zero because a group doesn't have a CModuleInfo. + * @param Type The type of the created item. May ba Module, Bookmark or Group. If you leave out the parameter it will be Module by default. + */ + CGroupManagerItem( CGroupManager *parent, const QString& caption,const QString& modulename, CSwordModuleInfo *module_info, CSwordKey* bookmarkKey = 0, CGroupManagerItem::ItemType Type = CGroupManagerItem::Module ); + /** + * The constructor. This constructor takes a CGroupManagerItem as parent. The created item will be on a child of the parent item + * @param parent The CGroupManagerItem which will be parent item of the new item + * @param caption The caption of the item. This parameter will eb passes to @see #init() + * @param modulename The name of our module. This is used in addition to the CModuleInfo object because sometimes the moduleinfo is missing and we don't want to loose bookmarks. + * @param module_info The CModuleInfo object we use for the item. May be zero because a group doesn't have a CModuleInfo. + * @param Type The type of the created item. May ba Module, Bookmark or Group. If you leave out the parameter it will be Module by default. + */ + CGroupManagerItem( CGroupManagerItem *parent, const QString& caption, const QString& modulename, CSwordModuleInfo *module_info, CSwordKey* bookmarkKey = 0, CGroupManagerItem::ItemType Type = CGroupManagerItem::Module); + /** + * The destructor. Cleans up memory. + */ + ~CGroupManagerItem(); + /** + * Returns the description of the item + * @return The description of the item. Useful for bookmarks. + */ + const QString description() const; + /** + * Use this to get the parent item of the item- + * @return The parent item. Maybe NULL if the item has no parent. + * Reimplementation. + */ + virtual CGroupManagerItem* parent(); + /** + * Sets the module of ths item. + */ + void setModuleInfo( CSwordModuleInfo* moduleInfo ); + /** + * Sets the type of the item. + */ + void setType( const CGroupManagerItem::ItemType type); + /** + * Updates this item (icons, captions, etc.) + */ + virtual void update(); + virtual CGroupManager* listView(); + /** + * Sets the key, which is only used if this item is a Bookmark + */ + void setBookmarkKey( CSwordKey* key ); + /** + * Returns the key if it's a Bookmark, othwerwise return 0 + */ + CSwordKey* getBookmarkKey() const; + /** + * Returns a QString version of the key. + */ + const QString getKeyText(); + /** + * Returns the CModuleInfo obkject for this tree-item. + * @return Gives back a pointer to the moduleinfo. May ba NULL because groups do not have moduleinfos. + */ + CSwordModuleInfo* moduleInfo() const; + /** + * Use this function to get the type of this item. + * @return Returns the type of the item. May be Group, Bookmark or Module. + */ + const CGroupManagerItem::ItemType type() const; + /** + * Show sub item if true, otherwise do not show them. + * Reimplementation from QListViewItem + */ + virtual void setOpen( bool ); + /** + * Sets / changes the description + */ + void setDescription(const QString&); + /** + * Returns the tooltip for this ite, QString::null is returned if this item has no tooltip. + */ + const QString getToolTip(); + /** + * Moves this item after the item "item". + * This function acts like the provate function "moveToJustAfter" + * moveItem isn't usable for items which are child of item. + */ + void moveAfter( CGroupManagerItem* item, const MoveType type = OnlySameParents ); + +private: + /** + * Initializes the item Used by both constructors to share the double used source code + * @param caption The caption of the item + * @param modulename The modulename as a QSTring + * @param module_info The CModuleInfo object for this item. May be NULL because groups have no moduleinfo. + * @param Type The type of the item (Group, Bookmark or Module) + */ + virtual void init( const QString& caption, const QString& modulename, CSwordModuleInfo *module_info,CSwordKey* bookmarkKey, CGroupManagerItem::ItemType Type); + /** + * The type of this entry + */ + ItemType m_type; + /** + * The pointer to the internal module_info + * At the moment we assume that the module of a CGroupmanagerItem is a CSwordModuleInfo object. + */ + CSwordModuleInfo* m_moduleInfo; + /** + * The key which is only valid for bookmarks + */ + CSwordKey* m_bookmarkKey; + /** + * This is true if this item uses a key which was created by this item. + */ + bool m_createdOwnKey; + /** + * The description of the item. + * At the moment only useable for bookmarks. + */ + QString m_description; + /** + * The caption of the item. + * Used for bookmarks and groups. + */ + QString m_caption; + /** + * The namec of the module. + */ + QString m_moduleName; + /** + * The pixmap which belongs to folders + */ + QPixmap m_folderIcon; + /** + * The pixmap which belongs to opened folders + */ + QPixmap m_openFolderIcon; +}; + +#endif + diff --git a/bibletime/frontend/keychooser/Makefile.am b/bibletime/frontend/keychooser/Makefile.am new file mode 100644 index 0000000..4fa0d18 --- /dev/null +++ b/bibletime/frontend/keychooser/Makefile.am @@ -0,0 +1,25 @@ +INCLUDES = $(all_includes) + +libkeychooser_a_METASOURCES = AUTO + +noinst_LIBRARIES = libkeychooser.a + +libkeychooser_a_SOURCES = \ +cbiblekeychooser.cpp \ +clexiconkeychooser.cpp \ +ckeychooser.cpp \ +cfx_btn.cpp \ +ckeychooserwidget.cpp \ +cbookkeychooser.cpp \ +cbooktreechooser.cpp + +all_headers = ckeychooserwidget.h \ +cfx_btn.h \ +ckeychooser.h \ +clexiconkeychooser.h \ +cbiblekeychooser.h \ +cbookkeychooser.h \ +cbooktreechooser.h + +EXTRA_DIST = $(libkeychooser_a_SOURCES) $(all_headers) + diff --git a/bibletime/frontend/keychooser/Makefile.in b/bibletime/frontend/keychooser/Makefile.in new file mode 100644 index 0000000..e423020 --- /dev/null +++ b/bibletime/frontend/keychooser/Makefile.in @@ -0,0 +1,643 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) + +#>- libkeychooser_a_METASOURCES = AUTO + +noinst_LIBRARIES = libkeychooser.a + +libkeychooser_a_SOURCES = cbiblekeychooser.cpp clexiconkeychooser.cpp ckeychooser.cpp cfx_btn.cpp ckeychooserwidget.cpp cbookkeychooser.cpp cbooktreechooser.cpp + + +all_headers = ckeychooserwidget.h cfx_btn.h ckeychooser.h clexiconkeychooser.h cbiblekeychooser.h cbookkeychooser.h cbooktreechooser.h + + +EXTRA_DIST = $(libkeychooser_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libkeychooser_a_LIBADD = +#>- libkeychooser_a_OBJECTS = cbiblekeychooser.$(OBJEXT) \ +#>- clexiconkeychooser.$(OBJEXT) ckeychooser.$(OBJEXT) cfx_btn.$(OBJEXT) \ +#>- ckeychooserwidget.$(OBJEXT) cbookkeychooser.$(OBJEXT) \ +#>- cbooktreechooser.$(OBJEXT) +#>+ 9 +libkeychooser_a_final_OBJECTS = libkeychooser_a.all_cpp.o +libkeychooser_a_nofinal_OBJECTS = cbiblekeychooser.$(OBJEXT) \ +clexiconkeychooser.$(OBJEXT) ckeychooser.$(OBJEXT) cfx_btn.$(OBJEXT) \ +ckeychooserwidget.$(OBJEXT) cbookkeychooser.$(OBJEXT) \ +cbooktreechooser.$(OBJEXT)\ +cfx_btn.moc.o ckeychooser.moc.o cbooktreechooser.moc.o ckeychooserwidget.moc.o cbiblekeychooser.moc.o clexiconkeychooser.moc.o cbookkeychooser.moc.o \ +libkeychooser_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libkeychooser_a_OBJECTS = $(libkeychooser_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libkeychooser_a_OBJECTS = $(libkeychooser_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=ckeychooserwidget.h cbiblekeychooser.h cbookkeychooser.h ckeychooser.h clexiconkeychooser.h cbooktreechooser.h cfx_btn.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/cbiblekeychooser.P .deps/cbookkeychooser.P \ +#>- .deps/cbooktreechooser.P .deps/cfx_btn.P .deps/ckeychooser.P \ +#>- .deps/ckeychooserwidget.P .deps/clexiconkeychooser.P +#>+ 8 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/cfx_btn.moc.P $(DEPDIR)/ckeychooser.moc.P $(DEPDIR)/cbooktreechooser.moc.P $(DEPDIR)/ckeychooserwidget.moc.P $(DEPDIR)/cbiblekeychooser.moc.P $(DEPDIR)/clexiconkeychooser.moc.P $(DEPDIR)/cbookkeychooser.moc.P $(DEPDIR)/libkeychooser_a_meta_unload.P $(DEPDIR)/libkeychooser_a.all_cpp.P \ + .deps/cbiblekeychooser.P .deps/cbookkeychooser.P \ +.deps/cbooktreechooser.P .deps/cfx_btn.P .deps/ckeychooser.P \ +.deps/ckeychooserwidget.P .deps/clexiconkeychooser.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/cfx_btn.moc.P $(DEPDIR)/ckeychooser.moc.P $(DEPDIR)/cbooktreechooser.moc.P $(DEPDIR)/ckeychooserwidget.moc.P $(DEPDIR)/cbiblekeychooser.moc.P $(DEPDIR)/clexiconkeychooser.moc.P $(DEPDIR)/cbookkeychooser.moc.P $(DEPDIR)/libkeychooser_a_meta_unload.P .deps/cbiblekeychooser.P .deps/cbookkeychooser.P \ +.deps/cbooktreechooser.P .deps/cfx_btn.P .deps/ckeychooser.P \ +.deps/ckeychooserwidget.P .deps/clexiconkeychooser.P + +SOURCES = $(libkeychooser_a_SOURCES) +OBJECTS = $(libkeychooser_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/keychooser/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/keychooser/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/keychooser/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libkeychooser.a: $(libkeychooser_a_OBJECTS) $(libkeychooser_a_DEPENDENCIES) + -rm -f libkeychooser.a + $(AR) cru libkeychooser.a $(libkeychooser_a_OBJECTS) $(libkeychooser_a_LIBADD) + $(RANLIB) libkeychooser.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/keychooser + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/keychooser/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +cfx_btn.moc.cpp: $(srcdir)/cfx_btn.h + $(MOC) $(srcdir)/cfx_btn.h -o cfx_btn.moc.cpp + +#>+ 3 +ckeychooser.moc.cpp: $(srcdir)/ckeychooser.h + $(MOC) $(srcdir)/ckeychooser.h -o ckeychooser.moc.cpp + +#>+ 3 +cbooktreechooser.moc.cpp: $(srcdir)/cbooktreechooser.h + $(MOC) $(srcdir)/cbooktreechooser.h -o cbooktreechooser.moc.cpp + +#>+ 3 +ckeychooserwidget.moc.cpp: $(srcdir)/ckeychooserwidget.h + $(MOC) $(srcdir)/ckeychooserwidget.h -o ckeychooserwidget.moc.cpp + +#>+ 3 +cbiblekeychooser.moc.cpp: $(srcdir)/cbiblekeychooser.h + $(MOC) $(srcdir)/cbiblekeychooser.h -o cbiblekeychooser.moc.cpp + +#>+ 3 +clexiconkeychooser.moc.cpp: $(srcdir)/clexiconkeychooser.h + $(MOC) $(srcdir)/clexiconkeychooser.h -o clexiconkeychooser.moc.cpp + +#>+ 3 +cbookkeychooser.moc.cpp: $(srcdir)/cbookkeychooser.h + $(MOC) $(srcdir)/cbookkeychooser.h -o cbookkeychooser.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f cfx_btn.moc.cpp ckeychooser.moc.cpp cbooktreechooser.moc.cpp ckeychooserwidget.moc.cpp cbiblekeychooser.moc.cpp clexiconkeychooser.moc.cpp cbookkeychooser.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/keychooser/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/keychooser/Makefile.in + + +#>+ 10 +libkeychooser_a_meta_unload.cpp: cfx_btn.moc.cpp ckeychooser.moc.cpp ckeychooserwidget.moc.cpp cbooktreechooser.moc.cpp clexiconkeychooser.moc.cpp cbiblekeychooser.moc.cpp cbookkeychooser.moc.cpp + @echo 'creating libkeychooser_a_meta_unload.cpp' + @-rm -f libkeychooser_a_meta_unload.cpp + @echo 'static const char * _metalist_libkeychooser_a[] = {' > libkeychooser_a_meta_unload.cpp + @cat cfx_btn.moc.cpp ckeychooser.moc.cpp ckeychooserwidget.moc.cpp cbooktreechooser.moc.cpp clexiconkeychooser.moc.cpp cbiblekeychooser.moc.cpp cbookkeychooser.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libkeychooser_a_meta_unload.cpp + @echo '0};' >> libkeychooser_a_meta_unload.cpp + @echo '#include ' >> libkeychooser_a_meta_unload.cpp + @echo '_UNLOAD(libkeychooser_a)' >> libkeychooser_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libkeychooser_a_meta_unload.cpp + +#>+ 11 +libkeychooser_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/cbiblekeychooser.cpp $(srcdir)/clexiconkeychooser.cpp $(srcdir)/ckeychooser.cpp $(srcdir)/cfx_btn.cpp $(srcdir)/ckeychooserwidget.cpp $(srcdir)/cbookkeychooser.cpp $(srcdir)/cbooktreechooser.cpp libkeychooser_a_meta_unload.cpp cfx_btn.moc.cpp ckeychooser.moc.cpp cbooktreechooser.moc.cpp ckeychooserwidget.moc.cpp cbiblekeychooser.moc.cpp clexiconkeychooser.moc.cpp cbookkeychooser.moc.cpp + @echo 'creating libkeychooser_a.all_cpp.cpp ...'; \ + rm -f libkeychooser_a.all_cpp.files libkeychooser_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libkeychooser_a.all_cpp.final; \ + for file in cbiblekeychooser.cpp clexiconkeychooser.cpp ckeychooser.cpp cfx_btn.cpp ckeychooserwidget.cpp cbookkeychooser.cpp cbooktreechooser.cpp libkeychooser_a_meta_unload.cpp cfx_btn.moc.cpp ckeychooser.moc.cpp cbooktreechooser.moc.cpp ckeychooserwidget.moc.cpp cbiblekeychooser.moc.cpp clexiconkeychooser.moc.cpp cbookkeychooser.moc.cpp; do \ + echo "#include \"$$file\"" >> libkeychooser_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libkeychooser_a.all_cpp.final; \ + done; \ + cat libkeychooser_a.all_cpp.final libkeychooser_a.all_cpp.files > libkeychooser_a.all_cpp.cpp; \ + rm -f libkeychooser_a.all_cpp.final libkeychooser_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libkeychooser_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libkeychooser_a_OBJECTS="$(libkeychooser_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libkeychooser_a_OBJECTS="$(libkeychooser_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/keychooser/cbiblekeychooser.cpp b/bibletime/frontend/keychooser/cbiblekeychooser.cpp new file mode 100644 index 0000000..ca64115 --- /dev/null +++ b/bibletime/frontend/keychooser/cbiblekeychooser.cpp @@ -0,0 +1,290 @@ +/*************************************************************************** + cbiblekeychooser.cpp - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cbiblekeychooser.h" +#include "ckeychooserwidget.h" +#include "cfx_btn.h" +#include "../../whatsthisdef.h" +#include "../../tooltipdef.h" +#include "../../backend/cswordversekey.h" +#include "../../backend/cswordbiblemoduleinfo.h" +#include "../../backend/cswordmoduleinfo.h" + +//Qt includes +#include +#include +#include + +//KDE includes +#include + +CBibleKeyChooser::CBibleKeyChooser(CSwordModuleInfo *module, CSwordKey *key, QWidget *parent, const char *name ) + : CKeyChooser(module, key, parent, name), m_info(0), m_key(0), w_book(0), w_chapter(0), w_verse(0) +{ + if (module && (module->type() == CSwordModuleInfo::Bible || module->type() == CSwordModuleInfo::Commentary) ) { + m_info = dynamic_cast(module); + m_key = dynamic_cast(key); + } + else { + qWarning("CBibleKeyChooser: module is not a Bible or commentary!"); + return; + } + QHBoxLayout* layout = new QHBoxLayout(this); + layout->setResizeMode(QLayout::Fixed); + + w_book = new CKeyChooserWidget(m_info->books(),false,this); + w_book->setToolTips(TT_PRESENTER_BOOK_COMBO, TT_PRESENTER_NEXT_BOOK, TT_PRESENTER_SCROLL_BUTTON, TT_PRESENTER_PREVIOUS_BOOK); + w_book->setWhatsThis(WT_PRESENTER_BOOK_COMBO, WT_PRESENTER_NEXT_BOOK, WT_PRESENTER_SCROLL_BUTTON, WT_PRESENTER_PREVIOUS_BOOK); + + w_chapter = new CKeyChooserWidget( m_info->chapterCount(1),true,this); + w_chapter->setToolTips(TT_PRESENTER_CHAPTER_COMBO, TT_PRESENTER_NEXT_CHAPTER, TT_PRESENTER_SCROLL_BUTTON, TT_PRESENTER_PREVIOUS_CHAPTER); + w_chapter->setWhatsThis(WT_PRESENTER_CHAPTER_COMBO, WT_PRESENTER_NEXT_CHAPTER, WT_PRESENTER_SCROLL_BUTTON, WT_PRESENTER_PREVIOUS_CHAPTER); + + w_verse = new CKeyChooserWidget( m_info->verseCount(1,1),true,this); + w_verse->setToolTips(TT_PRESENTER_VERSE_COMBO, TT_PRESENTER_NEXT_VERSE, TT_PRESENTER_SCROLL_BUTTON, TT_PRESENTER_PREVIOUS_VERSE); + w_verse->setWhatsThis(WT_PRESENTER_VERSE_COMBO, WT_PRESENTER_NEXT_VERSE, WT_PRESENTER_SCROLL_BUTTON, WT_PRESENTER_PREVIOUS_VERSE); + + QWidget::setTabOrder(w_book, w_chapter); + QWidget::setTabOrder(w_chapter, w_verse); + QWidget::setTabOrder(w_verse, 0); + + layout->addWidget(w_book); + layout->addWidget(w_chapter); + layout->addWidget(w_verse); + + /*Book connections*/ + connect(w_book,SIGNAL(changed(int)) ,SLOT(bookChanged(int))); + connect(w_book,SIGNAL(focusOut(int)) ,SLOT(bookFocusOut(int))); + + /*Chapter Connections*/ + connect(w_chapter,SIGNAL(changed(int)) ,SLOT(chapterChanged(int))); + connect(w_chapter,SIGNAL(next_requested()),SLOT(chapterNextRequested())); + connect(w_chapter,SIGNAL(prev_requested()),SLOT(chapterPrevRequested())); + connect(w_chapter,SIGNAL(focusOut(int)) ,SLOT(chapterFocusOut(int))); + + + /*Verse Connections*/ + connect(w_verse,SIGNAL(changed(int)) ,SLOT(verseChanged(int))); + connect(w_verse,SIGNAL(next_requested()) ,SLOT(verseNextRequested())); + connect(w_verse,SIGNAL(prev_requested()) ,SLOT(versePrevRequested())); + connect(w_verse,SIGNAL(focusOut(int)) ,SLOT(verseFocusOut(int))); +} + +CSwordKey* const CBibleKeyChooser::key(){ + if (m_key) { + m_key->book(w_book->comboBox()->currentText()); + m_key->Chapter(w_chapter->comboBox()->currentText().toInt()); + m_key->Verse(w_verse->comboBox()->currentText().toInt()); + } + return m_key; +} + +void CBibleKeyChooser::setKey(CSwordKey* key){ + if ( !(m_key = dynamic_cast(key)) ) + return; + + const unsigned int bookIndex = m_info->bookNumber( m_key->book() ); + const int chapter = m_key->Chapter(); + const int verse = m_key->Verse(); + + //reset the keychooser parts only if we found a valid book + const int count = w_book->comboBox()->count(); + const QString desiredBook = m_key->book(); + bool bookIsValid = false; + for (int i = 0; i < count; ++i) { + if (w_book->comboBox()->text(i) == desiredBook) { + bookIsValid = true; + break; + } + } + + if (bookIsValid) { //we have a valid book + if (w_book->comboBox()->currentText() != m_key->book()) //necessary? + w_book->setItem( m_key->book() ); + + w_chapter->reset(m_info->chapterCount(bookIndex), chapter-1, false); + w_chapter->adjustSize(); + + w_verse->reset(m_info->verseCount(bookIndex, chapter), verse-1, false); + w_verse->adjustSize(); + + emit keyChanged(m_key); + } + else { + qWarning("CBibleKeyChooser::setKey: book %s is invalid!", m_key->book().latin1()); + w_verse->comboBox()->setCurrentItem(0); + m_key->Verse(w_verse->comboBox()->currentText().toInt()); + } +} + +/** */ +void CBibleKeyChooser::chapterNextRequested(void){ + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); + if (m_key->next(CSwordVerseKey::UseChapter)) + setKey(m_key); + setUpdatesEnabled(true); +} + +/** */ +void CBibleKeyChooser::chapterPrevRequested(void){ + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); + + if (m_key->previous(CSwordVerseKey::UseChapter)) + setKey(m_key); + setUpdatesEnabled(true); +} + +/** */ +void CBibleKeyChooser::verseNextRequested(void){ + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); + + if (m_key->next(CSwordVerseKey::UseVerse)) + setKey(m_key); + setUpdatesEnabled(true); +} + +/** */ +void CBibleKeyChooser::versePrevRequested(void){ + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); + + if (m_key->previous(CSwordVerseKey::UseVerse)) + setKey(m_key); + setUpdatesEnabled(true); +} + +void CBibleKeyChooser::bookChanged(int /*i*/){ +// qDebug("CBibleKeyChooser::bookChanged(int /*i*/)"); + if (!isUpdatesEnabled()) + return; + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); + + if (m_key->book() != w_book->comboBox()->currentText()) { + m_key->book( w_book->comboBox()->currentText() ); + setKey( m_key ); + } + setUpdatesEnabled(true); +} + +void CBibleKeyChooser::chapterChanged(int /*i*/){ +// qDebug("CBibleKeyChooser::chapterChanged(int /*i*/)"); + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + if (m_key) + emit beforeKeyChange(m_key->key()); +// if (m_key) +// emit beforeKeyChange(m_key->key()); + + if (m_key->Chapter() != w_chapter->comboBox()->currentText().toInt()) { + m_key->Chapter( w_chapter->comboBox()->currentText().toInt() ); + setKey( m_key ); + } + + setUpdatesEnabled(true); +} + +void CBibleKeyChooser::verseChanged(int /*i*/){ +// qDebug("CBibleKeyChooser::verseChanged(int /*i*/)"); + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + + if (m_key->Verse() != w_verse->comboBox()->currentText().toInt()) { + m_key->Verse( w_verse->comboBox()->currentText().toInt() ); + setKey( m_key ); + } + + setUpdatesEnabled(true); +} + +/** Reimplementation */ +QSize CBibleKeyChooser::sizeHint(){ + return QSize( w_book->sizeHint().width() + w_chapter->sizeHint().width() + w_verse->sizeHint().width(), w_book->sizeHint().height()); +} + +/** Reimplementation. */ +void CBibleKeyChooser::refreshContent() { + w_book->reset( m_info->books(), w_book->comboBox()->currentItem(), false); + setKey(m_key); +} + +/** Sets te module and refreshes the combos */ +void CBibleKeyChooser::setModule(CSwordModuleInfo* module){ + if (module != m_info && module) { + m_info = dynamic_cast(module); + refreshContent(); + } +} + +/** called when the book combo lost the focus with reason == tab @param the new book */ +void CBibleKeyChooser::bookFocusOut(int index){ + if (!isUpdatesEnabled()) + return; + + setUpdatesEnabled(false); + + m_key->book( w_book->comboBox()->currentText() ); + const int chapterCount = m_info->chapterCount( m_info->bookNumber(m_key->book())); + w_chapter->reset( chapterCount, m_key->Chapter()-1, false); + + const int verseCount = m_info->verseCount(m_info->bookNumber(m_key->book()),m_key->Chapter()); + w_verse->reset(verseCount,m_key->Verse()-1,false); + + setUpdatesEnabled(true); +} + +/** called when the chapter combo lost the focus with reason == tab @param the new chapter */ +void CBibleKeyChooser::chapterFocusOut(int /*index*/){ + const int chapter = w_chapter->comboBox()->currentText().toInt(); + m_key->Chapter( chapter ); + w_verse->reset(m_info->verseCount(m_info->bookNumber(m_key->book()),chapter), 0, false); +} + +/** called when the verse combo lost the focus with reason == tab @param the new verse */ +void CBibleKeyChooser::verseFocusOut(int /*index*/){ + m_key->Verse( w_verse->comboBox()->currentText().toInt() ); + setKey( m_key ); +} + +/** No descriptions */ +void CBibleKeyChooser::updateKey(CSwordKey* key){ +} diff --git a/bibletime/frontend/keychooser/cbiblekeychooser.h b/bibletime/frontend/keychooser/cbiblekeychooser.h new file mode 100644 index 0000000..94215f5 --- /dev/null +++ b/bibletime/frontend/keychooser/cbiblekeychooser.h @@ -0,0 +1,130 @@ +/*************************************************************************** + cbiblekeychooser.h - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBIBLEKEYCHOOSER_H +#define CBIBLEKEYCHOOSER_H + +//#include +#include +#include "ckeychooser.h" + +class CKeyChooserWidget; +class CSwordVerseKey; + +class CSwordBibleModuleInfo; + + +/** This class implements the KeyChooser for bibles and commentaries + * + * it inhertits @ref CKeyChooser + * + * it uses 3 @ref CKeyChooserWidget 's to represent the bible keys + * + * @author The BibleTime team + */ + +class CBibleKeyChooser : public CKeyChooser { + Q_OBJECT + +public: + /** + * the constructor + * you should not need to use this, use @ref CKeyChooser::createInstance instead + */ + CBibleKeyChooser(CSwordModuleInfo *module=0, CSwordKey *key=0, QWidget *parent=0, const char *name=0); + +public slots: + /** + * see @ref CKeyChooser::getKey + */ + CSwordKey*const key(); + /** + * see @ref CKeyChooser::setKey + */ + virtual void setKey(CSwordKey *key); + /** + * Reimplementation + */ + virtual QSize sizeHint(); + /** + * Sets te module and refreshes the combos + */ + virtual void setModule(CSwordModuleInfo* module); + /** + * Reimplementation. + */ + void refreshContent(); + /** + * used to react to changes in the 3 @ref CKeyChooserWidget 's + * @param index not used + */ + void bookChanged(int index); + /** + * used to react to changes in the 3 @ref CKeyChooserWidget 's + * @param index not used + */ + void chapterChanged(int index); + /** + * used to react to changes in the 3 @ref CKeyChooserWidget 's + * @param index not used + */ + void verseChanged(int index); + /** + * see @ref bookPrevRequested + */ + void chapterPrevRequested(void); + /** + * see @ref bookPrevRequested + */ + void chapterNextRequested(void); + /** + * see @ref bookPrevRequested + */ + void versePrevRequested(void); + /** + * see @ref bookPrevRequested + */ + void verseNextRequested(void); + /** No descriptions */ + void updateKey(CSwordKey* key); + +private: + CKeyChooserWidget* w_book; + CKeyChooserWidget* w_chapter; + CKeyChooserWidget* w_verse; + CSwordBibleModuleInfo *m_info; + CSwordVerseKey *m_key; + +private slots: // Private slots + /** + * called when the book combo lost the focus with reason == tab + * @param the new book + */ + void bookFocusOut(int); + /** + * called when the chapter combo lost the focus with reason == tab + * @param the new chapter + */ + void chapterFocusOut(int); + /** called when the verse combo lost the focus + with reason == tab + @param the new verse + */ + void verseFocusOut(int); +}; + +#endif diff --git a/bibletime/frontend/keychooser/cbookkeychooser.cpp b/bibletime/frontend/keychooser/cbookkeychooser.cpp new file mode 100644 index 0000000..70909c5 --- /dev/null +++ b/bibletime/frontend/keychooser/cbookkeychooser.cpp @@ -0,0 +1,181 @@ +/*************************************************************************** + cbookkeychooser.cpp - description + ------------------- + begin : Sat Jan 26 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cbookkeychooser.h" +#include "../../backend/cswordtreekey.h" +#include "../../backend/cswordbookmoduleinfo.h" + +//Qt includes +#include + +CBookKeyChooser::CBookKeyChooser(CSwordModuleInfo *module, CSwordKey *key, QWidget *parent, const char *name) + : CKeyChooser(module, key, parent,name), m_layout(0) { + if ( module && (module->type() == CSwordModuleInfo::GenericBook) ) { + m_module = dynamic_cast(module); + m_key = dynamic_cast(key); + } + else { + m_module = 0; + m_key = 0; + } + setModule(m_module); +} + +CBookKeyChooser::~CBookKeyChooser(){ +} + +void CBookKeyChooser::setKey(CSwordKey* newKey){ + setKey(newKey, true); +} + +/** Sets a new key to this keychooser */ +void CBookKeyChooser::setKey(CSwordKey* newKey, const bool emitSignal){ + if (m_key != newKey ) + m_key = dynamic_cast(newKey); + + const QString oldKey = m_key->key(); + QStringList siblings; + if (m_key && !oldKey.isEmpty()) + siblings = QStringList::split("/",oldKey,false); + + unsigned int depth = 0; + int index = 0; + + m_key->root(); + while(m_key->firstChild() && (depth <= siblings.count())) { + const QString key = m_key->key(); + index = 0; + const QString sibling = siblings[depth]; + if (!sibling.isEmpty()) { //found it + bool found = false; + do { + ++index; + found = (m_key->getLocalName() == sibling); + } while (!found && m_key->nextSibling()); + if (!found) + m_key->key( key ); + } + setupCombo(key, depth++, index); + } + + //clear the combos which were not filled + for (; depth < (unsigned int)m_module->depth(); ++depth) { + CKeyChooserWidget* chooser = m_chooserWidgets.at(depth); + if (chooser) + chooser->reset(0,0,false); + } + + if (oldKey.isEmpty()) + m_key->root(); + else + m_key->key(oldKey); + + if (emitSignal) + emit keyChanged(m_key); +} + +/** Returns the key of this kechooser. */ +CSwordKey* const CBookKeyChooser::key(){ +// ASSERT(m_key); + return m_key; +} + +/** Sets another module to this keychooser */ +void CBookKeyChooser::setModule(CSwordModuleInfo* module){ + m_module = dynamic_cast(module); + //refresh the number of combos + if (m_module && m_key) { + if (!m_layout) + m_layout = new QHBoxLayout(this); + + //delete old widgets + m_chooserWidgets.setAutoDelete(true); + m_chooserWidgets.clear(); + m_chooserWidgets.setAutoDelete(false); + + for (int i = 0; i < m_module->depth(); ++i) { + CKeyChooserWidget* w = new CKeyChooserWidget(0, false, this); //empty keychooser + m_chooserWidgets.append( w ); + w->show(); + connect(w, SIGNAL(changed(int)), SLOT(keyChooserChanged(int))); + m_layout->addWidget(w); + } + updateKey(m_key); + } +} + +/** Refreshes the content. */ +void CBookKeyChooser::refreshContent(){ + if (m_key) + updateKey( m_key ); //refresh with current key +} + +void CBookKeyChooser::setupCombo(const QString key, const int depth, const int currentItem){ + CKeyChooserWidget* chooserWidget = m_chooserWidgets.at(depth); + if (depth == 0 && chooserWidget && chooserWidget->comboBox()->count()) { //has already items + //set now the right item + CKeyChooserWidget* chooserWidget = m_chooserWidgets.at(depth); + ASSERT(chooserWidget); + if (chooserWidget) { + chooserWidget->setItem( chooserWidget->comboBox()->text(currentItem) ); + } + return; + } + + const QString oldKey = m_key->key(); + m_key->key(key); + + //insert an empty item at the top + QStringList items; + items << QString::null; + do { + items << QString::fromLocal8Bit(m_key->getLocalName()); + } + while (m_key->nextSibling()); + + if (chooserWidget) { + chooserWidget->reset(items,currentItem,false); + } + + //restore old key + m_key->key(oldKey); +} + +/** A keychooser changed. Update and emit a signal if necessary. */ +void CBookKeyChooser::keyChooserChanged(int newIndex){ + QStringList items; + CKeyChooserWidget* chooser; + const int count = m_chooserWidgets.count(); + for (int i = 0; i < count; ++i) { + chooser = m_chooserWidgets.at(i); + const QString currentText = (chooser && chooser->comboBox()) ? chooser->comboBox()->currentText() : QString::null; + if (currentText.isEmpty()) + break; + items << currentText; + } + QString newKey = QString::fromLatin1("/") + items.join("/"); + if (newKey.length() > 1) + newKey.remove(newKey.length(),1); //remove the traling slash + + m_key->key(newKey); + setKey(m_key); +} + +/** Updates the keychoosers for the given key but emit no signal. */ +void CBookKeyChooser::updateKey(CSwordKey* key){ + setKey(key, false); +} diff --git a/bibletime/frontend/keychooser/cbookkeychooser.h b/bibletime/frontend/keychooser/cbookkeychooser.h new file mode 100644 index 0000000..dd2c69e --- /dev/null +++ b/bibletime/frontend/keychooser/cbookkeychooser.h @@ -0,0 +1,101 @@ +/*************************************************************************** + cbookkeychooser.h - description + ------------------- + begin : Sat Jan 26 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBOOKKEYCHOOSER_H +#define CBOOKKEYCHOOSER_H + +//BibleTime includes +#include "ckeychooser.h" +#include "ckeychooserwidget.h" + +//Sword includes + +//Qt includes +#include +#include +#include +#include +#include + +class CSwordKey; +class CSwordBookModuleInfo; +class CSwordTreeKey; + +class TreeKeyIdx; + +class QHBoxLayout; + +/** The keychooser implementation for books. + * @author The BibleTime team + */ +class CBookKeyChooser : public CKeyChooser { + Q_OBJECT +public: + CBookKeyChooser(CSwordModuleInfo *module=0, CSwordKey *key=0, QWidget *parent=0, const char *name=0); + ~CBookKeyChooser(); + /** + * Refreshes the content. + */ + virtual void refreshContent(); + /** + * Sets another module to this keychooser + */ + virtual void setModule(CSwordModuleInfo*); + /** + * Returns the key of this kechooser. + */ + virtual CSwordKey* const key(); + /** + * Sets a new key to this keychooser + */ + virtual void setKey(CSwordKey*); + /** + * Sets a new key to this keychooser + */ + void setKey(CSwordKey*, const bool emitSignal); + + +public slots: // Public slots + /** + * Updates the keychoosers for the given key but emit no signal. + */ + void updateKey(CSwordKey*); + +protected: // Protected methods + /** + * Fills the combo given by depth with the items from the key having depth "depth". + * The parent sibling is given by key. + */ + void setupCombo(const QString key, const int depth, const int currentItem); + +protected slots: + /** + * A keychooser changed. Update and emit a signal if necessary. + */ + void keyChooserChanged(int); + //is called when a keychooser widget wants to jump to the next/previous key +// void nextEntry(); +// void previousEntry(); + +private: + QList m_chooserWidgets; + CSwordBookModuleInfo *m_module; + CSwordTreeKey *m_key; + QHBoxLayout* m_layout; +}; + +#endif diff --git a/bibletime/frontend/keychooser/cbooktreechooser.cpp b/bibletime/frontend/keychooser/cbooktreechooser.cpp new file mode 100644 index 0000000..97f8dc6 --- /dev/null +++ b/bibletime/frontend/keychooser/cbooktreechooser.cpp @@ -0,0 +1,183 @@ +/*************************************************************************** + cbooktreechooser.cpp - description + ------------------- + begin : Sat Jan 26 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cbooktreechooser.h" +#include "../../backend/cswordtreekey.h" +#include "../../backend/cswordbookmoduleinfo.h" + +//Qt includes +#include +#include +#include + +//////////// + +CBookTreeChooser::TreeItem::TreeItem(QListViewItem* parent, QListViewItem* after, const QString caption, const QString key) + : KListViewItem(parent, after, caption) { + m_key = key; +}; + +CBookTreeChooser::TreeItem::TreeItem(QListViewItem* parent,const QString caption, const QString key) + : KListViewItem(parent, caption) { + m_key = key; +}; + +CBookTreeChooser::TreeItem::TreeItem(QListView* view, QListViewItem* after, const QString caption, const QString key) + : KListViewItem(view,after, caption) { + m_key = key; +}; + +const QString& CBookTreeChooser::TreeItem::key() const { + return m_key; +}; + +//////////// + +CBookTreeChooser::CBookTreeChooser(CSwordModuleInfo *module, CSwordKey *key, QWidget *parent, const char *name) + : CKeyChooser(module, key, parent,name) { + if ( module && (module->type() == CSwordModuleInfo::GenericBook) ) { + m_module = dynamic_cast(module); + m_key = dynamic_cast(key); + } + else { + m_module = 0; + m_key = 0; + } + + //now setup the keychooser widgets + QHBoxLayout* layout = new QHBoxLayout(this); + m_treeView = new KListView(this); + layout->addWidget(m_treeView); + + connect( m_treeView, SIGNAL(executed(QListViewItem*)), SLOT(itemClicked(QListViewItem*))); + m_treeView->addColumn("Tree"); + m_treeView->header()->resizeSection( 0,m_treeView->sizeHint().width()); + m_treeView->header()->setResizeEnabled(-1); + m_treeView->header()->hide(); + m_treeView->setSorting(-1); + m_treeView->setRootIsDecorated(true); + + setModule(module); +} + +CBookTreeChooser::~CBookTreeChooser(){ +} + +/** Sets a new key to this keychooser */ +void CBookTreeChooser::setKey(CSwordKey* newKey){ +} + +/** Sets a new key to this keychooser */ +void CBookTreeChooser::setKey(CSwordKey* newKey, const bool emitSignal){ + if (m_key != newKey ) + m_key = dynamic_cast(newKey); + + const QString key = m_key->key(); + + QStringList siblings; + if (m_key && !key.isEmpty()) + siblings = QStringList::split("/",key,false); + + //find the right listview item + const int count = siblings.count(); + int index = 0; + QString currentSibling = siblings[index]; + + QListViewItem* child = m_treeView->firstChild(); + while( child && index < count ) { +// qWarning("trying to find %s", currentSibling.latin1() ); + + if (child->text(0) == currentSibling) { //found parent of our item + //found right entry? + TreeItem* i = dynamic_cast(child); + if (!i || i->key() == key) { +// qWarning("found!"); + break; + } + child = child->firstChild(); + currentSibling = siblings[++index]; + } + else + child = child->nextSibling(); + } + + m_treeView->setCurrentItem( child ); + m_treeView->ensureItemVisible(child); + if (emitSignal) + emit keyChanged(m_key); +} + +/** Returns the key of this kechooser. */ +CSwordKey* const CBookTreeChooser::key(){ + return m_key; +} + +/** Sets another module to this keychooser */ +void CBookTreeChooser::setModule(CSwordModuleInfo* module){ + m_module = dynamic_cast(module); + + if (m_module && m_key) { + m_treeView->clear(); + + m_key->root(); + m_key->firstChild(); + setupTree(0,0,m_key); + + updateKey(m_key); + } +} + +/** Refreshes the content. */ +void CBookTreeChooser::refreshContent(){ + if (m_key) + updateKey( m_key ); //refresh with current key +} + +/** Set up the tree with the current level of key. */ +void CBookTreeChooser::setupTree( QListViewItem* parent, QListViewItem* after, CSwordTreeKey* key ){ +// ASSERT(key); + QListViewItem* item = 0; + if (parent) + item = new TreeItem(parent, after, key->getLocalName(), key->key()); + else + item = new TreeItem(m_treeView, after, key->getLocalName(), key->key()); + + if (key->firstChild()) { + setupTree(item, 0, key); + key->parent(); + } + if (key->nextSibling()) + setupTree(parent, item, key); +} + +/** No descriptions */ +void CBookTreeChooser::itemClicked( QListViewItem* item ){ + TreeItem* i = dynamic_cast(item); + ASSERT(i); + if (!i) + return; + + const QString key = i->key(); + m_key->key(key); + + emit keyChanged(m_key); +} + +/** No descriptions */ +void CBookTreeChooser::updateKey( CSwordKey* key ){ + setKey(key, false); +} diff --git a/bibletime/frontend/keychooser/cbooktreechooser.h b/bibletime/frontend/keychooser/cbooktreechooser.h new file mode 100644 index 0000000..743253d --- /dev/null +++ b/bibletime/frontend/keychooser/cbooktreechooser.h @@ -0,0 +1,101 @@ +/*************************************************************************** + cbooktreechooser.h - description + ------------------- + begin : Sat Jan 26 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBOOKTREECHOOSER_H +#define CBOOKTREECHOOSER_H + + +/** The treechooser implementation for books. + * @author The BibleTime team + */ +//BibleTime includes +#include "ckeychooser.h" +#include "ckeychooserwidget.h" + +//Sword includes + +//Qt includes +#include +#include +#include +#include +#include + +//KDE includes +#include + +class CSwordKey; +class CSwordBookModuleInfo; +class CSwordTreeKey; + +class TreeKeyIdx; + +/** The keychooser implementeation for books. + * @author The BibleTime team + */ +class CBookTreeChooser : public CKeyChooser { + Q_OBJECT +public: + CBookTreeChooser(CSwordModuleInfo *module=0, CSwordKey *key=0, QWidget *parent=0, const char *name=0); + ~CBookTreeChooser(); + /** + * Refreshes the content. + */ + virtual void refreshContent(); + /** + * Sets another module to this keychooser + */ + virtual void setModule(CSwordModuleInfo*); + /** + * Returns the key of this kechooser. + */ + virtual CSwordKey* const key(); + /** + * Sets a new key to this keychooser + */ + virtual void setKey(CSwordKey*); + void setKey(CSwordKey*, const bool emitSinal); + +private: + class TreeItem : public KListViewItem { + public: + TreeItem(QListViewItem* parent, QListViewItem* after, const QString caption, const QString key); + TreeItem(QListViewItem* parent, const QString caption, const QString key); + TreeItem(QListView* view,QListViewItem* after, const QString caption, const QString key); + const QString& key() const; + private: + QString m_key; + }; + + CSwordBookModuleInfo *m_module; + CSwordTreeKey *m_key; + KListView* m_treeView; + +protected: // Protected methods + /** Set up the tree with the current level of key. */ + void setupTree( QListViewItem* parent,QListViewItem* after, CSwordTreeKey* key ); + +protected slots: // Protected slots + /** No descriptions */ + void itemClicked( QListViewItem* item ); + +public slots: // Public slots + /** No descriptions */ + virtual void updateKey( CSwordKey* ); +}; + +#endif diff --git a/bibletime/frontend/keychooser/cfx_btn.cpp b/bibletime/frontend/keychooser/cfx_btn.cpp new file mode 100644 index 0000000..fdbfa5d --- /dev/null +++ b/bibletime/frontend/keychooser/cfx_btn.cpp @@ -0,0 +1,99 @@ +/*************************************************************************** + cfx_btn.cpp - description + ------------------- + begin : Tue Sep 19 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cfx_btn.h" +#include "../cbtconfig.h" + +#include +#include + +//Qt includes +#include +#include +#include + +cfx_btn::cfx_btn(QWidget *parent, const char *name ) : QToolButton(parent,name) { + setFocusPolicy(QWidget::WheelFocus); + setCursor( splitVCursor ); + + m_isLocked = false; + connect(this, SIGNAL(pressed() ), SLOT(was_pressed() )); + connect(this, SIGNAL(released()), SLOT(was_released())); +} + +const bool cfx_btn::isLocked( ) const { + return m_isLocked; +} + +void cfx_btn::was_pressed( ){ + QApplication::setOverrideCursor( BlankCursor ); + m_isLocked = true; + lock_Point = get_lock_Point(); + + emit lock(); +} + +void cfx_btn::was_released( ){ + QApplication::restoreOverrideCursor(); + m_isLocked = false; + + emit unlock(); +} + +const QPoint cfx_btn::get_lock_Point() const { + return mapToGlobal( QPoint( width()/2, height()/2 ) ); +} + +void cfx_btn::mouseMoveEvent( QMouseEvent* e ){ + const short signed int scrollDirection = CBTConfig::get(CBTConfig::scroll) ? -1 : 1; + + if (m_isLocked) { + int vchange = (QCursor::pos().y() - lock_Point.y()) * scrollDirection; + if (abs(vchange) < 10) + vchange = (int)((vchange>0 ? -1 : 1) * pow(abs(vchange), 0.3)); + else if (abs(vchange) < 30) + vchange = (int)((vchange>0 ? -1 : 1) * pow(abs(vchange), 0.6)); + else if (abs(vchange) < 40) + vchange = (int)((vchange>0 ? -1 : 1) * pow(abs(vchange), 1.2)); + else + vchange = (int)((vchange>0 ? -1 : 1) * pow(abs(vchange), 2.0)); + + if (vchange) //not emit 0 + emit change_requested( vchange ); + QCursor::setPos( lock_Point ); + } + else + QToolButton::mouseMoveEvent(e); +} + + + +/** If the wheel of the mouse is used while the mouse stays over our scrollbutton the content is scrolled like the mouse was pressed and moved. */ +void cfx_btn::wheelEvent( QWheelEvent* e ){ + /** + * The problem is, that wheel events do everytime have the delta value 120 + */ + const short signed int scrollDirection = CBTConfig::get(CBTConfig::scroll) ? -1 : 1; + + const int vchange = scrollDirection * ((e->delta() > 0) ? (1) : (-1)); + if (vchange!=0) {//do not emit a change with value 0 + emit change_requested( vchange ); + e->accept(); + } + else + e->ignore(); +} diff --git a/bibletime/frontend/keychooser/cfx_btn.h b/bibletime/frontend/keychooser/cfx_btn.h new file mode 100644 index 0000000..7f40002 --- /dev/null +++ b/bibletime/frontend/keychooser/cfx_btn.h @@ -0,0 +1,91 @@ +/*************************************************************************** + cfx_btn.h - description + ------------------- + begin : Tue Sep 19 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CFX_BTN_H +#define CFX_BTN_H + +#include +#include + +class QMouseEvent; + +/** This Class implements the direct chooser button used in the KeyChooser Widget + * @author The BibleTime team + */ +class cfx_btn : public QToolButton { + Q_OBJECT +public: + /** + * The constructor + */ + cfx_btn(QWidget *parent=0, const char *name=0); + const bool isLocked() const; + +signals: + /** + * is emitted when the button enters locked state + */ + void lock(); + /** + * is emitted when the button leaves locked state + */ + void unlock(); + /** + * indicates a change the user made by moving the mouse + * @param count the number of items to be changed in the KeyChooser ComboBox + */ + void change_requested(int count); + +protected slots: + /* + * used to process the button press events + */ + void was_pressed(); + /** + * used to process the button release events + */ + void was_released(); + +protected: + /** + * Reimplementation from @ref QWidget#mouseMoveEvent - processes + * the mouse move events + */ + virtual void mouseMoveEvent( QMouseEvent* e ); + /** + * used to find the lock point - the middle of the button + * @return the lock point + */ + const QPoint get_lock_Point() const; + /** + * If the wheel of the mouse is used while the mouse stays over our scrollbutton the content is + * scrolled like the mouse was pressed and moved. + */ + virtual void wheelEvent( QWheelEvent* e ); + +private: + /** + * Indicates whether the button is in locked state or not + */ + bool m_isLocked; + /** + * stores the lock point + */ + QPoint lock_Point; +}; + +#endif diff --git a/bibletime/frontend/keychooser/ckeychooser.cpp b/bibletime/frontend/keychooser/ckeychooser.cpp new file mode 100644 index 0000000..b0af52f --- /dev/null +++ b/bibletime/frontend/keychooser/ckeychooser.cpp @@ -0,0 +1,48 @@ +/*************************************************************************** + ckeychooser.cpp - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "ckeychooser.h" +#include "../../backend/cswordmoduleinfo.h" +#include "../../backend/cswordbiblemoduleinfo.h" +#include "../../backend/cswordcommentarymoduleinfo.h" +#include "../../backend/cswordlexiconmoduleinfo.h" + +#include "clexiconkeychooser.h" +#include "cbiblekeychooser.h" +#include "cbookkeychooser.h" + +CKeyChooser::CKeyChooser(CSwordModuleInfo *, CSwordKey *, QWidget *parent, const char *name ) + : QWidget(parent, name){ +} + +CKeyChooser* CKeyChooser::createInstance(CSwordModuleInfo *module, CSwordKey *key, QWidget *parent){ +// ASSERT(module); +// ASSERT(key); + if (!module) + return 0; + switch ( module->type() ){ + case CSwordModuleInfo::Commentary: //Bibles and commentaries uise the same key chooser + case CSwordModuleInfo::Bible: + return new CBibleKeyChooser(module,key,parent); + case CSwordModuleInfo::Lexicon: + return new CLexiconKeyChooser(module,key,parent); + case CSwordModuleInfo::GenericBook: + return new CBookKeyChooser(module,key,parent); + default: + return 0; + } +} diff --git a/bibletime/frontend/keychooser/ckeychooser.h b/bibletime/frontend/keychooser/ckeychooser.h new file mode 100644 index 0000000..90bb145 --- /dev/null +++ b/bibletime/frontend/keychooser/ckeychooser.h @@ -0,0 +1,93 @@ +/*************************************************************************** + ckeychooser.h - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CKEYCHOOSER_H +#define CKEYCHOOSER_H + +#include + +class CSwordModuleInfo; +class CSwordKey; + +/** + * The base class for the KeyChooser. + * Do not use directly, create a KeyChooser with + * @ref #createInstance , this will create the proper one + * of the classes that inherit from @ref CKeyChooser + * + * @author The BibleTime team + */ + +class CKeyChooser : public QWidget { + Q_OBJECT + +public: + /** + * Creates a proper Instance, either + * + @ref CLexiconKeyChooser or + * @ref CBibleKeyChooser + * @param info the @ref CModuleInfo to be represented by the KeyChooser + * @param key if not NULL, the @ref CKey the KeyChooser should be set to + * @param parent the parent of the widget to create + */ + static CKeyChooser* createInstance(CSwordModuleInfo *info, CSwordKey *key, QWidget *parent); + +signals: + /** + * is emitted if the @ref CKey was changed by the user + */ + void keyChanged(CSwordKey* key); + /** + * Is emitted before the key is changed! + */ + void beforeKeyChange(const QString& key); + +public slots: + /** + * sets the @ref CKey + * @param key the key which the widget should be set to + */ + virtual void setKey(CSwordKey* key) = 0; + /** + * sets the @ref CKey + * @param key the key which the widget should be set to + */ + virtual void updateKey(CSwordKey* key) = 0; + /** + * gets the current @ref CKey + * + * @return the current @ref CKey + */ + virtual CSwordKey*const key() = 0; + /** + * Sets the module of this keychooser and refreshes the comboboxes + */ + virtual void setModule( CSwordModuleInfo* ) = 0; + /** + * Freshes the content of the different key chooser parts. + */ + virtual void refreshContent() = 0; + +protected: + /** + * the constructor - DO NOT USE! -- use @ref #createInstance instead! + */ + CKeyChooser(CSwordModuleInfo *info=0, CSwordKey *key=0, QWidget *parent=0, const char *name=0); +}; + +#endif diff --git a/bibletime/frontend/keychooser/ckeychooserwidget.cpp b/bibletime/frontend/keychooser/ckeychooserwidget.cpp new file mode 100644 index 0000000..9a97e16 --- /dev/null +++ b/bibletime/frontend/keychooser/ckeychooserwidget.cpp @@ -0,0 +1,458 @@ +/*************************************************************************** + ckeychooserwidget.cpp - description + ------------------- + begin : Tue Sep 19 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ +//BibleTime includes +#include "ckeychooserwidget.h" +#include "cfx_btn.h" +#include "../cbtconfig.h" + +//Qt includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CKCComboBox::CKCComboBox(bool rw,QWidget* parent,const char* name) + : QComboBox(rw,parent,name){ + setFocusPolicy(QWidget::WheelFocus); + if (lineEdit()) { + installEventFilter( lineEdit() ); + } +} + +/** Reimplementation. */ +bool CKCComboBox::eventFilter( QObject *o, QEvent *e ){ +// qWarning("CKCComboBox::eventFilter( QObject *o, QEvent *e )"); + if (e->type() == QEvent::FocusOut) { + QFocusEvent* f = static_cast(e); +// qWarning("FocusOut: %d", f->reason()); +// qWarning("Mouse: %d",(f->reason()==QFocusEvent::Mouse)?1:0); +// qWarning("lineedit: %d",(o == lineEdit())?1:0); +// qWarning("listbox: %d",(o == listBox())?1:0); +// qWarning("this: %d",(o == this)?1:0); + + + if (o == lineEdit() && f->reason() == QFocusEvent::Tab) { + int index = listBox()->index( listBox()->findItem(currentText()) ); + if (index == -1) + index = 0;// return 0 if not found + setCurrentItem( index ); + emit focusOut( index ); + } + else if (/*o == lineEdit() &&*/ f->reason() == QFocusEvent::Popup) { + return false; + } + else if (/*o == lineEdit() && */f->reason() == QFocusEvent::ActiveWindow) { + emit activated(currentText()); + return true; + } + else if (/*o == lineEdit() &&*/ f->reason() == QFocusEvent::Mouse) { + emit activated(currentText()); + return true; + } + else if (o == listBox()) { //??? + return false; + } + else if (o == this) { + emit activated(currentText()); + return true; + } + } +// qWarning("not handled!"); + return QComboBox::eventFilter(o,e); +} + +/** Scrolls in the list if the wheel of the mouse was used. */ +void CKCComboBox::wheelEvent( QWheelEvent* e ) { + const signed int change = (int)((float)e->delta()/(float)120); + int current = currentItem(); + + if ((current+change >= 0) && (current+changeaccept(); + emit activated( currentItem() ); + } + else { + e->ignore(); + } +} + +///** Returns the size this widget would like to have. */ +QSize CKCComboBox::sizeHint() const { + // IMHO Qt has a bug: The sizehint is not updated if the list is refreshed with other items + const QSize oldSize = QComboBox::sizeHint(); + QRect contentsRect = style().comboButtonRect(0,0, oldSize.width(), oldSize.height()); + const int buttonWidth = (oldSize.width() - contentsRect.width()); + + if (listBox()) { + return QSize( listBox()->sizeHint().width()+buttonWidth, QComboBox::sizeHint().height()); + } + else { + return QSize( QComboBox::sizeHint().width()+buttonWidth, QComboBox::sizeHint().height()); + } +} + + +//**********************************************************************************/ + +CKeyChooserWidget::CKeyChooserWidget(int count, const bool useNextPrevSignals, QWidget *parent, const char *name) : QWidget(parent,name) { + m_useNextPrevSignals = useNextPrevSignals; + for (int index=1; index <= count; index++) + m_list.append( QString::number(index) ); + init(); + reset(m_list,0,false); +}; + +CKeyChooserWidget::CKeyChooserWidget(QStringList *list, const bool useNextPrevSignals, QWidget *parent, const char *name ) : QWidget(parent,name) { + m_useNextPrevSignals = useNextPrevSignals; + if (list) + m_list = *list;//copy the items of list + else + m_list.clear(); + init(); + reset(m_list,0,false); +} + +void CKeyChooserWidget::changeCombo(int i){ + if (!isUpdatesEnabled()) + return; + setUpdatesEnabled(false); + + int current = comboBox()->currentItem(); + + //index of highest Item + const int count = comboBox()->count()-1; + int j = current + i; + if (i > 0){ + if (j <= count) + comboBox()->setCurrentItem(j); + else + comboBox()->setCurrentItem(count); + } + else if (i < 0){ + if (j>=0) + comboBox()->setCurrentItem(j); + else + comboBox()->setCurrentItem(0); + } + if (!isResetting && !btn_fx->isLocked() && (current != comboBox()->currentItem())) + emit changed(comboBox()->currentItem()); + + setUpdatesEnabled(true); +} + +void CKeyChooserWidget::reset(const int count, int index, bool do_emit){ +// qWarning("CKeyChooserWidget::reset(const int count, int index, bool do_emit)"); + if (!isUpdatesEnabled()) + return; + + m_list.clear(); + for (int i=1; i <= count; i++) + m_list.append( QString::number(i) ); + reset(&m_list,index,do_emit); +} + +void CKeyChooserWidget::reset(QStringList& list, int index, bool do_emit){ + if (!isUpdatesEnabled()) + return; + + m_list = list; + reset(&m_list,index,do_emit); + + isResetting = false; +} + + +void CKeyChooserWidget::reset(QStringList *list, int index, bool do_emit){ + if (isResetting || !isUpdatesEnabled()) + return; + isResetting = true; + setUpdatesEnabled(false); + m_comboBox->setUpdatesEnabled(false); + + m_mainLayout->setResizeMode(QLayout::FreeResize); + + oldKey = QString::null; + m_comboBox->clear(); + if (list) + m_comboBox->insertStringList(*list); + m_comboBox->resize( m_comboBox->sizeHint() ); + m_comboBox->setUpdatesEnabled(true); + + m_mainLayout->setResizeMode(QLayout::Minimum); + + m_comboBox->setCurrentItem(index); + if (!list || (list && !list->count())) { //nothing in the combobox + btn_up->setEnabled( true ); + btn_fx->setEnabled( true ); + btn_down->setEnabled( true ); + setEnabled(false); + } + else if (!isEnabled()) { //was disabled + setEnabled(true); + const bool enableButtons = list && (list->count()>=1); + btn_up->setEnabled( enableButtons ); + btn_fx->setEnabled( enableButtons ); + btn_down->setEnabled( list && (list->count()>1) ); + } + setUpdatesEnabled(true); + + if (do_emit) { + emit changed(m_comboBox->currentItem()); + } + isResetting = false; +} + +void CKeyChooserWidget::lock(void){ + comboBox()->setEditable(false); + oldKey = comboBox()->currentText(); +} + +void CKeyChooserWidget::unlock(void){ + comboBox()->setEditable(true); + comboBox()->setEditText(comboBox()->text(comboBox()->currentItem())); + if (comboBox()->currentText() != oldKey); + emit changed(comboBox()->currentItem()); +} + +/** Initializes this widget. We need this function because we have more than one constructor. */ +void CKeyChooserWidget::init( ){ + oldKey = QString::null; + btn_up = btn_down = btn_fx = 0; + + setFocusPolicy(QWidget::StrongFocus); + m_mainLayout = new QHBoxLayout( this ); + + m_comboBox = new CKCComboBox( true, this ); + m_comboBox->setAutoCompletion( true ); + m_comboBox->setInsertionPolicy(QComboBox::NoInsertion); + m_comboBox->setFocusPolicy(QWidget::WheelFocus); + + m_mainLayout->setResizeMode(QLayout::Minimum); + m_mainLayout->addWidget( m_comboBox ); + + QVBoxLayout *m_buttonLayout = new QVBoxLayout(); + m_buttonLayout->setAlignment(Qt::AlignHCenter | Qt::AlignCenter); + + btn_up = new QToolButton( this, "btn_up" ); + QIconSet iconSet = getUpIconSet(); + btn_up->setIconSet( iconSet ); + btn_up->setFixedSize(iconSet.pixmap().width(), iconSet.pixmap().height()); + btn_up->setFocusPolicy(QWidget::NoFocus); + + btn_fx = new cfx_btn( this, "btn_fx" ); + iconSet = getMoverIconSet(); + btn_fx->setIconSet( iconSet ); + btn_fx->setFixedSize(iconSet.pixmap().width(), iconSet.pixmap().height()); + btn_fx->setFocusPolicy(QWidget::NoFocus); + + btn_down = new QToolButton( this, "btn_down" ); + iconSet = getDownIconSet(); + btn_down->setIconSet( iconSet ); + btn_down->setFixedSize(iconSet.pixmap().width(), iconSet.pixmap().height()); + btn_down->setFocusPolicy(QWidget::NoFocus); + + m_buttonLayout->addWidget( btn_up ); + m_buttonLayout->addWidget( btn_fx ); + m_buttonLayout->addWidget( btn_down ); + + m_mainLayout->addLayout( m_buttonLayout ); + m_mainLayout->addSpacing(2); + + setTabOrder(m_comboBox, 0); + +// signals and slots connections + if ( CBTConfig::get(CBTConfig::scroll) ) { + if (m_useNextPrevSignals) { + connect(btn_up, SIGNAL(clicked()), SIGNAL(prev_requested()) ); + connect(btn_down, SIGNAL(clicked()), SIGNAL(next_requested()) ); + } + else { + connect(btn_up, SIGNAL(clicked()), SLOT(previous()) ); + connect(btn_down, SIGNAL(clicked()), SLOT(next()) ); + } + } + else { + if (m_useNextPrevSignals) { + connect(btn_up, SIGNAL(clicked()), SIGNAL(next_requested()) ); + connect(btn_down, SIGNAL(clicked()), SIGNAL(prev_requested()) ); + } + else { + connect(btn_up, SIGNAL(clicked()), SLOT(next()) ); + connect(btn_down, SIGNAL(clicked()), SLOT(previous()) ); + } + } + + connect(btn_fx, SIGNAL(lock()), SLOT(lock()) ); + connect(btn_fx, SIGNAL(unlock()), SLOT(unlock()) ); + connect(btn_fx, SIGNAL(change_requested(int)), SLOT(changeCombo(int)) ); + + connect(m_comboBox, SIGNAL(activated(int)), SLOT(slotComboChanged(int))); + connect(m_comboBox, SIGNAL(activated(const QString&)), SLOT(slotReturnPressed(const QString&))); + connect(m_comboBox, SIGNAL(focusOut(int)), SIGNAL(focusOut(int))); + + isResetting = false; +} + +/** Is called when the return key was presed in the combobox. */ +void CKeyChooserWidget::slotReturnPressed( const QString& text){ + for (int index=0; index < comboBox()->count(); index++) { + if (comboBox()->text(index) == text) { + if (/*!oldKey.isNull() &&*/ text != oldKey) //if the key has changed + emit changed(index); + break; + } + } +} + +/** Is called when the current item of the combo box was changed. */ +void CKeyChooserWidget::slotComboChanged(int index){ +// qWarning("CKeyChooserWidget::slotComboChanged(int index)"); + if (!isUpdatesEnabled()) + return; + setUpdatesEnabled(false); + + const QString key = comboBox()->text( index ); + if (oldKey.isNull() || (oldKey != key)) + emit changed(index); + oldKey = key; + + setUpdatesEnabled(true); +} + +#define WIDTH 17 +#define ARROW_HEIGHT 10 +#define MOVER_HEIGHT 6 + +/** Returns the icons set which contains the down button. */ +QIconSet CKeyChooserWidget::getUpIconSet(){ + QPixmap pix(WIDTH,ARROW_HEIGHT); + QPainter p(&pix); + p.fillRect(0,0, WIDTH-1, ARROW_HEIGHT-1, colorGroup().background()); + style().drawArrow(&p, Qt::UpArrow, false, 1,1, WIDTH-2, ARROW_HEIGHT-2, btn_up ? btn_up->colorGroup() : colorGroup(), btn_up ? btn_up->isEnabled() : true); + + return QIconSet(pix); +} + +/** Returns the icons set which contains the down button. */ +QIconSet CKeyChooserWidget::getDownIconSet(){ + QPixmap pix(WIDTH,ARROW_HEIGHT); + QPainter p(&pix); + p.fillRect(0,0, WIDTH-1, ARROW_HEIGHT-1, colorGroup().background()); + style().drawArrow(&p, Qt::DownArrow, false, 1,1, WIDTH-2, ARROW_HEIGHT-2, btn_down ? btn_down->colorGroup() : colorGroup(), btn_down ? btn_down->isEnabled() : true); + + return QIconSet(pix); +} + +/** Returns the icons set for the button used to change the current item. */ +QIconSet CKeyChooserWidget::getMoverIconSet(){ + QPixmap pix(WIDTH,MOVER_HEIGHT); + QPainter p(&pix); + p.fillRect(0,0, WIDTH-1, MOVER_HEIGHT-1, colorGroup().background()); + p.fillRect(2,2, WIDTH-3, MOVER_HEIGHT-3, colorGroup().foreground()); + return QIconSet(pix); +} +#undef WIDTH +#undef ARROW_HEIGHT +#undef MOVER_HEIGHT + +/** */ +void CKeyChooserWidget::adjustSize( ){ + setUpdatesEnabled(false); + QSize s = sizeHint(); + if (s.width() > maximumWidth()) + s.setWidth( maximumWidth() ); + + resize(s); + setUpdatesEnabled(true); +} + +/** Sets the tooltips for the given entries using the parameters as text. */ +void CKeyChooserWidget::setToolTips( const QString comboTip, const QString nextEntryTip, const QString scrollButtonTip, const QString previousEntryTip){ + QToolTip::add(comboBox(),comboTip); + QToolTip::add(btn_fx, scrollButtonTip); + + if ( CBTConfig::get(CBTConfig::scroll) ){ + QToolTip::add(btn_down, nextEntryTip); + QToolTip::add(btn_up, previousEntryTip); + } + else { + QToolTip::add(btn_up, nextEntryTip); + QToolTip::add(btn_down, previousEntryTip); + } +} + +/** No descriptions */ +void CKeyChooserWidget::setWhatsThis(const QString comboTip, const QString nextEntryTip, const QString scrollButtonTip, const QString previousEntryTip){ + QWhatsThis::add(comboBox(),comboTip); + QWhatsThis::add(btn_fx, scrollButtonTip); + + if ( CBTConfig::get(CBTConfig::scroll) ) { + QWhatsThis::add(btn_down, nextEntryTip); + QWhatsThis::add(btn_up, previousEntryTip); + } + else { + QWhatsThis::add(btn_up, nextEntryTip); + QWhatsThis::add(btn_down, previousEntryTip); + } +} + +/** Sets the current item to the one with the given text */ +bool CKeyChooserWidget::setItem( const QString item ){ + qDebug("CKeyChooserWidget::setItem( const QString item )"); + bool ret = false; + const int count = comboBox()->count(); + for (int i = 0; i < count; ++i) { + if (comboBox()->text(i) == item) { + comboBox()->setCurrentItem(i); + ret = true; + break; + } + } + if (!ret) + comboBox()->setCurrentItem(-1); + return ret; +} + +/** Jump to the next entry. */ +void CKeyChooserWidget::next(){ + if (comboBox()->currentItem() != comboBox()->count()-1) {// not last entry + comboBox()->setCurrentItem( comboBox()->currentItem()+1 ); + emit changed(comboBox()->currentItem()); + } +} + +/** Jump to the previous entry. */ +void CKeyChooserWidget::previous(){ + if (comboBox()->currentItem() != 0) {// not last entry + comboBox()->setCurrentItem( comboBox()->currentItem()-1 ); + emit changed(comboBox()->currentItem()); + } +} + +QComboBox* CKeyChooserWidget::comboBox(){ + return m_comboBox; +} + diff --git a/bibletime/frontend/keychooser/ckeychooserwidget.h b/bibletime/frontend/keychooser/ckeychooserwidget.h new file mode 100644 index 0000000..6df9dab --- /dev/null +++ b/bibletime/frontend/keychooser/ckeychooserwidget.h @@ -0,0 +1,229 @@ +/*************************************************************************** + ckeychooserwidget.h - description + ------------------- + begin : Tue Sep 19 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CKEYCHOOSERWIDGET_H +#define CKEYCHOOSERWIDGET_H + +#include +#include + +#include + +class cfx_btn; +class CLexiconKeyChooser; +//class CMinMaxLayout; + +class QIconSet; +//class QComboBox; +class QToolButton; +class QStringList; +class QPoint; +class QMouseEvent; +class QWheelEvent; +class QHBoxLayout; + +/* +* We use this class to conrtol the focus move in the combobox +* This class is used in the key chooser widgets +*/ +class CKCComboBox : public QComboBox { + Q_OBJECT + +public: + CKCComboBox(bool rw, QWidget * parent=0, const char * name=0 ); + /** + * Returns the size this widget would like to have. + */ + virtual QSize sizeHint() const; + +protected: + /** + * Reimplementation. + */ + virtual bool eventFilter( QObject *o, QEvent *e ); + /** + * Scrolls in the list if the wheel of the mouse was used. + */ + virtual void wheelEvent( QWheelEvent* e); + +signals: + /** + * Emitted when the user moves the focus away from the combo by pressing tab + */ + void focusOut(int itemIndex); +}; + +/** + * This class implements the KeyCooser Widget, which + * consists of a @ref QComboBox, two normal ref @QToolButton + * and a enhanced @ref cfx_btn + * + * @author The BibleTime team + */ +class CKeyChooserWidget : public QWidget { + Q_OBJECT +public: + /** + * the constructor + */ + CKeyChooserWidget(QStringList *list=0, const bool useNextPrevSignals = false, QWidget *parent=0, const char *name=0); + /** + * the constructor + */ + CKeyChooserWidget(int count=0, const bool useNextPrevSignals = false, QWidget *parent=0, const char *name=0); + /** + * This function does clear the combobox, then fill in + * the StringList, set the ComboBox' current item to index + * and if do_emit is true, it will emit @ref #changed + * + * @param list the stringlist to be inserted + * @param index the index that the combobox is to jump to + * @param do_emit should we emit @ref #changed(int) + */ + void reset(const int count, int index, bool do_emit); + void reset(QStringList& list, int index, bool do_emit); + void reset(QStringList *list, int index, bool do_emit); + /** + * Initializes this widget. We need this function because + * we have more than one constructor. + */ + virtual void init(); + /** + * + */ + virtual void adjustSize(); + /** + * Sets the QWhatsThis help for the different parts. + */ + void setWhatsThis(const QString comboTip, const QString nextEntry, const QString scrollButton, const QString previousEntry); + /** + * Sets the tooltips for the given entries using the parameters as text. + */ + void setToolTips( const QString comboTip, const QString nextEntry, const QString scrollButton, const QString previousEntry); + /** + * Sets the current item to the one with the given text + */ + bool setItem( const QString item); + /** + * Return the combobox of this key chooser widget. + */ + QComboBox* comboBox(); + +public slots: + /** + * is called to lock the combobox + */ + void lock(); + /** + * is called to unlock the combobox + */ + void unlock(); + /** + * is called to move the combobox to a certain index + * @param index the index to jump to + */ + void changeCombo(int index); + +signals: + /** + * is emittd to proceed to the next entry, which may + * require changes in other widgets also + */ + void next_requested(void); + /** + * see @ref #next_requested + */ + void prev_requested(void); + /** + * Is emitted if the widget changed, but + * only if it is not locked or being reset + * + * @param the current ComboBox index + */ + void changed(int index); + /** + * Is emitted if the widget was left with a focus out event. + * @param index The new index of the ComboBox + */ + void focusOut(int index); + +protected: + /** + * indicates wheter we are resetting at the moment + */ + bool isResetting; + /** + * Returns the icons set which contains the UP button. + */ + QIconSet getUpIconSet(); + /** + * Returns the icons set which contains the button used to change the current item. + */ + QIconSet getMoverIconSet(); + /** + * Returns the icons set which contains the down button. + */ + QIconSet getDownIconSet(); + /** + * + */ + QString oldKey; + /** + * + */ + QToolButton* btn_up; + /** + * + */ + QToolButton* btn_down; + /** + * + */ + cfx_btn* btn_fx; + +protected slots: // Protected slots + /** + * Is called when the return key was presed in the combobox. + */ + void slotReturnPressed( const QString& ); + /** + * Is called when the current item of the combo box was changed. + */ + void slotComboChanged(int); + +private: + friend class CLexiconKeyChooser; + QStringList m_list; + bool m_useNextPrevSignals; + /** + * Members should never be public!! + */ + CKCComboBox* m_comboBox; + QHBoxLayout *m_mainLayout; + +private slots: // Private slots + /** + * Jump to the previous entry. + */ + void previous(); + /** + * Jump to the next entry. + */ + void next(); +}; + +#endif diff --git a/bibletime/frontend/keychooser/clexiconkeychooser.cpp b/bibletime/frontend/keychooser/clexiconkeychooser.cpp new file mode 100644 index 0000000..61d3d64 --- /dev/null +++ b/bibletime/frontend/keychooser/clexiconkeychooser.cpp @@ -0,0 +1,101 @@ +/*************************************************************************** + clexiconkeychooser.cpp - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "clexiconkeychooser.h" +#include "ckeychooserwidget.h" +#include "cfx_btn.h" +#include "../../tooltipdef.h" +#include "../../whatsthisdef.h" +#include "../../backend/cswordlexiconmoduleinfo.h" +#include "../cbtconfig.h" + +//Qt includes +#include +#include +#include + +//KDE includes +#include + +CLexiconKeyChooser::CLexiconKeyChooser(CSwordModuleInfo *info, CSwordKey *key, QWidget *parent, const char *name ) + : CKeyChooser(info, key, parent, name), m_key(0){ + + m_module = dynamic_cast(info); + + //we use a layout because the key chooser should be resized to full size + m_layout = new QHBoxLayout(this,QBoxLayout::LeftToRight); + + m_widget = new CKeyChooserWidget(m_module->entries(), false, this); + m_widget->comboBox()->setMaximumWidth(300); + +// if (info && info->isUnicode()){ +#warning implement reaction to font change in the optionsdialog here +// /*m_widget->comboBox()->*/setFont( CBTConfig::get(CBTConfig::unicode) ); +// } + + m_widget->setToolTips(TT_PRESENTER_ENTRY_COMBO,TT_PRESENTER_NEXT_ENTRY, TT_PRESENTER_SCROLL_BUTTON, TT_PRESENTER_PREVIOUS_ENTRY); + m_widget->setWhatsThis(WT_PRESENTER_ENTRY_COMBO,WT_PRESENTER_NEXT_ENTRY, WT_PRESENTER_SCROLL_BUTTON, WT_PRESENTER_PREVIOUS_ENTRY); + + m_layout->addWidget(m_widget,0,Qt::AlignLeft); + + connect(m_widget,SIGNAL(changed(int)),SLOT(activated(int))); + connect(m_widget,SIGNAL(focusOut(int)),SLOT(activated(int))); + +// setKey(key); +} + +CSwordKey* const CLexiconKeyChooser::key(){ + return m_key; +} + +void CLexiconKeyChooser::setKey(CSwordKey* key){ + if (!(m_key = dynamic_cast(key))) + return; + m_widget->comboBox()->setCurrentItem( + m_widget->comboBox()->listBox()->index( + m_widget->comboBox()->listBox()->findItem( m_key->key() ))); +// m_widget->adjustSize(); + emit keyChanged( m_key ); +} + +void CLexiconKeyChooser::activated(int index){ + const QString text = m_widget->comboBox()->text(index); + /*to prevent from eternal loop, because activated()is emitted again*/ + if (m_key->key() != text) { + m_key->key(text); + setKey(m_key); + } +} + +/** Reimplementation. */ +void CLexiconKeyChooser::refreshContent(){ +// m_layout->invalidate(); + m_widget->reset(m_module->entries(), 0, true); +// updateGeometry(); +} + +/** Sets the module and refreshes the combo boxes */ +void CLexiconKeyChooser::setModule( CSwordModuleInfo* module) { + if (module && module != m_module && module->type() == CSwordLexiconModuleInfo::Lexicon) { + m_module = dynamic_cast(module); + refreshContent(); + } +} + +/** No descriptions */ +void CLexiconKeyChooser::updateKey(CSwordKey* key){ +} diff --git a/bibletime/frontend/keychooser/clexiconkeychooser.h b/bibletime/frontend/keychooser/clexiconkeychooser.h new file mode 100644 index 0000000..38ac22d --- /dev/null +++ b/bibletime/frontend/keychooser/clexiconkeychooser.h @@ -0,0 +1,88 @@ +/*************************************************************************** + clexiconkeychooser.h - description + ------------------- + begin : Wed Sep 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CLEXICONKEYCHOOSER_H +#define CLEXICONKEYCHOOSER_H + +#include +#include "ckeychooser.h" +#include "../../backend/cswordldkey.h" +#include "../../backend/cswordmoduleinfo.h" +#include "../../backend/cswordlexiconmoduleinfo.h" + +class CKeyChooserWidget; +class QHBoxLayout; + +/** + * This class implements the KeyChooser for lexicons + * + * it inhertits @ref CKeyChooser + * it uses 1 @ref CKeyChooserWidget to represent the lexicon keys + * + * @author The BibleTime team + */ +class CLexiconKeyChooser : public CKeyChooser { + Q_OBJECT +public: + /** + * The constructor + * + * you should not need to use this, use @ref CKeyChooser::createInstance instead + */ + CLexiconKeyChooser(CSwordModuleInfo *module=0, CSwordKey *key=0, QWidget *parent=0, const char *name=0); + +public slots: + /** + * see @ref CKeyChooser::getKey + * @return Return the key object we use. + */ + virtual CSwordKey*const key(); + /** + * see @ref CKeyChooser::setKey + */ + virtual void setKey(CSwordKey* key); + /** + * used to react to changes in the @ref CKeyChooserWidget + * + * @param index not used + **/ + virtual void activated(int index); + /** + * Reimplementatuion. + */ + virtual void refreshContent(); + /** + * Sets the module and refreshes the combo boxes of this keychooser. + */ + virtual void setModule( CSwordModuleInfo* module ); + +protected: + class CLexiconPresenter; + friend class CLexiconPresenter; + /** + * to represent the lexicon key + */ + CKeyChooserWidget *m_widget; + CSwordLDKey* m_key; + CSwordLexiconModuleInfo *m_module; + QHBoxLayout *m_layout; +public slots: // Public slots + /** No descriptions */ + virtual void updateKey(CSwordKey* key); +}; + +#endif diff --git a/bibletime/frontend/kstartuplogo.cpp b/bibletime/frontend/kstartuplogo.cpp new file mode 100644 index 0000000..36bd867 --- /dev/null +++ b/bibletime/frontend/kstartuplogo.cpp @@ -0,0 +1,95 @@ +/*************************************************************************** + kstartuplogo.cpp - description + ------------------- + begin : Sat Sep 11 1999 + copyright : (C) 1999 by Torsten Uhlmann + email : TUhlmann@gmx.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//Own includes +#include "kstartuplogo.h" + +//Qt includes +#include +#include +#include + +//KDE includes +#include +#include +#include + +//static objects +static KStartupLogo* startupLogo = 0; + +void KStartupLogo::createSplash() { + deleteSplash(); + startupLogo = new KStartupLogo(); +} + +void KStartupLogo::showSplash() { + if (startupLogo) + startupLogo->show(); +} + +void KStartupLogo::hideSplash() { + if (startupLogo) + startupLogo->hide(); +} + +void KStartupLogo::deleteSplash() { + delete startupLogo; + startupLogo = 0; +} + + +void KStartupLogo::setStatusMessage(const QString& message) { + if (startupLogo) + startupLogo->setText(message); +} + + + +KStartupLogo::KStartupLogo() + : QWidget(0, "startuplogo", WStyle_Customize | WStyle_NoBorder) { + + QPixmap pm; + if ( !pm.load(locate("BT_pic","startuplogo.png")) ) + qWarning("Can't load startuplogo! Check your installation."); + + setBackgroundPixmap(pm); + + //Please not change the margin + textLabel = new QLabel(this); + textLabel->setGeometry(0,pm.height(),pm.width(),textLabel->sizeHint().height()); + textLabel->setBackgroundColor( Qt::black ); + + QPalette p = palette(); + p.setColor( QPalette::Inactive, QColorGroup::Text, Qt::white ); + p.setColor( QPalette::Inactive, QColorGroup::Foreground, Qt::white ); + p.setColor( QPalette::Normal, QColorGroup::Text, Qt::white ); + p.setColor( QPalette::Normal, QColorGroup::Foreground, Qt::white ); + setPalette( p ); + + setGeometry ( + (KApplication::desktop()->width()-pm.width())/2, + (KApplication::desktop()->height()-pm.height()-textLabel->height())/2, + pm.width(), + pm.height()+textLabel->height()); +} + +void KStartupLogo::setText(const QString text){ + //Please not make the text bold & let the first character be blank + textLabel->setText( QString::fromLatin1(" %1").arg(text) ); + KApplication::kApplication()->processEvents(); +} + diff --git a/bibletime/frontend/kstartuplogo.h b/bibletime/frontend/kstartuplogo.h new file mode 100644 index 0000000..e456b11 --- /dev/null +++ b/bibletime/frontend/kstartuplogo.h @@ -0,0 +1,51 @@ +/*************************************************************************** + kstartuplogo.h - description + ------------------- + begin : Sat Sep 11 1999 + copyright : (C) 1999 by Torsten Uhlmann + email : TUhlmann@gmx.de + *************************************************************************** + *************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +#ifndef KSTARTUPLOGO_H +#define KSTARTUPLOGO_H + +#include + +//forward declarations +class QLabel; + + +/** + * This class provides a startuplogo. + * @author The team of KDevelop + */ +class KStartupLogo : public QWidget { +public: + static void createSplash(); + static void showSplash(); + static void hideSplash(); + static void deleteSplash(); + static void setStatusMessage(const QString& message); + +private: + KStartupLogo(); + void setText(const QString text); + QLabel* textLabel; +}; + +#endif + + + + + + diff --git a/bibletime/frontend/presenters/Makefile.am b/bibletime/frontend/presenters/Makefile.am new file mode 100644 index 0000000..d8a1dec --- /dev/null +++ b/bibletime/frontend/presenters/Makefile.am @@ -0,0 +1,28 @@ +INCLUDES = $(all_includes) + +libpresenters_a_METASOURCES = AUTO + +noinst_LIBRARIES = libpresenters.a + +libpresenters_a_SOURCES = \ +cbiblepresenter.cpp \ +clexiconpresenter.cpp \ +ccommentarypresenter.cpp \ +cbookpresenter.cpp \ +cswordpresenter.cpp \ +cmodulechooserbar.cpp \ +cmodulechooserbutton.cpp \ +cdisplaysettingsbutton.cpp + +all_headers=ccommentarypresenter.h \ +clexiconpresenter.h \ +cbiblepresenter.h \ +cmodulechooserbar.h \ +cmodulechooserbutton.h \ +cbookpresenter.h \ +cswordpresenter.h \ +cdisplaysettingsbutton.h + + +EXTRA_DIST = $(libpresenters_a_SOURCES) $(all_headers) + diff --git a/bibletime/frontend/presenters/Makefile.in b/bibletime/frontend/presenters/Makefile.in new file mode 100644 index 0000000..6547d5a --- /dev/null +++ b/bibletime/frontend/presenters/Makefile.in @@ -0,0 +1,652 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) + +#>- libpresenters_a_METASOURCES = AUTO + +noinst_LIBRARIES = libpresenters.a + +libpresenters_a_SOURCES = cbiblepresenter.cpp clexiconpresenter.cpp ccommentarypresenter.cpp cbookpresenter.cpp cswordpresenter.cpp cmodulechooserbar.cpp cmodulechooserbutton.cpp cdisplaysettingsbutton.cpp + + +all_headers = ccommentarypresenter.h clexiconpresenter.h cbiblepresenter.h cmodulechooserbar.h cmodulechooserbutton.h cbookpresenter.h cswordpresenter.h cdisplaysettingsbutton.h + + +EXTRA_DIST = $(libpresenters_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libpresenters_a_LIBADD = +#>- libpresenters_a_OBJECTS = cbiblepresenter.$(OBJEXT) \ +#>- clexiconpresenter.$(OBJEXT) ccommentarypresenter.$(OBJEXT) \ +#>- cbookpresenter.$(OBJEXT) cswordpresenter.$(OBJEXT) \ +#>- cmodulechooserbar.$(OBJEXT) cmodulechooserbutton.$(OBJEXT) \ +#>- cdisplaysettingsbutton.$(OBJEXT) +#>+ 10 +libpresenters_a_final_OBJECTS = libpresenters_a.all_cpp.o +libpresenters_a_nofinal_OBJECTS = cbiblepresenter.$(OBJEXT) \ +clexiconpresenter.$(OBJEXT) ccommentarypresenter.$(OBJEXT) \ +cbookpresenter.$(OBJEXT) cswordpresenter.$(OBJEXT) \ +cmodulechooserbar.$(OBJEXT) cmodulechooserbutton.$(OBJEXT) \ +cdisplaysettingsbutton.$(OBJEXT)\ +cbookpresenter.moc.o cmodulechooserbar.moc.o ccommentarypresenter.moc.o cdisplaysettingsbutton.moc.o cmodulechooserbutton.moc.o cbiblepresenter.moc.o cswordpresenter.moc.o clexiconpresenter.moc.o \ +libpresenters_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libpresenters_a_OBJECTS = $(libpresenters_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libpresenters_a_OBJECTS = $(libpresenters_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=cmodulechooserbutton.h cmodulechooserbar.h cbookpresenter.h ccommentarypresenter.h cswordpresenter.h cbiblepresenter.h cdisplaysettingsbutton.h clexiconpresenter.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/cbiblepresenter.P .deps/cbookpresenter.P \ +#>- .deps/ccommentarypresenter.P .deps/cdisplaysettingsbutton.P \ +#>- .deps/clexiconpresenter.P .deps/cmodulechooserbar.P \ +#>- .deps/cmodulechooserbutton.P .deps/cswordpresenter.P +#>+ 10 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/cbookpresenter.moc.P $(DEPDIR)/cmodulechooserbar.moc.P $(DEPDIR)/ccommentarypresenter.moc.P $(DEPDIR)/cdisplaysettingsbutton.moc.P $(DEPDIR)/cmodulechooserbutton.moc.P $(DEPDIR)/cbiblepresenter.moc.P $(DEPDIR)/cswordpresenter.moc.P $(DEPDIR)/clexiconpresenter.moc.P $(DEPDIR)/libpresenters_a_meta_unload.P $(DEPDIR)/libpresenters_a.all_cpp.P \ + .deps/cbiblepresenter.P .deps/cbookpresenter.P \ +.deps/ccommentarypresenter.P .deps/cdisplaysettingsbutton.P \ +.deps/clexiconpresenter.P .deps/cmodulechooserbar.P \ +.deps/cmodulechooserbutton.P .deps/cswordpresenter.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/cbookpresenter.moc.P $(DEPDIR)/cmodulechooserbar.moc.P $(DEPDIR)/ccommentarypresenter.moc.P $(DEPDIR)/cdisplaysettingsbutton.moc.P $(DEPDIR)/cmodulechooserbutton.moc.P $(DEPDIR)/cbiblepresenter.moc.P $(DEPDIR)/cswordpresenter.moc.P $(DEPDIR)/clexiconpresenter.moc.P $(DEPDIR)/libpresenters_a_meta_unload.P .deps/cbiblepresenter.P .deps/cbookpresenter.P \ +.deps/ccommentarypresenter.P .deps/cdisplaysettingsbutton.P \ +.deps/clexiconpresenter.P .deps/cmodulechooserbar.P \ +.deps/cmodulechooserbutton.P .deps/cswordpresenter.P + +SOURCES = $(libpresenters_a_SOURCES) +OBJECTS = $(libpresenters_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/presenters/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/presenters/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/presenters/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libpresenters.a: $(libpresenters_a_OBJECTS) $(libpresenters_a_DEPENDENCIES) + -rm -f libpresenters.a + $(AR) cru libpresenters.a $(libpresenters_a_OBJECTS) $(libpresenters_a_LIBADD) + $(RANLIB) libpresenters.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/presenters + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/presenters/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +cbookpresenter.moc.cpp: $(srcdir)/cbookpresenter.h + $(MOC) $(srcdir)/cbookpresenter.h -o cbookpresenter.moc.cpp + +#>+ 3 +cmodulechooserbar.moc.cpp: $(srcdir)/cmodulechooserbar.h + $(MOC) $(srcdir)/cmodulechooserbar.h -o cmodulechooserbar.moc.cpp + +#>+ 3 +ccommentarypresenter.moc.cpp: $(srcdir)/ccommentarypresenter.h + $(MOC) $(srcdir)/ccommentarypresenter.h -o ccommentarypresenter.moc.cpp + +#>+ 3 +cdisplaysettingsbutton.moc.cpp: $(srcdir)/cdisplaysettingsbutton.h + $(MOC) $(srcdir)/cdisplaysettingsbutton.h -o cdisplaysettingsbutton.moc.cpp + +#>+ 3 +cmodulechooserbutton.moc.cpp: $(srcdir)/cmodulechooserbutton.h + $(MOC) $(srcdir)/cmodulechooserbutton.h -o cmodulechooserbutton.moc.cpp + +#>+ 3 +cbiblepresenter.moc.cpp: $(srcdir)/cbiblepresenter.h + $(MOC) $(srcdir)/cbiblepresenter.h -o cbiblepresenter.moc.cpp + +#>+ 3 +cswordpresenter.moc.cpp: $(srcdir)/cswordpresenter.h + $(MOC) $(srcdir)/cswordpresenter.h -o cswordpresenter.moc.cpp + +#>+ 3 +clexiconpresenter.moc.cpp: $(srcdir)/clexiconpresenter.h + $(MOC) $(srcdir)/clexiconpresenter.h -o clexiconpresenter.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f cbookpresenter.moc.cpp cmodulechooserbar.moc.cpp ccommentarypresenter.moc.cpp cdisplaysettingsbutton.moc.cpp cmodulechooserbutton.moc.cpp cbiblepresenter.moc.cpp cswordpresenter.moc.cpp clexiconpresenter.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/presenters/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/presenters/Makefile.in + + +#>+ 10 +libpresenters_a_meta_unload.cpp: ccommentarypresenter.moc.cpp cmodulechooserbar.moc.cpp cmodulechooserbutton.moc.cpp cswordpresenter.moc.cpp cbookpresenter.moc.cpp cdisplaysettingsbutton.moc.cpp cbiblepresenter.moc.cpp clexiconpresenter.moc.cpp + @echo 'creating libpresenters_a_meta_unload.cpp' + @-rm -f libpresenters_a_meta_unload.cpp + @echo 'static const char * _metalist_libpresenters_a[] = {' > libpresenters_a_meta_unload.cpp + @cat ccommentarypresenter.moc.cpp cmodulechooserbar.moc.cpp cmodulechooserbutton.moc.cpp cswordpresenter.moc.cpp cbookpresenter.moc.cpp cdisplaysettingsbutton.moc.cpp cbiblepresenter.moc.cpp clexiconpresenter.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libpresenters_a_meta_unload.cpp + @echo '0};' >> libpresenters_a_meta_unload.cpp + @echo '#include ' >> libpresenters_a_meta_unload.cpp + @echo '_UNLOAD(libpresenters_a)' >> libpresenters_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libpresenters_a_meta_unload.cpp + +#>+ 11 +libpresenters_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/cbiblepresenter.cpp $(srcdir)/clexiconpresenter.cpp $(srcdir)/ccommentarypresenter.cpp $(srcdir)/cbookpresenter.cpp $(srcdir)/cswordpresenter.cpp $(srcdir)/cmodulechooserbar.cpp $(srcdir)/cmodulechooserbutton.cpp $(srcdir)/cdisplaysettingsbutton.cpp libpresenters_a_meta_unload.cpp cbookpresenter.moc.cpp cmodulechooserbar.moc.cpp ccommentarypresenter.moc.cpp cdisplaysettingsbutton.moc.cpp cmodulechooserbutton.moc.cpp cbiblepresenter.moc.cpp cswordpresenter.moc.cpp clexiconpresenter.moc.cpp + @echo 'creating libpresenters_a.all_cpp.cpp ...'; \ + rm -f libpresenters_a.all_cpp.files libpresenters_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libpresenters_a.all_cpp.final; \ + for file in cbiblepresenter.cpp clexiconpresenter.cpp ccommentarypresenter.cpp cbookpresenter.cpp cswordpresenter.cpp cmodulechooserbar.cpp cmodulechooserbutton.cpp cdisplaysettingsbutton.cpp libpresenters_a_meta_unload.cpp cbookpresenter.moc.cpp cmodulechooserbar.moc.cpp ccommentarypresenter.moc.cpp cdisplaysettingsbutton.moc.cpp cmodulechooserbutton.moc.cpp cbiblepresenter.moc.cpp cswordpresenter.moc.cpp clexiconpresenter.moc.cpp; do \ + echo "#include \"$$file\"" >> libpresenters_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libpresenters_a.all_cpp.final; \ + done; \ + cat libpresenters_a.all_cpp.final libpresenters_a.all_cpp.files > libpresenters_a.all_cpp.cpp; \ + rm -f libpresenters_a.all_cpp.final libpresenters_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libpresenters_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libpresenters_a_OBJECTS="$(libpresenters_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libpresenters_a_OBJECTS="$(libpresenters_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/presenters/cbiblepresenter.cpp b/bibletime/frontend/presenters/cbiblepresenter.cpp new file mode 100644 index 0000000..07c36f8 --- /dev/null +++ b/bibletime/frontend/presenters/cbiblepresenter.cpp @@ -0,0 +1,431 @@ +/*************************************************************************** + cbiblepresenter.cpp - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cbiblepresenter.h" +#include "cmodulechooserbar.h" +#include "cdisplaysettingsbutton.h" + +#include "../ctoolclass.h" +#include "../cexportmanager.h" +#include "../chtmlwidget.h" +#include "../keychooser/ckeychooser.h" +#include "../../resource.h" +#include "../../backend/cswordbiblemoduleinfo.h" +#include "../../backend/cswordversekey.h" +#include "../../backend/chtmlchapterdisplay.h" +#include "../../backend/cswordbackend.h" +#include "../../backend/creferencemanager.h" +#include "../cprofile.h" +#include "../cprofilewindow.h" + +#include + +//Qt includes +#include +#include + +//KDE includes +#include +#include +#include +#include +#include + +CBiblePresenter::CBiblePresenter(ListCSwordModuleInfo useModules, QWidget *parent, const char *name ) + : CSwordPresenter(useModules,parent,name) +{ + m_key = new CSwordVerseKey(m_moduleList.first()); + CSwordBibleModuleInfo* bible = dynamic_cast(m_moduleList.first()); + if (bible) { + if (bible->hasTestament(CSwordBibleModuleInfo::OldTestament)) + m_key->key("Genesis 1:1"); + else + m_key->key("Matthew 1:1"); + } + + initView(); + show(); + initConnections(); + + setInitialized(); +} + +CBiblePresenter::~CBiblePresenter(){ + delete m_key; +} + +/** Initializes the view (central widget, toolbars etc) of this presenter */ +void CBiblePresenter::initView(){ +// qWarning("CBiblePresenter::initView"); + m_mainToolBar = new KToolBar(this); + m_keyChooser = CKeyChooser::createInstance(m_moduleList.first(), m_key, m_mainToolBar); + m_mainToolBar->insertWidget(0,m_keyChooser->sizeHint().width(),m_keyChooser); + m_mainToolBar->setItemAutoSized(0); + + m_displaySettingsButton = new CDisplaySettingsButton( &m_displayOptions, &m_moduleOptions, m_moduleList, m_mainToolBar); + m_mainToolBar->insertWidget(1,m_displaySettingsButton->sizeHint().width(),m_displaySettingsButton); + + addToolBar(m_mainToolBar); + + m_moduleChooserBar = new CModuleChooserBar(m_moduleList, CSwordModuleInfo::Bible, this ); + addToolBar(m_moduleChooserBar); + + m_htmlWidget = new CHTMLWidget(true, this); + + //setup popup menu + m_popup = new KPopupMenu(this); + m_popup->insertTitle(i18n("Bible window")); + + m_copyPopup = new KPopupMenu(m_popup); + m_copyPopup->insertItem(i18n("Verse"), this, SLOT(copyVerse()),0,ID_PRESENTER_COPY_ONLY_KEY); + m_copyPopup->insertItem(i18n("Text of verse"), this, SLOT(copyVerseText()),0,ID_PRESENTER_COPY_KEY_TEXT); + m_copyPopup->insertItem(i18n("Verse with text"), this, SLOT(copyVerseAndText()),0,ID_PRESENTER_COPY_KEY); + m_copyPopup->insertItem(i18n("Chapter"), m_htmlWidget, SLOT(copyDocument()),0,ID_PRESENTER_COPY_CHAPTER); + m_copyPopup->insertSeparator(); + m_copyPopup->insertItem(i18n("Selected text"), m_htmlWidget, SLOT(copy()),0,ID_PRESENTER_COPY_SELECTED); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Verse with text"), this, SLOT(printVerseAndText()),0,ID_PRESENTER_PRINT_KEY); + m_printPopup->insertItem(i18n("Chapter"), this, SLOT(printChapter()),0,ID_PRESENTER_PRINT_CHAPTER); + + m_savePopup = new KPopupMenu(m_popup); + m_savePopup->insertItem(i18n("Verse with text"), this, SLOT(saveVerseAndText()),0,ID_PRESENTER_SAVE_KEY); + m_savePopup->insertItem(i18n("Chapter as plain text"), m_htmlWidget, SLOT(slotSaveAsText()),0,ID_PRESENTER_SAVE_CHAPTER); + m_savePopup->insertItem(i18n("Chapter as HTML"), m_htmlWidget, SLOT(slotSaveAsHTML()),0,ID_PRESENTER_SAVE_CHAPTER_HTML); + + m_popup->insertItem(i18n("Select all"), m_htmlWidget, SLOT(slotSelectAll()),0, ID_PRESENTER_SELECT_ALL); + m_popup->insertItem(i18n("Lookup selected text in lexicon"), m_lexiconPopup, ID_PRESENTER_LOOKUP); + m_popup->insertSeparator(); + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY),i18n("Copy..."), m_copyPopup, ID_PRESENTER_COPY_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT), i18n("Add to printing queue..."), m_printPopup, ID_PRESENTER_PRINT_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup,ID_PRESENTER_SAVE_POPUP); + + m_htmlWidget->installPopup(m_popup); + m_htmlWidget->installAnchorMenu( m_popup ); + m_htmlWidget->setModules(m_moduleList); + + setCentralWidget(m_htmlWidget); + setIcon( BIBLE_ICON_SMALL ); +} + +/** Displays the chapter using the aparameter. */ +void CBiblePresenter::lookup(CSwordKey* key){ +// qWarning("CBiblePresenter::lookup(CSwordKey* key)"); + setUpdatesEnabled(false); + + CSwordVerseKey* vKey = dynamic_cast(key); + if (!vKey) + return; + + backend()->setFilterOptions( m_moduleOptions ); + backend()->setDisplayOptions( m_displayOptions ); + + if (m_moduleList.first()->getDisplay()) { //do we have a display object? + m_moduleList.first()->module()->SetKey(*vKey); + if (m_moduleList.count()>1) + m_moduleList.first()->getDisplay()->Display( &m_moduleList ); + else + m_moduleList.first()->getDisplay()->Display( m_moduleList.first() ); + m_htmlWidget->setText( m_moduleList.first()->getDisplay()->getHTML() ); + } + if (m_key != vKey) + m_key->key(vKey->key()); + + m_htmlWidget->scrollToAnchor( QString::number(vKey->Verse()) ); + setUpdatesEnabled(true); + setCaption(windowCaption()); +} + +/** This slot is called when the modules selected in the module chooserbar have changed. */ +void CBiblePresenter::modulesChanged(){ + m_moduleList = m_moduleChooserBar->getModuleList(); + if (!m_moduleList.count()) { + close(); + } + else { + m_displaySettingsButton->reset(m_moduleList); +// refreshFeatures() + m_key->module(m_moduleList.first()); + m_keyChooser->setModule(m_moduleList.first()); + m_htmlWidget->setModules(m_moduleList); + + lookup(m_key); + } +} +/** */ +void CBiblePresenter::optionsChanged(){ + lookup(m_key); +} + + +/** Initializes the Signal / Slot connections */ +void CBiblePresenter::initConnections(){ + connect(m_htmlWidget, SIGNAL(referenceClicked(const QString&, const QString&)), + this, SLOT(lookup(const QString&, const QString&))); + connect(m_htmlWidget, SIGNAL(referenceDropped(const QString&)), + this, SLOT(referenceDropped(const QString&))); + + connect(m_keyChooser, SIGNAL(keyChanged(CSwordKey*)), + this, SLOT(lookup(CSwordKey*))); + connect(m_popup, SIGNAL(aboutToShow()), + SLOT(popupAboutToShow())); + connect(m_moduleChooserBar, SIGNAL( sigChanged() ), + SLOT(modulesChanged() )); + connect(m_displaySettingsButton, SIGNAL( sigChanged() ), + SLOT(optionsChanged() )); +} + +/** No descriptions */ +void CBiblePresenter::popupAboutToShow() { + m_popup->setItemEnabled(ID_PRESENTER_LOOKUP, !m_htmlWidget->selectedText().isEmpty()); + + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_ONLY_KEY,!m_htmlWidget->getCurrentAnchor().isEmpty()); + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_KEY_TEXT,!m_htmlWidget->getCurrentAnchor().isEmpty()); + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_KEY,!m_htmlWidget->getCurrentAnchor().isEmpty()); + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_SELECTED, !m_htmlWidget->selectedText().isEmpty()); + + m_printPopup->setItemEnabled(ID_PRESENTER_PRINT_KEY,!m_htmlWidget->getCurrentAnchor().isEmpty()); + + m_savePopup->setItemEnabled(ID_PRESENTER_SAVE_KEY,!m_htmlWidget->getCurrentAnchor().isEmpty()); +} + +/** Reimplementation from CSwordPresenter. */ +void CBiblePresenter::lookup(const QString& module, const QString& key){ + CSwordModuleInfo* m = backend()->findModuleByName(module); + if (m && m_moduleList.containsRef(m)) { + if (!key.isEmpty()) + m_key->key(key); + m_keyChooser->setKey(m_key); //the key chooser does send an update signal + } + else { + emit lookupInModule(module, key); + } +} + +/** Reimplementation. Refreshes the things which are described by the event integer. */ +void CBiblePresenter::refresh( ){ + + CSwordPresenter::refresh(); //refreshes the display settings button + + m_key->setLocale((const char*)backend()->booknameLanguage().local8Bit()); + m_keyChooser->refreshContent(); + lookup(m_key); + m_htmlWidget->refresh(); +} + + +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::copyVerse(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + + QClipboard *cb = KApplication::clipboard(); + cb->setText(vKey.key()); +} + +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::copyVerseText(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + QClipboard *cb = KApplication::clipboard(); + cb->setText(vKey.strippedText()); +} + +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::copyVerseAndText(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + CSwordVerseKey vKey(m); + vKey.key(key); + + const QString text = QString("%1\n%2").arg(vKey.key()).arg(vKey.strippedText()); + QClipboard *cb = KApplication::clipboard(); + cb->setText(text); +} + +//print functions +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::printVerseAndText(){ + QString key = QString::null; + QString module = QString::null; + const QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + + CExportManager::printKey(m, vKey.key()); +} + +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::printChapter(){ + CSwordVerseKey startKey(*m_key); + startKey.Verse(1); + + CSwordVerseKey stopKey(*m_key); + + CSwordBibleModuleInfo* b = dynamic_cast(m_moduleList.first()); + if (b) + stopKey.Verse( b->verseCount( b->bookNumber(startKey.book()), startKey.Chapter() ) ); + CExportManager::printKey(m_moduleList.first(), startKey.key(), stopKey.key()); +} + +//save functions + +/** Copies the highlighted text into clipboard. */ +void CBiblePresenter::saveVerseAndText(){ + QString key = QString::null; + QString module = QString::null; + CReferenceManager::Type type; + const QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordVerseKey vKey( backend()->findModuleByName(module) ); + vKey.key(key); + + CExportManager::saveKey(&vKey, true); +} + +/** Inserts the actions used by this window class into the given KAccel object. */ +void CBiblePresenter::insertKeyboardActions(KAccel* a){ + a->setConfigGroup("Bible window"); + a->insertItem(i18n("Next book"), "Next book", 0); + a->insertItem(i18n("Previous book"), "Previous book", 0); + + a->insertItem(i18n("Next chapter"), "Next chapter", 0); + a->insertItem(i18n("Previous chapter"), "Previous chapter", 0); + + a->insertItem(i18n("Next verse"), "Next verse", 0); + a->insertItem(i18n("Previous verse"), "Previous verse", 0); +} + +/** Initializes the accelerator object. */ +void CBiblePresenter::initAccels(){ + ASSERT(m_accel); + m_accel->setConfigGroup("Bible window"); + + m_accel->insertItem(i18n("Next book"), "Next book", 0); + m_accel->connectItem("Next book", this, SLOT(nextBook())); + m_accel->insertItem(i18n("Previous book"), "Previous book", 0); + m_accel->connectItem("Previous book", this, SLOT(previousBook())); + + m_accel->insertItem(i18n("Next chapter"), "Next chapter", 0); + m_accel->connectItem("Next chapter", this, SLOT(nextChapter())); + m_accel->insertItem(i18n("Previous chapter"), "Previous chapter", 0); + m_accel->connectItem("Previous chapter", this, SLOT(previousChapter())); + + m_accel->insertItem(i18n("Next verse"), "Next verse", 0); + m_accel->connectItem("Next verse", this, SLOT(nextVerse())); + m_accel->insertItem(i18n("Previous verse"), "Previous verse", 0); + m_accel->connectItem("Previous verse", this, SLOT(previousVerse())); + + m_accel->readSettings(); + CSwordPresenter::initAccels(); +} + +/** Jumps to the next entry */ +void CBiblePresenter::nextBook(){ + if (m_key->next(CSwordVerseKey::UseBook)) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CBiblePresenter::previousBook(){ + if (m_key->previous(CSwordVerseKey::UseBook)) + m_keyChooser->setKey(m_key); +} + + +/** Jumps to the next entry */ +void CBiblePresenter::nextChapter(){ + if (m_key->next(CSwordVerseKey::UseChapter)) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CBiblePresenter::previousChapter(){ + if (m_key->previous(CSwordVerseKey::UseChapter)) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the next entry */ +void CBiblePresenter::nextVerse(){ +// qWarning("CBiblePresenter::nextVerse()"); + if ( m_key->next(CSwordVerseKey::UseVerse) ) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CBiblePresenter::previousVerse(){ + if (m_key->previous(CSwordVerseKey::UseVerse)) + m_keyChooser->setKey(m_key); +} + +/** Stores some Bible window dpecific setttings in the profile. */ +void CBiblePresenter::storeSettings( CProfileWindow* settings ){ + CSwordPresenter::storeSettings(settings); + /** + * store the state of the displaysetttings button in the profile + * we use a binary digit to store the state. The most right digit is 1 if the + * first button is set, 0 if it isn't. The second digit is for the second entry in the menu. + * etc + */ + const int count = m_displaySettingsButton->menuItemCount(); + int result = 0; + //now check every item + for (int i = 1; iitemStatus(i)) //item is checked + result += (int)pow(2,i-1);//add 2^i (the i. digit in binary) + } + settings->setWindowSettings(result); +} + +/** Applies some Bible window specific setttings. */ +void CBiblePresenter::applySettings( CProfileWindow* settings ){ + CSwordPresenter::applySettings(settings); + int result = settings->windowSettings(); + const int count = m_displaySettingsButton->menuItemCount(); + for (int i = count-1; i>=1; i--) { + if (result-(int)pow(2,i-1)>= 0) { //2^i was added before, so item with index i is set + result -= (int)pow(2,i-1); + m_displaySettingsButton->setItemStatus(i,true); + } + else + m_displaySettingsButton->setItemStatus(i,false); + } + m_displaySettingsButton->setChanged(); +} diff --git a/bibletime/frontend/presenters/cbiblepresenter.h b/bibletime/frontend/presenters/cbiblepresenter.h new file mode 100644 index 0000000..095ca75 --- /dev/null +++ b/bibletime/frontend/presenters/cbiblepresenter.h @@ -0,0 +1,94 @@ +/*************************************************************************** + cbiblepresenter.h - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBIBLEPRESENTER_H +#define CBIBLEPRESENTER_H + +#include +#include "cswordpresenter.h" + +class CSwordVerseKey; + +/** + * The presenter used for Sword Bibles. + * @author The BibleTime team + */ +class CBiblePresenter : public CSwordPresenter { + Q_OBJECT +public: + CBiblePresenter(ListCSwordModuleInfo useModules, QWidget *parent=0, const char *name=0); + ~CBiblePresenter(); + /** + * Reimplementation from CSwordPresenter. + */ + virtual void lookup(const QString&, const QString&); + /** + * Reimplementation. + */ + virtual void refresh( ); + /** + * Inserts the actions used by this window class into the given KAccel object. + */ + static void insertKeyboardActions(KAccel* a); + /** + * Applies some Bible window specific setttings. + */ + virtual void applySettings( CProfileWindow* window ); + /** + * Stores some Bible window dpecific setttings in the profile. + */ + virtual void storeSettings( CProfileWindow* setttings ); + +protected: + /** + * Initializes the view (central widget, toolbars etc) of this presenter + */ + virtual void initView(); + /** + * Initializes the Signal / Slot connections + */ + void initConnections(); + /** + * Initializes the accelerator object. + */ + virtual void initAccels(); + +protected slots: + void modulesChanged(); + void optionsChanged(); + void lookup( CSwordKey* ); + void nextBook(); + void previousBook(); + void nextChapter(); + void previousChapter(); + void nextVerse(); + void previousVerse(); + +private slots: + void popupAboutToShow(); + void copyVerse(); + void copyVerseText(); + void copyVerseAndText(); + void printVerseAndText(); + void printChapter(); + void saveVerseAndText(); + +private: + CSwordVerseKey* m_key; +}; + +#endif diff --git a/bibletime/frontend/presenters/cbookpresenter.cpp b/bibletime/frontend/presenters/cbookpresenter.cpp new file mode 100644 index 0000000..f811248 --- /dev/null +++ b/bibletime/frontend/presenters/cbookpresenter.cpp @@ -0,0 +1,258 @@ +/*************************************************************************** + cbookpresenter.cpp - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +//BibleTime includes +#include "cbookpresenter.h" +#include "../keychooser/ckeychooser.h" +#include "../keychooser/cbooktreechooser.h" +#include "cmodulechooserbar.h" +#include "../ctoolclass.h" +#include "../chtmlwidget.h" +#include "../cexportmanager.h" +#include "../../backend/cswordtreekey.h" +#include "../../backend/chtmlentrydisplay.h" +#include "../../backend/cswordbackend.h" + +#include "cdisplaysettingsbutton.h" +#include "../../resource.h" +#include "../../tooltipdef.h" +#include "../../whatsthisdef.h" + +//Qt includes +#include + +//KDE includes +#include +#include +#include + +CBookPresenter::CBookPresenter(ListCSwordModuleInfo useModules, QWidget *parent, const char *name ) + : CSwordPresenter(useModules,parent,name) +{ + m_key = dynamic_cast( CSwordKey::createInstance(useModules.first()) ); + m_key->root(); + + initView(); + show(); + initConnections(); + + setInitialized(); +} + +CBookPresenter::~CBookPresenter(){ + delete m_key; + m_key = 0; +} + +/** Initializes the interface of this presenter. */ +void CBookPresenter::initView(){ + m_mainToolBar = new KToolBar(this); + m_keyChooser = CKeyChooser::createInstance(m_moduleList.first(), m_key, m_mainToolBar); + m_mainToolBar->insertWidget(0,m_keyChooser->sizeHint().width(),m_keyChooser); + + m_treeAction = new KToggleAction(i18n("Toggle tree..."), ICON_VIEW_BOOKTREE, + IDK_PRESENTER_TOGGLE_TREE, this, SLOT(treeToggled()), actionCollection(), "treeToggle_action"); +// m_treeAction->setWhatsThis( WT_PRESENTER_SYNC ); + m_treeAction->plug(m_mainToolBar); + + addToolBar(m_mainToolBar); + + m_moduleChooserBar = new CModuleChooserBar(m_moduleList, CSwordModuleInfo::GenericBook, this ); + m_moduleChooserBar->setButtonLimit(1); + addToolBar(m_moduleChooserBar); + + + QSplitter* splitter = new QSplitter(this); + m_treeChooser = new CBookTreeChooser(m_moduleList.first(), m_key, splitter); + m_treeAction->setChecked(false); + m_treeChooser->hide(); + + splitter->setResizeMode(m_treeChooser, QSplitter::FollowSizeHint); + + m_htmlWidget = new CHTMLWidget(true, splitter); + + m_popup = new KPopupMenu(this); + m_popup->insertTitle(i18n("Book window")); + + m_copyPopup = new KPopupMenu(m_popup); +// m_copyPopup->insertItem(i18n("Verse"), this, SLOT(copyVerse()),0,ID_PRESENTER_COPY_ONLY_KEY); +// m_copyPopup->insertItem(i18n("Text of verse"), this, SLOT(copyVerseText()),0,ID_PRESENTER_COPY_KEY_TEXT); +// m_copyPopup->insertItem(i18n("Verse with text"), this, SLOT(copyVerseAndText()),0,ID_PRESENTER_COPY_KEY); +// m_copyPopup->insertItem(i18n("Chapter"), m_htmlWidget, SLOT(copyDocument()),0,ID_PRESENTER_COPY_CHAPTER); +// m_copyPopup->insertSeparator(); + m_copyPopup->insertItem(i18n("Selected text"), m_htmlWidget, SLOT(copy()),0,ID_PRESENTER_COPY_SELECTED); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Entry"), this, SLOT(printEntry()),0,ID_PRESENTER_PRINT_KEY); + + m_savePopup = new KPopupMenu(m_popup); +// m_savePopup->insertItem(i18n("Verse with text"), this, SLOT(saveVerseAndText()),0,ID_PRESENTER_SAVE_KEY); +// m_savePopup->insertItem(i18n("Chapter as plain text"), m_htmlWidget, SLOT(slotSaveAsText()),0,ID_PRESENTER_SAVE_CHAPTER); + m_savePopup->insertItem(i18n("Entry as HTML"), m_htmlWidget, SLOT(slotSaveAsHTML()),0,ID_PRESENTER_SAVE_CHAPTER_HTML); + + m_popup->insertItem(i18n("Select all"), m_htmlWidget, SLOT(slotSelectAll()),0, ID_PRESENTER_SELECT_ALL); + m_popup->insertItem(i18n("Lookup selected text in lexicon"), m_lexiconPopup, ID_PRESENTER_LOOKUP); + m_popup->insertSeparator(); + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY),i18n("Copy..."), m_copyPopup, ID_PRESENTER_COPY_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT), i18n("Add to printing queue..."), m_printPopup, ID_PRESENTER_PRINT_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup,ID_PRESENTER_SAVE_POPUP); + + m_htmlWidget->installPopup(m_popup); + m_htmlWidget->installAnchorMenu(m_popup); + m_htmlWidget->setModules(m_moduleList); + + + setCentralWidget(splitter); +} + +/** Initializes the Signal / Slot connections */ +void CBookPresenter::initConnections(){ + connect(m_htmlWidget, SIGNAL(referenceClicked(const QString&, const QString&)), + this, SLOT(lookup(const QString&, const QString&))); + connect(m_htmlWidget, SIGNAL(referenceDropped(const QString&)), + this, SLOT(referenceDropped(const QString&))); + + connect(m_keyChooser, SIGNAL(keyChanged(CSwordKey*)), + this, SLOT(lookup(CSwordKey*))); + connect(m_keyChooser, SIGNAL(keyChanged(CSwordKey*)), + m_treeChooser, SLOT(updateKey(CSwordKey*))); + + connect(m_treeChooser, SIGNAL(keyChanged(CSwordKey*)), + this, SLOT(lookup(CSwordKey*))); + connect(m_treeChooser, SIGNAL(keyChanged(CSwordKey*)), + m_keyChooser, SLOT(updateKey(CSwordKey*))); + +// connect(m_popup, SIGNAL(aboutToShow()), +// SLOT(popupAboutToShow())); + connect(m_moduleChooserBar, SIGNAL( sigChanged() ), + SLOT(modulesChanged() )); +// connect(m_displaySettingsButton, SIGNAL( sigChanged() ), +// SLOT(optionsChanged() )); +} + +void CBookPresenter::modulesChanged(){ + m_moduleList = m_moduleChooserBar->getModuleList(); + if (!m_moduleList.count()) + close(); + else { + m_key->module(m_moduleList.first()); + m_keyChooser->setModule(m_moduleList.first()); + m_treeChooser->setModule(m_moduleList.first()); + m_htmlWidget->setModules(m_moduleList); + + lookup(m_key); + } +} + +void CBookPresenter::lookup(CSwordKey* key) { + setUpdatesEnabled(false); + CSwordTreeKey* treeKey = dynamic_cast(key); + CSwordModuleInfo* m = m_moduleList.first(); + m->module()->SetKey(treeKey); + + + if (m->getDisplay()) { + m->getDisplay()->Display( m ); + m_htmlWidget->setText(m->getDisplay()->getHTML()); + } + if (m_key != treeKey) { + m_key->key(treeKey->key()); + } + setUpdatesEnabled(true); + setCaption( windowCaption() ); + + m_htmlWidget->scrollToAnchor( QString::fromLocal8Bit(treeKey->getLocalName()) ); +} + +/** No descriptions */ +void CBookPresenter::lookup( const QString& module, const QString& key){ + CSwordModuleInfo* m = backend()->findModuleByName(module); + if (m && m_moduleList.containsRef(m)) { + if (!key.isEmpty()) + m_key->key(key); + else + m_key->root(); + m_keyChooser->setKey(m_key); //the key chooser does send an update signal + } + else + emit lookupInModule(module, key); +} + +/** Initializes keyboard accelerators. */ +void CBookPresenter::initAccels(){ + CSwordPresenter::initAccels(); + m_accel->setConfigGroup("Book window"); + m_accel->insertItem(i18n("Toggle tree"), "Toggle tree", 0); + m_accel->connectItem("Toggle tree", this, SLOT(treeToggled())); + + m_accel->readSettings(); +} + +void CBookPresenter::insertKeyboardActions(KAccel* a){ + a->setConfigGroup("Book window"); + a->insertItem(i18n("Toggle tree"), "Toggle tree", 0); +} + +/** No descriptions */ +void CBookPresenter::printEntry(){ + CExportManager::printKey( m_moduleList.first(), m_key->key() ); +} + +/** Is called when the tree should be toggled. */ +void CBookPresenter::treeToggled(){ + if (m_treeAction->isChecked()) + m_treeChooser->show(); + else + m_treeChooser->hide(); +} + +void CBookPresenter::applySettings( CProfileWindow* settings ){ + CSwordPresenter::applySettings(settings); + + if (settings->windowSettings()) { + m_treeAction->setChecked(true); + m_treeChooser->show(); + } + else { + m_treeAction->setChecked(false); + m_treeChooser->hide(); + } +// const int count = m_displaySettingsButton->menuItemCount(); +// for (int i = count-1; i>=1; i--) { +// if (result-(int)pow(2,i-1)>= 0) { //2^i was added before, so item with index i is set +// result -= (int)pow(2,i-1); +// m_displaySettingsButton->setItemStatus(i,true); +// } +// else +// m_displaySettingsButton->setItemStatus(i,false); +// } +// m_displaySettingsButton->setChanged(); +} + +void CBookPresenter::storeSettings( CProfileWindow* settings ){ + CSwordPresenter::storeSettings(settings); + settings->setWindowSettings( m_treeAction->isChecked() ); +// const int count = m_displaySettingsButton->menuItemCount(); +// int result = 0; +// //now check every item +// for (int i = 1; iitemStatus(i)) //item is checked +// result += (int)pow(2,i-1);//add 2^i (the i. digit in binary) +// } +// settings->setWindowSettings(result); +} diff --git a/bibletime/frontend/presenters/cbookpresenter.h b/bibletime/frontend/presenters/cbookpresenter.h new file mode 100644 index 0000000..58b4800 --- /dev/null +++ b/bibletime/frontend/presenters/cbookpresenter.h @@ -0,0 +1,77 @@ +/*************************************************************************** + cbookpresenter.h - description + ------------------- + begin : Thu Jan 24 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CBOOKPRESENTER_H +#define CBOOKPRESENTER_H + +#include +#include "cswordpresenter.h" + + +class CSwordTreeKey; +class KToggleAction; + +/**Creates a presenter object for generic book support. + *@author The BibleTime team + */ + +class KAccel; + +class CBookTreeChooser; + +class CBookPresenter : public CSwordPresenter { + Q_OBJECT +public: + /** + * Constructor of the presenter for generic books. + */ + CBookPresenter(ListCSwordModuleInfo useModules, QWidget *parent=0, const char *name=0 ); + virtual ~CBookPresenter(); + static void insertKeyboardActions(KAccel* a); + virtual void applySettings( CProfileWindow* settings ); + virtual void storeSettings( CProfileWindow* setttings ); + +public slots: // Public slots + /** + * No descriptions + */ + virtual void lookup( const QString&, const QString&); + +protected: // Protected methods + /** + * Initializes the interface of this presenter. + */ + virtual void initView(); + /** + * Init the Signal Slot connections between childs and this widget. + */ + virtual void initConnections(); + virtual void initAccels(); + +protected slots: + void modulesChanged(); + void lookup(CSwordKey*); + void treeToggled(); + void printEntry(); + +private: + CSwordTreeKey* m_key; + CBookTreeChooser* m_treeChooser; + KToggleAction* m_treeAction; +}; + +#endif diff --git a/bibletime/frontend/presenters/ccommentarypresenter.cpp b/bibletime/frontend/presenters/ccommentarypresenter.cpp new file mode 100644 index 0000000..da37d9e --- /dev/null +++ b/bibletime/frontend/presenters/ccommentarypresenter.cpp @@ -0,0 +1,524 @@ +/*************************************************************************** + ccommentarypresenter.cpp - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "ccommentarypresenter.h" +#include "cmodulechooserbar.h" +#include "cdisplaysettingsbutton.h" + +#include "../ctoolclass.h" +#include "../cexportmanager.h" +#include "../chtmlwidget.h" +#include "../keychooser/ckeychooser.h" +#include "../../resource.h" +#include "../../whatsthisdef.h" +#include "../../backend/cswordversekey.h" +#include "../../backend/chtmlchapterdisplay.h" +#include "../../backend/creferencemanager.h" +#include "../../backend/cswordbackend.h" +#include "../../backend/cswordcommentarymoduleinfo.h" + + +//Qt includes +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include + +CCommentaryPresenter::CCommentaryPresenter(ListCSwordModuleInfo useModules, QWidget *parent, const char *name ) + : CSwordPresenter(useModules, parent,name), + m_key( new CSwordVerseKey(m_moduleList.first()) ), m_editToolBar(0) +{ + CSwordCommentaryModuleInfo* commentary = dynamic_cast(m_moduleList.first()); + if (commentary) { + if (commentary->hasTestament(CSwordBibleModuleInfo::OldTestament)) + m_key->key("Genesis 1:1"); + else + m_key->key("Matthew 1:1"); + } + + initView(); + show(); + initConnections(); + + setInitialized(); +} + +CCommentaryPresenter::~CCommentaryPresenter(){ + delete m_key; +} + +/** Initializes our view. */ +void CCommentaryPresenter::initView(){ + m_mainToolBar = new KToolBar(this); + m_keyChooser = CKeyChooser::createInstance(m_moduleList.first(), m_key, m_mainToolBar); + m_mainToolBar->insertWidget(0,m_keyChooser->sizeHint().width(),m_keyChooser); + addToolBar(m_mainToolBar); + + m_moduleChooserBar = new CModuleChooserBar(m_moduleList, CSwordModuleInfo::Commentary, this ); + addToolBar(m_moduleChooserBar); + + presenterSync_action = new KToggleAction(i18n("Synchronize..."), ICON_SYNC, + IDK_PRESENTER_EDIT, this, SLOT(syncToggled()), actionCollection(), "syncComment_action"); + presenterSync_action->setWhatsThis( WT_PRESENTER_SYNC ); + presenterSync_action->plug(m_mainToolBar); + + presenterEdit_action = new KToggleAction(i18n("Edit entry..."), ICON_EDIT, + IDK_PRESENTER_EDIT, this, SLOT(editComment()), actionCollection(), "editComment_action"); + presenterEdit_action->setEnabled( m_moduleList.first()->module()->isWritable() ); + presenterEdit_action->setWhatsThis( WT_PRESENTER_EDIT ); + presenterEdit_action->plug(m_mainToolBar); + + m_htmlWidget = new CHTMLWidget(true, this); + ASSERT(m_htmlWidget); + + //setup popup menu + m_popup = new KPopupMenu(this); + m_popup->insertTitle(i18n("Commentary window")); + + m_copyPopup = new KPopupMenu(m_popup); + m_copyPopup->insertItem(i18n("Entry"), this, SLOT(copyEntry()),0,ID_PRESENTER_COPY_ONLY_KEY); + m_copyPopup->insertItem(i18n("Text of entry"), this, SLOT(copyEntryText()),0,ID_PRESENTER_COPY_KEY_TEXT); + m_copyPopup->insertItem(i18n("Entry with text"), this, SLOT(copyEntryAndText()),0,ID_PRESENTER_COPY_KEY); + m_copyPopup->insertSeparator(); + m_copyPopup->insertItem(i18n("Selected text"), m_htmlWidget, SLOT(copy()),0,ID_PRESENTER_COPY_SELECTED); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Entry with text"), this, SLOT(printHighlightedVerse()),0,ID_PRESENTER_PRINT_KEY); + + m_savePopup = new KPopupMenu(m_popup); + m_savePopup->insertItem(i18n("Entry as plain text"), m_htmlWidget, SLOT(slotSaveAsText()),0,ID_PRESENTER_SAVE_CHAPTER); + m_savePopup->insertItem(i18n("Entry as HTML"), m_htmlWidget, SLOT(slotSaveAsHTML()),0,ID_PRESENTER_SAVE_CHAPTER_HTML); + + m_popup->insertItem(i18n("Select all"), m_htmlWidget, SLOT(slotSelectAll()),0, ID_PRESENTER_SELECT_ALL); + m_popup->insertItem(i18n("Lookup selected text in lexicon"), m_lexiconPopup, ID_PRESENTER_LOOKUP); + m_popup->insertSeparator(); + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY),i18n("Copy..."), m_copyPopup, ID_PRESENTER_COPY_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT), i18n("Add to printing queue..."), m_printPopup, ID_PRESENTER_PRINT_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup,ID_PRESENTER_SAVE_POPUP); + + m_htmlWidget->installPopup(m_popup); + m_htmlWidget->installAnchorMenu( m_popup ); + m_htmlWidget->setModules(m_moduleList); + setCentralWidget(m_htmlWidget); + setIcon( COMMENTARY_ICON_SMALL ); +} + +/** Initializes the connections */ +void CCommentaryPresenter::initConnections(){ + connect(m_htmlWidget, SIGNAL(referenceClicked(const QString&, const QString&)), + this, SLOT(lookup(const QString&, const QString&))); + connect(m_htmlWidget, SIGNAL(referenceDropped(const QString&)), + this, SLOT(referenceDropped(const QString&))); + + connect(m_htmlWidget, SIGNAL(sigDeleteDocument()), + this, SLOT(deleteText())); + connect(m_htmlWidget, SIGNAL(sigSaveDocument(const QString)), + this, SLOT(saveText(const QString))); + connect(m_htmlWidget, SIGNAL(insertReference(const QString&)), + this, SLOT(insertReference(const QString&))); + + connect( m_keyChooser, SIGNAL(beforeKeyChange(const QString&)), + this, SLOT(beforeKeyChange(const QString&))); + connect( m_keyChooser, SIGNAL(keyChanged(CSwordKey*)), + this, SLOT(lookup(CSwordKey*))); + + connect(m_popup,SIGNAL(aboutToShow()), + SLOT(popupAboutToShow())); + + connect(m_moduleChooserBar, SIGNAL( sigChanged() ), + SLOT( modulesChanged() )); +// connect(m_displaySettingsButton, SIGNAL( sigChanged() ), +// SLOT(optionsChanged() )); +} + +/** Is called when the selected modules changed. */ +void CCommentaryPresenter::modulesChanged(){ + m_moduleList = m_moduleChooserBar->getModuleList(); + + if (!m_moduleList.count()) + close(); + else { + presenterEdit_action->setEnabled( m_moduleList.first()->module()->isWritable() ); +// m_displaySettingsButton->reset(m_moduleList); +// refreshFeatures(); + m_key->module(m_moduleList.first()); + m_keyChooser->setModule(m_moduleList.first()); + m_htmlWidget->setModules(m_moduleList); + lookup(m_key); + } +} +/** */ +void CCommentaryPresenter::optionsChanged(){ + lookup(m_key); +} + +/** renders text and set it to the HTML widget */ +void CCommentaryPresenter::lookup(CSwordKey* key){ + setUpdatesEnabled(false); + CSwordVerseKey* vKey = dynamic_cast(key); + if (!vKey) + return; + + backend()->setFilterOptions( m_moduleOptions ); + backend()->setDisplayOptions( m_displayOptions ); + + m_moduleList.first()->module()->SetKey(*vKey); + + if (m_moduleList.first()->getDisplay()) { //do we have a display object? + if (m_htmlWidget->isReadOnly()) { + if (m_moduleList.count()>1) + m_moduleList.first()->getDisplay()->Display( &m_moduleList ); + else + m_moduleList.first()->getDisplay()->Display( m_moduleList.first() ); + m_htmlWidget->setText( m_moduleList.first()->getDisplay()->getHTML() ); + } + else + m_htmlWidget->setText( QString::fromUtf8( m_moduleList.first()->module()->getRawEntry() ) ); + } + if (m_key != vKey) + m_key->key(vKey->key()); + + m_htmlWidget->scrollToAnchor( QString::number(vKey->Verse()) ); + m_htmlWidget->setModified(false); + setUpdatesEnabled(true); + + setCaption( windowCaption() ); +} + +/** No descriptions */ +void CCommentaryPresenter::popupAboutToShow(){ + m_popup->setItemEnabled(ID_PRESENTER_LOOKUP, !m_htmlWidget->selectedText().isEmpty()); + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_SELECTED, !m_htmlWidget->selectedText().isEmpty()); +} + +/** Saves the given text in the module. */ +void CCommentaryPresenter::saveText(const QString text){ + m_moduleList.first()->module()->SetKey(m_key); + if (!text.isEmpty()) + *(m_moduleList.first()->module()) << (const char*)text.utf8(); + else + m_moduleList.first()->module()->deleteEntry(); + m_htmlWidget->setModified( false ); +} + +/** Deletes the displayed and edited text. */ +void CCommentaryPresenter::deleteText(){ + m_moduleList.first()->module()->deleteEntry(); + m_htmlWidget->clear(); +} + +void CCommentaryPresenter::editComment(){ + if (!m_htmlWidget->isReadOnly()) { + switch (KMessageBox::warningYesNo( this, i18n("The text was not saved to the module. Save the changes now?")) ) { + case KMessageBox::Yes: + { + saveText( m_htmlWidget->text() ); + m_htmlWidget->setModified( false ); + break; + } + default: //no + break; + } + } + + m_htmlWidget->setReadOnly( !m_htmlWidget->isReadOnly() ); + if (!m_htmlWidget->isReadOnly() && !m_editToolBar) { + m_editToolBar = new KToolBar(this); + addToolBar(m_editToolBar); + m_htmlWidget->createEditToolbar( m_editToolBar ); + } + if (!m_htmlWidget->isReadOnly() && !m_editToolBar) + return; + + if (!m_htmlWidget->isReadOnly()) + m_editToolBar->show(); + else + m_editToolBar->hide(); + + lookup( m_key ); + m_htmlWidget->setFocus(); +} + +/** Reimplementation. */ +void CCommentaryPresenter::lookup(const QString& module, const QString& key){ + CSwordModuleInfo* m = backend()->findModuleByName(module); + if (m && m_moduleList.containsRef(m)) { + if (!key.isEmpty()) + m_key->key(key); + m_keyChooser->setKey(m_key); //the key chooser does send an update signal + } + else { + emit lookupInModule(module, key); + } +} + +/** No descriptions */ +void CCommentaryPresenter::refresh( ){ + +// CSwordPresenter::refresh(); //refreshes the display settings button + + m_key->setLocale((const char*)backend()->booknameLanguage().local8Bit()); + m_keyChooser->refreshContent(); + lookup(m_key); + m_htmlWidget->refresh(); +} + +/** Printes the verse the user has chosen. */ +void CCommentaryPresenter::printHighlightedVerse(){ +// CSwordVerseKey key(m_moduleList.first()); //this key is deleted by the printem +// key->key(m_key->key()); +// CSwordVerseKey key(*m_key); + CExportManager::printKey(m_moduleList.first(), m_key->key()); +} + +/** The sync button was pressed for synchronization. */ +void CCommentaryPresenter::syncToggled(){ +} + +/** Synchronizes to the given key if sync is enabled. */ +void CCommentaryPresenter::synchronize( CSwordKey* syncKey ){ + if (!presenterSync_action->isChecked() || !syncKey) + return; + checkChanges(); + m_key->key(syncKey->key()); + m_keyChooser->setKey(m_key); +} + +/** No descriptions */ +void CCommentaryPresenter::insertReference(const QString& reference){ + if (m_htmlWidget->isReadOnly()) + return; + CSwordVerseKey vk(m_moduleList.first()); + vk.key(reference); + m_htmlWidget->insert(vk.strippedText()); +} + +/** Copies the highlighted text into clipboard. */ +void CCommentaryPresenter::copyEntry(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + + QClipboard *cb = KApplication::clipboard(); + cb->setText(vKey.key()); +} + +/** Copies the highlighted text into clipboard. */ +void CCommentaryPresenter::copyEntryText(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + + QClipboard *cb = KApplication::clipboard(); + cb->setText(vKey.strippedText()); +} + +/** Copies the highlighted text into clipboard. */ +void CCommentaryPresenter::copyEntryAndText(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + CSwordModuleInfo* m = backend()->findModuleByName(module); + + CSwordVerseKey vKey(m); + vKey.key(key); + + const QString text = QString::fromLatin1("%1\n%2").arg(vKey.key()).arg(vKey.strippedText()); + QClipboard *cb = KApplication::clipboard(); + cb->setText(text); +} + +//print functions +/** Copies the highlighted text into clipboard. */ +void CCommentaryPresenter::printEntry(){ + QString key = QString::null; + QString module = QString::null; + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + CReferenceManager::Type type; + CReferenceManager::decodeHyperlink(currentAnchor, module, key, type); + + CSwordModuleInfo* m = backend()->findModuleByName(module); + CSwordVerseKey vKey(m); + CExportManager::printKey(m, vKey.key(key)); +} + +/** Checks for changes and saves the text. */ +void CCommentaryPresenter::checkChanges(){ +// qDebug("void CCommentaryPresenter::checkChanges()"); + if (!m_htmlWidget->isReadOnly() && m_htmlWidget->isModified()) {//save + saveText( m_htmlWidget->text() ); + m_htmlWidget->setModified( false ); + } +} + +/** No descriptions */ +void CCommentaryPresenter::beforeKeyChange(const QString& oldKey){ + if (!m_htmlWidget->isReadOnly()) { + switch (KMessageBox::warningYesNo( this, i18n("The text was not saved to the module. Save the changes now?")) ) { + case KMessageBox::Yes: + { + const QString newKey = m_key->key(); + m_key->key(oldKey); + saveText( m_htmlWidget->text() ); + m_key->key(newKey); + break; + } + default: //no + break; + } + } + m_htmlWidget->setModified( false ); +} + +/** Inserts the actions used by this window class into the given KAccel object. */ +void CCommentaryPresenter::insertKeyboardActions(KAccel* a){ + ASSERT(a); + a->setConfigGroup("Commentary window"); + + a->insertItem(i18n("Next book"), "Next book", 0); + a->insertItem(i18n("Previous book"), "Previous book", 0); + + a->insertItem(i18n("Next chapter"), "Next chapter", 0); + a->insertItem(i18n("Previous chapter"), "Previous chapter", 0); + + a->insertItem(i18n("Next verse"), "Next verse", 0); + a->insertItem(i18n("Previous verse"), "Previous verse", 0); + + a->insertItem(i18n("Toggle synchronize button"), "Synchronize", 0); +} + + +/** Initializes the accelerator object. */ +void CCommentaryPresenter::initAccels(){ + CSwordPresenter::initAccels(); + m_accel->setConfigGroup("Commentary window"); + + m_accel->insertItem(i18n("Next book"), "Next book", 0); + m_accel->connectItem("Next book", this, SLOT(nextBook())); + m_accel->insertItem(i18n("Previous book"), "Previous book", 0); + m_accel->connectItem("Previous book", this, SLOT(previousBook())); + + m_accel->insertItem(i18n("Next chapter"), "Next chapter", 0); + m_accel->connectItem("Next chapter", this, SLOT(nextChapter())); + m_accel->insertItem(i18n("Previous chapter"), "Previous chapter", 0); + m_accel->connectItem("Previous chapter", this, SLOT(previousChapter())); + + m_accel->insertItem(i18n("Next verse"), "Next verse", 0); + m_accel->connectItem("Next verse", this, SLOT(nextVerse())); + m_accel->insertItem(i18n("Previous verse"), "Previous verse", 0); + m_accel->connectItem("Previous verse", this, SLOT(previousVerse())); + + m_accel->insertItem(i18n("Toggle synchronize button"), "Synchronize", 0); + m_accel->connectItem("Synchronize", this, SLOT(toggleSynchronize())); + + m_accel->readSettings(); +} + +/** Jumps to the next entry */ +void CCommentaryPresenter::nextBook(){ + if (m_key->next(CSwordVerseKey::UseBook)) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CCommentaryPresenter::previousBook(){ + if (m_key->previous(CSwordVerseKey::UseBook)) + m_keyChooser->setKey(m_key); +} + + +/** Jumps to the next entry */ +void CCommentaryPresenter::nextChapter(){ + if ( m_key->next(CSwordVerseKey::UseChapter) ) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CCommentaryPresenter::previousChapter(){ + if (m_key->previous(CSwordVerseKey::UseChapter)) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the next entry */ +void CCommentaryPresenter::nextVerse(){ + if ( m_key->next(CSwordVerseKey::UseVerse) ) + m_keyChooser->setKey(m_key); +} + +/** Jumps to the previous entry. */ +void CCommentaryPresenter::previousVerse(){ + if (m_key->previous(CSwordVerseKey::UseVerse)) + m_keyChooser->setKey(m_key); +} + +/** Toggles the synchronize button. */ +void CCommentaryPresenter::toggleSynchronize(){ + presenterSync_action->setChecked( !presenterSync_action->isChecked() ); +} + +/** Stores some Bible window dpecific setttings in the profile. */ +void CCommentaryPresenter::storeSettings( CProfileWindow* settings ){ + CSwordPresenter::storeSettings(settings); + settings->setWindowSettings( presenterSync_action->isChecked() ); +} + +/** Applies some Bible window specific setttings. */ +void CCommentaryPresenter::applySettings( CProfileWindow* settings ){ + CSwordPresenter::applySettings(settings); + presenterSync_action->setChecked(settings->windowSettings() == 1); +} + +/** Saves settings */ +bool CCommentaryPresenter::queryClose(){ + //save the text + if (!m_htmlWidget->isReadOnly() && m_htmlWidget->isModified()) { + switch (KMessageBox::warningYesNoCancel( this, i18n("Save changes to module?")) ) { + case KMessageBox::Yes: + { + //save + saveText( m_htmlWidget->text() ); + m_htmlWidget->setModified( false ); + return true; + } + case KMessageBox::No : + return true; + default: // cancel + return false; + } + } + return true; +} diff --git a/bibletime/frontend/presenters/ccommentarypresenter.h b/bibletime/frontend/presenters/ccommentarypresenter.h new file mode 100644 index 0000000..ebfe34b --- /dev/null +++ b/bibletime/frontend/presenters/ccommentarypresenter.h @@ -0,0 +1,132 @@ +/*************************************************************************** + ccommentarypresenter.h - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CCOMMENTARYPRESENTER_H +#define CCOMMENTARYPRESENTER_H + +#include +#include "cswordpresenter.h" + +class CSwordVerseKey; + +class KToggleAction; +class KToolBar; + +/** The presenter used for Sword commentaries. + * @author The BibleTime team + */ +class CCommentaryPresenter : public CSwordPresenter { + Q_OBJECT + +public: + /** + * Default constructor + */ + CCommentaryPresenter(ListCSwordModuleInfo useModules, QWidget *parent=0, const char *name=0); + /** + * Default destructor + */ + ~CCommentaryPresenter(); + /** + * Synchronizes to the given key if sync is enabled. + */ + void synchronize( CSwordKey* syncKey ); + /** + * Inserts the actions used by this display window type into the given KAccel object. + */ + static void insertKeyboardActions(KAccel* a); + void storeSettings( CProfileWindow* settings ); + void applySettings( CProfileWindow* settings ); + +public slots: // Public slots + /** + * Saves the given text in the module. + */ + void saveText(const QString); + /** + * Reimplementation. + */ + virtual void lookup(const QString&, const QString&); + /** + * Reimplementation + */ + virtual void refresh( ); + /** + * Saves settings + */ + virtual bool queryClose(); + +protected: // Protected methods + /** + * Init keyboard accelartors. + */ + virtual void initAccels(); + +protected slots: // Protected slots + /** + * renders text and set it to the HTML widget + */ + void lookup(CSwordKey*); + /** + * Is called when the selected modules changed. + */ + void modulesChanged(); + void optionsChanged(); + /** + * Deletes the displayed and edited text. + */ + void deleteText(); + void editComment(); + /** + * Print the current item displayed in the presenter. + */ + void printHighlightedVerse(); + void nextBook(); + void previousBook(); + void nextChapter(); + void previousChapter(); + void nextVerse(); + void previousVerse(); + /** + * Toggles the synchronize button. + */ + void toggleSynchronize(); + +private: + void initConnections(); + void initView(); + /** + * Checks for changes and saves the text. + */ + void checkChanges(); + KToggleAction *presenterEdit_action; + KToggleAction *presenterSync_action; + CSwordVerseKey* m_key; + KToolBar* m_editToolBar; + +private slots: + void popupAboutToShow(); + void syncToggled(); + void insertReference(const QString&); + void copyEntry(); + void copyEntryText(); + void copyEntryAndText(); + void printEntry(); + void beforeKeyChange(const QString&); +}; + +#endif diff --git a/bibletime/frontend/presenters/cdisplaysettingsbutton.cpp b/bibletime/frontend/presenters/cdisplaysettingsbutton.cpp new file mode 100644 index 0000000..3979fc8 --- /dev/null +++ b/bibletime/frontend/presenters/cdisplaysettingsbutton.cpp @@ -0,0 +1,138 @@ +/*************************************************************************** + cdisplaysettingsbutton.cpp - description + ------------------- + begin : Thu Nov 8 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cdisplaysettingsbutton.h" +#include "../../resource.h" + +#include +#include + +#include +#include + +CDisplaySettingsButton::CDisplaySettingsButton(CSwordBackend::DisplayOptionsBool *displaySettings, CSwordBackend::FilterOptionsBool *moduleSettings, const ListCSwordModuleInfo& useModules,QWidget *parent, const char *name ) + : KToolBarButton(DSB_ICON, 0, parent, name) +{ + m_displaySettings = displaySettings; + m_moduleSettings = moduleSettings; + m_modules = useModules; + +// setPixmap( BIBLE_ICON_MC ); + + m_popup = new KPopupMenu(this); + setPopup(m_popup); + setPopupDelay(0); + + connect(m_popup, SIGNAL(activated(int)), this, SLOT(optionToggled(int))); + + populateMenu(); +// if (!populateMenu()) +// setEnabled(false); +} + +void CDisplaySettingsButton::reset(const ListCSwordModuleInfo& useModules){ + m_modules = useModules; + populateMenu(); +// if (!populateMenu()) +// setEnabled(false); +// else +// setEnabled(true); +} + + +void CDisplaySettingsButton::optionToggled(int ID){ + m_popup->setItemChecked( ID, !(m_popup->isItemChecked(ID))); + if (!m_popup->text(ID).isEmpty()) + *(m_dict[m_popup->text(ID)]) = m_popup->isItemChecked(ID); + emit sigChanged(); +} + +/** No descriptions */ +int CDisplaySettingsButton::populateMenu(){ + + int ret = 0; + + m_popup->clear(); + m_popup->insertTitle(i18n("Display options")); + m_popup->setCheckable(true); + + ret += addMenuEntry(i18n("Use linebreaks"), &m_displaySettings->lineBreaks, true); + ret += addMenuEntry(i18n("Show versenumbers"), &m_displaySettings->verseNumbers, true); + + ret += addMenuEntry(i18n("Show headings"), &m_moduleSettings->headings, + isOptionAvailable(CSwordBackend::headings)); + ret += addMenuEntry(i18n("Show footnotes"), &m_moduleSettings->footnotes, + isOptionAvailable(CSwordBackend::footnotes )); + ret += addMenuEntry(i18n("Show Strong's Numbers"), &m_moduleSettings->strongNumbers, + isOptionAvailable(CSwordBackend::strongNumbers )); + + ret += addMenuEntry(i18n("Show morphologic tags"),&m_moduleSettings->morphTags, + isOptionAvailable(CSwordBackend::morphTags )); + ret += addMenuEntry(i18n("Show lemmas"),&m_moduleSettings->lemmas, + isOptionAvailable(CSwordBackend::lemmas )); + ret += addMenuEntry(i18n("Show Hebrew vowel points"), &m_moduleSettings->hebrewPoints, + isOptionAvailable(CSwordBackend::hebrewPoints )); + ret += addMenuEntry(i18n("Show Hebrew cantillation marks"), &m_moduleSettings->hebrewCantillation, + isOptionAvailable(CSwordBackend::hebrewCantillation )); + ret += addMenuEntry(i18n("Show Greek accents"), &m_moduleSettings->greekAccents, + isOptionAvailable(CSwordBackend::greekAccents )); + ret += addMenuEntry(i18n("Use alternative textual variant"), &m_moduleSettings->textualVariants, + isOptionAvailable(CSwordBackend::greekAccents )); + + return ret; +} + +/** No descriptions */ +int CDisplaySettingsButton::addMenuEntry( const QString name, const bool* option, const bool available){ + if (available){ + m_dict.insert( name, option); + m_popup->setItemChecked(m_popup->insertItem( name ), *option ); + return 1; + } + return 0; +} + +bool CDisplaySettingsButton::isOptionAvailable( const CSwordBackend::FilterOptions option){ + bool ret = false; + for (m_modules.first(); m_modules.current(); m_modules.next()) + ret = ret || m_modules.current()->has(option); + return ret; +} + +/** Returns the number of usable menu items in the setttings menu. */ +const int CDisplaySettingsButton::menuItemCount(){ + return m_popup->count(); +} + +/** Sets the item at position pos to the satet given as 2nd paramter. */ +void CDisplaySettingsButton::setItemStatus( const int index, const bool checked ){ + const int ID = m_popup->idAt(index); + m_popup->setItemChecked(ID, checked); + const QString text = m_popup->text(ID); + if (m_dict[text]) + *(m_dict[text]) = checked; +} + +/** Returns the status of the item at position "index" */ +const bool CDisplaySettingsButton::itemStatus( const int index ){ + return m_popup->isItemChecked( m_popup->idAt(index) ); +} + +/** Sets the status to changed. The signal changed will be emitted. */ +void CDisplaySettingsButton::setChanged(){ + emit sigChanged(); +} diff --git a/bibletime/frontend/presenters/cdisplaysettingsbutton.h b/bibletime/frontend/presenters/cdisplaysettingsbutton.h new file mode 100644 index 0000000..9db2f9e --- /dev/null +++ b/bibletime/frontend/presenters/cdisplaysettingsbutton.h @@ -0,0 +1,79 @@ +/*************************************************************************** + cdisplaysettingsbutton.h - description + ------------------- + begin : Thu Nov 8 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CDISPLAYSETTINGSBUTTON_H +#define CDISPLAYSETTINGSBUTTON_H + +#include "backend/cswordbackend.h" +#include "backend/cswordmoduleinfo.h" + +//QT includes +#include + +//KDE includes +#include + +/** + * @author The BibleTime team + */ +class CSwordModuleInfo; +class KPopupMenu; + +class CDisplaySettingsButton : public KToolBarButton { + Q_OBJECT +public: + CDisplaySettingsButton(CSwordBackend::DisplayOptionsBool *displaySettings, CSwordBackend::FilterOptionsBool *settings, const ListCSwordModuleInfo& useModules, QWidget *parent=0, const char *name=0); + void reset(const ListCSwordModuleInfo& useModules); + /** + * Sets the item at position pos to the satet given as 2nd paramter. + */ + void setItemStatus( const int pos, const bool checked ); + /** + * Returns the number of usable menu items in the setttings menu. + */ + const int menuItemCount(); + /** + * Returns the status of the item at position "index" + */ + const bool itemStatus( const int index ); + /** + * Sets the status to changed. The signal changed will be emitted. + */ + void setChanged(); + +signals: + void sigChanged(void); + +protected slots: + void optionToggled(int ID); + +protected: + CSwordBackend::FilterOptionsBool* m_moduleSettings; + CSwordBackend::DisplayOptionsBool* m_displaySettings; + CSwordBackend::FilterOptionsBool m_available; + ListCSwordModuleInfo m_modules; + + QDict m_dict; + + KPopupMenu* m_popup; + + int populateMenu(); + bool isOptionAvailable( const CSwordBackend::FilterOptions option); + int addMenuEntry( const QString name, const bool* option, const bool available); +}; + +#endif diff --git a/bibletime/frontend/presenters/clexiconpresenter.cpp b/bibletime/frontend/presenters/clexiconpresenter.cpp new file mode 100644 index 0000000..0d561fd --- /dev/null +++ b/bibletime/frontend/presenters/clexiconpresenter.cpp @@ -0,0 +1,280 @@ +/*************************************************************************** + clexiconpresenter.cpp - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "clexiconpresenter.h" +#include "cmodulechooserbar.h" +#include "cdisplaysettingsbutton.h" + +#include "../chtmlwidget.h" +#include "../cexportmanager.h" +#include "../keychooser/ckeychooser.h" +#include "../../resource.h" +#include "../../backend/cswordldkey.h" +#include "../../backend/chtmlentrydisplay.h" +#include "../../backend/cswordbackend.h" + + +//Qt includes +#include + +//KDE icnludes +#include +#include +#include +#include +#include +#include + +CLexiconPresenter::CLexiconPresenter(ListCSwordModuleInfo useModules, QWidget *parent, const char *name ) + : CSwordPresenter(useModules, parent,name), + m_key( new CSwordLDKey(m_moduleList.first()) ) +{ + m_key->key(""); +// m_key->SWKey::operator=( TOP ); +// *m_key = TOP; + + initView(); + + show(); + initConnections(); + + setInitialized(); +} + +CLexiconPresenter::~CLexiconPresenter(){ + delete m_key; +} + +/** Initializes the view. */ +void CLexiconPresenter::initView(){ + + m_mainToolBar = new KToolBar(this); + + m_keyChooser = CKeyChooser::createInstance(m_moduleList.first(), m_key, m_mainToolBar); + + m_mainToolBar->insertWidget(0,m_keyChooser->sizeHint().width(),m_keyChooser); + m_mainToolBar->setItemAutoSized(0); + addToolBar(m_mainToolBar); + +// m_displaySettingsButton = new CDisplaySettingsButton( &m_displayOptions, &m_moduleOptions, m_moduleList, m_mainToolBar); +// m_mainToolBar->insertWidget(1,m_displaySettingsButton->sizeHint().width(),m_displaySettingsButton); + + m_moduleChooserBar = new CModuleChooserBar(m_moduleList, CSwordModuleInfo::Lexicon, this ); + addToolBar(m_moduleChooserBar); + + m_htmlWidget = new CHTMLWidget(true, this); + + + //setup popup menu + m_popup = new KPopupMenu(this); + m_popup->insertTitle(i18n("Lexicon window")); + + m_copyPopup = new KPopupMenu(m_popup); + m_copyPopup->insertItem(i18n("Entry"), this, SLOT(copyEntry()),0,ID_PRESENTER_COPY_ONLY_KEY); + m_copyPopup->insertItem(i18n("Text of entry"), this, SLOT(copyEntryText()),0,ID_PRESENTER_COPY_KEY_TEXT); + m_copyPopup->insertItem(i18n("Entry with text"), this, SLOT(copyEntryAndText()),0,ID_PRESENTER_COPY_KEY); + m_copyPopup->insertSeparator(); + m_copyPopup->insertItem(i18n("Selected text"), m_htmlWidget, SLOT(copy()),0,ID_PRESENTER_COPY_SELECTED); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Entry with text"), this, SLOT(printEntry()),0,ID_PRESENTER_PRINT_KEY); + + m_savePopup = new KPopupMenu(m_popup); + m_savePopup->insertItem(i18n("Entry as plain text"), m_htmlWidget, SLOT(slotSaveAsText()),0,ID_PRESENTER_SAVE_CHAPTER); + m_savePopup->insertItem(i18n("Entry as HTML"), m_htmlWidget, SLOT(slotSaveAsHTML()),0,ID_PRESENTER_SAVE_CHAPTER_HTML); + + m_popup->insertItem(i18n("Select all"), m_htmlWidget, SLOT(slotSelectAll()),0, ID_PRESENTER_SELECT_ALL); + m_popup->insertItem(i18n("Lookup selected text in lexicon"), m_lexiconPopup, ID_PRESENTER_LOOKUP); + m_popup->insertSeparator(); + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY),i18n("Copy..."), m_copyPopup, ID_PRESENTER_COPY_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT), i18n("Add to printing queue..."), m_printPopup, ID_PRESENTER_PRINT_POPUP); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup,ID_PRESENTER_SAVE_POPUP); + + + m_htmlWidget->installPopup(m_popup); + m_htmlWidget->installAnchorMenu(m_popup); + m_htmlWidget->setModules(m_moduleList); + + setCentralWidget(m_htmlWidget); + setIcon(LEXICON_ICON_SMALL); +} + +/** No descriptions */ +void CLexiconPresenter::initConnections(){ + connect(m_htmlWidget, SIGNAL(referenceClicked(const QString&, const QString&)), + this, SLOT(lookup(const QString&, const QString&))); + connect(m_htmlWidget, SIGNAL(referenceDropped(const QString&)), + this, SLOT(referenceDropped(const QString&))); + + connect(m_keyChooser, SIGNAL(keyChanged(CSwordKey*)), + this, SLOT(lookup(CSwordKey*))); + connect(m_popup, SIGNAL(aboutToShow()),this, + SLOT(popupAboutToShow())); + connect(m_moduleChooserBar, SIGNAL(sigChanged()), this, + SLOT(modulesChanged())); +} + +/** No descriptions */ +void CLexiconPresenter::lookup(CSwordKey* key){ + setUpdatesEnabled(false); + + CSwordLDKey* ldKey = dynamic_cast(key); + if (!ldKey) + return; + backend()->setFilterOptions( m_moduleOptions ); + backend()->setDisplayOptions( m_displayOptions ); + + m_moduleList.first()->module()->SetKey(*ldKey); + + if (m_moduleList.first()->getDisplay()) { //do we have a display object? + if (m_moduleChooserBar->getModuleList().count() > 1) //we want to display more than one module + m_moduleList.first()->getDisplay()->Display( &m_moduleList ); + else + m_moduleList.first()->getDisplay()->Display( m_moduleList.first() ); + m_htmlWidget->setText(m_moduleList.first()->getDisplay()->getHTML()); + } + if (m_key != ldKey) + m_key->key(ldKey->key()); + + setUpdatesEnabled(true); + setCaption( windowCaption() ); +} + +/** No descriptions */ +void CLexiconPresenter::popupAboutToShow(){ + m_popup->setItemEnabled(ID_PRESENTER_LOOKUP, !m_htmlWidget->selectedText().isEmpty()); + + m_copyPopup->setItemEnabled(ID_PRESENTER_COPY_SELECTED, !m_htmlWidget->selectedText().isEmpty()); +} + +/** No descriptions */ +void CLexiconPresenter::lookup(const QString& module, const QString& key){ + CSwordModuleInfo* m = backend()->findModuleByName(module); + if (m && m_moduleList.containsRef(m)) { + if (!key.isEmpty()) + m_key->key(key); + m_keyChooser->setKey(m_key); //the key chooser does send an update signal + } + else { + emit lookupInModule(module, key); + } +} + +/** Refreshes all parts decsribed by the parameter. */ +void CLexiconPresenter::refresh( ){ + +// CSwordPresenter::refresh(); //refreshes the display settings button + + lookup(m_key); + m_htmlWidget->refresh(); +} + +/** Is called when the modules shown by this display window were changed. */ +void CLexiconPresenter::modulesChanged(){ + m_moduleList = m_moduleChooserBar->getModuleList(); + if (!m_moduleList.count()) + close(); + else { +// m_displaySettingsButton->reset(m_moduleList); +// refreshFeatures(); + m_key->module(m_moduleList.first()); + m_keyChooser->setModule(m_moduleList.first()); + m_htmlWidget->setModules(m_moduleList); + lookup(m_key); + } +} +/** */ +void CLexiconPresenter::optionsChanged(){ + lookup(m_key); +} + +/** Copies the highlighted text into clipboard. */ +void CLexiconPresenter::copyEntry(){ + CSwordLDKey key(m_moduleList.first()); //this key is deleted by the printem + key.key(m_key->key()); + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + if (currentAnchor.left(8) == "sword://") + currentAnchor = currentAnchor.mid(8, currentAnchor.length()-(currentAnchor.right(1) == "/" ? 9 : 8)); + key.key(currentAnchor); + + QClipboard *cb = KApplication::clipboard(); + cb->setText(key.key()); +} + +/** Copies the highlighted text into clipboard. */ +void CLexiconPresenter::copyEntryText(){ + CSwordLDKey key(m_moduleList.first()); //this key is deleted by the printem + key.key(m_key->key()); + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + if (currentAnchor.left(8) == "sword://") + currentAnchor = currentAnchor.mid(8, currentAnchor.length()-(currentAnchor.right(1) == "/" ? 9 : 8)); + key.key(currentAnchor); + + QClipboard *cb = KApplication::clipboard(); + cb->setText(key.strippedText()); +} + +/** Copies the highlighted text into clipboard. */ +void CLexiconPresenter::copyEntryAndText(){ + CSwordLDKey key(m_moduleList.first()); //this key is deleted by the printem + key.key(m_key->key()); + QString currentAnchor = m_htmlWidget->getCurrentAnchor(); + if (currentAnchor.left(8) == "sword://") + currentAnchor = currentAnchor.mid(8, currentAnchor.length()-(currentAnchor.right(1) == "/" ? 9 : 8)); + key.key(currentAnchor); + + const QString text = QString("%1\n%2").arg(key.key()).arg(key.strippedText()); + QClipboard *cb = KApplication::clipboard(); + cb->setText(text); +} + +//print functions +void CLexiconPresenter::printEntry(){ + CExportManager::printKey(m_moduleList.first(), m_key->key()); +} + +/** Inserts the used keyboard actions into the given KAccel object. */ +void CLexiconPresenter::insertKeyboardActions(KAccel* a){ + a->setConfigGroup("Lexicon window"); + a->insertItem(i18n("Next entry"), "Next entry", 0); + a->insertItem(i18n("Previous entry"), "Previous entry", 0); +} + +/** Initializes keyboard accelerators. */ +void CLexiconPresenter::initAccels(){ + CSwordPresenter::initAccels(); + m_accel->setConfigGroup("Lexicon window"); + m_accel->insertItem(i18n("Next entry"), "Next entry", 0); + m_accel->connectItem("Next entry", this, SLOT(nextEntry())); + + m_accel->insertItem(i18n("Previous entry"), "Previous entry", 0); + m_accel->connectItem("Previous entry", this, SLOT(previousEntry())); + + m_accel->readSettings(); +} + +/** Jumps to the previous entry. */ +void CLexiconPresenter::previousEntry(){ + m_key->PreviousEntry(); + m_keyChooser->setKey(m_key); +} + +/** Jumps to the next entry */ +void CLexiconPresenter::nextEntry(){ + m_key->NextEntry(); + m_keyChooser->setKey(m_key); +} diff --git a/bibletime/frontend/presenters/clexiconpresenter.h b/bibletime/frontend/presenters/clexiconpresenter.h new file mode 100644 index 0000000..e74ea8c --- /dev/null +++ b/bibletime/frontend/presenters/clexiconpresenter.h @@ -0,0 +1,75 @@ +/*************************************************************************** + clexiconpresenter.h - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CLEXICONPRESENTER_H +#define CLEXICONPRESENTER_H + +#include +#include "cswordpresenter.h" + +class CSwordLDKey; + +/** + * Presenter used for lexicons + * @author The BibleTime team + */ +class CLexiconPresenter : public CSwordPresenter { + Q_OBJECT +public: + CLexiconPresenter(ListCSwordModuleInfo useModules, QWidget *parent=0, const char *name=0); + virtual ~CLexiconPresenter(); + /** + * Inserts the used keyboard actions into the given KAccel object. + */ + static void insertKeyboardActions(KAccel* a); + +public slots: // Public slots + /** + * No descriptions + */ + virtual void lookup(const QString&, const QString&); + /** + * Refreshes all parts decsribed by the parameter. + */ + virtual void refresh( ); + +protected: // Protected methods + /** + * Initializes keyboard accelerators. + */ + virtual void initAccels(); + +private slots: + void copyEntry(); + void copyEntryText(); + void copyEntryAndText(); + void printEntry(); + void modulesChanged(); + void optionsChanged(); + void popupAboutToShow(); + void lookup(CSwordKey*); + void nextEntry(); + void previousEntry(); + +private: // Private methods + void initConnections(); + void initView(); + + CSwordLDKey* m_key; +}; + +#endif diff --git a/bibletime/frontend/presenters/cmodulechooserbar.cpp b/bibletime/frontend/presenters/cmodulechooserbar.cpp new file mode 100644 index 0000000..de57ba0 --- /dev/null +++ b/bibletime/frontend/presenters/cmodulechooserbar.cpp @@ -0,0 +1,129 @@ +/*************************************************************************** + cmodulechooserbar.cpp - description + ------------------- + begin : Sat Mar 17 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cmodulechooserbar.h" +#include "cmodulechooserbutton.h" + +#include + +CModuleChooserBar::CModuleChooserBar(ListCSwordModuleInfo useModules, CSwordModuleInfo::ModuleType type, QWidget *parent, const char *name ) + : KToolBar(parent,name) { + qDebug("constructor of CModuleCHooserBar"); + + m_moduleType = type; + m_idCounter = 0; + m_buttonLimit = -1; //-1 means no limit + + //insert buttons if useModules != 0 + for (useModules.first(); useModules.current(); useModules.next()) { + if (m_buttonLimit && (unsigned int)m_buttonLimit <= m_buttonList.count()) + break; + + CModuleChooserButton* b = new CModuleChooserButton(useModules.current(),m_moduleType,++m_idCounter,this); + m_buttonList.append(b); + insertWidget(m_idCounter, b->sizeHint().width(),b); + connect( b, SIGNAL(sigAddButton()), this, SLOT(addButton()) ); + connect( b, SIGNAL(sigRemoveButton(const int)), this, SLOT(removeButton(const int)) ); + connect( b, SIGNAL(sigChanged()), SIGNAL(sigChanged()) ); + b->show(); + } + if (m_buttonLimit && (unsigned int)m_buttonLimit > m_buttonList.count() ) + addButton(); +} + +/** Adds a button to the toolbar */ +void CModuleChooserBar::addButton(){ + CModuleChooserButton* b = new CModuleChooserButton(0, m_moduleType, ++m_idCounter, this); + m_buttonList.append(b); + insertWidget(m_idCounter, b->sizeHint().width(),b); + + connect( b, SIGNAL(sigAddButton()), this, SLOT(addButton()) ); + connect( b, SIGNAL(sigRemoveButton(const int)), this, SLOT(removeButton(const int)) ); + connect( b, SIGNAL(sigChanged()), SIGNAL(sigChanged()) ); + + b->show(); +} + +/** Removes a button from the toolbar */ +void CModuleChooserBar::removeButton( const int ID ){ + for (m_buttonList.first(); m_buttonList.current(); m_buttonList.next()) { + if (m_buttonList.current()->getId() == ID) { //found the right button + CModuleChooserButton* b = m_buttonList.current(); + m_buttonList.remove(b); + //ASSERT(b); + b->hide(); + m_deleteID = ID; + QTimer::singleShot( 5000, this, SLOT(deleteButton()) ); + break; + } + } + + emit sigChanged(); +} + +/** Returns a list of selected modules. */ +ListCSwordModuleInfo CModuleChooserBar::getModuleList(){ + ListCSwordModuleInfo list; + list.setAutoDelete(false); + list.clear(); + + for (m_buttonList.first(); m_buttonList.current(); m_buttonList.next()) { + CSwordModuleInfo* m = m_buttonList.current()->module(); + if (m) + list.append( m ); + } + return list; +} + +/** No descriptions */ +void CModuleChooserBar::deleteButton(){ + removeItem(m_deleteID); +} + +/** Sets the number of the maximum count of buttons. */ +void CModuleChooserBar::setButtonLimit(const int limit){ + m_buttonLimit = limit; + if (m_buttonList.count() > (unsigned int)m_buttonLimit ) { //remove the last buttons + for (m_buttonList.last(); m_buttonList.current() && (m_buttonList.count() > (unsigned int)m_buttonLimit); m_buttonList.prev() ) { + CModuleChooserButton* b = m_buttonList.current(); + m_buttonList.remove(b); + b->hide(); + delete b; + } + } +} + +/** Sets the modules which are chosen in this module chooser bar. */ +void CModuleChooserBar::setModules( ListCSwordModuleInfo useModules ){ + setButtonLimit(0); + setButtonLimit(-1); //these two lines clear the bar + + for (useModules.first(); useModules.current(); useModules.next()) { + if (m_buttonLimit && (unsigned int)m_buttonLimit <= m_buttonList.count()) + break; + + CModuleChooserButton* b = new CModuleChooserButton(useModules.current(),m_moduleType,++m_idCounter,this); + m_buttonList.append(b); + insertWidget(m_idCounter, b->sizeHint().width(),b); + connect( b, SIGNAL(sigAddButton()), this, SLOT(addButton()) ); + connect( b, SIGNAL(sigRemoveButton(const int)), this, SLOT(removeButton(const int)) ); + connect( b, SIGNAL(sigChanged()), SIGNAL(sigChanged()) ); + b->show(); + } + if (m_buttonLimit && (unsigned int)m_buttonLimit > m_buttonList.count() ) + addButton(); +} diff --git a/bibletime/frontend/presenters/cmodulechooserbar.h b/bibletime/frontend/presenters/cmodulechooserbar.h new file mode 100644 index 0000000..a1249e0 --- /dev/null +++ b/bibletime/frontend/presenters/cmodulechooserbar.h @@ -0,0 +1,76 @@ +/*************************************************************************** + cmodulechooserbar.h - description + ------------------- + begin : Sat Mar 17 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CMODULECHOOSERBAR_H +#define CMODULECHOOSERBAR_H + +#include "cmodulechooserbutton.h" +#include "../../backend/cswordmoduleinfo.h" +#include "../cpointers.h" + +#include +#include + +/** + * @author The BibleTime team + */ +class CModuleChooserBar : public KToolBar { + Q_OBJECT +public: + /** + * Default constructor + */ + CModuleChooserBar(ListCSwordModuleInfo useModules, CSwordModuleInfo::ModuleType type, QWidget *parent=0, const char *name=0); + /** + * Returns a list of selected modules. + */ + ListCSwordModuleInfo getModuleList(); + /** + * Sets the number of the maximum count of buttons. + */ + void setButtonLimit( const int limit); + /** + * Sets the modules which are chosen in this module chooser bar. + */ + void setModules( ListCSwordModuleInfo modules ); + +protected slots: // Protected slots + /** + * Adds a button to the toolbar + */ + void addButton(); + /** + * Removes a button from the toolbar + */ + void removeButton( const int ID ); + /** + * No descriptions + */ + void deleteButton(); + +private: + QList m_buttonList; + CSwordModuleInfo::ModuleType m_moduleType; + int m_idCounter; + int m_deleteID; + int m_buttonLimit; + +signals: // Signals + void sigChanged(); +}; + +#endif diff --git a/bibletime/frontend/presenters/cmodulechooserbutton.cpp b/bibletime/frontend/presenters/cmodulechooserbutton.cpp new file mode 100644 index 0000000..12ce8ea --- /dev/null +++ b/bibletime/frontend/presenters/cmodulechooserbutton.cpp @@ -0,0 +1,145 @@ +/*************************************************************************** + cmodulechooserbutton.cpp - description + ------------------- + begin : Sat Mar 17 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cmodulechooserbutton.h" +#include "../../resource.h" +#include "../../backend/cswordbackend.h" + +//Qt includes +#include +#include + +//KDE includes +#include +#include + +CModuleChooserButton::CModuleChooserButton(CSwordModuleInfo* useModule,CSwordModuleInfo::ModuleType type, const int id, QWidget *parent, const char *name ) + : KToolBarButton("", id, parent,name) { + qDebug("CModuleChooserButton::CModuleCHooserButton"); + + m_id = id; + m_moduleType = type; + m_module = useModule; + if (!m_module) + m_hasModule = false; + else + m_hasModule = true; + + setIcon( iconName() ); + setPopupDelay(0); + + //create popup + m_popup = new KPopupMenu(this); + m_popup->insertTitle(i18n("Select additional modules")); + m_popup->setCheckable(true); + m_popup->insertItem(i18n("NONE")); + m_popup->insertSeparator(); + connect(m_popup, SIGNAL(activated(int)), this, SLOT(moduleChosen(int))); + setPopup(m_popup); + + ListCSwordModuleInfo& modules = backend()->moduleList(); + for (modules.first(); modules.current(); modules.next()) { + if (modules.current()->type() == m_moduleType) { + m_popup->insertItem( modules.current()->name() ); + } + } + //Check the appropriate entry + if (m_module) { + for (unsigned int i = 0; i < m_popup->count(); i++) { + if (m_popup->text(m_popup->idAt(i)) == m_module->name()) { + m_popup->setItemChecked(m_popup->idAt(i),true); + QToolTip::add(this, m_module->name() ); + break; + } + } + } + else { + for (unsigned int i = 0; i < m_popup->count(); i++) { + if (m_popup->text(m_popup->idAt(i)) == i18n("NONE") ) + m_popup->setItemChecked(m_popup->idAt(i),true); + break; + } + } +} + +/** Returns the icon used for the current status. */ +const QString CModuleChooserButton::iconName(){ + switch (m_moduleType) { + case CSwordModuleInfo::Bible: + if (m_hasModule) + return QString::fromLatin1(BIBLE_ICON_MC); + else + return QString::fromLatin1(BIBLE_ADD_ICON_MC); + case CSwordModuleInfo::Commentary: + if (m_hasModule) + return QString::fromLatin1(COMMENTARY_ICON_MC); + else + return QString::fromLatin1(COMMENTARY_ICON_MC); + case CSwordModuleInfo::Lexicon: + if (m_hasModule) + return QString::fromLatin1(LEXICON_ICON_MC); + else + return QString::fromLatin1(LEXICON_ADD_ICON_MC); + case CSwordModuleInfo::GenericBook: + if (m_hasModule) + return QString::fromLatin1(BOOK_ICON_MC); + else + return QString::fromLatin1(BOOK_ADD_ICON_MC); + default: + return QString::fromLatin1(BIBLE_ICON_MC); + } +} + +CSwordModuleInfo* CModuleChooserButton::module() { + for (unsigned int i = 0; i < m_popup->count(); i++) { + if ( m_popup->isItemChecked(m_popup->idAt(i)) ) + return backend()->findModuleByName( m_popup->text(m_popup->idAt(i)) ); + } + return 0; //"none" selected +} + +/** Returns the id used for this button. */ +int CModuleChooserButton::getId() const{ + return m_id; +} + +/** Ís called after a module was selected in the popup */ +void CModuleChooserButton::moduleChosen( int ID ){ + for (unsigned int i = 0; i < m_popup->count(); i++) + m_popup->setItemChecked(m_popup->idAt(i),false); + m_popup->setItemChecked(ID, true); + + if (m_popup->text(ID) == i18n("NONE")) { + if (m_hasModule) { + emit sigRemoveButton(m_id); + return; + } + } + else { + if (!m_hasModule) + emit sigAddButton(); + m_hasModule = true; + m_module = module(); + setIcon(iconName()); +// repaint(); + emit sigChanged(); + + QToolTip::remove(this); + if (module()) + QToolTip::add(this, module()->name()); + } +} diff --git a/bibletime/frontend/presenters/cmodulechooserbutton.h b/bibletime/frontend/presenters/cmodulechooserbutton.h new file mode 100644 index 0000000..e6d56c2 --- /dev/null +++ b/bibletime/frontend/presenters/cmodulechooserbutton.h @@ -0,0 +1,62 @@ +/*************************************************************************** + cmodulechooserbutton.h - description + ------------------- + begin : Sat Mar 17 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CMODULECHOOSERBUTTON_H +#define CMODULECHOOSERBUTTON_H + +#include "backend/cswordmoduleinfo.h" +#include "frontend/cpointers.h" + +#include + +class KPopupMenu; + +/** + *@author The BibleTime team + */ + +class CModuleChooserButton : public KToolBarButton, public CPointers { + Q_OBJECT +public: + CModuleChooserButton(CSwordModuleInfo* useModule,CSwordModuleInfo::ModuleType type, const int id, QWidget *parent = 0, const char *name = 0 ); + CSwordModuleInfo* module(); + /** + * Returns the id used for this button. + */ + int getId() const; + +private: + /** + * Returns the icon used for the current status. + */ + const QString iconName(); + + bool m_hasModule; + CSwordModuleInfo::ModuleType m_moduleType; + CSwordModuleInfo* m_module; + int m_id; + KPopupMenu* m_popup; + +private slots: + void moduleChosen(int ID ); + +signals: + void sigRemoveButton(const int ID); + void sigAddButton(); + void sigChanged(); +}; +#endif diff --git a/bibletime/frontend/presenters/cswordpresenter.cpp b/bibletime/frontend/presenters/cswordpresenter.cpp new file mode 100644 index 0000000..da2d4cd --- /dev/null +++ b/bibletime/frontend/presenters/cswordpresenter.cpp @@ -0,0 +1,273 @@ +/*************************************************************************** + cswordpresenter.cpp - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cswordpresenter.h" +#include "../keychooser/ckeychooser.h" +#include "../chtmlwidget.h" +#include "../../backend/cswordkey.h" +#include "../../printing/cprintitem.h" +#include "../../printing/cprinter.h" +#include "../cbtconfig.h" +#include "cdisplaysettingsbutton.h" + +//Qt includes +#include + +//KDE includes +#include + +CSwordPresenter::CSwordPresenter(ListCSwordModuleInfo useModules, QWidget *parent, const char *name ) + : KMainWindow(parent,name,0), + m_mainToolBar(0), + m_popup(0), m_savePopup(0), m_copyPopup(0), m_printPopup(0), + m_lexiconPopup(new QPopupMenu(this)), + m_keyChooser(0), + m_htmlWidget(0), + m_moduleChooserBar(0), + m_displaySettingsButton(0), + m_moduleList(useModules), + m_accel(0), + m_moduleOptions( CBTConfig::getFilterOptionDefaults() ), + m_displayOptions( CBTConfig::getDisplayOptionDefaults() ), + m_features(0), + m_initialized(false) +{ + ListCSwordModuleInfo& modules = backend()->moduleList(); + for (modules.first(); modules.current(); modules.next()) { + if (modules.current()->type() == CSwordModuleInfo::Lexicon) { + m_lexiconPopup->insertItem( modules.current()->name() ); + } + } + connect(m_lexiconPopup, SIGNAL(activated(int)),this, SLOT(lookupWord(int))); + resize(350,350); + setCaption(windowCaption()); + + setFocusPolicy(QWidget::WheelFocus); +} + + +/** Returns the features used by this presenter. */ +int CSwordPresenter::getFeatures(){ + return m_features; +} + +/** Refreshes the presenter depending on the events given as parameter. */ +//void CSwordPresenter::refresh( ){ +//} + +/** Prints the key given as parameter. */ +//void CSwordPresenter::printKey(const QString& startKey, const QString& stopKey, CSwordModuleInfo* module) { +//// printer()->addItemToQueue( new CPrintItem(module, startKey, stopKey) ); +// CExportManager::printKey(module, startKey, stopKey); +//} + +/** Refreshes the supported features. */ +//void CSwordPresenter::refreshFeatures(){ +// m_features = 0; +// for (m_moduleList.first(); m_moduleList.current(); m_moduleList.next()) { +// if (m_moduleList.current()->supportsFeature( CSwordBackend::strongNumbers )){ +// if (m_features != 0) +// m_features |= strongNumbers; +// else +// m_features = strongNumbers; +// } +// if (m_moduleList.current()->supportsFeature( CSwordBackend::footnotes )){ +// if (m_features != 0) +// m_features |= footnotes; +// else +// m_features = footnotes; +// } +// if (m_moduleList.current()->supportsFeature( CSwordBackend::headings )){ +// if (m_features != 0) +// m_features |= headings; +// else +// m_features = headings; +// } +// if (m_moduleList.current()->supportsFeature( CSwordBackend::morphTags )){ +// if (m_features != 0) +// m_features |= morphTags; +// else +// m_features = morphTags; +// } +// } +//} + +void CSwordPresenter::lookupWord(int moduleID){ + const QString module = m_lexiconPopup->text(moduleID); + const QString text = m_htmlWidget->selectedText(); + if (!text.isEmpty()) + emit lookupInLexicon(text,module); +} + +/** Look up the key given as parameter. */ +void CSwordPresenter::lookup(const QString& module, const QString& key){ + +} + +/** Returns the listof used modules. */ +ListCSwordModuleInfo& CSwordPresenter::getModuleList() { + return m_moduleList; +} + +/** Returns the used keychooser object of this presenter. */ +CKeyChooser* CSwordPresenter::keyChooser() const { + return m_keyChooser; +} + +/** No descriptions */ +const QString CSwordPresenter::windowCaption() { + QString ret; + if (!m_moduleList.count()) { + return QString::null; + } + ret = m_moduleList.first()->name(); + if (m_moduleList.count() > 1) { + for (m_moduleList.next(); m_moduleList.current(); m_moduleList.next()) { + ret += " | " + m_moduleList.current()->name(); + } + } + return ret; +} + +/** Sets the caption of this display window */ +void CSwordPresenter::setCaption(const QString&){ + QWidget::setCaption( windowCaption() ); //set everytime our own caption +} + +/** Applies the settings given in the parameter to the window. */ +void CSwordPresenter::applySettings( CProfileWindow* settings ){ + setUpdatesEnabled(false); + + if (settings->maximized()) { + showMaximized(); + } + else { + const QRect rect = settings->geometry(); + resize(rect.width(), rect.height()); + parentWidget()->move(rect.x(), rect.y()); + //setGeometry( settings->geometry() ); + } + m_htmlWidget->horizontalScrollBar()->setValue( settings->scrollbarPositions().horizontal ); + m_htmlWidget->verticalScrollBar()->setValue( settings->scrollbarPositions().vertical ); + + setUpdatesEnabled(true); +} + +/** Stores the settings of this window in the CProfileWindow object given as parameter. */ +void CSwordPresenter::storeSettings( CProfileWindow* settings ){ + QRect rect; + rect.setX(parentWidget()->x()); + rect.setY(parentWidget()->y()); + rect.setWidth(width()); + rect.setHeight(height()); + settings->setGeometry(rect); + + settings->setScrollbarPositions( m_htmlWidget->horizontalScrollBar()->value(), m_htmlWidget->verticalScrollBar()->value() ); + settings->setType(m_moduleList.first()->type()); + settings->setMaximized(isMaximized() || parentWidget()->isMaximized()); + + CSwordKey* key = keyChooser()->key(); + if (key) { + VerseKey* vk = dynamic_cast(key); + QString oldLang; + if (vk) { + oldLang = QString::fromLatin1(vk->getLocale()); + vk->setLocale("en"); //save english locale names as default! + } + settings->setKey( key->key() ); + if (vk) { + vk->setLocale(oldLang.latin1()); + } + } + + QStringList modules; + for (CSwordModuleInfo* m = m_moduleList.first(); m; m = m_moduleList.next()) { + modules.append(m->name()); + } + settings->setModules(modules); +} + +/** Is called when the presenter should be closed. To delete the presenter it emits "close(CPresenter*)".*/ +void CSwordPresenter::closeEvent(QCloseEvent* e) { + if (!queryClose()) { + e->ignore(); + } + else { + e->accept(); + emit(closePresenter(this)); + } +} + +/** Inserts the action used by this display window in the given KAccel object. */ +void CSwordPresenter::insertKeyboardActions( KAccel* a ){ + a->setConfigGroup("General window"); +} + +void CSwordPresenter::initAccels(){ +} + +/** Initilizes widget before shown and after constructor. */ +void CSwordPresenter::polish(){ + KMainWindow::polish(); + m_accel = new KAccel(this); + initAccels(); +} + +/** Is called when this display window looses the focus. */ +void CSwordPresenter::focusInEvent( QFocusEvent* e ){ + KMainWindow::focusInEvent(e); + if (m_accel) + m_accel->setEnabled(true); +} + +/** Is called when this display window looses the focus. */ +void CSwordPresenter::focusOutEvent( QFocusEvent* e ){ +// qDebug("CSwordPresenter::focusOutEvent( QFocusEvent* e )"); + KMainWindow::focusOutEvent(e); + if (m_accel) + m_accel->setEnabled(false); +} + +/** Is called when this display window looses the focus. */ +void CSwordPresenter::refresh(){ +// qWarning("CSwordPresenter::refresh()"); + m_moduleOptions = CBTConfig::getFilterOptionDefaults(); + m_displayOptions = CBTConfig::getDisplayOptionDefaults(); + + if (m_displaySettingsButton) + m_displaySettingsButton->reset(m_moduleList); +} + +/** Is called when a reference was dropped on this window. */ +void CSwordPresenter::referenceDropped(const QString& ref){ + lookup(m_moduleList.first()->name(), ref); +} + +/** Reimplementation from KMainWindow. */ +bool CSwordPresenter::queryClose(){ + return true; +} + +/** Returns true if the display window is fully initialized. */ +const bool CSwordPresenter::initialized(){ + return m_initialized; +} + +/** Sets the display window to the initialized state. */ +void CSwordPresenter::setInitialized(){ + m_initialized = true; +} diff --git a/bibletime/frontend/presenters/cswordpresenter.h b/bibletime/frontend/presenters/cswordpresenter.h new file mode 100644 index 0000000..7a9727e --- /dev/null +++ b/bibletime/frontend/presenters/cswordpresenter.h @@ -0,0 +1,184 @@ +/*************************************************************************** + cswordpresenter.h - description + ------------------- + begin : Sun Mar 18 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSWORDPRESENTER_H +#define CSWORDPRESENTER_H + +//BibleTime includes +#include "../../backend/cswordmoduleinfo.h" +#include "../../backend/cswordbackend.h" +//#include "../../structdef.h" +#include "../cpointers.h" +#include "../cprofilewindow.h" + +//Qt includes +#include + +//KDE includes +#include + +class KPopupMenu; +class KToolBar; + +class CKeyChooser; +class CHTMLWidget; + +class CModuleChooserBar; +class CDisplaySettingsButton; + +class CSwordKey; +class KAccel; + +/** Base class for all Sword based presneters + * The base class for all Sword based presenters. + * + * @author The BibleTime team + */ +class CSwordPresenter : public KMainWindow, public CPointers { + Q_OBJECT +public: + /** + * Default constructor + */ + CSwordPresenter(ListCSwordModuleInfo useModules, QWidget *parent=0, const char *name=0); + /** + * Returns the features used by this presenter. + */ + int getFeatures(); + /** + * Refreshes the presenter. + */ + virtual void refresh(); + /** + * Returns the listof used modules. + */ + ListCSwordModuleInfo& getModuleList(); + /** + * Returns the caption for this Sword display window. + */ + const QString windowCaption(); + /** + * Stores the settings of this window in the CProfileWindow object given as parameter. + */ + virtual void storeSettings( CProfileWindow* p ); + /** + * Applies the settings given in the parameter to the window. + */ + virtual void applySettings( CProfileWindow* settings ); + +public slots: // Public slots + /** + * Look up the key given as parameter. + */ + virtual void lookup(const QString&, const QString&); + /** + * Returns the used keychooser object of this presenter. + */ + CKeyChooser* keyChooser() const; + /** + * Sets the caption of this display window + */ + virtual void setCaption(const QString&); + /** + * Is called when a reference was dropped on this window. + */ + virtual void referenceDropped(const QString&); + /** Reimplementation from KMainWindow. */ + virtual bool queryClose(); + /** Returns true if the display window is fully initialized. */ + const bool initialized(); + /** + * Inserts the action used by this display window in the given KAccel object. + */ + static void insertKeyboardActions( KAccel* accel ); + +protected: // Protected methods + /** + * Prints the key given as parameter. + */ +// void printKey(const QString& startKey, const QString& stopKey, CSwordModuleInfo* module); + /** + * Refreshes the supported features. + */ +// void refreshFeatures(); + /** + * Is called when the presenter should be closed. To delete the presenter it emits "close(CPresenter*)". + */ + virtual void closeEvent(QCloseEvent*e); + /** Initializes the accelerators used by this windows. + * Derived classes have to call this function too if the reimplemented this function. + * e.g. + * @code + * //init own additional accelerators + * CSwordPresenter::initAccel(); + */ + virtual void initAccels(); + + KToolBar* m_mainToolBar; + + KPopupMenu* m_popup; + KPopupMenu* m_savePopup; + KPopupMenu* m_copyPopup; + KPopupMenu* m_printPopup; + + QPopupMenu* m_lexiconPopup; + CKeyChooser* m_keyChooser; + CHTMLWidget* m_htmlWidget; + + CModuleChooserBar* m_moduleChooserBar; + CDisplaySettingsButton* m_displaySettingsButton; + + ListCSwordModuleInfo m_moduleList; + QString m_highlightedVerse; + + KAccel* m_accel; + + CSwordBackend::FilterOptionsBool m_moduleOptions; + CSwordBackend::DisplayOptionsBool m_displayOptions; + +protected slots: // Protected slots + void lookupWord(int ID); + /** + * Initilizes widget before shown and after constructor. + */ + virtual void polish(); + /** + * Is called when this display window looses the focus. + */ + virtual void focusInEvent( QFocusEvent* e ); + /** + * Is called when this display window looses the focus. + */ + virtual void focusOutEvent( QFocusEvent* e ); + /** + * Sets the display window to the initialized state. + */ + void setInitialized(); + + +private: + int m_features; + bool m_initialized; + +signals: // Signals + void lookupInLexicon(const QString& text, const QString& lexicon); + void lookupInModule(const QString& module, const QString& text); + void closePresenter(CSwordPresenter*); + +}; + +#endif diff --git a/bibletime/frontend/searchdialog/Makefile.am b/bibletime/frontend/searchdialog/Makefile.am new file mode 100644 index 0000000..bdcd8a4 --- /dev/null +++ b/bibletime/frontend/searchdialog/Makefile.am @@ -0,0 +1,26 @@ +INCLUDES = $(all_includes) + +libsearchdialog_a_METASOURCES = AUTO + +noinst_LIBRARIES = libsearchdialog.a + +libsearchdialog_a_SOURCES = \ +csearchdialog.cpp \ +csearchdialoganalysis.cpp \ +csearchdialogresultview.cpp \ +csearchdialogresult.cpp \ +csearchdialogtext.cpp \ +csearchdialogscope.cpp \ +csearchdialogmodulechooser.cpp + +all_headers = csearchdialogmodulechooser.h \ +csearchdialogtext.h \ +csearchdialogscope.h \ +csearchdialogresult.h \ +csearchdialogresultview.h \ +csearchdialoganalysis.h \ +csearchdialogmodulechooser.h \ +csearchdialog.h + +EXTRA_DIST = $(libsearchdialog_a_SOURCES) $(all_headers) + diff --git a/bibletime/frontend/searchdialog/Makefile.in b/bibletime/frontend/searchdialog/Makefile.in new file mode 100644 index 0000000..29c86f8 --- /dev/null +++ b/bibletime/frontend/searchdialog/Makefile.in @@ -0,0 +1,646 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) + +#>- libsearchdialog_a_METASOURCES = AUTO + +noinst_LIBRARIES = libsearchdialog.a + +libsearchdialog_a_SOURCES = csearchdialog.cpp csearchdialoganalysis.cpp csearchdialogresultview.cpp csearchdialogresult.cpp csearchdialogtext.cpp csearchdialogscope.cpp csearchdialogmodulechooser.cpp + + +all_headers = csearchdialogmodulechooser.h csearchdialogtext.h csearchdialogscope.h csearchdialogresult.h csearchdialogresultview.h csearchdialoganalysis.h csearchdialogmodulechooser.h csearchdialog.h + + +EXTRA_DIST = $(libsearchdialog_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libsearchdialog_a_LIBADD = +#>- libsearchdialog_a_OBJECTS = csearchdialog.$(OBJEXT) \ +#>- csearchdialoganalysis.$(OBJEXT) csearchdialogresultview.$(OBJEXT) \ +#>- csearchdialogresult.$(OBJEXT) csearchdialogtext.$(OBJEXT) \ +#>- csearchdialogscope.$(OBJEXT) csearchdialogmodulechooser.$(OBJEXT) +#>+ 9 +libsearchdialog_a_final_OBJECTS = libsearchdialog_a.all_cpp.o +libsearchdialog_a_nofinal_OBJECTS = csearchdialog.$(OBJEXT) \ +csearchdialoganalysis.$(OBJEXT) csearchdialogresultview.$(OBJEXT) \ +csearchdialogresult.$(OBJEXT) csearchdialogtext.$(OBJEXT) \ +csearchdialogscope.$(OBJEXT) csearchdialogmodulechooser.$(OBJEXT)\ +csearchdialogresult.moc.o csearchdialog.moc.o csearchdialoganalysis.moc.o csearchdialogresultview.moc.o csearchdialogmodulechooser.moc.o csearchdialogscope.moc.o csearchdialogtext.moc.o \ +libsearchdialog_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libsearchdialog_a_OBJECTS = $(libsearchdialog_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libsearchdialog_a_OBJECTS = $(libsearchdialog_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=csearchdialogresultview.h csearchdialogtext.h csearchdialogmodulechooser.h csearchdialogscope.h csearchdialoganalysis.h csearchdialog.h csearchdialogresult.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/csearchdialog.P .deps/csearchdialoganalysis.P \ +#>- .deps/csearchdialogmodulechooser.P .deps/csearchdialogresult.P \ +#>- .deps/csearchdialogresultview.P .deps/csearchdialogscope.P \ +#>- .deps/csearchdialogtext.P +#>+ 10 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/csearchdialogresult.moc.P $(DEPDIR)/csearchdialog.moc.P $(DEPDIR)/csearchdialoganalysis.moc.P $(DEPDIR)/csearchdialogresultview.moc.P $(DEPDIR)/csearchdialogmodulechooser.moc.P $(DEPDIR)/csearchdialogscope.moc.P $(DEPDIR)/csearchdialogtext.moc.P $(DEPDIR)/libsearchdialog_a_meta_unload.P $(DEPDIR)/libsearchdialog_a.all_cpp.P \ + .deps/csearchdialog.P .deps/csearchdialoganalysis.P \ +.deps/csearchdialogmodulechooser.P .deps/csearchdialogresult.P \ +.deps/csearchdialogresultview.P .deps/csearchdialogscope.P \ +.deps/csearchdialogtext.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/csearchdialogresult.moc.P $(DEPDIR)/csearchdialog.moc.P $(DEPDIR)/csearchdialoganalysis.moc.P $(DEPDIR)/csearchdialogresultview.moc.P $(DEPDIR)/csearchdialogmodulechooser.moc.P $(DEPDIR)/csearchdialogscope.moc.P $(DEPDIR)/csearchdialogtext.moc.P $(DEPDIR)/libsearchdialog_a_meta_unload.P .deps/csearchdialog.P .deps/csearchdialoganalysis.P \ +.deps/csearchdialogmodulechooser.P .deps/csearchdialogresult.P \ +.deps/csearchdialogresultview.P .deps/csearchdialogscope.P \ +.deps/csearchdialogtext.P + +SOURCES = $(libsearchdialog_a_SOURCES) +OBJECTS = $(libsearchdialog_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/searchdialog/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/searchdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/searchdialog/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libsearchdialog.a: $(libsearchdialog_a_OBJECTS) $(libsearchdialog_a_DEPENDENCIES) + -rm -f libsearchdialog.a + $(AR) cru libsearchdialog.a $(libsearchdialog_a_OBJECTS) $(libsearchdialog_a_LIBADD) + $(RANLIB) libsearchdialog.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/searchdialog + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/searchdialog/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +csearchdialogresult.moc.cpp: $(srcdir)/csearchdialogresult.h + $(MOC) $(srcdir)/csearchdialogresult.h -o csearchdialogresult.moc.cpp + +#>+ 3 +csearchdialog.moc.cpp: $(srcdir)/csearchdialog.h + $(MOC) $(srcdir)/csearchdialog.h -o csearchdialog.moc.cpp + +#>+ 3 +csearchdialoganalysis.moc.cpp: $(srcdir)/csearchdialoganalysis.h + $(MOC) $(srcdir)/csearchdialoganalysis.h -o csearchdialoganalysis.moc.cpp + +#>+ 3 +csearchdialogresultview.moc.cpp: $(srcdir)/csearchdialogresultview.h + $(MOC) $(srcdir)/csearchdialogresultview.h -o csearchdialogresultview.moc.cpp + +#>+ 3 +csearchdialogmodulechooser.moc.cpp: $(srcdir)/csearchdialogmodulechooser.h + $(MOC) $(srcdir)/csearchdialogmodulechooser.h -o csearchdialogmodulechooser.moc.cpp + +#>+ 3 +csearchdialogscope.moc.cpp: $(srcdir)/csearchdialogscope.h + $(MOC) $(srcdir)/csearchdialogscope.h -o csearchdialogscope.moc.cpp + +#>+ 3 +csearchdialogtext.moc.cpp: $(srcdir)/csearchdialogtext.h + $(MOC) $(srcdir)/csearchdialogtext.h -o csearchdialogtext.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f csearchdialogresult.moc.cpp csearchdialog.moc.cpp csearchdialoganalysis.moc.cpp csearchdialogresultview.moc.cpp csearchdialogmodulechooser.moc.cpp csearchdialogscope.moc.cpp csearchdialogtext.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/searchdialog/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/searchdialog/Makefile.in + + +#>+ 10 +libsearchdialog_a_meta_unload.cpp: csearchdialogresult.moc.cpp csearchdialog.moc.cpp csearchdialogmodulechooser.moc.cpp csearchdialogresultview.moc.cpp csearchdialoganalysis.moc.cpp csearchdialogscope.moc.cpp csearchdialogtext.moc.cpp + @echo 'creating libsearchdialog_a_meta_unload.cpp' + @-rm -f libsearchdialog_a_meta_unload.cpp + @echo 'static const char * _metalist_libsearchdialog_a[] = {' > libsearchdialog_a_meta_unload.cpp + @cat csearchdialogresult.moc.cpp csearchdialog.moc.cpp csearchdialogmodulechooser.moc.cpp csearchdialogresultview.moc.cpp csearchdialoganalysis.moc.cpp csearchdialogscope.moc.cpp csearchdialogtext.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libsearchdialog_a_meta_unload.cpp + @echo '0};' >> libsearchdialog_a_meta_unload.cpp + @echo '#include ' >> libsearchdialog_a_meta_unload.cpp + @echo '_UNLOAD(libsearchdialog_a)' >> libsearchdialog_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libsearchdialog_a_meta_unload.cpp + +#>+ 11 +libsearchdialog_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/csearchdialog.cpp $(srcdir)/csearchdialoganalysis.cpp $(srcdir)/csearchdialogresultview.cpp $(srcdir)/csearchdialogresult.cpp $(srcdir)/csearchdialogtext.cpp $(srcdir)/csearchdialogscope.cpp $(srcdir)/csearchdialogmodulechooser.cpp libsearchdialog_a_meta_unload.cpp csearchdialogresult.moc.cpp csearchdialog.moc.cpp csearchdialoganalysis.moc.cpp csearchdialogresultview.moc.cpp csearchdialogmodulechooser.moc.cpp csearchdialogscope.moc.cpp csearchdialogtext.moc.cpp + @echo 'creating libsearchdialog_a.all_cpp.cpp ...'; \ + rm -f libsearchdialog_a.all_cpp.files libsearchdialog_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libsearchdialog_a.all_cpp.final; \ + for file in csearchdialog.cpp csearchdialoganalysis.cpp csearchdialogresultview.cpp csearchdialogresult.cpp csearchdialogtext.cpp csearchdialogscope.cpp csearchdialogmodulechooser.cpp libsearchdialog_a_meta_unload.cpp csearchdialogresult.moc.cpp csearchdialog.moc.cpp csearchdialoganalysis.moc.cpp csearchdialogresultview.moc.cpp csearchdialogmodulechooser.moc.cpp csearchdialogscope.moc.cpp csearchdialogtext.moc.cpp; do \ + echo "#include \"$$file\"" >> libsearchdialog_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libsearchdialog_a.all_cpp.final; \ + done; \ + cat libsearchdialog_a.all_cpp.final libsearchdialog_a.all_cpp.files > libsearchdialog_a.all_cpp.cpp; \ + rm -f libsearchdialog_a.all_cpp.final libsearchdialog_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libsearchdialog_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libsearchdialog_a_OBJECTS="$(libsearchdialog_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libsearchdialog_a_OBJECTS="$(libsearchdialog_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/searchdialog/csearchdialog.cpp b/bibletime/frontend/searchdialog/csearchdialog.cpp new file mode 100644 index 0000000..fe1965a --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialog.cpp @@ -0,0 +1,290 @@ +/*************************************************************************** + csearchdialog.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "csearchdialog.h" +#include "csearchdialogmodulechooser.h" +#include "csearchdialogtext.h" +#include "csearchdialogresult.h" +#include "csearchdialoganalysis.h" +#include "csearchdialogscope.h" +#include "frontend/chtmldialog.h" +#include "backend/cswordmodulesearch.h" +#include "backend/cswordversekey.h" +#include "backend/cswordmoduleinfo.h" +#include "frontend/ctoolclass.h" +#include "frontend/cbtconfig.h" +#include "resource.h" + +//KDE includes +#include +#include +#include +#include +#include +#include + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CSearchDialog::CSearchDialog( ListCSwordModuleInfo& modules, QWidget *parent, const char *name ) + : KDialogBase(Tabbed, i18n("Search Dialog"), Close | User1 | User2, User1, parent, name, false, true, i18n("Search"), i18n("Interrupt"), QString::null) +{ + setIcon(MODULE_SEARCH_ICON_SMALL); + m_searcher.connectPercentUpdate(this, SLOT(percentUpdate())); + m_searcher.connectFinished(this, SLOT(searchFinished())); + + initView(); + readSettings(); + + setModuleList( modules ); + if (modules.count()) + showPage(pageIndex(m_searchTextPage)); +} + +CSearchDialog::~CSearchDialog(){ + saveSettings(); +} + +/** Reads the settings from the configfile */ +void CSearchDialog::readSettings(){ +} + +/** Saves the settings to the config file */ +void CSearchDialog::saveSettings(){ +} + +/** Initializs the view */ +void CSearchDialog::initView() { + enableButton(User2,false); + + m_moduleChooserPage = addVBoxPage(i18n("Choose modules"), i18n("Choose the modules for the search")); + m_moduleChooser = new CSearchDialogModuleChooser(m_moduleChooserPage); + connect(m_moduleChooser, SIGNAL(chosenModulesChanged()), SLOT(chosenModulesChanged())); + + m_searchTextPage = addVBoxPage(i18n("Search Text"), i18n("Enter the text to search for")); + m_searchText = new CSearchDialogText(m_searchTextPage); + m_searchTextPage->setEnabled(false); + + m_searchResultPage = addHBoxPage(i18n("Search Result"), i18n("The result of your search")); + m_searchResult = new CSearchDialogResult(m_searchResultPage); + m_searchResultPage->setEnabled(false); + + m_searchAnalysisPage = addVBoxPage(i18n("Search Analysis"), i18n("Graphical analysis of your search result")); + m_searchAnalysis = new CSearchDialogAnalysis(m_searchAnalysisPage); + m_searchAnalysisView = new CSearchDialogAnalysisView(m_searchAnalysis, m_searchAnalysisPage); + m_searchAnalysisPage->setEnabled(false); + + m_searchAnalysisSaveButton = new QPushButton("Save Analysis to Disk", m_searchAnalysisPage); + + connect(m_searchAnalysisSaveButton, SIGNAL(clicked()), + this, SLOT(slotSaveSearchAnalysis())); +} + +ListCSwordModuleInfo& CSearchDialog::getModuleList() { +// ASSERT(moduleList); + m_moduleList = m_moduleChooser->getChosenModules(); + return m_moduleList; +} + +void CSearchDialog::setModuleList(ListCSwordModuleInfo& list) { + //if (m_moduleList != list) // this is an inefficient hack to allow compile on gcc3 ???WDG + m_moduleList = list; //copy the items of "list" + + m_moduleChooser->blockSignals(true); + m_moduleChooser->setChosenModules(m_moduleList); + m_moduleChooser->blockSignals(false); + + m_searchTextPage->setEnabled(m_moduleList.count()>0); + m_searchResult->clearResult(); + m_searchAnalysis->reset(); +} + +void CSearchDialog::slotSaveSearchAnalysis(){ + const QString file = KFileDialog::getSaveFileName(QString::null, QString::fromLatin1("*.html | %1").arg(i18n("HTML files")), 0, i18n("Save Search Analysis")); + if (!file.isNull()) { + int moduleIndex = 0; + int count = 0; + QString countStr = ""; + QString m_searchAnalysisHTML = ""; + QString tableTitle = ""; + QString tableTotals = ""; + QString VerseRange = ""; + const QString txtCSS = QString::fromLatin1("\n"); + CSwordVerseKey key(0); + ListKey searchResult; + + key.key("Genesis 1:1"); + + if (m_searchText->scopeChooser->getScopeType() != CSwordModuleSearch::Scope_NoScope) { + ListKey verses = m_searcher.scope(); + for (int i = 0; i < verses.Count(); ++i) { + VerseKey* element = dynamic_cast(verses.GetElement(i)); + if (element) { + VerseRange += QString("%1 - %2").arg(QString::fromLocal8Bit((const char*)element->LowerBound())).arg(QString::fromLocal8Bit((const char*)element->UpperBound())) + "
"; + } + } + } + + QDict* m_searchAnalysisItems = m_searchAnalysis->getSearchAnalysisItemList(); + CSearchDialogAnalysisItem* analysisItem = m_searchAnalysisItems->find( key.book() ); + + QString text = "\n\n" + i18n("BibleTime Search Analysis") + "\n" + txtCSS + "\n\n"; + text += "\n\n"; + text += "\n"; + text += "\n
" + i18n("Search Text :") + "" + m_searchText->getText() + "
" + i18n("Search Type :") + "" + m_searchText->getSearchTypeString() + "
" + i18n("Search Scope:") + "" + ((m_searchText->scopeChooser->getScopeType() != CSwordModuleSearch::Scope_NoScope) ? VerseRange : m_searchText->scopeChooser->getScopeTypeString()) + "
\n
\n"; + + + tableTitle = "" + i18n("Book") + ""; + tableTotals = "" + i18n("Total Hits") + ""; + for (moduleIndex = 0,m_moduleList.first(); m_moduleList.current(); m_moduleList.next(),++moduleIndex) { + tableTitle += QString::fromLatin1("") + m_moduleList.current()->name() + QString::fromLatin1(""); + searchResult = m_moduleList.current()->searchResult(); + countStr.setNum(searchResult.Count()); + tableTotals += QString::fromLatin1("") + countStr + QString::fromLatin1(""); + } + tableTitle += QString::fromLatin1("\n"); + tableTotals += QString::fromLatin1("\n"); + + m_searchAnalysisHTML = ""; + bool ok = true; + while (ok) { + m_searchAnalysisHTML += QString::fromLatin1("") + key.book() + QString::fromLatin1(""); + analysisItem = m_searchAnalysisItems->find( key.book() ); + for (moduleIndex = 0,m_moduleList.first(); m_moduleList.current(); m_moduleList.next(), ++moduleIndex) { + count = analysisItem->getCountForModule(moduleIndex); + countStr.setNum(count); + m_searchAnalysisHTML += QString::fromLatin1("") + countStr + QString::fromLatin1(""); + } + m_searchAnalysisHTML += QString::fromLatin1("\n"); + ok = key.next(CSwordVerseKey::UseBook); + } + text += QString::fromLatin1("\n") + tableTitle + tableTotals + m_searchAnalysisHTML + QString::fromLatin1("
\n"); + text += QString::fromLatin1("
"); + text += QString::fromLatin1(""); + CToolClass::savePlainFile(file, text); + } +} + +void CSearchDialog::slotUser1() { + startSearch(); +} + +void CSearchDialog::slotUser2() { +// if (searcher->isSearching()) + m_searcher.interruptSearch(); +} + +void CSearchDialog::startSearch(void) { + int searchFlags = m_searchText->getSearchType(); + // set the parameters + m_searchText->updateCurrentProgress(0); + m_searchText->updateOverallProgress(0); + m_searchText->setText( m_searchText->getText() ); + + m_searcher.setModules( getModuleList() ); + m_searcher.setSearchedText(m_searchText->getText()); + + if (m_searchText->isCaseSensitive()) + searchFlags |= CSwordModuleSearch::caseSensitive; + m_searcher.resetSearchScope(); + CSwordModuleSearch::scopeType scopeType = m_searchText->scopeChooser->getScopeType(); + + if (scopeType == CSwordModuleSearch::Scope_LastSearch) { + searchFlags |= CSwordModuleSearch::useLastResult; + } + else if ( scopeType == CSwordModuleSearch::Scope_Bounds ) { + searchFlags |= CSwordModuleSearch::useScope; + m_searcher.setSearchScope( m_searchText->scopeChooser->getScope() ); + } + m_searcher.setSearchOptions(searchFlags); + enableButton(User1,false); + enableButton(User2,true); + m_searchAnalysis->reset(); + m_searchResult->clearResult(); + + m_searcher.startSearchThread(); +} + +void CSearchDialog::setSearchText(const QString text){ + m_searchText->setText(text); + if (!text.isEmpty()) + showPage(pageIndex(m_searchTextPage)); +} + +/** Returns the search text. If no text was entered return QString::null. */ +const QString CSearchDialog::getSearchedText() const { + return m_searchText->getText(); +} + +/** No descriptions */ +void CSearchDialog::chosenModulesChanged(){ + setModuleList(getModuleList()); +} + +/** Reimplementation to show the "First time opened" dialog. */ +void CSearchDialog::show(){ + KDialogBase::show(); + + if ( CBTConfig::get(CBTConfig::firstSearchDialog) ){ + CHTMLDialog dlg(HELPDIALOG_FIRSTTIME_SEARCH); + dlg.exec(); + CBTConfig::set(CBTConfig::firstSearchDialog, false); + } +} + +/** No descriptions */ +void CSearchDialog::searchFinished(){ +// qWarning("CSearchDialog::searchFinished()"); + m_searchText->updateCurrentProgress(100); + m_searchText->updateOverallProgress(100); + m_searchAnalysis->reset(); + if ( m_searcher.foundItems() ){ + m_searchResult->setModuleList(getModuleList()); + m_searchAnalysis->setModuleList(getModuleList()); + m_searchAnalysisView->setContentsPos(0,0); + m_searchResultPage->setEnabled(true); + m_searchAnalysisPage->setEnabled(true); + showPage(pageIndex(m_searchResultPage)); //the result page + + m_searchAnalysis->analyse(); + } + else + m_searchResult->clearResult(); + + enableButton(User2,false); + enableButton(User1,true); +} + +/** No descriptions */ +void CSearchDialog::percentUpdate(){ +// old_overallProgress = m_searcher.getPercent(CSwordModuleSearch::currentModule); + m_searchText->updateOverallProgress(m_searcher.getPercent(CSwordModuleSearch::allModules)); + +// old_currentProgress = m_searcher.getPercent(CSwordModuleSearch::currentModule); + m_searchText->updateCurrentProgress(m_searcher.getPercent(CSwordModuleSearch::currentModule)); + KApplication::kapp->processEvents(); +} diff --git a/bibletime/frontend/searchdialog/csearchdialog.h b/bibletime/frontend/searchdialog/csearchdialog.h new file mode 100644 index 0000000..ae7a332 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialog.h @@ -0,0 +1,136 @@ +/*************************************************************************** + csearchdialog.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +/* $HEADER */ +/* $REVISION */ + +#ifndef CSEARCHDIALOG_H +#define CSEARCHDIALOG_H + +//BibleTime includes +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordmodulesearch.h" +#include "frontend/cpointers.h" + +//QT includes + +//KDE includes +#include +#include + + +class QPushButton; +class QHBox; +class QVBox; +class QGrid; +class CSearchDialogModuleChooser; +class CSearchDialogText; +class CSearchDialogScopeEdit; +class CSearchDialogResult; +class CSearchDialogAnalysis; +class CSearchDialogAnalysisView; + +class CSwordModuleInfo; +class CSwordModuleSearch; + +/** + * The searchdialog of BibleTime + * @author The BibleTime Team + */ +class CSearchDialog : public KDialogBase, public CPointers { + Q_OBJECT +public: + /** + * The constructor of the CSearchDialog class. + * @param parent The widget this dialog is centered on + * @param name The name of this Qt widget + */ + CSearchDialog(ListCSwordModuleInfo& modules,QWidget *parent=0, const char *name=0 ); + ~CSearchDialog(); + /** + * + */ + ListCSwordModuleInfo& getModuleList(); + /** + * Sets the module list for this dialog. + * The module lsit contains the modules where we should search in + */ + void setModuleList(ListCSwordModuleInfo&); + /** + * Sets the text we should search in the modules + */ + void setSearchText(const QString); + /** + * Reimplementation from Qt. + * This is used to refresh the progres bars + * and to switch to the resultpage if the search was finished. + */ +// virtual void timerEvent(QTimerEvent *e); + /** + * Returns the search text. If no text was enetered return QSTring::null. + */ + const QString getSearchedText() const; + void startSearch(); + +protected: // Protected methods + /** + * Initializs the view + */ + void initView(); + /** + * Reads the settings from the configfile + */ + void readSettings(); + /** + * Saves the settings of this widget to the config file + */ + void saveSettings(); + +private: + friend class CSearchDialogResult; + QVBox* m_moduleChooserPage; + QVBox* m_searchTextPage; + QHBox* m_searchResultPage; + QVBox* m_searchAnalysisPage; + CSearchDialogModuleChooser *m_moduleChooser; + CSearchDialogText *m_searchText; + CSearchDialogResult *m_searchResult; + CSearchDialogAnalysis* m_searchAnalysis; + CSearchDialogAnalysisView* m_searchAnalysisView; + CSwordModuleSearch m_searcher; + ListCSwordModuleInfo m_moduleList; +// int old_overallProgress; +// int old_currentProgress; + + QPushButton* m_searchAnalysisSaveButton; + +private slots: // Private slots + void chosenModulesChanged(); + virtual void slotUser1(); + virtual void slotUser2(); + void slotSaveSearchAnalysis(); + void searchFinished(); + void percentUpdate(); + +public slots: // Public slots + /** + * Reimplementation to show the "First time opened" dialog. + */ + virtual void show(); +}; + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialoganalysis.cpp b/bibletime/frontend/searchdialog/csearchdialoganalysis.cpp new file mode 100644 index 0000000..fa0784a --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialoganalysis.cpp @@ -0,0 +1,446 @@ +/*************************************************************************** + csearchdialoganalysis.cpp - description + ------------------- + begin : Sat Mar 4 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "csearchdialoganalysis.h" +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordbiblemoduleinfo.h" +#include "backend/cswordcommentarymoduleinfo.h" +#include "backend/cswordlexiconmoduleinfo.h" +#include "backend/cswordversekey.h" +#include "backend/cswordbackend.h" +#include "frontend/ctoolclass.h" +#include "csearchdialog.h" +#include "whatsthisdef.h" + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include + +//Sword includes +#include +#include +#include + +//library includes +#include + +//our defines +#define SPACE_BETWEEN_PARTS 5 +#define RIGHT_BORDER 15 +#define LEFT_BORDER 15 +#define LOWER_BORDER 10 +#define UPPER_BORDER 10 + +#define ITEM_TEXT_SIZE 8 +#define LABEL_TEXT_SIZE 6 + +//used for the shift between the bars +#define BAR_DELTAX 4 +#define BAR_DELTAY 2 +#define BAR_WIDTH 2+2*BAR_DELTAX //should be equal or bigger than the label font size +//used for the text below the bars +#define BAR_LOWER_BORDER 100 + +#define LEGEND_INNER_BORDER 5 +#define LEGEND_DELTAY 4 +#define LEGEND_WIDTH 85 + +CSearchDialogAnalysis::CSearchDialogAnalysis(QObject *parent, const char *name ) + : QCanvas(parent,name) { + + m_scaleFactor = 0.0; + m_legend = 0; + setBackgroundColor(Qt::white); + m_canvasItemList.resize(67); + m_canvasItemList.setAutoDelete(true); + resize(1,1); + connect(this, SIGNAL(resized()), SLOT(slotResized())); +} + +CSearchDialogAnalysis::~CSearchDialogAnalysis(){ +// qWarning("CSearchDialogAnalysis::~CSearchDialogAnalysis()"); + reset(); // deletes the legend and the items +} + +QDict* CSearchDialogAnalysis::getSearchAnalysisItemList(){ + // Returns pointer to the search analysis items + return &m_canvasItemList; +} + +/** Starts the analysis of the search result. This should be called only once because QCanvas handles the updates automatically. */ +void CSearchDialogAnalysis::analyse(){ + qDebug("void CSearchDialogAnalysis::analyse()"); + /** + * Steps of analysing our search result; + * -Create the items for all available books ("Genesis" - "Revelation") + * -Iterate through all modules we analyse + * -Go through all books of this module + * -Find out how many times we found the book + * -Set the count to the items which belongs to the book + */ + m_lastPosList.clear(); + const int numberOfModules = m_moduleList.count(); + if (!numberOfModules) + return; + m_legend = new CSearchDialogAnalysisLegendItem(this, &m_moduleList); + m_legend->setX(LEFT_BORDER); + m_legend->setY(UPPER_BORDER); + m_legend->setSize(LEGEND_WIDTH, + LEGEND_INNER_BORDER*2 + ITEM_TEXT_SIZE*numberOfModules + LEGEND_DELTAY*(numberOfModules-1)); + m_legend->show(); + + int xPos = LEFT_BORDER + m_legend->width() + SPACE_BETWEEN_PARTS; + int moduleIndex = 0; + m_maxCount = 0; + int count = 0; + CSwordVerseKey key(0); + key.key("Genesis 1:1"); + + CSearchDialogAnalysisItem* analysisItem = m_canvasItemList[key.book()]; + bool ok = true; + while (ok && analysisItem) { + for (moduleIndex = 0,m_moduleList.first(); m_moduleList.current(); m_moduleList.next(),++moduleIndex) { + KApplication::kApplication()->processEvents(10); + if (!m_lastPosList.contains(m_moduleList.current())) + m_lastPosList.insert(m_moduleList.current(),0); + analysisItem->setCountForModule(moduleIndex, (count = getCount(key.book(),m_moduleList.current()))); + m_maxCount = (count > m_maxCount) ? count : m_maxCount; + } + analysisItem->setX(xPos); + analysisItem->setY(UPPER_BORDER); + analysisItem->show(); + + xPos += (int)analysisItem->width() + SPACE_BETWEEN_PARTS; + ok = key.next(CSwordVerseKey::UseBook); + analysisItem = m_canvasItemList[key.book()]; + } + resize(xPos+BAR_WIDTH+(m_moduleList.count()-1)*BAR_DELTAX+RIGHT_BORDER, height() ); + slotResized(); +} + +/** Sets te module list used for the analysis. */ +void CSearchDialogAnalysis::setModuleList(ListCSwordModuleInfo& modules){ +// ASSERT(modules); + m_moduleList.clear(); + for (modules.first(); modules.current(); modules.next()) + if ( modules.current()->type() == CSwordModuleInfo::Bible || modules.current()->type() == CSwordModuleInfo::Commentary )//a Bible or an commentary + m_moduleList.append(modules.current()); + + m_canvasItemList.clear(); + CSearchDialogAnalysisItem* analysisItem = 0; + CSwordVerseKey key(0); + key.key("Genesis 1:1"); + do { + analysisItem = new CSearchDialogAnalysisItem(this, m_moduleList.count(), key.book(), &m_scaleFactor, &m_moduleList); + analysisItem->hide(); + m_canvasItemList.insert(key.book(), analysisItem); + } while (key.next(CSwordVerseKey::UseBook)); + update(); +} + +/** Sets back the items and deletes things to cleanup */ +void CSearchDialogAnalysis::reset(){ + m_scaleFactor = 0.0; + QDictIterator it( m_canvasItemList ); // iterator for items + while ( it.current() ) { + it.current()->hide(); + ++it; + } + m_lastPosList.clear(); + + if (m_legend) + m_legend->hide(); + delete m_legend; + m_legend = 0; + update(); +} + +/** No descriptions */ +void CSearchDialogAnalysis::slotResized(){ + m_scaleFactor = (double)( (double)(height()-UPPER_BORDER-LOWER_BORDER-BAR_LOWER_BORDER-(m_moduleList.count()-1)*BAR_DELTAY) + /(double)m_maxCount); + QDictIterator it( m_canvasItemList ); + while ( it.current() ) { + it.current()->setSize(BAR_WIDTH + (m_moduleList.count()-1)*BAR_DELTAX, height()-UPPER_BORDER-LOWER_BORDER); + it.current()->setY(UPPER_BORDER); + ++it; + } + update(); +} + +/** This function returns a color for each module */ +QColor CSearchDialogAnalysis::getColor(int index){ + switch (index){ + case 0: return Qt::red; + case 1: return Qt::darkGreen; + case 2: return Qt::blue; + case 3: return Qt::cyan; + case 4: return Qt::magenta; + case 5: return Qt::darkRed; + case 6: return Qt::darkGray; + case 7: return Qt::black; + case 8: return Qt::darkCyan; + case 9: return Qt::darkMagenta; + default: return Qt::red; + } +} + +/** Returns the count of the book in the module */ +const unsigned int CSearchDialogAnalysis::getCount( const QString book, CSwordModuleInfo* module ){ + ListKey& result = module->searchResult(); + const int length = book.length(); + unsigned int i = m_lastPosList[module]; + unsigned int count = 0; + const unsigned int resultCount = result.Count(); + while (i < resultCount) { + if ( strncmp(book.local8Bit(), (const char*)*result.GetElement(i), length) ) + break; + i++; + ++count; + } + m_lastPosList.contains(module) ? m_lastPosList.replace(module,i) : m_lastPosList.insert(module,i); +// m_lastPosList.replace(module,i); + return count; +} + + +//------------------------------------------------------------------ +//------------------------------------------------------------------ + +CSearchDialogAnalysisItem::CSearchDialogAnalysisItem(QCanvas *parent, const int moduleCount, const QString &bookname, double *scaleFactor, ListCSwordModuleInfo* modules) + : QCanvasRectangle(parent), + m_moduleList( modules ), + m_scaleFactor(scaleFactor), + m_bookName(bookname), + m_moduleCount(moduleCount), + m_bufferPixmap(0) +{ + m_resultCountArray.resize(m_moduleCount); + int index = 0; + for (index = 0; index < m_moduleCount; ++index) + m_resultCountArray[index] = 0; +} + +CSearchDialogAnalysisItem::~CSearchDialogAnalysisItem() { +// qWarning("CSearchDialogAnalysisItem::~CSearchDialogAnalysisItem()"); +// if (m_bufferPixmap) + delete m_bufferPixmap; +} + +/** Sets the resultcount of this item for the given module */ +void CSearchDialogAnalysisItem::setCountForModule( const int moduleIndex, const int count) { + m_resultCountArray[moduleIndex] = count; +} + +/** Returns the resultcount of this item for the given module */ +int CSearchDialogAnalysisItem::getCountForModule( const int moduleIndex) { + return m_resultCountArray[moduleIndex]; +} + +/** Reimplementation. Draws the content of this item. */ +void CSearchDialogAnalysisItem::draw(QPainter& painter) { + QFont f = painter.font(); + f.setPointSize(ITEM_TEXT_SIZE); + painter.setFont(f); + + setPen(QPen(black,1)); + setBrush(Qt::red); + /** + * We have to paint so many bars as we have modules available (we use m_moduleCount) + * We paint inside the area which is given by height and widt of this rectangle item + */ + int index = 0; + int drawn = 0; + int Value = 0; + + //find out the biggest value + for (index=0;index < m_moduleCount; index++) + if (m_resultCountArray[index] > Value) + Value = m_resultCountArray[index]; + + while (drawn < m_moduleCount){ + for (index=0; index < m_moduleCount; index++){ + if (m_resultCountArray[index] == Value){ + QPoint p1((int)x()+(m_moduleCount-drawn-1)*BAR_DELTAX, + height()+(int)y()-BAR_LOWER_BORDER-(m_moduleCount-drawn)*BAR_DELTAY); + QPoint p2((int)p1.x() + BAR_WIDTH, + (int)(p1.y() - (!m_resultCountArray[index] ? 0 : ((m_resultCountArray[index])*(*m_scaleFactor))) )); + QRect r(p1, p2); + painter.fillRect(r, QBrush(CSearchDialogAnalysis::getColor(index)) ); + painter.drawRect(r); + drawn++; + } + } + //finds the next smaller value + int newValue = 0; + for (index=0;index < m_moduleCount; index++) + if (m_resultCountArray[index] < Value && m_resultCountArray[index] >= newValue) + newValue = m_resultCountArray[index]; + Value = newValue; + } + if (!m_bufferPixmap) { + m_bufferPixmap = new QPixmap(); + m_bufferPixmap->resize(width(),BAR_LOWER_BORDER); + m_bufferPixmap->fill(); + QPainter p(m_bufferPixmap); + f = p.font(); + f.setPointSize(ITEM_TEXT_SIZE); + p.setFont(f); + p.rotate(90); + p.drawText(QPoint(5,0), m_bookName); + } + painter.drawPixmap(QPoint((int)x(),height()+(int)y()-BAR_LOWER_BORDER), *m_bufferPixmap); +} + +/** Returns the width of this item. */ +int CSearchDialogAnalysisItem::width(){ + return m_moduleCount*(m_moduleCount>1 ? BAR_DELTAX : 0) + BAR_WIDTH; +} + +/** Returns the tooltip for this item. */ +const QString CSearchDialogAnalysisItem::getToolTip(){ + QString ret = QString::fromLatin1("
%1

").arg(m_bookName); + ret.append(""); + for (int i = 0; i < m_moduleCount; ++i) { + CSwordModuleInfo* info = m_moduleList->at(i); + const QColor c = CSearchDialogAnalysis::getColor(i); + ret.append( + QString::fromLatin1("") + .arg(QString().sprintf("%02X%02X%02X",c.red(),c.green(),c.blue())) + .arg(info ? info->name() : QString::null) + .arg(m_resultCountArray[i]) + ); + } + ret.append("
%2%3
"); + return ret; +} + +//------------------------------------------------------------------ +//------------------------------------------------------------------ + +CSearchDialogAnalysisView::CSearchDialogAnalysisView(QCanvas* canvas, QWidget* parent) + : QCanvasView(canvas, parent) { + QWhatsThis::add(this, WT_SD_ANALYSIS_VIEW); + setFocusPolicy(QWidget::WheelFocus); + m_toolTip = new ToolTip(this); + resize(sizeHint()); + +} + +/** Returns the sizeHint for this view */ +QSize CSearchDialogAnalysisView::sizeHint(){ + if ( parentWidget() ) + return parentWidget()->sizeHint(); + return QCanvasView::sizeHint(); +} + +/** No descriptions */ +void CSearchDialogAnalysisView::resizeEvent( QResizeEvent* e){ + QCanvasView::resizeEvent(e); + canvas()->resize( canvas()->width(), viewport()->height() ); +} + +CSearchDialogAnalysisView::ToolTip::ToolTip(QWidget* parent) : QToolTip(parent) { +} + +void CSearchDialogAnalysisView::ToolTip::maybeTip(const QPoint& p) { + CSearchDialogAnalysisView* view = dynamic_cast(parentWidget()); + if (!view) + return; + QPoint point(p); + point = view->viewport()->mapFrom(view, point); + CSearchDialogAnalysisItem* i = view->itemAt( view->viewportToContents(point) ); + if (!i) + return; + + //get type of item and display correct text + QString text = i->getToolTip(); + if (text.isEmpty()) + return; + + QPoint p1 = view->viewport()->mapTo(view, view->contentsToViewport(i->rect().topLeft())); + p1.setY(0); + QPoint p2 = view->viewport()->mapTo(view, view->contentsToViewport(i->rect().bottomRight())); + p2.setY(view->height()); + QRect r = QRect( p1, p2 ); + if (r.contains(p)) + tip(r, text); +} + + +/** Returns the item at position p. If there no item at that point return 0. */ +CSearchDialogAnalysisItem* CSearchDialogAnalysisView::itemAt( const QPoint& p ){ + QCanvasItemList l = canvas()->collisions(p); + if (!l.count()) + return 0; + return dynamic_cast(l.first()); +} + +//------------------------------------------------------------------ +//------------------------------------------------------------------ + +CSearchDialogAnalysisLegendItem::CSearchDialogAnalysisLegendItem(QCanvas *parent, ListCSwordModuleInfo *list ) + : QCanvasRectangle(parent) { + m_moduleList = list; +} + +/** Reimplementation. Draws the content of this item. */ +void CSearchDialogAnalysisLegendItem::draw (QPainter& painter) { + painter.save(); + + setPen( QPen(black,2) ); + setBrush( Qt::white ); + //the outer rectangle + QPoint p1((int)x(),(int)y()); + QPoint p2((int)x()+width(), (int)y()+height()); + QRect r(p1, p2); + r.normalize(); + painter.drawRect(r); + + QFont f = painter.font(); + f.setPointSize(ITEM_TEXT_SIZE); + painter.setFont(f); + + for (unsigned int index=0; index < m_moduleList->count(); index++){ + // the module color indicators + QPoint p1((int)x()+LEGEND_INNER_BORDER, (int)y() + LEGEND_INNER_BORDER + index*(LEGEND_DELTAY + ITEM_TEXT_SIZE)); + QPoint p2( (int)p1.x() + ITEM_TEXT_SIZE, (int)p1.y() + ITEM_TEXT_SIZE); + QRect r(p1,p2); + painter.fillRect(r, QBrush(CSearchDialogAnalysis::getColor(index)) ); + r.normalize(); + painter.drawRect(r); + + QPoint p3( p2.x() + LEGEND_INNER_BORDER, p2.y() ); + painter.drawText(p3, m_moduleList->at(index)->name() ); + } + painter.restore(); +} diff --git a/bibletime/frontend/searchdialog/csearchdialoganalysis.h b/bibletime/frontend/searchdialog/csearchdialoganalysis.h new file mode 100644 index 0000000..1b1b61c --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialoganalysis.h @@ -0,0 +1,187 @@ +/*************************************************************************** + csearchdialoganalysis.h - description + ------------------- + begin : Sat Mar 4 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGANALYSIS_H +#define CSEARCHDIALOGANALYSIS_H + +//BibleTime includes +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordbackend.h" + +//Qt includes +#include +#include +#include +#include +#include + +class QPixmap; +class QString; + +class CSearchDialog; +class CSearchDialogAnalysisItem; +class CSearchDialogAnalysisLegendItem; + +/** + * CSearchDialogAnaylsis shows the graphical analysis of the search result. + * @author The BibleTime Team + */ +class CSearchDialogAnalysis : public QCanvas { + Q_OBJECT +public: + CSearchDialogAnalysis(QObject *parent=0, const char *name=0); + virtual ~CSearchDialogAnalysis(); + /** + * Sets the module list used for the analysis. + */ + void setModuleList(ListCSwordModuleInfo&); + /** + * Starts the analysis of the search result. + * This should be called only once because + * QCanvas handles the updates automatically. + */ + void analyse(); + /** + * Sets back the items and deletes things to cleanup + */ + void reset(); + /** + * This function returns a color for each module + * @return The color at position index in the list + */ + static QColor getColor(int index); + /* + * This function returns a pointer to the list of AnalysisItems + */ + QDict* getSearchAnalysisItemList(); + + +protected slots: // Protected slots + /** + * No descriptions + */ + void slotResized(); + +private: + /** + * Returns the count of the book in the module + */ + const unsigned int getCount( const QString book, CSwordModuleInfo* module ); + + ListCSwordModuleInfo m_moduleList; + QDict m_canvasItemList; + QMap m_lastPosList; + int m_maxCount; + double m_scaleFactor; + CSearchDialogAnalysisLegendItem* m_legend; + +}; + + +//---------------------------------------------------------- +//---------------------------------------------------------- + +/** Paints the bars for one book for one or more modules + * + */ +class CSearchDialogAnalysisItem : public QCanvasRectangle { +public: + /** + * Standard constructor. + */ + CSearchDialogAnalysisItem(QCanvas* parent, const int moduleCount, const QString& bookname, double *scaleFactor, ListCSwordModuleInfo* modules); + virtual ~CSearchDialogAnalysisItem(); + /** + * Sets the resultcount of this item + */ + void setCountForModule( const int moduleIndex, const int count); + + /** + * Returns the resultcount of this item + */ + int getCountForModule( const int moduleIndex); + /** + * Returns the width of this item. + */ + virtual int width(); + /** + * Returns the tooltip for this item. + */ + const QString getToolTip(); + +private: + virtual void draw (QPainter & painter); + + ListCSwordModuleInfo* m_moduleList; + double *m_scaleFactor; + QString m_bookName; + int m_moduleCount; + QArray m_resultCountArray; + QPixmap* m_bufferPixmap; +}; + +class CSearchDialogAnalysisLegendItem : public QCanvasRectangle { + +public: + CSearchDialogAnalysisLegendItem(QCanvas* parent, ListCSwordModuleInfo* list ); + +private: + virtual void draw (QPainter & painter); + ListCSwordModuleInfo* m_moduleList; +}; + +//---------------------------------------------------------- +//---------------------------------------------------------- +class CSearchDialogAnalysisView : public QCanvasView { + Q_OBJECT +public: + /** + * Standard constructor + */ + CSearchDialogAnalysisView(QCanvas* canvas, QWidget* parent); + /** + * Returns the sizeHint for this view + * We give back the size of the parent widgetas default. + * This is a reimplementation from QCanvasView::sizeHint(). + */ + virtual QSize sizeHint(); + /** + * Returns the item at position p. + * If there no item at that point return 0. + */ + CSearchDialogAnalysisItem* itemAt( const QPoint& p ); + +protected: + /** + * Reimplementation. + */ + virtual void resizeEvent(QResizeEvent* e); + +private: + class ToolTip : public QToolTip { + public: + ToolTip(QWidget* parent); + /** + * Displays a tooltip for position p + */ + virtual void maybeTip(const QPoint &pos); + }; + ToolTip* m_toolTip; +}; + + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp b/bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp new file mode 100644 index 0000000..b098624 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogmodulechooser.cpp @@ -0,0 +1,215 @@ + +/*************************************************************************** + csearchdialogmodulechooser.cpp - description + ------------------- + begin : Fri Mar 30 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime's includes +#include "csearchdialogmodulechooser.h" + +#include "backend/cswordbackend.h" +#include "frontend/groupmanager/cgroupmanager.h" +#include "frontend/groupmanager/cgroupmanageritem.h" +#include "frontend/ctoolclass.h" +#include "whatsthisdef.h" +#include "tooltipdef.h" + +//Qt includes +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include + +CSearchDialogModuleChooser::CSearchDialogModuleChooser(QWidget *parent, const char *name ) : QWidget(parent,name) { + m_initialized = false; + + m_moduleList = 0; +// m_itemsDict.setAutoDelete(false); + + QVBoxLayout* mainLayout = new QVBoxLayout(this); + + mainLayout->addWidget(CToolClass::explanationLabel(this, i18n("Choose modules"), i18n("Choose the module you want to use for the search. The tree on the left contains all available modules, the tree on the right the modules for the search. Use the two arrow buttons to add or remove modules from the right tree."))); + mainLayout->addSpacing(5); + + QHBoxLayout* chooserLayout = new QHBoxLayout(); + + m_moduleIndex = new CGroupManager(this, "module index", &backend()->moduleList(), false, false, false, false, false, false); + QWhatsThis::add(m_moduleIndex, WT_SD_MODULECHOOSER); + + m_moduleList = new QListBox(this); + QWhatsThis::add(m_moduleList, WT_SD_MC_MODULELIST); + + QVBoxLayout* buttonLayout = new QVBoxLayout(); + + QToolButton* addButton = new QToolButton(this); + addButton->setOnIconSet(SmallIcon("forward")); + addButton->setOffIconSet(SmallIcon("forward")); + addButton->setFixedSize( addButton->sizeHint() ); + QWhatsThis::add(addButton, WT_SD_MC_ADD_MODULE); + QToolTip::add(addButton, TT_SD_MC_ADD_MODULE); + connect( addButton, SIGNAL(clicked()), SLOT(addCurrentItem())); + + QToolButton* removeButton = new QToolButton(this); + removeButton->setOnIconSet(SmallIcon("back")); + removeButton->setOffIconSet(SmallIcon("back")); + removeButton->setFixedSize( removeButton->sizeHint() ); + QToolTip::add(removeButton, TT_SD_MC_REMOVE_MODULE); + QWhatsThis::add(removeButton, WT_SD_MC_REMOVE_MODULE); + connect(removeButton, SIGNAL(clicked()), SLOT(removeCurrentItem())); + + buttonLayout->addWidget(addButton,0); + buttonLayout->addSpacing(5); + buttonLayout->addWidget(removeButton,0); + buttonLayout->addStretch(5); + + chooserLayout->addWidget(m_moduleIndex,2); + chooserLayout->addLayout(buttonLayout,0); + chooserLayout->addWidget(m_moduleList,2); + + mainLayout->addLayout(chooserLayout); + + QListViewItem* child = m_moduleIndex->firstChild(); + while (child) { + QListViewItem* nextChild = child->nextSibling(); + if (child->childCount()) + child->setOpen(true); + else { + CGroupManagerItem* i = (CGroupManagerItem*)child; + if (i && (i->type() == CGroupManagerItem::Group)) { + if (m_moduleIndex->isChild(child, nextChild)) { + delete child; + nextChild = m_moduleIndex->firstChild(); + } + else + delete child; + } + } + child = nextChild; + } + m_initialized = true; +} + +CSearchDialogModuleChooser::~CSearchDialogModuleChooser(){ +} + +/** Sets the chosen modules for this object. */ +void CSearchDialogModuleChooser::setChosenModules(ListCSwordModuleInfo& modules){ +// if (!modules.coun) +// return; + if (getChosenModules() == modules) + return; + + m_moduleList->clear(); + m_itemsDict.clear(); + m_moduleIndex->clear(); + m_moduleIndex->readSettings(); + + for (modules.first(); modules.current(); modules.next()) { + const QString module = modules.current()->name(); + QListViewItemIterator it( m_moduleIndex ); + for ( ; it.current(); ++it ) + if (it.current()->text(0) == module) { + m_moduleIndex->setCurrentItem(it.current()); + m_moduleIndex->setSelected(it.current(), true); + addCurrentItem(); + } + } +} + +/** Returns the modules chosen in this widget. */ +ListCSwordModuleInfo CSearchDialogModuleChooser::getChosenModules(){ + ListCSwordModuleInfo modules; + for (unsigned int i=0; i < m_moduleList->count(); ++i) { + CSwordModuleInfo* m = backend()->findModuleByName(m_moduleList->text(i)); + if (m) + modules.append(m); + } + return modules; +} + +/** Adds the selected item to the list */ +void CSearchDialogModuleChooser::addCurrentItem(){ + CGroupManagerItem* i = dynamic_cast(m_moduleIndex->selectedItem()); + QListViewItem* nextItem = 0; + if (i) + nextItem = i->itemBelow(); + if (i && !nextItem) + nextItem = i->itemAbove(); + + if ( i && (i->type() == CGroupManagerItem::Module) && i->moduleInfo() ) { + m_moduleList->insertItem( CToolClass::getIconForModule(i->moduleInfo()), i->moduleInfo()->name(),-1 ); + QListViewItem* parentItem = i->parent(); + m_itemsDict.insert(i, parentItem ? (const char*)parentItem->text(0).latin1() : "");//I don't know why .local8Bit() doesn't work + parentItem ? parentItem->takeItem(i) : m_moduleIndex->takeItem(i); + + if (nextItem) + m_moduleIndex->setSelected(nextItem, true); + } + if (m_initialized) + emit chosenModulesChanged(); +} + +/** Removes the selected item from the module list */ +void CSearchDialogModuleChooser::removeCurrentItem(){ + if (!m_itemsDict.count()) + return; + QString text = QString::null; + if (m_moduleList->currentItem() != -1) { + text = m_moduleList->text(m_moduleList->currentItem()); + const int currentItem = m_moduleList->currentItem(); + int newIndex = currentItem; + + if (currentItem+1 < (int)m_moduleList->count()) + newIndex = currentItem+1; + else + newIndex = currentItem-1; + m_moduleList->removeItem(m_moduleList->currentItem()); + if (newIndex != -1) + m_moduleList->setSelected(newIndex, true); + } + else + return; + + QPtrDictIterator m_it( m_itemsDict ); // iterator for dict + while ( m_it.current() ) { + QString parentName = QString::fromLatin1(m_it.current()); + CGroupManagerItem* item = (CGroupManagerItem*)m_it.currentKey(); + if (item && item->text(0) == text) { + CGroupManagerItem* folder = 0; + QListViewItemIterator l_it( m_moduleIndex ); + for ( ; l_it.current(); ++l_it ) { + folder = dynamic_cast(l_it.current()); + if (folder && folder->text(0) == parentName) + break; + } + if (folder) + folder->insertItem(item); + else + m_moduleIndex->insertItem(item); + m_itemsDict.remove(item); + break; + } + ++m_it; + } + if (m_initialized) + emit chosenModulesChanged(); +} diff --git a/bibletime/frontend/searchdialog/csearchdialogmodulechooser.h b/bibletime/frontend/searchdialog/csearchdialogmodulechooser.h new file mode 100644 index 0000000..c9b170a --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogmodulechooser.h @@ -0,0 +1,71 @@ +/*************************************************************************** + csearchdialogmodulechooser.h - description + ------------------- + begin : Fri Mar 30 2001 + copyright : (C) 2001 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGMODULECHOOSER_H +#define CSEARCHDIALOGMODULECHOOSER_H + +#include "backend/cswordmoduleinfo.h" +#include "frontend/cpointers.h" + +//Qt includes +#include +#include + +class CGroupManager; +class QListBox; + +/** A widget to select the modules in which you want to search. + * @author The BibleTime team + */ +class CSearchDialogModuleChooser : public QWidget, public CPointers { + Q_OBJECT +public: + CSearchDialogModuleChooser(QWidget *parent, const char *name=0); + ~CSearchDialogModuleChooser(); + /** + * Sets the chosen modules for this object. + */ + void setChosenModules( ListCSwordModuleInfo& modules ); + /** + * Returns the modules chosen in this widget. + */ + ListCSwordModuleInfo getChosenModules(); + +private: + CGroupManager* m_moduleIndex; + QListBox* m_moduleList; + QPtrDict m_itemsDict; + bool m_initialized; + +private slots: // Private slots + /** + * Removes the selected item from the module list + */ + void removeCurrentItem(); + /** + * Adds the selected item to the list + */ + void addCurrentItem(); + +signals: // Signals + /** + * No descriptions + */ + void chosenModulesChanged(); +}; + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialogresult.cpp b/bibletime/frontend/searchdialog/csearchdialogresult.cpp new file mode 100644 index 0000000..0373527 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogresult.cpp @@ -0,0 +1,182 @@ +/*************************************************************************** + csearchdialogresult.cpp - description + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +//BIbleTime includes +#include "../../backend/cswordmodulesearch.h" +#include "../../whatsthisdef.h" +#include "csearchdialog.h" +#include "csearchdialogtext.h" +#include "csearchdialogresult.h" +#include "csearchdialogresultview.h" +#include "../ctoolclass.h" +#include "../cbtconfig.h" + +//Qt includes +#include +#include +#include +#include +#include +#include +#include +#include + +// KDE includes +#include +#include + +CSearchDialogResult::CSearchDialogResult(QWidget *parent, const char *name) : QWidget(parent, name) { + + QHBoxLayout* l = new QHBoxLayout(this); + m_splitter = new QSplitter(Qt::Vertical, this, "result splitter"); + l->addWidget(m_splitter); + + QWidget* d = new QWidget(m_splitter); + QHBoxLayout* main_layout = new QHBoxLayout(d); + QLabel *label1 = new QLabel(d, "label1"); + label1->setText( i18n( "Modules:" ) ); + label1->setAutoResize(true); + QLabel* label2 = new QLabel(d, "label2"); + label2->setText( i18n("Entries found:") ); + label2->setAutoResize(true); + + resultModuleTree = new CSearchDialogResultModuleView(d, "resultModuleTree"); + resultTree = new CSearchDialogResultView( d, "resultTree"); + + html_widget = new CHTMLWidget(true, m_splitter, "html_widget"); + html_widget->setMinimumHeight(80); + + connect(resultModuleTree, SIGNAL(moduleSelected(CSwordModuleInfo*)), resultTree, SLOT(setModule(CSwordModuleInfo*))); + connect(resultTree, SIGNAL(keySelected(const QString)), this, SLOT(updatePreview(const QString))); + + QVBoxLayout* layout_1 = new QVBoxLayout(); + QVBoxLayout* layout_2 = new QVBoxLayout(); + + layout_1->addWidget(label1); + layout_1->addWidget(resultModuleTree); + + layout_2->addWidget(label2); + layout_2->addWidget(resultTree, 5); + + main_layout->addLayout(layout_1); + main_layout->addSpacing(2); + main_layout->addLayout(layout_2); +} + +void CSearchDialogResult::setModuleList(ListCSwordModuleInfo& modules) { + moduleList = modules; + + resultModuleTree->setModuleList(moduleList); + resultModuleTree->clear(); + resultModuleTree->setupTree(); + + resultTree->clear(); +} + + +/** preview items data in the HTML previewer */ +void CSearchDialogResult::updatePreview(const QString newText) { + qDebug("CSearchDialogResult::updatePreview(const QString newText) "); + QString text = newText; + //find text page + QString searchedText; + CSearchDialogText* textPart = 0; + for (QObject* w = parent(); w; w = w->parent()) { + if (w->isA("CSearchDialog")) { + CSearchDialog* dlg = dynamic_cast(w); + searchedText = dlg->getSearchedText().stripWhiteSpace(); + textPart = dlg->m_searchText; + break; + } + } + + const QString part1( ""); + const QString part2(""); + const int insertLength(part1.length()+part2.length()); + + int searchType(textPart->getSearchType()); + if (searchType & CSwordModuleSearch::exactPhrase) { + for (int pos = 0 ; pos != -1;){ + pos = text.find(searchedText,pos,textPart->isCaseSensitive()); + if (pos!=-1 && !CToolClass::inHTMLTag(pos, text)) { //something was found + text.insert(pos + searchedText.length(),part2); + text.insert(pos, part1); + pos += searchedText.length() + insertLength; + } + } + } + else if (searchType & CSwordModuleSearch::multipleWords) { + QStringList searchedWords; + int wordIndex = 0; + QString word = QString::null; + while (!(word = KStringHandler::word(searchedText, wordIndex)).isEmpty()) { + searchedWords.append(word); + ++wordIndex; + } + + QString currentWord; + for (unsigned int i=0; i < searchedWords.count(); i++) { + currentWord = searchedWords[i]; + int count = text.contains(currentWord, textPart->isCaseSensitive()); + int pos = 0; + int i2 = 0; + while (i2 < count) { + pos = text.find(currentWord,pos?pos+1:0, textPart->isCaseSensitive()); + if (pos!=-1 && !CToolClass::inHTMLTag(pos, text)) { //something was found + + text.insert(pos + currentWord.length(), part2); + text.insert(pos, part1); + + pos += currentWord.length() + insertLength; + } + ++i2; + } + } + } + else if (searchType & CSwordModuleSearch::regExp) { + QRegExp regExp(searchedText); + regExp.setCaseSensitive( textPart->isCaseSensitive() ); + int matchLength = 0; + for (int pos = 0; pos != -1;){ + pos = regExp.match(text,pos,&matchLength); + if (pos!=-1 && matchLength > 0 && !CToolClass::inHTMLTag(pos, text)) { + text.insert(pos + matchLength, part2); + text.insert(pos, part1); + pos += matchLength + insertLength; + } + } + } + + //module is Unicode-based + if (resultModuleTree->getCurrentModule()->isUnicode() ) { + const QFont f = CBTConfig::get( CBTConfig::unicode); + text = QString::fromLatin1("%3").arg(f.family()).arg(f.pointSize()).arg(text); + } + html_widget->setText( + QString::fromLatin1("%1 (%2)

%3") + .arg(resultTree->currentText()) + .arg((resultModuleTree->getCurrentModule()) ? resultModuleTree->getCurrentModule()->config(CSwordModuleInfo::Description) : QString::fromLatin1("%1").arg(i18n("module not set")) ) + .arg(text) + ); +} + +void CSearchDialogResult::clearResult() { + resultTree->clear(); + resultModuleTree->clear(); + html_widget->setText(""); +} diff --git a/bibletime/frontend/searchdialog/csearchdialogresult.h b/bibletime/frontend/searchdialog/csearchdialogresult.h new file mode 100644 index 0000000..a5b1271 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogresult.h @@ -0,0 +1,66 @@ +/*************************************************************************** + csearchdialogresult.h - description + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGRESULT_H +#define CSEARCHDIALOGRESULT_H + +#include + +#include "backend/cswordmoduleinfo.h" +#include "frontend/chtmlwidget.h" + +class CSearchDialog; +class CSearchDialogResultModuleView; +class CSearchDialogResultView; +class CSearchResultItem; + +class QSplitter; + +class CSearchDialogResult : public QWidget +{ + Q_OBJECT + friend class CSearchDialog; +public: + /** + * Standard constructor + */ + CSearchDialogResult(QWidget *parent = 0, const char *name = 0); + /** + * Sets the module list and clears the result list. + */ + void setModuleList(ListCSwordModuleInfo& moduleList); + /** + * Removes the listed module items and the current search result from the lists + */ + void clearResult(); + +public slots: + /** + * Updates the preview using the parameter as new key. + */ + void updatePreview(const QString); + +private: + ListCSwordModuleInfo moduleList; + CSearchDialogResultModuleView *resultModuleTree; + CSearchDialogResultView *resultTree; + CHTMLWidget *html_widget; + QSplitter* m_splitter; +}; + + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialogresultview.cpp b/bibletime/frontend/searchdialog/csearchdialogresultview.cpp new file mode 100644 index 0000000..bb66330 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogresultview.cpp @@ -0,0 +1,437 @@ +/*************************************************************************** + csearchdialogresultview.cpp - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//own includes +#include "csearchdialogresultview.h" +#include "csearchdialog.h" +#include "../../resource.h" +#include "../../whatsthisdef.h" +#include "../../tooltipdef.h" +#include "../../backend/cswordbiblemoduleinfo.h" +#include "../../backend/cswordlexiconmoduleinfo.h" +#include "../../backend/cswordversekey.h" +#include "../../backend/cswordldkey.h" +#include "../../backend/creferencemanager.h" +#include "../cexportmanager.h" +#include "../ctoolclass.h" +#include "../cbtconfig.h" +#include "../../printing/cprintitem.h" +#include "../../printing/cprinter.h" + +#include "../../util/scoped_resource.h" + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include +#include +#include +#include +#include + +//Sword includes +#include +#include + +CSearchDialogResultModuleView::CSearchDialogResultModuleView(QWidget *parent, const char *name) + : QListView ( parent, name ) { + initView(); + adjustSize(); +} + +CSearchDialogResultModuleView::~CSearchDialogResultModuleView() { + qDebug("CSearchDialogResultModuleView::~CSearchDialogResultModuleView()"); +} + +/** Initializes the tree of this ResultView */ +void CSearchDialogResultModuleView::setupTree() { + ListKey moduleSearchResult; + QListViewItem *module = 0; + + for (moduleList.first(); moduleList.current(); moduleList.next()) { + moduleSearchResult = moduleList.current()->searchResult(); + module = new QListViewItem(this, QString("%1 [%2]").arg( moduleList.current()->name() ).arg( moduleSearchResult.Count() )); + module->setPixmap(0,CToolClass::getIconForModule(moduleList.current()) ); + } + setFixedWidth( sizeHint().width() ); +// resize(sizeHint()); +} + +void CSearchDialogResultModuleView::viewportMousePressEvent(QMouseEvent *e) { + qDebug("CSearchDialogResultModuleView::viewportMousePressEvent"); + QListView::viewportMousePressEvent(e); + + m_currentItem = (QListViewItem*)itemAt(e->pos()); + if (!m_currentItem) + { + qDebug("item is NULL"); + return; + } + if ((e->state() & ControlButton) || (e->state() & ShiftButton)) + return; + for (moduleList.first();moduleList.current();moduleList.next()){ + QString modName = m_currentItem->text(0); + modName = modName.left( modName.find(" [") ); + m_currentModule = backend()->findModuleByName(modName); + if (m_currentModule) + emit moduleSelected(m_currentModule); + } + if (e->button() == RightButton) + m_popup->popup( mapToGlobal(e->pos()) ); +} + +/** Initializes this widget */ +void CSearchDialogResultModuleView::initView(){ + QWhatsThis::add(this, WT_SD_RESULT_MODULE_VIEW); + + setFocusPolicy(QWidget::WheelFocus); + setAllColumnsShowFocus( true ); + setRootIsDecorated( false ); + addColumn( i18n( "Modules" ), -1 ); + header()->hide(); + setSorting( -1 ); + + m_popup = new KPopupMenu(this); + + m_copyPopup = new KPopupMenu(m_popup); + m_copyPopup->insertItem(i18n("Search result"), this, SLOT(slotCopySearchResult())); + m_copyPopup->insertItem(i18n("Search result with text"), this, SLOT(slotCopySearchResultWithKeytext())); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Search result"), this, SLOT(printSearchResult())); + + m_savePopup = new KPopupMenu(m_popup); + m_savePopup->insertItem(i18n("Search result"), this, SLOT(slotSaveSearchResult())); + m_savePopup->insertItem(i18n("Search result with text"), this, SLOT(slotSaveSearchResultWithKeytext())); + + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY), i18n("Copy..."), m_copyPopup); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT), i18n("Add to printing queue..."), m_printPopup); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup); +} + +/** Returns the module belonging to the selected item. */ +CSwordModuleInfo* CSearchDialogResultModuleView::getCurrentModule() { + return m_currentModule; +} + +/** Reimplementation. Sets the cortrect QHeader width. */ +void CSearchDialogResultModuleView::resizeEvent( QResizeEvent* e){ + QListView::resizeEvent(e); + header()->resize( visibleWidth(), header()->height() ); +} + +/** Adds all items of the search result of this module to the printing queue of BibleTime. */ +void CSearchDialogResultModuleView::printSearchResult(){ + CExportManager::printKeyList( &(m_currentModule->searchResult()), m_currentModule, i18n("Appending keys to the printing queue ...") ); +} + +/** This function copies the search result into the clipboard */ +void CSearchDialogResultModuleView::slotCopySearchResult(){ + //get the searched text +// QString searchedText; +// for (QObject* w = parent(); w; w = w->parent()) { +// if (w->isA("CSearchDialog")) { +// CSearchDialog* dlg = (CSearchDialog*)w; +// searchedText = dlg->getSearchedText().stripWhiteSpace(); +// break; +// } +// } + CExportManager::copyKeyList(&m_currentModule->searchResult(), m_currentModule, i18n("Copying search result to clipboard..."), false); +} + +/** This slot saves the search result to disk. */ +void CSearchDialogResultModuleView::slotSaveSearchResult(){ + //get the searched text + QString searchedText; + for (QObject* w = parent(); w; w = w->parent()) { + if (w->isA("CSearchDialog")) { + CSearchDialog* dlg = dynamic_cast(w); + searchedText = dlg->getSearchedText().stripWhiteSpace(); + break; + } + } + ListKey& searchResult = m_currentModule->searchResult(); + CExportManager::saveKeyList(&searchResult, m_currentModule, i18n("Saving the search result ..."), false, true); +} + + +void CSearchDialogResultModuleView::slotCopySearchResultWithKeytext(){ + //get the searched text + QString searchedText; + for (QObject* w = parent(); w; w = w->parent()) { + if (w->isA("CSearchDialog")) { + CSearchDialog* dlg = (CSearchDialog*)w; + searchedText = dlg->getSearchedText().stripWhiteSpace(); + break; + } + } + CExportManager::copyKeyList(&m_currentModule->searchResult(), m_currentModule, i18n("Copying search result to clipboard..."), true ); +} + +/** This slot saves the search result to disk. */ +void CSearchDialogResultModuleView::slotSaveSearchResultWithKeytext(){ + //get the searched text + QString searchedText; + for (QObject* w = parent(); w; w = w->parent()) { + if (w->isA("CSearchDialog")) { + CSearchDialog* dlg = (CSearchDialog*)w; + searchedText = dlg->getSearchedText().stripWhiteSpace(); + break; + } + } + CExportManager::saveKeyList(&m_currentModule->searchResult(), m_currentModule,i18n("Saving the search result..."), true, true); +} + +//------------class CSearchDialogResultView-----------// +CSearchDialogResultView::CSearchDialogResultView(QWidget *parent, const char *name) + : QListBox(parent,name), + m_module(0), + m_currentItem(0), + m_pressedPos() +{ + initView(); + initConnections(); +} + +CSearchDialogResultView::~CSearchDialogResultView() { +} + +/** Initializes the tree of this ResultView */ +void CSearchDialogResultView::setupTree() { + ListKey& moduleSearchResult = m_module->searchResult(); + const int count = moduleSearchResult.Count(); + + clear(); + setUpdatesEnabled(false); + for (int index = 0; index < count; index++) { + insertItem( QString::fromLocal8Bit((const char*)*moduleSearchResult.GetElement(index)), -1); + } + setUpdatesEnabled(true); +} + +/** Initializes the connections of this class */ +void CSearchDialogResultView::initConnections() { + connect(m_popup, SIGNAL(aboutToShow()), + this, SLOT(popupAboutToShow())); +// connect(this, SIGNAL(pressed(QListBoxItem*)), +// this, SLOT(mousePressed(QListBoxItem*))); + + connect(this, SIGNAL(currentChanged(QListBoxItem*)), + this, SLOT(mousePressed(QListBoxItem*))); + + connect(this, SIGNAL(rightButtonPressed(QListBoxItem*, const QPoint&)), + this, SLOT(rightButtonPressed(QListBoxItem*, const QPoint&))); +} + +/** Initializes this widget */ +void CSearchDialogResultView::initView(){ + QWhatsThis::add(this, WT_SD_RESULT_RESULT_VIEW); + setSelectionMode(QListBox::Extended); + + m_popup = new KPopupMenu(this); + m_copyPopup = new KPopupMenu(m_popup); + m_copyPopup->insertItem(i18n("Key"), this, SLOT(slotCopyCurrent())); + m_copyPopup->insertItem(i18n("Key with text"), this, SLOT(slotCopyCurrentWithKeytext())); + + m_printPopup = new KPopupMenu(m_popup); + m_printPopup->insertItem(i18n("Key with text"), this, SLOT(printItem())); + + m_savePopup = new KPopupMenu(m_popup); + m_savePopup->insertItem(i18n("Key"), this, SLOT(slotSaveCurrent())); + m_savePopup->insertItem(i18n("Key with text"), this, SLOT(slotSaveCurrentWithKeytext())); + + m_popup->insertItem(SmallIcon(ICON_EDIT_COPY), i18n("Copy..."), m_copyPopup); + m_popup->insertItem(SmallIcon(ICON_FILE_PRINT),i18n("Add to printing queue..."),m_printPopup); + m_popup->insertItem(SmallIcon(ICON_FILE_SAVE), i18n("Save..."), m_savePopup); + + setFocusPolicy(QWidget::WheelFocus); +} + + +/** Is called before the menu is shown */ +void CSearchDialogResultView::popupAboutToShow(){ +} + +/** */ +void CSearchDialogResultView::viewportMouseMoveEvent(QMouseEvent *e){ +// qDebug("CSearchDialogResultView::viewportMouseMoveEvent(QMouseEvent *e)"); + if ( !(e->state() & QMouseEvent::LeftButton) ){ + QListBox::viewportMouseMoveEvent(e); + return; + } + + //Is it time to start a drag? + if (m_currentItem && (abs(e->pos().x() - m_pressedPos.x()) > KGlobalSettings::dndEventDelay() || + abs(e->pos().y() - m_pressedPos.y()) > KGlobalSettings::dndEventDelay()) ) + { + QString mod; + QString ref; + mod = m_module->name(); + ref = m_currentItem->text(); + + QTextDrag *d = new QTextDrag(CReferenceManager::encodeReference(mod,ref), viewport()); + if (d){ + d->setSubtype(REFERENCE); + d->setPixmap(REFERENCE_ICON_SMALL); + d->drag(); + return; + } + } + else + QListBox::viewportMouseMoveEvent(e); +} + +/** */ +void CSearchDialogResultView::printItem() { + QList list = selectedItems(); + if (!list.count()) + return; + for (list.first(); list.current(); list.next()) { + CExportManager::printKey(m_module,list.current()->text(),QString::null); + } +} + +/** This slot is called when the current item changed. */ +void CSearchDialogResultView::itemChanged(QListBoxItem* item){ + m_currentItem = item; +} + +/** Opens the popup menu. */ +void CSearchDialogResultView::rightButtonPressed( QListBoxItem* item, const QPoint& p){ + m_currentItem = item; + if (m_currentItem) { + mousePressed(item); + m_popup->popup(p); + } +} + +/** */ +void CSearchDialogResultView::mousePressed(QListBoxItem* item){ + qDebug("CSearchDialogResultView::mousePressed(QListBoxItem* item)"); + if (!( m_currentItem = item )) + return; + QString text = QString::null; + + //we have to set the standard module view options for the module!! + util::scoped_ptr key(CSwordKey::createInstance(m_module)); + if ( key ) { + backend()->setFilterOptions( CBTConfig::getFilterOptionDefaults() ); + key->key(item->text()); + emit keySelected(key->renderedText()); + } +} + +/** This slot copies the current active item into the clipboard. */ +void CSearchDialogResultView::slotCopyCurrent(){ + QString text; + QList list = selectedItems(); + for (list.first(); list.current(); list.next()) { + text += list.current()->text()+"\n"; + } + KApplication::clipboard()->setText(text); +} + +/** This slot copies the current active item into the clipboard. */ +void CSearchDialogResultView::slotCopyCurrentWithKeytext(){ + QList list = selectedItems(); + QString text; + QString keyText, keyName; + for (list.first(); list.current(); list.next()) { + CSwordKey* key = CSwordKey::createInstance(m_module); + if (!key) + continue; + + key->key(list.current()->text()); + keyName = key->key(); + keyText = key->strippedText(); + + delete key; + + text += QString("%1\n%2\n\n").arg(keyName).arg(keyText); + } + + KApplication::clipboard()->setText(text); +} + +/** This slot copies the current active item into the clipboard. */ +void CSearchDialogResultView::slotSaveCurrent(){ + const QString file = KFileDialog::getSaveFileName (QString::null, i18n("*.txt | Text files\n *.* | All files (*.*)"), 0, i18n("Save key ...")); + if (!file.isNull()) { + QList list = selectedItems(); + QString text; + for (list.first(); list.current(); list.next()) + text += list.current()->text()+"\n"; + CToolClass::savePlainFile(file, text); + } +} + +/** This slot copies the current active item into the clipboard. */ +void CSearchDialogResultView::slotSaveCurrentWithKeytext(){ + QList list = selectedItems(); + QString text; + QString keyText, keyName; + for (list.first(); list.current(); list.next()) { + CSwordKey* key = CSwordKey::createInstance(m_module); + if (!key) + continue; + + key->key(list.current()->text()); + keyName = key->key(); + keyText = key->strippedText(); + + delete key; + + text += QString("%1\n%2\n\n").arg(keyName).arg(keyText); + } + + const QString file = KFileDialog::getSaveFileName (QString::null, i18n("*.txt | Text files\n *.* | All files (*.*)"), 0, i18n("Save key ...")); + if (!file.isNull()) { + CToolClass::savePlainFile( file, text); + } +} + +/** Returns the selected items of this listbox. */ +QList CSearchDialogResultView::selectedItems(){ + QList list; + QListBoxItem* item = firstItem(); + while (item) { + if (item->selected()) + list.append(item); + item = item->next(); + } + return list; +} + +/** Reimplementation to make Drag&Drop work. */ +void CSearchDialogResultView::viewportMousePressEvent( QMouseEvent* e ){ + qDebug("CSearchDialogResultView::viewportMousePressEvent( QMouseEvent* e )"); + m_pressedPos = e->pos(); + QListBox::viewportMousePressEvent(e); +} diff --git a/bibletime/frontend/searchdialog/csearchdialogresultview.h b/bibletime/frontend/searchdialog/csearchdialogresultview.h new file mode 100644 index 0000000..107fe0c --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogresultview.h @@ -0,0 +1,200 @@ +/*************************************************************************** + csearchdialogresultview.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGRESULTVIEW_H +#define CSEARCHDIALOGRESULTVIEW_H + +//BibleTime includes +#include "../../backend/cswordmoduleinfo.h" +#include "../cpointers.h" + +//QT includes +#include +#include +#include +#include + +class KPopupMenu; +class CSearchDialogResultItem; +class CSearchDialog; +class KAction; + +/** + * Handles the search result + * @author The BibleTime Team + */ +class CSearchDialogResultModuleView : public QListView, public CPointers { + Q_OBJECT +public: + CSearchDialogResultModuleView(QWidget *parent=0, const char *name=0); + virtual ~CSearchDialogResultModuleView(); + /** + * Sets te modulelist displayed in this module tree. + */ + void setModuleList(ListCSwordModuleInfo& modules) { this->moduleList = modules; }; + /** + * Initializes the tree of this CGroupmanager + */ + void setupTree(); + /** + * Initiales the view of this widget. + */ + void initView(); + /** + * Returns the module belonging to the selected item. + */ + CSwordModuleInfo* getCurrentModule(); + /** + * Reimplementation. Sets the cortrect QHeader width. + */ + void resizeEvent( QResizeEvent* e); + +protected: + void viewportMousePressEvent(QMouseEvent *e); + +protected slots: // Protected slots + /** + * Adds all items of the search result of this module + * to the printing queue of BibleTime. + */ + void printSearchResult(); + /** + * This slot saves the search result to disk. + */ + void slotSaveSearchResult(); + /** + * This function copies the search result into the clipboard + */ + void slotCopySearchResult(); + /** + * This slot saves the search result to disk. + */ + void slotSaveSearchResultWithKeytext(); + /** + * This function copies the search result into the clipboard + */ + void slotCopySearchResultWithKeytext(); + +signals: // Signals + /** + * Is emitted when a module in the tree was selected. + */ + void moduleSelected(CSwordModuleInfo*); + +private: + ListCSwordModuleInfo moduleList; + QListViewItem* m_currentItem; + CSwordModuleInfo* m_currentModule; + + KPopupMenu* m_popup; + KPopupMenu* m_copyPopup; + KPopupMenu* m_savePopup; + KPopupMenu* m_printPopup; +}; + + +class CSearchDialogResultView : public QListBox, public CPointers { + Q_OBJECT +public: + CSearchDialogResultView(QWidget *parent=0, const char *name=0); + virtual ~CSearchDialogResultView(); + /** + * Initializes the tree of this CGroupmanager + */ + void setupTree(); + /** + * Initialzes the view of this widget. + */ + void initView(); + +protected: + /** + * Initializes the connections of this class + */ + void initConnections(); + void viewportMouseMoveEvent(QMouseEvent *e); + /** + * Returns the selected items of this listbox. + */ + QList selectedItems(); + /** + Reimplementation to make Drag&Drop work. + */ + virtual void viewportMousePressEvent( QMouseEvent* e ); + +public slots: + /** + * Appends the selected item to prinint queue + */ + void printItem(); + /** + * + */ + void setModule(CSwordModuleInfo *module) { if (module) m_module = module; setupTree();}; + +protected slots: // Protected slots + /** + * Is called before the menu is shown + */ + void popupAboutToShow(); + /** + * This slot is called when the current item changed. + */ + void itemChanged(QListBoxItem*); + /** + * Reimplementation from QListBox + */ + void mousePressed(QListBoxItem*); + /** + * Opens the popup menu. + */ + void rightButtonPressed( QListBoxItem*, const QPoint&); + /** + * This slot copies the current active item into the clipboard. + */ + void slotCopyCurrent(); + /** + * This slot copies the current active item into the clipboard. + */ + void slotCopyCurrentWithKeytext(); + /** + * This slot copies the current active item into the clipboard. + */ + void slotSaveCurrent(); + /** + * This slot copies the current active item into the clipboard. + */ + void slotSaveCurrentWithKeytext(); + +private: + KPopupMenu *m_popup; + KPopupMenu* m_copyPopup; + KPopupMenu* m_savePopup; + KPopupMenu* m_printPopup; + + CSwordModuleInfo* m_module; + QListBoxItem *m_currentItem; + QPoint m_pressedPos; + +signals: // Signals + /** + * Is emitted when a key in the tree was selected. + */ + void keySelected(const QString); +}; + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialogscope.cpp b/bibletime/frontend/searchdialog/csearchdialogscope.cpp new file mode 100644 index 0000000..38203aa --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogscope.cpp @@ -0,0 +1,373 @@ +/*************************************************************************** + csearchdialogscope.cpp - description + ------------------- + begin : Sun Nov 12 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "csearchdialogscope.h" +#include "../../whatsthisdef.h" +#include "../../tooltipdef.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "versekey.h" + +CSearchDialogScopeChooser::CSearchDialogScopeChooser(QWidget *parent, const char *name ) : QWidget(parent,name) { + + QHBoxLayout* HLayout = new QHBoxLayout(this); + + noScope = new QRadioButton(i18n("No scope" ),this); + QToolTip::add(noScope, TT_SD_SCOPE_NO_SCOPE); + QWhatsThis::add(noScope, WT_SD_SCOPE_NO_SCOPE); + + lastResultScope = new QRadioButton(i18n("Last result"),this); + QToolTip::add(lastResultScope, TT_SD_SCOPE_LAST_RESULT); + QWhatsThis::add(lastResultScope, WT_SD_SCOPE_LAST_RESULT); + + useScope = new QRadioButton(i18n("Use scope" ),this); + QToolTip::add(useScope, TT_SD_SCOPE_OWN_SCOPE); + QWhatsThis::add(useScope, WT_SD_SCOPE_OWN_SCOPE); + + group = new QButtonGroup(); + group->insert(noScope); + group->insert(lastResultScope); + group->insert(useScope); + noScope->setChecked(true); + + RangeChooser = new QComboBox(this); + RangeLabel = new QLabel(RangeChooser, i18n("Choose custom range"),this); + QToolTip::add(RangeChooser, TT_SD_SCOPE_CHOOSER); + QWhatsThis::add(RangeChooser, WT_SD_SCOPE_CHOOSER); + + editButton = new QPushButton(i18n("Edit ranges"),this); + editButton->setFixedWidth(editButton->sizeHint().width()); + QToolTip::add(editButton, TT_SD_SCOPE_EDIT_SCOPE_BUTTON); + QWhatsThis::add(editButton, WT_SD_SCOPE_EDIT_SCOPE_BUTTON); + connect(editButton,SIGNAL(clicked()),this,SLOT(editButtonClicked())); + connect(group,SIGNAL(clicked(int)),this,SLOT(scopeChanged())); + + QVBoxLayout* VLayout_1 = new QVBoxLayout(HLayout); + VLayout_1->addWidget(noScope, Qt::AlignTop); + VLayout_1->addWidget(lastResultScope, Qt::AlignTop); + VLayout_1->addWidget(useScope, Qt::AlignTop); + + HLayout->addStretch(); + + QVBoxLayout* VLayout_2 = new QVBoxLayout(HLayout); + VLayout_2->addWidget(RangeLabel); + VLayout_2->addWidget(RangeChooser); + VLayout_2->addWidget(editButton); + + HLayout->addStretch(); + + config = new KSimpleConfig("bt-custom_ranges", false); + //we use this to use the global standard + config->setGroup(QString::fromLatin1("main")); + if (config->readBoolEntry("first usage", true)) { + config->writeEntry("first usage", false); + config->setGroup(QString::fromLatin1("custom ranges")); + + QMap entryMap; + entryMap.insert(i18n("Old testament"), QString::fromLatin1("Gen - Mal")); + entryMap.insert(i18n("Moses/Pentateuch/Torah"), QString::fromLatin1("Gen - Deut")); + entryMap.insert(i18n("History"), QString::fromLatin1("Jos - Est")); + entryMap.insert(i18n("Prophets"), QString::fromLatin1("Isa - Mal")); + entryMap.insert(i18n("New testament"), QString::fromLatin1("Mat - Rev")); + entryMap.insert(i18n("Gospels"), QString::fromLatin1("Mat - Joh")); + entryMap.insert(i18n("Letters/Epistels"), QString::fromLatin1("Rom - Jude")); + entryMap.insert(i18n("Paul's Epistels"), QString::fromLatin1("Rom - Phile")); + + QMap::Iterator it; + + for ( it = entryMap.begin(); it != entryMap.end(); ++it) { + if (it.key() != QString::null) { + QString text = QString::null; + ListKey lk = VerseKey().ParseVerseList(it.data().local8Bit(),"Genesis 1:1",true); + for (int i = 0; i < lk.Count(); ++i) { + if (i) + text.append(";"); + VerseKey* element = dynamic_cast(lk.GetElement(i)); + if (element) + text += QString::fromLatin1("%1 - %2") + .arg( QString::fromLocal8Bit((const char*)element->LowerBound()) ) + .arg( QString::fromLocal8Bit((const char*)element->UpperBound()) ); + else + text += QString::fromLocal8Bit((const char*)*lk.GetElement(i)); + } + config->writeEntry(it.key(),text); + } + } + } + + config->setGroup(QString("custom ranges")); + QMap entryMap = config->entryMap(QString("custom ranges")); + QMap::Iterator it; + for ( it = entryMap.begin(); it != entryMap.end(); ++it) + if (it.key() != QString::null) + RangeChooser->insertItem( it.key() ); + scopeChanged(); //set initial state +} + +ListKey CSearchDialogScopeChooser::getScope(){ + return VerseKey().ParseVerseList( config->readEntry( RangeChooser->currentText() ).local8Bit(), "Genesis 1:1", true); +} + +const CSwordModuleSearch::scopeType CSearchDialogScopeChooser::getScopeType() const { + if (noScope->isChecked()) return CSwordModuleSearch::Scope_NoScope; + if (lastResultScope->isChecked()) return CSwordModuleSearch::Scope_LastSearch; + if (useScope->isChecked()) return CSwordModuleSearch::Scope_Bounds; + + return CSwordModuleSearch::Scope_NoScope; +} + +const QString CSearchDialogScopeChooser::getScopeTypeString() { + if (noScope->isChecked()) return noScope->text(); + if (lastResultScope->isChecked()) return lastResultScope->text(); + if (useScope->isChecked()) return useScope->text(); + + return noScope->text(); +} +void CSearchDialogScopeChooser::editButtonClicked(){ + CSearchDialogScopeEdit *dialog = new CSearchDialogScopeEdit(this->config, this, "ranges dialog"); + dialog->exec(); + + //refresh the rangechooser + RangeChooser->clear(); + + QMap entryMap = config->entryMap(QString("custom ranges")); + QMap::Iterator it; + for ( it = entryMap.begin(); it != entryMap.end(); ++it) { + qDebug(it.key().local8Bit()); + if (it.key() != QString::null) + RangeChooser->insertItem( it.key() ); + } +} + +/** No descriptions */ +void CSearchDialogScopeChooser::scopeChanged(){ + RangeLabel->setEnabled (getScopeType() == CSwordModuleSearch::Scope_Bounds ? true : false); + RangeChooser->setEnabled(getScopeType() == CSwordModuleSearch::Scope_Bounds ? true : false); + editButton->setEnabled (getScopeType() == CSwordModuleSearch::Scope_Bounds ? true : false); +} + + +CSearchDialogScopeChooser::~CSearchDialogScopeChooser(){ + if (config) { + config->setGroup(QString("main")); + config->writeEntry("firstUsage", true); + config->sync(); + delete config; + } +} + +CSearchDialogScopeEdit::~CSearchDialogScopeEdit(){ + //not delete config, because it points to the parent config +} + +CSearchDialogScopeEdit::CSearchDialogScopeEdit(KSimpleConfig *parentconfig, QWidget *parent, const char *name ) : QDialog(parent,name,/*modal*/true) { + + QGridLayout* Layout = new QGridLayout(this, 5, 5, 5, 0); + + RangeChooser = new QComboBox(this); + QToolTip::add(RangeChooser, TT_SD_SCOPE_CHOOSER); + QWhatsThis::add(RangeChooser, WT_SD_SCOPE_CHOOSER); + RangeChooser->setEnabled(false); + + RangeEdit = new QLineEdit(this); + QToolTip::add(RangeChooser, TT_SD_SCOPE_EDIT_LINE); + QWhatsThis::add(RangeChooser, WT_SD_SCOPE_EDIT_LINE); + RangeEdit->setEnabled(false); + + RangeDisp = new QListBox(this); + QToolTip::add(RangeDisp, TT_SD_SCOPE_PARSED_LIST); + QWhatsThis::add(RangeDisp, WT_SD_SCOPE_PARSED_LIST); + + newButton = new QPushButton(i18n("Add"),this); + QToolTip::add(newButton, TT_SD_SCOPE_NEW_SCOPE); + QWhatsThis::add(newButton, WT_SD_SCOPE_NEW_SCOPE); + + deleteButton= new QPushButton(i18n("Delete"),this); + deleteButton->setEnabled(false); + QToolTip::add(deleteButton, TT_SD_SCOPE_DELETE_SCOPE); + QWhatsThis::add(deleteButton, WT_SD_SCOPE_DELETE_SCOPE); + + closeButton = new QPushButton(i18n("Close"),this); + QToolTip::add(closeButton, TT_SD_SCOPE_CLOSE); + QWhatsThis::add(closeButton, WT_SD_SCOPE_CLOSE); + + QLabel* RangeLabel = new QLabel(i18n("Choose custom range"),this); + QLabel* RangeEditLabel = new QLabel(i18n("Define range text"),this); + QLabel* RangeDispLabel = new QLabel(i18n("Range parsing results"),this); + + + Layout->addMultiCellWidget(RangeLabel, 0,0,0,2); + Layout->addMultiCellWidget(RangeChooser,1,1,0,2); + + Layout->addMultiCellWidget(RangeEditLabel,0,0,4,4); + Layout->addMultiCellWidget(RangeEdit, 1,1,4,4); + + Layout->addMultiCellWidget(RangeDispLabel,2,2,4,4); + Layout->addMultiCellWidget(RangeDisp, 3,4,4,4); + + Layout->addMultiCellWidget(newButton, 3,3,0,0, Qt::AlignCenter); + Layout->addMultiCellWidget(deleteButton,3,3,2,2, Qt::AlignCenter); + Layout->addMultiCellWidget(closeButton, 4,4,0,2, Qt::AlignCenter); + + Layout->addRowSpacing(0, RangeLabel->sizeHint().height()); + Layout->addRowSpacing(1, RangeChooser->sizeHint().height()); + Layout->addRowSpacing(2, RangeDispLabel->sizeHint().height()); + Layout->addRowSpacing(3, newButton->sizeHint().height()); + Layout->addRowSpacing(4, RangeEdit->sizeHint().height() * 4);// 4 lines + Layout->setRowStretch(4, 1); //only 4 will be stretched + + Layout->addColSpacing(0, newButton->sizeHint().width()); + Layout->addColSpacing(1, 2); + Layout->addColSpacing(2, deleteButton->sizeHint().width()); + Layout->addColSpacing(3, 10); + Layout->addColSpacing(4, RangeLabel->sizeHint().width() * 2); + Layout->setColStretch(4, 1);//only 4 ill be stretched + + + connect(newButton,SIGNAL(clicked()), + this,SLOT(NewButtonClicked())); + connect(deleteButton, SIGNAL(clicked()), + this,SLOT(DeleteButtonClicked())); + connect(closeButton, SIGNAL(clicked()), + this,SLOT(closeButtonClicked())); + connect(RangeEdit,SIGNAL(textChanged(const QString &)), + this,SLOT(RangeEditTextChanged(const QString &))); + connect(RangeChooser,SIGNAL(activated(int)), + this,SLOT(RangeChooserActivated(int))); + + + config = parentconfig; + + config->setGroup(QString("custom ranges")); + QMap entryMap = config->entryMap(QString("custom ranges")); + QMap::Iterator it; + for ( it = entryMap.begin(); it != entryMap.end(); ++it) { + qDebug(it.key().local8Bit()); + if (it.key() != QString::null) + RangeChooser->insertItem( it.key() ); + } + if (RangeChooser->count()>0){ + RangeChooser->setEnabled(true); + RangeEdit->setEnabled(true); + deleteButton->setEnabled(true); + RangeEdit->setFocus(); + emit RangeChooserActivated(0); + } +} + +void CSearchDialogScopeEdit::NewButtonClicked(){ + bool ok = false; + QString text = QInputDialog::getText( i18n( "Range name" ), i18n( "Please enter a name for the new range" ), QString::null, &ok, this ); + if (!ok) + return; + + if ( !text.isEmpty() /*&& !config->hasKey( text )*/ ) + config->writeEntry(text, QString::null);// user entered something and pressed ok + //refresh the rangechooser + RangeChooser->clear(); + + QMap entryMap = config->entryMap(QString("custom ranges")); + QMap::Iterator it; + for ( it = entryMap.begin(); it != entryMap.end(); ++it) { + qDebug(it.key().local8Bit()); + if (it.key() != QString::null) + RangeChooser->insertItem( it.key() ); + } + if (RangeChooser->count()>0){ + RangeChooser->setEnabled(true); + RangeEdit->setEnabled(true); + deleteButton->setEnabled(true); + RangeChooser->setCurrentItem( RangeChooser->count()-1 ); + emit RangeChooserActivated( RangeChooser->currentItem() ); + RangeEdit->setFocus(); + } +} + +void CSearchDialogScopeEdit::DeleteButtonClicked(void){ + int index = RangeChooser->currentItem(); + QString text=RangeChooser->currentText(); + if ( !text.isEmpty() ){ + config->deleteEntry(text,false); + + //refresh the rangechooser + RangeChooser->clear(); + + QMap entryMap = config->entryMap(QString("custom ranges")); + QMap::Iterator it; + for ( it = entryMap.begin(); it != entryMap.end(); ++it) { + qDebug(it.key().local8Bit()); + if (it.key() != QString::null) + RangeChooser->insertItem( it.key() ); + } + if (RangeChooser->count()>0){ + RangeChooser->setCurrentItem( (index>0)?(index-1):0 ); + emit RangeChooserActivated( RangeChooser->currentItem() ); + } + else{ + RangeChooser->setEnabled(false); + RangeEdit->setEnabled(false); + deleteButton->setEnabled(false); + //clear + RangeEdit->setText(QString::null); + RangeDisp->clear(); + + } + } +} + +void CSearchDialogScopeEdit::RangeChooserActivated(int index){ + QString value = config->readEntry(RangeChooser->text(index)); + RangeEdit->setText(value); + + //a workaround, maybe emitted twice, which is no problem + emit RangeEditTextChanged(value); +} + +void CSearchDialogScopeEdit::RangeEditTextChanged(const QString &text){ + config->writeEntry(RangeChooser->currentText(), text); + RangeDisp->clear(); + VerseKey key; + ListKey verses = key.ParseVerseList((const char*)text.local8Bit(), key, true); + for (int i = 0; i < verses.Count(); ++i) { + VerseKey* element = dynamic_cast(verses.GetElement(i)); + if (element) + RangeDisp->insertItem(QString("%1 - %2").arg(QString::fromLocal8Bit((const char*)element->LowerBound())).arg(QString::fromLocal8Bit((const char*)element->UpperBound()))); + else + RangeDisp->insertItem(QString::fromLocal8Bit((const char*)*verses.GetElement(i))); + } +} + + +/** No descriptions */ +void CSearchDialogScopeEdit::closeButtonClicked(){ + close(); +} diff --git a/bibletime/frontend/searchdialog/csearchdialogscope.h b/bibletime/frontend/searchdialog/csearchdialogscope.h new file mode 100644 index 0000000..c05f253 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogscope.h @@ -0,0 +1,98 @@ +/*************************************************************************** + csearchdialogscope.h - description + ------------------- + begin : Sun Nov 12 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGSCOPE_H +#define CSEARCHDIALOGSCOPE_H + +#include +#include + +#include +#include "../../backend/cswordmodulesearch.h" + +class QComboBox; +class QLineEdit; +class QPushButton; +class QListBox; +class QLabel; +class QRadioButton; +class QButtonGroup; +class KSimpleConfig; + +/** + * This class (CSearchDialogScope) provides the graphical user interface + * for the scope part of the searchdialog. + * It provides an easy to use interface with the following functions: + * + * -Possibility to define mltiple scopes for each module + * -Possibilty to define wheter we want to use no scope, + * the result of the last search as scope or an own set of ranges + * + * @author The BibleTime team + */ + + + +class CSearchDialogScopeChooser : public QWidget { + Q_OBJECT +public: + CSearchDialogScopeChooser(QWidget *parent, const char *name=0); + ~CSearchDialogScopeChooser(); + ListKey getScope(); + const CSwordModuleSearch::scopeType getScopeType() const; + const QString getScopeTypeString(); + +private: + QComboBox* RangeChooser; + QButtonGroup* group; + KSimpleConfig* config; + QRadioButton *noScope; + QRadioButton *lastResultScope; + QRadioButton *useScope; + QPushButton *editButton; + QLabel *RangeLabel; + +private slots: + void editButtonClicked(); + void scopeChanged(); +}; + +class CSearchDialogScopeEdit : public QDialog { + Q_OBJECT +public: + CSearchDialogScopeEdit(KSimpleConfig *config, QWidget *parent, const char *name=0); + ~CSearchDialogScopeEdit(); + +private: + QComboBox* RangeChooser; + QLineEdit* RangeEdit; + QListBox* RangeDisp; + KSimpleConfig* config; + QPushButton* newButton; + QPushButton* deleteButton; + QPushButton* closeButton; + +private slots: // Private slots + void NewButtonClicked(void); + void DeleteButtonClicked(void); + void RangeChooserActivated(int); + void RangeEditTextChanged(const QString &); + void closeButtonClicked(); +}; + + +#endif diff --git a/bibletime/frontend/searchdialog/csearchdialogtext.cpp b/bibletime/frontend/searchdialog/csearchdialogtext.cpp new file mode 100644 index 0000000..844e423 --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogtext.cpp @@ -0,0 +1,216 @@ +/*************************************************************************** + csearchdialogtext.cpp - description + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +//BibleTime includes +#include "csearchdialogtext.h" +#include "csearchdialogscope.h" +#include "../../whatsthisdef.h" +#include "../../tooltipdef.h" +#include "../../backend/cswordmodulesearch.h" +#include "../cbtconfig.h" + +//QT includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//KDE includes +#include +#include +#include +#include + + +CSearchDialogText::CSearchDialogText(QWidget *parent, const char *name) + : QWidget(parent, name, 48) +{ + /* the first main Group - search text, options etc.*/ + QGroupBox *textBox = new QGroupBox(2,Qt::Vertical,i18n("Search properties"),this,"textBox"); + + m_editCombo = new KHistoryCombo(textBox); + m_editCombo->setInsertionPolicy(QComboBox::AtTop); + m_editCombo->setMaxCount(25); + m_editCombo->setDuplicatesEnabled(false); + m_editCombo->setFocusPolicy(QWidget::StrongFocus); + m_editCombo->setFocus(); + connect( m_editCombo, SIGNAL( activated( const QString& )), m_editCombo, SLOT( addToHistory( const QString& ))); + connect( m_editCombo, SIGNAL(returnPressed ( const QString& )),m_editCombo, SLOT(addToHistory(const QString&)) ); + + QToolTip::add(m_editCombo, TT_SD_SEARCH_TEXT_EDIT); + QWhatsThis::add(m_editCombo, WT_SD_SEARCH_TEXT_EDIT); + + QHBox *settingsBox = new QHBox(textBox,"settingsBox"); + QVBox *radioBox = new QVBox(settingsBox,"radioBox"); + + m_radioMultipleWords = new QRadioButton( radioBox,"RadioButton_1"); + m_radioMultipleWords->setFocusPolicy(QWidget::TabFocus); + m_radioMultipleWords->setText( i18n( "Multiple Words" ) ); + m_radioMultipleWords->setAutoResize( true ); + m_radioMultipleWords->setChecked( true ); + QToolTip::add(m_radioMultipleWords, TT_SD_SEARCH_MULTIPLE_WORDS); + QWhatsThis::add(m_radioMultipleWords, WT_SD_SEARCH_MULTIPLE_WORDS); + + m_radioExactSearch = new QRadioButton(radioBox, "RadioButton_2"); + m_radioExactSearch->setFocusPolicy(QWidget::TabFocus); + m_radioExactSearch->setText( i18n( "Exact Search" ) ); + m_radioExactSearch->setAutoResize( true ); + QToolTip::add(m_radioExactSearch, TT_SD_SEARCH_EXACT_MATCH); + QWhatsThis::add(m_radioExactSearch, WT_SD_SEARCH_EXACT_MATCH); + + m_radioRegularExpression = new QRadioButton(radioBox, "RadioButton_3"); + m_radioRegularExpression->setFocusPolicy(QWidget::TabFocus); + m_radioRegularExpression->setText( i18n( "Regular Expression" ) ); + m_radioRegularExpression->setAutoResize( true ); + QToolTip::add(m_radioRegularExpression, TT_SD_SEARCH_REGEXP ); + QWhatsThis::add(m_radioRegularExpression, WT_SD_SEARCH_REGEXP ); + + /* this widget is hidden - it is only used for exclusive radio button management*/ + QVButtonGroup *bgroup1 = new QVButtonGroup(); + bgroup1->insert(m_radioMultipleWords); //they are automatically exclusive + bgroup1->insert(m_radioExactSearch); + bgroup1->insert(m_radioRegularExpression); + + m_checkCaseSensitive = new QCheckBox(settingsBox, "CheckBox_1"); + m_checkCaseSensitive->setFocusPolicy(QWidget::TabFocus); + m_checkCaseSensitive->setText( i18n("Case Sensitive") ); + QToolTip::add(m_checkCaseSensitive, TT_SD_SEARCH_CASE_SENSITIVE); + QWhatsThis::add(m_checkCaseSensitive, WT_SD_SEARCH_CASE_SENSITIVE); + + QGroupBox *scopeBox = new QGroupBox(2,Qt::Horizontal,i18n("Search scope"),this,"scopeBox"); + scopeChooser = new CSearchDialogScopeChooser(scopeBox, "scopeChooser"); + + /*the third main groupbox - progress indication */ + QGroupBox *progressBox = new QGroupBox(2,Qt::Horizontal,i18n("Search progress"),this,"progressBox"); + + /* manages the 2 buttons (vertically)*/ + QVBox *buttonBox = new QVBox(progressBox,"currentBox"); + + (void)new QLabel(m_editCombo,i18n("Current module:"),buttonBox); + (void)new QLabel(m_editCombo,i18n("Overall:"),buttonBox); + + /* manages the 2 bars (vertically) */ + QVBox *barBox = new QVBox(progressBox,"overallBox"); + m_currentProgressBar = new KProgress(0,100,0,Horizontal,barBox, "m_currentProgressBar"); + m_overallProgressBar = new KProgress(0,100,0,Horizontal,barBox, "m_overallProgressBar"); + + /* the main layout for the 3 groupboxes (vertical)*/ + QVBoxLayout* layout_1 = new QVBoxLayout( this ); + layout_1->setAutoAdd(false); + + textBox->setFixedHeight( textBox->sizeHint().height() ); + layout_1->addWidget( textBox,1, Qt::AlignTop ); + + layout_1->addWidget( scopeBox, Qt::AlignVCenter); + scopeBox->setFixedHeight( scopeBox->sizeHint().height() ); + + progressBox->setFixedHeight( progressBox->sizeHint().height() ); + layout_1->addWidget( progressBox,1,Qt::AlignBottom ); + + + readSettings(); +} + +CSearchDialogText::~CSearchDialogText() { + saveSettings(); +} + +const QString CSearchDialogText::getText() const { + return m_editCombo->currentText(); +} + +void CSearchDialogText::setText(const QString text){ + //only insert the item to the list if it's not yet included + bool found = false; + for (int i = 0; !found && i < m_editCombo->count(); ++i) { + if (m_editCombo->text(i) == text) + found = true; + } + if (!found) { + m_editCombo->insertItem(text,0); + m_editCombo->setCurrentItem(0); + } + m_editCombo->setFocus(); +} + +const bool CSearchDialogText::isCaseSensitive() { + return m_checkCaseSensitive->isChecked(); +} + +const int CSearchDialogText::getSearchType() { + int ret = CSwordModuleSearch::multipleWords; //"multiple words" is standard + if (m_radioExactSearch->isChecked()) { + ret = CSwordModuleSearch::exactPhrase; + } + else if (m_radioRegularExpression->isChecked()) { + ret = CSwordModuleSearch::regExp; + } + return ret; +} + +const QString CSearchDialogText::getSearchTypeString() { + QString ret = m_radioMultipleWords->text(); //"multiple words" is standard + if (m_radioExactSearch->isChecked()) { + ret = m_radioExactSearch->text(); + } + else if (m_radioRegularExpression->isChecked()) { + ret = m_radioRegularExpression->text(); + } + return ret; + +} +void CSearchDialogText::updateCurrentProgress(const unsigned short int percent){ + m_currentProgressBar->setValue(percent); +} + +void CSearchDialogText::updateOverallProgress(const unsigned short int percent){ + m_overallProgressBar->setValue(percent); +} + +/** resets the widgets. */ +void CSearchDialogText::reset(){ + m_currentProgressBar->setValue(0); + m_overallProgressBar->setValue(0); + m_editCombo->clear(); +} + +/** Reads settings to restore the last used state. */ +void CSearchDialogText::readSettings(){ + QStringList list = CBTConfig::get( CBTConfig::searchCompletionTexts ); + m_editCombo->completionObject()->setItems( list ); + + list = CBTConfig::get(CBTConfig::searchTexts); + m_editCombo->setHistoryItems( list ); +} + +void CSearchDialogText::saveSettings(){ + QStringList list = m_editCombo->completionObject()->items(); + CBTConfig::set(CBTConfig::searchCompletionTexts, list); + + list = m_editCombo->historyItems(); + CBTConfig::set(CBTConfig::searchTexts, list); +} diff --git a/bibletime/frontend/searchdialog/csearchdialogtext.h b/bibletime/frontend/searchdialog/csearchdialogtext.h new file mode 100644 index 0000000..e76b87f --- /dev/null +++ b/bibletime/frontend/searchdialog/csearchdialogtext.h @@ -0,0 +1,92 @@ +/*************************************************************************** + csearchdialogtext.h - description + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSEARCHDIALOGTEXT_H +#define CSEARCHDIALOGTEXT_H + +//Qt includes +#include + +class KHistoryCombo; +class QRadioButton; +class QCheckBox; +class KProgress; +class CSearchDialogScopeChooser; + +/** First tab page of the searchdialog. + * This class is the first tab pge of the searchdialog. + * It provides the interface to define the search text, the search scope and the modules to search in. + */ +class CSearchDialogText : public QWidget +{ + Q_OBJECT +public: + /** + * The constructor of the search dialog search tab page. + */ + CSearchDialogText(QWidget *parent = 0, const char *name = 0); + virtual ~CSearchDialogText(); + /** + * Returns the scopechooser + */ + CSearchDialogScopeChooser *scopeChooser; + /** + * Returns the text the user want to search for + */ + const QString getText() const; + /** + * Sets the search text + */ + void setText(const QString); + /** + * Returns true if case sensitive search is enabled. + */ + const bool isCaseSensitive(); + /** + * Returns the current type of search. + */ + const int getSearchType(); + /** + * Returns the string of current type of search. + */ + const QString getSearchTypeString(); + /** + * Updates the progress bar for the modulw which is searched at the moment + */ + void updateCurrentProgress(const unsigned short int); + /** + * Updates the progres bar which gives the progress for the whole search + */ + void updateOverallProgress(const unsigned short int); + /** + * Resets the widgets. + */ + void reset(); + +private: + void readSettings(); + void saveSettings(); + + KHistoryCombo *m_editCombo; + QRadioButton *m_radioMultipleWords; + QRadioButton *m_radioExactSearch; + QRadioButton *m_radioRegularExpression; + QCheckBox *m_checkCaseSensitive; + KProgress *m_currentProgressBar; + KProgress *m_overallProgressBar; +}; +#endif diff --git a/bibletime/frontend/thirdparty/Makefile.am b/bibletime/frontend/thirdparty/Makefile.am new file mode 100644 index 0000000..ba0e987 --- /dev/null +++ b/bibletime/frontend/thirdparty/Makefile.am @@ -0,0 +1,10 @@ +KDE_CXXFLAGS=-fno-rtti -fno-exceptions +SUBDIRS = qt3stuff +INCLUDES = $(all_includes) +libthirdparty_a_METASOURCES = AUTO +noinst_LIBRARIES = libthirdparty.a +libthirdparty_a_SOURCES = dummy.cpp +EXTRA_DIST = $(libthirdparty_a_SOURCES) + +dummy.cpp: + touch dummy.cpp diff --git a/bibletime/frontend/thirdparty/Makefile.in b/bibletime/frontend/thirdparty/Makefile.in new file mode 100644 index 0000000..06993a3 --- /dev/null +++ b/bibletime/frontend/thirdparty/Makefile.in @@ -0,0 +1,646 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_CXXFLAGS = -fno-rtti -fno-exceptions +SUBDIRS = qt3stuff +INCLUDES = $(all_includes) +#>- libthirdparty_a_METASOURCES = AUTO +noinst_LIBRARIES = libthirdparty.a +libthirdparty_a_SOURCES = dummy.cpp +EXTRA_DIST = $(libthirdparty_a_SOURCES) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libthirdparty_a_LIBADD = +#>- libthirdparty_a_OBJECTS = dummy.$(OBJEXT) +#>+ 1 +libthirdparty_a_OBJECTS = dummy.$(OBJEXT) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/dummy.P +#>+ 4 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/libthirdparty_a.all_cpp.P \ + .deps/dummy.P +@KDE_USE_FINAL_FALSE@DEP_FILES = .deps/dummy.P + +SOURCES = $(libthirdparty_a_SOURCES) +OBJECTS = $(libthirdparty_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/thirdparty/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libthirdparty.a: $(libthirdparty_a_OBJECTS) $(libthirdparty_a_DEPENDENCIES) + -rm -f libthirdparty.a + $(AR) cru libthirdparty.a $(libthirdparty_a_OBJECTS) $(libthirdparty_a_LIBADD) + $(RANLIB) libthirdparty.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/thirdparty + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/thirdparty/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile $(LIBRARIES) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs-am installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +dummy.cpp: + touch dummy.cpp + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/thirdparty/Makefile.in + + +#>+ 11 +libthirdparty_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/dummy.cpp + @echo 'creating libthirdparty_a.all_cpp.cpp ...'; \ + rm -f libthirdparty_a.all_cpp.files libthirdparty_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libthirdparty_a.all_cpp.final; \ + for file in dummy.cpp ; do \ + echo "#include \"$$file\"" >> libthirdparty_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libthirdparty_a.all_cpp.final; \ + done; \ + cat libthirdparty_a.all_cpp.final libthirdparty_a.all_cpp.files > libthirdparty_a.all_cpp.cpp; \ + rm -f libthirdparty_a.all_cpp.final libthirdparty_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libthirdparty_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/thirdparty/dummy.cpp b/bibletime/frontend/thirdparty/dummy.cpp new file mode 100644 index 0000000..e69de29 diff --git a/bibletime/frontend/thirdparty/qt3stuff/Makefile.am b/bibletime/frontend/thirdparty/qt3stuff/Makefile.am new file mode 100644 index 0000000..b10c1cb --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/Makefile.am @@ -0,0 +1,25 @@ +KDE_OPTIONS = qtonly + +INCLUDES = $(all_includes) + +libqt3stuff_a_METASOURCES = AUTO + +noinst_LIBRARIES = libqt3stuff.a + +libqt3stuff_a_SOURCES = \ +qrichtext.cpp \ +qstylesheet.cpp \ +qtextview.cpp \ +qtextedit.cpp \ +qcomplextext.cpp + +all_headers = qrichtext_p.h \ +qstylesheet.h \ +qtextview.h \ +qtextedit.h \ +qcomplextext_p.h \ +qt3stuff.h \ +qcleanuphandler.h + +EXTRA_DIST = $(libqt3stuff_a_SOURCES) $(all_headers) + diff --git a/bibletime/frontend/thirdparty/qt3stuff/Makefile.in b/bibletime/frontend/thirdparty/qt3stuff/Makefile.in new file mode 100644 index 0000000..5c435d4 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/Makefile.in @@ -0,0 +1,610 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_OPTIONS = qtonly + +INCLUDES = $(all_includes) + +#>- libqt3stuff_a_METASOURCES = AUTO + +noinst_LIBRARIES = libqt3stuff.a + +libqt3stuff_a_SOURCES = qrichtext.cpp qstylesheet.cpp qtextview.cpp qtextedit.cpp qcomplextext.cpp + + +all_headers = qrichtext_p.h qstylesheet.h qtextview.h qtextedit.h qcomplextext_p.h qt3stuff.h qcleanuphandler.h + + +EXTRA_DIST = $(libqt3stuff_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../../../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libqt3stuff_a_LIBADD = +#>- libqt3stuff_a_OBJECTS = qrichtext.$(OBJEXT) qstylesheet.$(OBJEXT) \ +#>- qtextview.$(OBJEXT) qtextedit.$(OBJEXT) qcomplextext.$(OBJEXT) +#>+ 6 +libqt3stuff_a_final_OBJECTS = libqt3stuff_a.all_cpp.o +libqt3stuff_a_nofinal_OBJECTS = qrichtext.$(OBJEXT) qstylesheet.$(OBJEXT) \ +qtextview.$(OBJEXT) qtextedit.$(OBJEXT) qcomplextext.$(OBJEXT)\ +qstylesheet.moc.o qrichtext_p.moc.o qtextview.moc.o qtextedit.moc.o +@KDE_USE_FINAL_FALSE@libqt3stuff_a_OBJECTS = $(libqt3stuff_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libqt3stuff_a_OBJECTS = $(libqt3stuff_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=qcomplextext_p.h qtextview.h qcleanuphandler.h qtextedit.h qt3stuff.h qrichtext_p.h qstylesheet.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/qcomplextext.P .deps/qrichtext.P .deps/qstylesheet.P \ +#>- .deps/qtextedit.P .deps/qtextview.P +#>+ 6 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/qstylesheet.moc.P $(DEPDIR)/qrichtext_p.moc.P $(DEPDIR)/qtextview.moc.P $(DEPDIR)/qtextedit.moc.P $(DEPDIR)/libqt3stuff_a.all_cpp.P \ + .deps/qcomplextext.P .deps/qrichtext.P .deps/qstylesheet.P \ +.deps/qtextedit.P .deps/qtextview.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/qstylesheet.moc.P $(DEPDIR)/qrichtext_p.moc.P $(DEPDIR)/qtextview.moc.P $(DEPDIR)/qtextedit.moc.P .deps/qcomplextext.P .deps/qrichtext.P .deps/qstylesheet.P \ +.deps/qtextedit.P .deps/qtextview.P + +SOURCES = $(libqt3stuff_a_SOURCES) +OBJECTS = $(libqt3stuff_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/qt3stuff/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/qt3stuff/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/thirdparty/qt3stuff/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libqt3stuff.a: $(libqt3stuff_a_OBJECTS) $(libqt3stuff_a_DEPENDENCIES) + -rm -f libqt3stuff.a + $(AR) cru libqt3stuff.a $(libqt3stuff_a_OBJECTS) $(libqt3stuff_a_LIBADD) + $(RANLIB) libqt3stuff.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/frontend/thirdparty/qt3stuff + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/frontend/thirdparty/qt3stuff/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile $(LIBRARIES) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-am + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +qstylesheet.moc.cpp: $(srcdir)/qstylesheet.h + $(MOC) $(srcdir)/qstylesheet.h -o qstylesheet.moc.cpp + +#>+ 3 +qrichtext_p.moc.cpp: $(srcdir)/qrichtext_p.h + $(MOC) $(srcdir)/qrichtext_p.h -o qrichtext_p.moc.cpp + +#>+ 3 +qtextview.moc.cpp: $(srcdir)/qtextview.h + $(MOC) $(srcdir)/qtextview.h -o qtextview.moc.cpp + +#>+ 3 +qtextedit.moc.cpp: $(srcdir)/qtextedit.h + $(MOC) $(srcdir)/qtextedit.h -o qtextedit.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f qstylesheet.moc.cpp qrichtext_p.moc.cpp qtextview.moc.cpp qtextedit.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/frontend/thirdparty/qt3stuff/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/frontend/thirdparty/qt3stuff/Makefile.in + + +#>+ 11 +libqt3stuff_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/qrichtext.cpp $(srcdir)/qstylesheet.cpp $(srcdir)/qtextview.cpp $(srcdir)/qtextedit.cpp $(srcdir)/qcomplextext.cpp qstylesheet.moc.cpp qrichtext_p.moc.cpp qtextview.moc.cpp qtextedit.moc.cpp + @echo 'creating libqt3stuff_a.all_cpp.cpp ...'; \ + rm -f libqt3stuff_a.all_cpp.files libqt3stuff_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libqt3stuff_a.all_cpp.final; \ + for file in qrichtext.cpp qstylesheet.cpp qtextview.cpp qtextedit.cpp qcomplextext.cpp qstylesheet.moc.cpp qrichtext_p.moc.cpp qtextview.moc.cpp qtextedit.moc.cpp; do \ + echo "#include \"$$file\"" >> libqt3stuff_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libqt3stuff_a.all_cpp.final; \ + done; \ + cat libqt3stuff_a.all_cpp.final libqt3stuff_a.all_cpp.files > libqt3stuff_a.all_cpp.cpp; \ + rm -f libqt3stuff_a.all_cpp.final libqt3stuff_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libqt3stuff_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libqt3stuff_a_OBJECTS="$(libqt3stuff_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libqt3stuff_a_OBJECTS="$(libqt3stuff_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h b/bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h new file mode 100644 index 0000000..39f5af8 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qcleanuphandler.h @@ -0,0 +1,113 @@ +#ifndef QCLEANUPHANDLER_H +#define QCLEANUPHANDLER_H + +#ifndef QT_H +#include +#include +#endif // QT_H + +template +class Q_EXPORT QGuardedCleanupHandler +{ +public: + ~QGuardedCleanupHandler() { clear(); } + + void add( Type* object ) + { + cleanupObjects.insert( 0, new QGuardedPtr(object) ); + } + + void remove( Type *object ) + { + QListIterator > it( cleanupObjects ); + while ( it.current() ) { + QGuardedPtr* guard = it.current(); + ++it; + if ( (Type *)guard == object ) { + cleanupObjects.removeRef( guard ); + delete guard; + break; + } + } + } + + bool isEmpty() const + { + QListIterator > it( cleanupObjects ); + while ( it.current() ) { + QGuardedPtr* guard = it.current(); + ++it; + if ( (Type*)*guard ) + return FALSE; + } + return TRUE; + } + + void clear() { + QListIterator > it( cleanupObjects ); + it.toLast(); + while ( it.current() ) { + QGuardedPtr* guard = it.current(); + --it; + cleanupObjects.removeRef( guard ); + delete (Type*)*guard; + delete guard; + } + } + +private: + QList > cleanupObjects; +}; + +template +class Q_EXPORT QCleanupHandler +{ +public: + QCleanupHandler() : cleanupObjects( 0 ) + {} + ~QCleanupHandler() { clear(); } + + void add( Type* object ) + { + if ( !cleanupObjects ) { + cleanupObjects = new QList; + } + cleanupObjects->insert( 0, object ); + } + + void remove( Type *object ) + { + if ( !cleanupObjects ) + return; + if ( object ) + cleanupObjects->removeRef( object ); + } + + bool isEmpty() const + { + return cleanupObjects ? cleanupObjects->isEmpty() : TRUE; + } + + void clear() + { + if ( !cleanupObjects ) + return; + + QListIterator it( *cleanupObjects ); + it.toLast(); + while ( it.current() ) { + Type* object = it.current(); + --it; + cleanupObjects->removeRef( object ); + delete object; + } + + delete cleanupObjects; + cleanupObjects = 0; + } + +private: + QList *cleanupObjects; +}; + +#endif //QCLEANUPHANDLER_H diff --git a/bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp b/bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp new file mode 100644 index 0000000..8f675f2 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qcomplextext.cpp @@ -0,0 +1,1313 @@ +#include "qcomplextext_p.h" +#include "qrichtext_p.h" +//#include "qfontdata_p.h" +#include "qfontmetrics.h" +#include "qrect.h" +#include + +using namespace Qt3; + +// ----------------------------------------------------- + +/* a small helper class used internally to resolve Bidi embedding levels. + Each line of text caches the embedding level at the start of the line for faster + relayouting +*/ +QBidiContext::QBidiContext( uchar l, QChar::Direction e, QBidiContext *p, bool o ) + : level(l) , override(o), dir(e) +{ + if ( p ) + p->ref(); + parent = p; + count = 0; +} + +QBidiContext::~QBidiContext() +{ + if( parent && parent->deref() ) + delete parent; +} + +//static QChar *shapeBuffer = 0; +//static int shapeBufSize = 0; + +/* + Arabic shaping obeys a number of rules according to the joining classes (see Unicode book, section on + arabic). + + Each unicode char has a joining class (right, dual (left&right), center (joincausing) or transparent). + transparent joining is not encoded in QChar::joining(), but applies to all combining marks and format marks. + + Right join-causing: dual + center + Left join-causing: dual + right + center + + Rules are as follows (for a string already in visual order, as we have it here): + + R1 Transparent characters do not affect joining behaviour. + R2 A right joining character, that has a right join-causing char on the right will get form XRight + (R3 A left joining character, that has a left join-causing char on the left will get form XLeft) + Note: the above rule is meaningless, as there are no pure left joining characters defined in Unicode + R4 A dual joining character, that has a left join-causing char on the left and a right join-causing char on + the right will get form XMedial + R5 A dual joining character, that has a right join causing char on the right, and no left join causing char on the left + will get form XRight + R6 A dual joining character, that has a left join causing char on the left, and no right join causing char on the right + will get form XLeft + R7 Otherwise the character will get form XIsolated + + Additionally we have to do the minimal ligature support for lam-alef ligatures: + + L1 Transparent characters do not affect ligature behaviour. + L2 Any sequence of Alef(XRight) + Lam(XMedial) will form the ligature Alef.Lam(XLeft) + L3 Any sequence of Alef(XRight) + Lam(XLeft) will form the ligature Alef.Lam(XIsolated) + + The two functions defined in this class do shaping in visual and logical order. For logical order just replace right with + previous and left with next in the above rules ;-) +*/ + +/* + Two small helper functions for arabic shaping. They get the next shape causing character on either + side of the char in question. Implements rule R1. + + leftChar() returns true if the char to the left is a left join-causing char + rightChar() returns true if the char to the right is a right join-causing char +*/ +static inline const QChar *prevChar( const QString &str, int pos ) +{ + //qDebug("leftChar: pos=%d", pos); + pos--; + const QChar *ch = str.unicode() + pos; + while( pos > -1 ) { + if( !ch->isMark() ) + return ch; + pos--; + ch--; + } + return &QChar::replacement; +} + +static inline const QChar *nextChar( const QString &str, int pos) +{ + pos++; + int len = str.length(); + const QChar *ch = str.unicode() + pos; + while( pos < len ) { + //qDebug("rightChar: %d isLetter=%d, joining=%d", pos, ch.isLetter(), ch.joining()); + if( !ch->isMark() ) + return ch; + // assume it's a transparent char, this might not be 100% correct + pos++; + ch++; + } + return &QChar::replacement; +} + +static inline bool prevVisualCharJoins( const QString &str, int pos) +{ + return ( prevChar( str, pos )->joining() != QChar::OtherJoining ); +} + +static inline bool nextVisualCharJoins( const QString &str, int pos) +{ + QChar::Joining join = nextChar( str, pos )->joining(); + return ( join == QChar::Dual || join == QChar::Center ); +} + +// QT2HACK +#if 0 + +QComplexText::Shape QComplexText::glyphVariant( const QString &str, int pos) +{ + // ignores L1 - L3, done in the codec + QChar::Joining joining = str[pos].joining(); + //qDebug("checking %x, joining=%d", str[pos].unicode(), joining); + switch ( joining ) { + case QChar::OtherJoining: + case QChar::Center: + // these don't change shape + return XIsolated; + case QChar::Right: + // only rule R2 applies + if( nextVisualCharJoins( str, pos ) ) + return XFinal; + return XIsolated; + case QChar::Dual: + bool right = nextVisualCharJoins( str, pos ); + bool left = prevVisualCharJoins( str, pos ); + //qDebug("dual: right=%d, left=%d", right, left); + if( right && left ) + return XMedial; + else if ( right ) + return XFinal; + else if ( left ) + return XInitial; + else + return XIsolated; + } + return XIsolated; +} + +/* and the same thing for logical ordering :) + */ +static inline bool prevLogicalCharJoins( const QString &str, int pos) +{ + return ( nextChar( str, pos )->joining() != QChar::OtherJoining ); +} + +static inline bool nextLogicalCharJoins( const QString &str, int pos) +{ + QChar::Joining join = prevChar( str, pos )->joining(); + return ( join == QChar::Dual || join == QChar::Center ); +} + + +QComplexText::Shape QComplexText::glyphVariantLogical( const QString &str, int pos) +{ + // ignores L1 - L3, ligatures are job of the codec + QChar::Joining joining = str[pos].joining(); + //qDebug("checking %x, joining=%d", str[pos].unicode(), joining); + switch ( joining ) { + case QChar::OtherJoining: + case QChar::Center: + // these don't change shape + return XIsolated; + case QChar::Right: + // only rule R2 applies + if( nextLogicalCharJoins( str, pos ) ) + return XFinal; + return XIsolated; + case QChar::Dual: + bool right = nextLogicalCharJoins( str, pos ); + bool left = prevLogicalCharJoins( str, pos ); + //qDebug("dual: right=%d, left=%d", right, left); + if( right && left ) + return XMedial; + else if ( right ) + return XFinal; + else if ( left ) + return XInitial; + else + return XIsolated; + } + return XIsolated; +} + +// ------------------------------------------------------------- + +// The unicode to unicode shaping codec. +// does only presentation forms B at the moment, but that should be enough for +// simple display +static const ushort arabicUnicodeMapping[256][4] = { + // base of shaped forms, and number-1 of them ( 0 for non shaping, + // 1 for right binding and 3 for dual binding + { 0x0600, 0 }, // 0x600 + { 0x0601, 0 }, // 0x601 + { 0x0602, 0 }, // 0x602 + { 0x0603, 0 }, // 0x603 + { 0x0604, 0 }, // 0x604 + { 0x0605, 0 }, // 0x605 + { 0x0606, 0 }, // 0x606 + { 0x0607, 0 }, // 0x607 + { 0x0608, 0 }, // 0x608 + { 0x0609, 0 }, // 0x609 + { 0x060a, 0 }, // 0x60a + { 0x060b, 0 }, // 0x60b + { 0x060c, 0 }, // 0x60c Arabic comma + { 0x060d, 0 }, // 0x60d + { 0x060e, 0 }, // 0x60e + { 0x060f, 0xfffd, 0xfffd, 0xfffd }, // 0x60f + + { 0x0610, 0 }, // 0x610 + { 0x0611, 0 }, // 0x611 + { 0x0612, 0 }, // 0x612 + { 0x0613, 0 }, // 0x613 + { 0x0614, 0 }, // 0x614 + { 0x0615, 0 }, // 0x615 + { 0x0616, 0 }, // 0x616 + { 0x0617, 0 }, // 0x617 + { 0x0618, 0 }, // 0x618 + { 0x0619, 0 }, // 0x619 + { 0x061a, 0 }, // 0x61a + { 0x061b, 0 }, // 0x61b Arabic semicolon + { 0x061c, 0 }, // 0x61c + { 0x061d, 0 }, // 0x61d + { 0x061e, 0 }, // 0x61e + { 0x061f, 0 }, // 0x61f Arabic question mark + + { 0x0620, 0 }, // 0x620 + { 0xfe80, 0 }, // 0x621 Hamza + { 0xfe81, 1 }, // 0x622 R Alef with Madda above + { 0xfe83, 1 }, // 0x623 R Alef with Hamza above + { 0xfe85, 1 }, // 0x624 R Waw with Hamza above + { 0xfe87, 1 }, // 0x625 R Alef with Hamza below + { 0xfe89, 3 }, // 0x626 D Yeh with Hamza above + { 0xfe8d, 1 }, // 0x627 R Alef + { 0xfe8f, 3 }, // 0x628 D Beh + { 0xfe93, 1 }, // 0x629 R Teh Marbuta + { 0xfe95, 3 }, // 0x62a D Teh + { 0xfe99, 3 }, // 0x62b D Theh + { 0xfe9d, 3 }, // 0x62c D Jeem + { 0xfea1, 3 }, // 0x62d D Hah + { 0xfea5, 3 }, // 0x62e D Khah + { 0xfea9, 1 }, // 0x62f R Dal + + { 0xfeab, 1 }, // 0x630 R Thal + { 0xfead, 1 }, // 0x631 R Reh + { 0xfeaf, 1 }, // 0x632 R Zain + { 0xfeb1, 1 }, // 0x633 D Seen + { 0xfeb5, 3 }, // 0x634 D Sheen + { 0xfeb9, 3 }, // 0x635 D Sad + { 0xfebd, 3 }, // 0x636 D Dad + { 0xfec1, 3 }, // 0x637 D Tah + { 0xfec5, 3 }, // 0x638 D Zah + { 0xfec9, 3 }, // 0x639 D Ain + { 0xfecd, 3 }, // 0x63a D Ghain + { 0x063b, 0 }, // 0x63b + { 0x063c, 0 }, // 0x63c + { 0x063d, 0 }, // 0x63d + { 0x063e, 0 }, // 0x63e + { 0x063f, 0 }, // 0x63f + + { 0x0640, 0 }, // 0x640 C Tatweel + { 0xfed1, 3 }, // 0x641 D Feh + { 0xfed5, 3 }, // 0x642 D Qaf + { 0xfed9, 3 }, // 0x643 D Kaf + { 0xfedd, 3 }, // 0x644 D Lam + { 0xfee1, 3 }, // 0x645 D Meem + { 0xfee5, 3 }, // 0x646 D Noon + { 0xfee9, 3 }, // 0x647 D Heh + { 0xfeed, 1 }, // 0x648 R Waw + { 0xfeef, 1 }, // 0x649 R Alef Maksura // ### Dual according to newest arabicshaping.txt + { 0xfef1, 3 }, // 0x64a D Yeh + { 0x064b, 0 }, // 0x64b Mark Fathatan + { 0x064c, 0 }, // 0x64c Mark Dammatan + { 0x064d, 0 }, // 0x64d Mark Kasratan + { 0x064e, 0 }, // 0x64e Mark Fatha + { 0x064f, 0 }, // 0x64f Mark Damma + + { 0x0650, 0 }, // 0x650 Mark Kasra + { 0x0651, 0 }, // 0x651 Mark Shadda + { 0x0652, 0 }, // 0x652 Mark Sukan + // these do not exist in latin6 anymore: + { 0x0653, 0 }, // 0x653 Mark Maddah above + { 0x0654, 0 }, // 0x654 Mark Hamza above + { 0x0655, 0 }, // 0x655 Mark Hamza below + { 0x0656, 0 }, // 0x656 + { 0x0657, 0 }, // 0x657 + { 0x0658, 0 }, // 0x658 + { 0x0659, 0 }, // 0x659 + { 0x065a, 0 }, // 0x65a + { 0x065b, 0 }, // 0x65b + { 0x065c, 0 }, // 0x65c + { 0x065d, 0 }, // 0x65d + { 0x065e, 0 }, // 0x65e + { 0x065f, 0 }, // 0x65f + + { 0x0660, 0 }, // 0x660 Arabic 0 + { 0x0661, 0 }, // 0x661 Arabic 1 + { 0x0662, 0 }, // 0x662 Arabic 2 + { 0x0663, 0 }, // 0x663 Arabic 3 + { 0x0664, 0 }, // 0x664 Arabic 4 + { 0x0665, 0 }, // 0x665 Arabic 5 + { 0x0666, 0 }, // 0x666 Arabic 6 + { 0x0667, 0 }, // 0x667 Arabic 7 + { 0x0668, 0 }, // 0x668 Arabic 8 + { 0x0669, 0 }, // 0x669 Arabic 9 + { 0x066a, 0 }, // 0x66a Arabic % sign + { 0x066b, 0 }, // 0x66b Arabic decimal separator + { 0x066c, 0 }, // 0x66c Arabic thousands separator + { 0x066d, 0 }, // 0x66d Arabic five pointed star + { 0x066e, 0 }, // 0x66e + { 0x066f, 0 }, // 0x66f + + // ### some glyphs do not have shaped mappings in the presentation forms A. + // these have the shaping set to 0 for the moment. Will have to find out better mappings for them. + { 0x0670, 0 }, // 0x670 + { 0xfb50, 1 }, // 0x671 R Alef Wasla + { 0x0672, 0 }, // 0x672 R Alef with wavy Hamza above + { 0x0673, 0 }, // 0x673 R Alef with wavy Hamza below + { 0x0674, 0 }, // 0x674 U High Hamza + { 0x0675, 0 }, // 0x675 R High Hamza Alef + { 0x0676, 0 }, // 0x676 R High Hamza Wav + { 0xfbdd, 0 }, // 0x677 R U with hamza above // ### only isolated form found... + { 0x0678, 0 }, // 0x678 D High hamza yeh + { 0xfb66, 3 }, // 0x679 D ttheh + { 0xfb5e, 3 }, // 0x67a D theheh + { 0xfb52, 3 }, // 0x67b D beeh + { 0x067c, 0 }, // 0x67cD teh with ring + { 0x067d, 0 }, // 0x67d D teh with three dots above downwards + { 0xfb56, 3 }, // 0x67e D peh + { 0xfb62, 3 }, // 0x67f D teheh + + { 0xfb5a, 3 }, // 0x680 D beheh + { 0x0681, 0 }, // 0x681 D hah with hamza above + { 0x0682, 0 }, // 0x682 D hah with two dots vertical above + { 0xfb76, 3 }, // 0x683 D nyeh + { 0xfb72, 3 }, // 0x684 D dyeh + { 0x0685, 0 }, // 0x685 D hah with three dots above + { 0xfb7a, 3 }, // 0x686 D tcheh + { 0xfb7e, 3 }, // 0x687 D tcheheh + { 0xfb88, 1 }, // 0x688 R ddal + { 0x0689, 0 }, // 0x689 R dal with ring + { 0x068a, 0 }, // 0x68a R dal with dot + { 0x068b, 0 }, // 0x68b R dal with dot below and small tah + { 0xfb84, 1 }, // 0x68cR dahal + { 0xfb82, 1 }, // 0x68d R ddahal + { 0xfb86, 1 }, // 0x68e R dul + { 0x068f, 0 }, // 0x68f R dal with three dots above downwards + + { 0x0690, 0 }, // 0x690 R dal with four dots above + { 0xfb8c, 1 }, // 0x691 R rreh + { 0x0692, 0 }, // 0x692 R reh with small v + { 0x0693, 0 }, // 0x693 R reh with ring + { 0x0694, 0 }, // 0x694 R reh with dot below + { 0x0695, 0 }, // 0x695 R reh with small v below + { 0x0696, 0 }, // 0x696 R reh with dot below and dot above + { 0x0697, 0 }, // 0x697 R reh with two dots above + { 0xfb8a, 1 }, // 0x698 R jeh + { 0x0699, 0 }, // 0x699 R reh with four dots above + { 0x069a, 0 }, // 0x69a D seen with dot below and dot above + { 0x069b, 0 }, // 0x69b D seen with three dots below + { 0x069c, 0 }, // 0x69cD seen with three dots below and three dots above + { 0x069d, 0 }, // 0x69d D sad with two dots below + { 0x069e, 0 }, // 0x69e D sad with three dots above + { 0x069f, 0 }, // 0x69f D tah with three dots above + + { 0x06a0, 0 }, // 0x6a0 D ain with three dots above + { 0x06a1, 0 }, // 0x6a1 D dotless feh + { 0x06a2, 0 }, // 0x6a2 D feh with dot moved below + { 0x06a3, 0 }, // 0x6a3 D feh with dot below + { 0xfb6a, 3 }, // 0x6a4 D veh + { 0x06a5, 0 }, // 0x6a5 D feh with three dots below + { 0xfb6e, 3 }, // 0x6a6 D peheh + { 0x06a7, 0 }, // 0x6a7 D qaf with dot above + { 0x06a8, 0 }, // 0x6a8 D qaf woith three dots above + { 0xfb8e, 3 }, // 0x6a9 D keheh + { 0x06aa, 0 }, // 0x6aa D swash kaf + { 0x06ab, 0 }, // 0x6ab D kaf with ring + { 0x06ac, 0 }, // 0x6acD kaf with dot above + { 0xfbd3, 3 }, // 0x6ad D ng + { 0x06ae, 0 }, // 0x6ae D kaf with three dots below + { 0xfb92, 3 }, // 0x6af D gaf + + { 0x06b0, 0 }, // 0x6b0 D gaf with ring + { 0xfb9a, 3 }, // 0x6b1 D ngoeh + { 0x06b2, 0 }, // 0x6b2 D gaf with two dots below + { 0xfb96, 3 }, // 0x6b3 D gueh + { 0x06b4, 0 }, // 0x6b4 D gaf with three dots above + { 0x06b5, 0 }, // 0x6b5 D lam with small v + { 0x06b6, 0 }, // 0x6b6 D lam with dot above + { 0x06b7, 0 }, // 0x6b7 D lam with three dots above + { 0x06b8, 0 }, // 0x6b8 D lam with three dots below + { 0x06b9, 0 }, // 0x6b9 D noon with dot below + { 0xfb9e, 1 }, // 0x6ba R noon ghunna + { 0xfba0, 3 }, // 0x6bb D rnoon + { 0x06bc, 0 }, // 0x6bcD noon with ring + { 0x06bd, 0 }, // 0x6bd D noon with three dots above + { 0xfbaa, 3 }, // 0x6be D heh doachashmee + { 0x06bf, 0 }, // 0x6bf D tcheh with dot above + + { 0xfba4, 1 }, // 0x6c0 R heh with yeh above = ligature hamza on hah (06d5 + 0654) + { 0xfba6, 3 }, // 0x6c1 D heh goal + { 0x06c2, 0 }, // 0x6c2 R heh goal with hamza above (06c1 + 0654) + { 0x06c3, 0 }, // 0x6c3 R teh marbuta goal + { 0x06c4, 0 }, // 0x6c4 R waw with ring + { 0xfbe0, 1 }, // 0x6c5 R kirghiz oe + { 0xfbd9, 1 }, // 0x6c6 R oe + { 0xfbd7, 1 }, // 0x6c7 R u + { 0xfbdb, 1 }, // 0x6c8 R yu + { 0xfbe2, 1 }, // 0x6c9 R kirghiz yu + { 0x06ca, 0 }, // 0x6ca R waw with teo dots above + { 0xfbde, 1 }, // 0x6cb R ve + { 0x06cc, 0 }, // 0x6cc D farsi yeh + { 0x06cd, 0 }, // 0x6cd R yeh with tail + { 0x06ce, 0 }, // 0x6ce D yeh with small v + { 0x06cf, 0 }, // 0x6cf R waw with dot above + + { 0xfbe4, 3 }, // 0x6d0 D e + { 0x06d1, 0 }, // 0x6d1 D yeh with three dots below + { 0xfbae, 1 }, // 0x6d2 R yeh barree + { 0xfbb0, 1 }, // 0x6d3 R yeh barree with hamza above + { 0x06d4, 0 }, // 0x6d4 U full stop + { 0x06d5, 0 }, // 0x6d5 D ae + { 0x06d6, 0 }, // 0x6d6 koreanic annotaion signs + { 0x06d7, 0 }, // 0x6d7 ... + { 0x06d8, 0 }, // 0x6d8 + { 0x06d9, 0 }, // 0x6d9 + { 0x06da, 0 }, // 0x6da + { 0x06db, 0 }, // 0x6db + { 0x06dc, 0 }, // 0x6dc + { 0x06dd, 0 }, // 0x6dd + { 0x06de, 0 }, // 0x6de + { 0x06df, 0 }, // 0x6df + + { 0x06e0, 0 }, // 0x6e0 + { 0x06e1, 0 }, // 0x6e1 + { 0x06e2, 0 }, // 0x6e2 + { 0x06e3, 0 }, // 0x6e3 + { 0x06e4, 0 }, // 0x6e4 + { 0x06e5, 0 }, // 0x6e5 + { 0x06e6, 0 }, // 0x6e6 + { 0x06e7, 0 }, // 0x6e7 + { 0x06e8, 0 }, // 0x6e8 + { 0x06e9, 0 }, // 0x6e9 + { 0x06ea, 0 }, // 0x6ea + { 0x06eb, 0 }, // 0x6eb + { 0x06ec, 0 }, // 0x6ec + { 0x06ed, 0 }, // 0x6ed + { 0x06ee, 0 }, // 0x6ee + { 0x06ef, 0 }, // 0x6ef + + { 0x06f0, 0 }, // 0x6f0 Arabic indic digit 0 + { 0x06f1, 0 }, // 0x6f1 + { 0x06f2, 0 }, // 0x6f2 + { 0x06f3, 0 }, // 0x6f3 + { 0x06f4, 0 }, // 0x6f4 + { 0x06f5, 0 }, // 0x6f5 + { 0x06f6, 0 }, // 0x6f6 + { 0x06f7, 0 }, // 0x6f7 + { 0x06f8, 0 }, // 0x6f8 + { 0x06f9, 0 }, // 0x6f9 Arabic indic digit 9 + { 0x06fa, 0 }, // 0x6fa D Sheen with dot below + { 0x06fb, 0 }, // 0x6fb D dad with dot below + { 0x06fc, 0 }, // 0x6fc D ghain with dot below + { 0x06fd, 0 }, // 0x6fd Sindhi ampersand + { 0x06fe, 0 }, // 0x6fe sindhi postposition + { 0x06ff, 0 }, // 0x6ff + +}; + +// this is a bit tricky. Alef always binds to the right, so the second parameter descibing the shape +// of the lam can be either initial of medial. So initial maps to the isolated form of the ligature, +// medial to the final form +static const ushort arabicUnicodeLamAlefMapping[6][4] = { + { 0xfffd, 0xfffd, 0xfef5, 0xfef6 }, // 0x622 R Alef with Madda above + { 0xfffd, 0xfffd, 0xfef7, 0xfef8 }, // 0x623 R Alef with Hamza above + { 0xfffd, 0xfffd, 0xfffd, 0xfffd }, // 0x624 R Waw with Hamza above + { 0xfffd, 0xfffd, 0xfef9, 0xfefa }, // 0x625 R Alef with Hamza below + { 0xfffd, 0xfffd, 0xfffd, 0xfffd }, // 0x626 D Yeh with Hamza above + { 0xfffd, 0xfffd, 0xfefb, 0xfefc } // 0x627 R Alef +}; + +QString QComplexText::shapedString(const QString& uc, int from, int len, QPainter::TextDirection dir ) +{ + if( len < 0 ) + len = uc.length() - from; + if( len == 0 ) { + return QString::null; + } + + // we have to ignore NSMs at the beginning and add at the end. + int num = uc.length() - from - len; + const QChar *ch = uc.unicode() + from + len; + while ( num > 0 && ch->combiningClass() != 0 ) { + ch++; + num--; + len++; + } + ch = uc.unicode() + from; + while ( len > 0 && ch->combiningClass() != 0 ) { + ch++; + len--; + from++; + } + if ( len == 0 ) return QString::null; + + if( !shapeBuffer || len > shapeBufSize ) { + if( shapeBuffer ) free( (void *) shapeBuffer ); + shapeBuffer = (QChar *) malloc( len*sizeof( QChar ) ); +// delete [] shapeBuffer; +// shapeBuffer = new QChar[ len + 1]; + shapeBufSize = len; + } + + int lenOut = 0; + QChar *data = shapeBuffer; + if ( dir == QPainter::RTL ) + ch += len - 1; + for ( int i = 0; i < len; i++ ) { + uchar r = ch->row(); + uchar c = ch->cell(); + if ( r != 0x06 ) { + *data = *ch; + data++; + lenOut++; + } else { + int pos = i + from; + if ( dir == QPainter::RTL ) + pos = from + len - 1 - i; + int shape = glyphVariantLogical( uc, pos ); + //qDebug("mapping U+%x to shape %d glyph=0x%x", ch->unicode(), shape, arabicUnicodeMapping[ch->cell()][shape]); + // take care of lam-alef ligatures (lam right of alef) + ushort map; + switch ( c ) { + case 0x44: { // lam + const QChar *pch = nextChar( uc, pos ); + if ( pch->row() == 0x06 ) { + switch ( pch->cell() ) { + case 0x22: + case 0x23: + case 0x25: + case 0x27: + //qDebug(" lam of lam-alef ligature"); + map = arabicUnicodeLamAlefMapping[pch->cell() - 0x22][shape]; + goto next; + default: + break; + } + } + break; + } + case 0x22: // alef with madda + case 0x23: // alef with hamza above + case 0x25: // alef with hamza below + case 0x27: // alef + if ( prevChar( uc, pos )->unicode() == 0x0644 ) { + // have a lam alef ligature + //qDebug(" alef of lam-alef ligature"); + goto skip; + } + default: + break; + } + map = arabicUnicodeMapping[c][0] + shape; + next: + *data = map; + data++; + lenOut++; + } + skip: + if ( dir == QPainter::RTL ) + ch--; + else + ch++; + } + + if ( dir == QPainter::RTL ) { + // reverses the non spacing marks to be again after the base char + QChar *s = shapeBuffer; + int i = 0; + while ( i < lenOut ) { + if ( s->combiningClass() != 0 ) { + // non spacing marks + int clen = 1; + QChar *ch = s; + do { + ch++; + clen++; + } while ( ch->combiningClass() != 0 ); + + int j = 0; + QChar *cp = s; + while ( j < clen/2 ) { + QChar tmp = *cp; + *cp = *ch; + *ch = tmp; + cp++; + ch--; + j++; + } + s += clen; + i += clen; + } else { + s++; + i++; + } + } + } + + return QConstString( shapeBuffer, lenOut ).string(); +} + +QChar QComplexText::shapedCharacter( const QString &str, int pos ) +{ + const QChar *ch = str.unicode() + pos; + if ( ch->row() != 0x06 ) + return *ch; + else { + int shape = glyphVariantLogical( str, pos ); + //qDebug("mapping U+%x to shape %d glyph=0x%x", ch->unicode(), shape, arabicUnicodeMapping[ch->cell()][shape]); + // lam aleph ligatures + switch ( ch->cell() ) { + case 0x44: { // lam + const QChar *nch = nextChar( str, pos ); + if ( nch->row() == 0x06 ) { + switch ( nch->cell() ) { + case 0x22: + case 0x23: + case 0x25: + case 0x27: + return QChar(arabicUnicodeLamAlefMapping[nch->cell() - 0x22][shape]); + default: + break; + } + } + break; + } + case 0x22: // alef with madda + case 0x23: // alef with hamza above + case 0x25: // alef with hamza below + case 0x27: // alef + if ( prevChar( str, pos )->unicode() == 0x0644 ) + // have a lam alef ligature + return QChar(0); + default: + break; + } + return QChar(arabicUnicodeMapping[ch->cell()][0] + shape); + } +} + +QPointArray QComplexText::positionMarks( QFontPrivate *f, const QString &str, int pos, QRect *boundingRect ) +{ + int len = str.length(); + int nmarks = 0; + while ( pos + nmarks < len && str[pos+nmarks +1].combiningClass() > 0 ) + nmarks++; + + if ( !nmarks ) + return QPointArray(); + + QChar baseChar = QComplexText::shapedCharacter( str, pos ); + QRect baseRect = f->boundingRect( baseChar ); + int baseOffset = f->textWidth( str, pos, 1 ); + + //qDebug( "base char: bounding rect at %d/%d (%d/%d)", baseRect.x(), baseRect.y(), baseRect.width(), baseRect.height() ); + int offset = f->request.pixelSize / 10 + 1; + QPointArray pa( nmarks ); + int i; + unsigned char lastCmb = 0; + QRect attachmentRect; + if ( boundingRect ) + *boundingRect = baseRect; + for( i = 0; i < nmarks; i++ ) { + QChar mark = str[pos+i+1]; + unsigned char cmb = mark.combiningClass(); + // combining marks of different class don't interact. Reset the rectangle. + if ( cmb != lastCmb ) { + //qDebug( "resetting rect" ); + attachmentRect = baseRect; + } + + QPoint p; + QRect markRect = f->boundingRect( mark ); + switch( cmb ) { + case QChar::Combining_DoubleBelow: + // ### wrong in rtl context! + case QChar::Combining_BelowLeft: + p += QPoint( 0, offset ); + case QChar::Combining_BelowLeftAttached: + p += attachmentRect.bottomLeft() - markRect.topLeft(); + break; + case QChar::Combining_Below: + p += QPoint( 0, offset ); + case QChar::Combining_BelowAttached: + p += attachmentRect.bottomLeft() - markRect.topLeft(); + p += QPoint( (attachmentRect.width() - markRect.width())/2 , 0 ); + break; + case QChar::Combining_BelowRight: + p += QPoint( 0, offset ); + case QChar::Combining_BelowRightAttached: + p += attachmentRect.bottomRight() - markRect.topRight(); + break; + case QChar::Combining_Left: + p += QPoint( -offset, 0 ); + case QChar::Combining_LeftAttached: + break; + case QChar::Combining_Right: + p += QPoint( offset, 0 ); + case QChar::Combining_RightAttached: + break; + case QChar::Combining_DoubleAbove: + // ### wrong in RTL context! + case QChar::Combining_AboveLeft: + p += QPoint( 0, -offset ); + case QChar::Combining_AboveLeftAttached: + p += attachmentRect.topLeft() - markRect.bottomLeft(); + break; + case QChar::Combining_Above: + p += QPoint( 0, -offset ); + case QChar::Combining_AboveAttached: + p += attachmentRect.topLeft() - markRect.bottomLeft(); + p += QPoint( (attachmentRect.width() - markRect.width())/2 , 0 ); + break; + case QChar::Combining_AboveRight: + p += QPoint( 0, -offset ); + case QChar::Combining_AboveRightAttached: + p += attachmentRect.topRight() - markRect.bottomRight(); + break; + + case QChar::Combining_IotaSubscript: + default: + break; + } + //qDebug( "char=%x combiningClass = %d offset=%d/%d", mark.unicode(), cmb, p.x(), p.y() ); + markRect.moveBy( p.x(), p.y() ); + p += QPoint( -baseOffset, 0 ); + attachmentRect |= markRect; + if ( boundingRect ) + *boundingRect |= markRect; + lastCmb = cmb; + pa.setPoint( i, p ); + } + return pa; +} + +//#define BIDI_DEBUG 2 +#ifdef BIDI_DEBUG +#include +#endif + + +// transforms one line of the paragraph to visual order +// the caller is responisble to delete the returned list of QTextRuns. +QList *QComplexText::bidiReorderLine( QBidiControl *control, const QString &text, int start, int len ) +{ + int last = start + len - 1; + //printf("doing BiDi reordering from %d to %d!\n", start, last); + + QList *runs = new QList; + runs->setAutoDelete(TRUE); + + QBidiContext *context = control->context; + if ( !context ) { + // first line + if( start != 0 ) + qDebug( "bidiReorderLine::internal error"); + if( text.isRightToLeft() ) + context = new QBidiContext( 1, QChar::DirR ); + else + context = new QBidiContext( 0, QChar::DirL ); + } + + QBidiStatus status = control->status; + QChar::Direction dir = QChar::DirON; + + int sor = start; + int eor = start; + + int current = start; + while(current < last) { + QChar::Direction dirCurrent; + if(current == (int)text.length()) { + QBidiContext *c = context; + while ( c->parent ) + c = c->parent; + dirCurrent = c->dir; + } else + dirCurrent = text.at(current).direction(); + + +#if BIDI_DEBUG > 1 + cout << "directions: dir=" << dir << " current=" << dirCurrent << " last=" << status.last << " eor=" << status.eor << " lastStrong=" << status.lastStrong << " embedding=" << context->dir << " level =" << (int)context->level << endl; +#endif + + switch(dirCurrent) { + + // embedding and overrides (X1-X9 in the BiDi specs) + case QChar::DirRLE: + { + uchar level = context->level; + if(level%2) // we have an odd level + level += 2; + else + level++; + if(level < 61) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + context = new QBidiContext(level, QChar::DirR, context); + status.last = QChar::DirR; + status.lastStrong = QChar::DirR; + } + break; + } + case QChar::DirLRE: + { + uchar level = context->level; + if(level%2) // we have an odd level + level++; + else + level += 2; + if(level < 61) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + context = new QBidiContext(level, QChar::DirL, context); + status.last = QChar::DirL; + status.lastStrong = QChar::DirL; + } + break; + } + case QChar::DirRLO: + { + uchar level = context->level; + if(level%2) // we have an odd level + level += 2; + else + level++; + if(level < 61) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + context = new QBidiContext(level, QChar::DirR, context, TRUE); + dir = QChar::DirR; + status.last = QChar::DirR; + status.lastStrong = QChar::DirR; + } + break; + } + case QChar::DirLRO: + { + uchar level = context->level; + if(level%2) // we have an odd level + level++; + else + level += 2; + if(level < 61) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + context = new QBidiContext(level, QChar::DirL, context, TRUE); + dir = QChar::DirL; + status.last = QChar::DirL; + status.lastStrong = QChar::DirL; + } + break; + } + case QChar::DirPDF: + { + QBidiContext *c = context->parent; + if(c) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + status.last = context->dir; + if( context->deref() ) delete context; + context = c; + if(context->override) + dir = context->dir; + else + dir = QChar::DirON; + status.lastStrong = context->dir; + } + break; + } + + // strong types + case QChar::DirL: + if(dir == QChar::DirON) + dir = QChar::DirL; + switch(status.last) + { + case QChar::DirL: + eor = current; status.eor = QChar::DirL; break; + case QChar::DirR: + case QChar::DirAL: + case QChar::DirEN: + case QChar::DirAN: + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + break; + case QChar::DirES: + case QChar::DirET: + case QChar::DirCS: + case QChar::DirBN: + case QChar::DirB: + case QChar::DirS: + case QChar::DirWS: + case QChar::DirON: + if(dir != QChar::DirL) { + //last stuff takes embedding dir + if( context->dir == QChar::DirR ) { + if(status.eor != QChar::DirR) { + // AN or EN + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirR; + } + else + eor = current - 1; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + } else { + if(status.eor == QChar::DirR) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirL; + } else { + eor = current; status.eor = QChar::DirL; break; + } + } + } else { + eor = current; status.eor = QChar::DirL; + } + default: + break; + } + status.lastStrong = QChar::DirL; + break; + case QChar::DirAL: + case QChar::DirR: + if(dir == QChar::DirON) dir = QChar::DirR; + switch(status.last) + { + case QChar::DirR: + case QChar::DirAL: + eor = current; status.eor = QChar::DirR; break; + case QChar::DirL: + case QChar::DirEN: + case QChar::DirAN: + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + break; + case QChar::DirES: + case QChar::DirET: + case QChar::DirCS: + case QChar::DirBN: + case QChar::DirB: + case QChar::DirS: + case QChar::DirWS: + case QChar::DirON: + if( status.eor != QChar::DirR && status.eor != QChar::DirAL ) { + //last stuff takes embedding dir + if(context->dir == QChar::DirR || status.lastStrong == QChar::DirR) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirR; + eor = current; + } else { + eor = current - 1; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirR; + } + } else { + eor = current; status.eor = QChar::DirR; + } + default: + break; + } + status.lastStrong = dirCurrent; + break; + + // weak types: + + case QChar::DirNSM: + // ### if @sor, set dir to dirSor + break; + case QChar::DirEN: + if(status.lastStrong != QChar::DirAL) { + // if last strong was AL change EN to AL + if(dir == QChar::DirON) { + if(status.lastStrong == QChar::DirL) + dir = QChar::DirL; + else + dir = QChar::DirAN; + } + switch(status.last) + { + case QChar::DirET: + if ( status.lastStrong == QChar::DirR || status.lastStrong == QChar::DirAL ) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; status.eor = QChar::DirON; + dir = QChar::DirAN; + } + // fall through + case QChar::DirEN: + case QChar::DirL: + eor = current; + status.eor = dirCurrent; + break; + case QChar::DirR: + case QChar::DirAL: + case QChar::DirAN: + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; status.eor = QChar::DirEN; + dir = QChar::DirAN; break; + case QChar::DirES: + case QChar::DirCS: + if(status.eor == QChar::DirEN) { + eor = current; break; + } + case QChar::DirBN: + case QChar::DirB: + case QChar::DirS: + case QChar::DirWS: + case QChar::DirON: + if(status.eor == QChar::DirR) { + // neutrals go to R + eor = current - 1; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirEN; + dir = QChar::DirAN; + } + else if( status.eor == QChar::DirL || + (status.eor == QChar::DirEN && status.lastStrong == QChar::DirL)) { + eor = current; status.eor = dirCurrent; + } else { + // numbers on both sides, neutrals get right to left direction + if(dir != QChar::DirL) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + eor = current - 1; + dir = QChar::DirR; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirAN; + } else { + eor = current; status.eor = dirCurrent; + } + } + default: + break; + } + break; + } + case QChar::DirAN: + dirCurrent = QChar::DirAN; + if(dir == QChar::DirON) dir = QChar::DirAN; + switch(status.last) + { + case QChar::DirL: + case QChar::DirAN: + eor = current; status.eor = QChar::DirAN; break; + case QChar::DirR: + case QChar::DirAL: + case QChar::DirEN: + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + break; + case QChar::DirCS: + if(status.eor == QChar::DirAN) { + eor = current; status.eor = QChar::DirR; break; + } + case QChar::DirES: + case QChar::DirET: + case QChar::DirBN: + case QChar::DirB: + case QChar::DirS: + case QChar::DirWS: + case QChar::DirON: + if(status.eor == QChar::DirR) { + // neutrals go to R + eor = current - 1; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirAN; + } else if( status.eor == QChar::DirL || + (status.eor == QChar::DirEN && status.lastStrong == QChar::DirL)) { + eor = current; status.eor = dirCurrent; + } else { + // numbers on both sides, neutrals get right to left direction + if(dir != QChar::DirL) { + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + eor = current - 1; + dir = QChar::DirR; + runs->append( new QTextRun(sor, eor, context, dir) ); + ++eor; sor = eor; dir = QChar::DirON; status.eor = QChar::DirON; + dir = QChar::DirAN; + } else { + eor = current; status.eor = dirCurrent; + } + } + default: + break; + } + break; + case QChar::DirES: + case QChar::DirCS: + break; + case QChar::DirET: + if(status.last == QChar::DirEN) { + dirCurrent = QChar::DirEN; + eor = current; status.eor = dirCurrent; + break; + } + break; + + // boundary neutrals should be ignored + case QChar::DirBN: + break; + // neutrals + case QChar::DirB: + // ### what do we do with newline and paragraph separators that come to here? + break; + case QChar::DirS: + // ### implement rule L1 + break; + case QChar::DirWS: + case QChar::DirON: + break; + default: + break; + } + + //cout << " after: dir=" << // dir << " current=" << dirCurrent << " last=" << status.last << " eor=" << status.eor << " lastStrong=" << status.lastStrong << " embedding=" << context->dir << endl; + + if(current >= (int)text.length()) break; + + // set status.last as needed. + switch(dirCurrent) + { + case QChar::DirET: + case QChar::DirES: + case QChar::DirCS: + case QChar::DirS: + case QChar::DirWS: + case QChar::DirON: + switch(status.last) + { + case QChar::DirL: + case QChar::DirR: + case QChar::DirAL: + case QChar::DirEN: + case QChar::DirAN: + status.last = dirCurrent; + break; + default: + status.last = QChar::DirON; + } + break; + case QChar::DirNSM: + case QChar::DirBN: + // ignore these + break; + default: + status.last = dirCurrent; + } + + ++current; + } + +#ifdef BIDI_DEBUG + cout << "reached end of line current=" << current << ", eor=" << eor << endl; +#endif + eor = current; + + runs->append( new QTextRun(sor, eor, context, dir) ); + + // reorder line according to run structure... + + // first find highest and lowest levels + uchar levelLow = 128; + uchar levelHigh = 0; + QTextRun *r = runs->first(); + while ( r ) { + //printf("level = %d\n", r->level); + if ( r->level > levelHigh ) + levelHigh = r->level; + if ( r->level < levelLow ) + levelLow = r->level; + r = runs->next(); + } + + // implements reordering of the line (L2 according to BiDi spec): + // L2. From the highest level found in the text to the lowest odd level on each line, + // reverse any contiguous sequence of characters that are at that level or higher. + + // reversing is only done up to the lowest odd level + if(!(levelLow%2)) levelLow++; + +#ifdef BIDI_DEBUG + cout << "reorderLine: lineLow = " << (uint)levelLow << ", lineHigh = " << (uint)levelHigh << endl; + cout << "logical order is:" << endl; + QListIterator it2(*runs); + QTextRun *r2; + for ( ; (r2 = it2.current()); ++it2 ) + cout << " " << r2 << " start=" << r2->start << " stop=" << r2->stop << " level=" << (uint)r2->level << endl; +#endif + + int count = runs->count() - 1; + + while(levelHigh >= levelLow) + { + int i = 0; + while ( i < count ) + { + while(i < count && runs->at(i)->level < levelHigh) i++; + int start = i; + while(i <= count && runs->at(i)->level >= levelHigh) i++; + int end = i-1; + + if(start != end) + { + //cout << "reversing from " << start << " to " << end << endl; + for(int j = 0; j < (end-start+1)/2; j++) + { + QTextRun *first = runs->take(start+j); + QTextRun *last = runs->take(end-j-1); + runs->insert(start+j, last); + runs->insert(end-j, first); + } + } + i++; + if(i >= count) break; + } + levelHigh--; + } + +#ifdef BIDI_DEBUG + cout << "visual order is:" << endl; + QListIterator it3(*runs); + QTextRun *r3; + for ( ; (r3 = it3.current()); ++it3 ) + { + cout << " " << r3 << endl; + } +#endif + + control->setContext( context ); + control->status = status; + + return runs; +} + + +QString QComplexText::bidiReorderString( const QString &str, QChar::Direction /*basicDir*/ ) +{ + // ### fix basic direction + QBidiControl *control = new QBidiControl(); + int lineStart = 0; + int lineEnd = 0; + int len = str.length(); + QString visual; + visual.setUnicode( 0, len ); + QChar *vch = (QChar *)visual.unicode(); + const QChar *ch = str.unicode(); + while( lineStart < len ) { + lineEnd = lineStart; + while( *ch != '\n' && lineEnd < len ) { + ch++; + lineEnd++; + } + QList *runs = bidiReorderLine( control, str, lineStart, lineEnd - lineStart ); + + // reorder the content of the line, and output to visual + QTextRun *r = runs->first(); + while ( r ) { + if(r->level %2) { + // odd level, need to reverse the string + int pos = r->stop; + while(pos >= r->start) { + *vch = str[pos]; + vch++; + pos--; + } + } else { + int pos = r->start; + while(pos <= r->stop) { + *vch = str[pos]; + vch++; + pos++; + } + } + r = runs->next(); + } + if ( *ch == '\n' ) { + *vch = *ch; + vch++; + ch++; + lineEnd++; + } + lineStart = lineEnd; + } + return visual; +} +#endif diff --git a/bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h b/bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h new file mode 100644 index 0000000..0111a1a --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qcomplextext_p.h @@ -0,0 +1,102 @@ +#ifndef QCOMPLEXTEXT_H +#define QCOMPLEXTEXT_H + +#ifndef QT_H +#include +#include +#include +#include +#include +#include +#endif // QT_H + +class QFontPrivate; + +namespace Qt3 { + +// bidi helper classes. Internal to Qt +struct Q_EXPORT QBidiStatus { + QBidiStatus() { + eor = QChar::DirON; + lastStrong = QChar::DirON; + last = QChar:: DirON; + } + QChar::Direction eor : 5; + QChar::Direction lastStrong : 5; + QChar::Direction last : 5; +}; + +struct Q_EXPORT QBidiContext : public QShared { + // ### ref and deref parent? + QBidiContext( uchar level, QChar::Direction embedding, QBidiContext *parent = 0, bool override = FALSE ); + ~QBidiContext(); + + unsigned char level; + bool override : 1; + QChar::Direction dir : 5; + + QBidiContext *parent; +}; + +struct Q_EXPORT QBidiControl { + QBidiControl() { context = 0; } + QBidiControl( QBidiContext *c, QBidiStatus s) + { context = c; if( context ) context->ref(); status = s; } + ~QBidiControl() { if ( context && context->deref() ) delete context; } + void setContext( QBidiContext *c ) { if ( context == c ) return; if ( context && context->deref() ) delete context; context = c; context->ref(); } + QBidiContext *context; + QBidiStatus status; +}; + +struct Q_EXPORT QTextRun { + QTextRun(int _start, int _stop, QBidiContext *context, QChar::Direction dir) { + start = _start; + stop = _stop; + if(dir == QChar::DirON) dir = context->dir; + + level = context->level; + + // add level of run (cases I1 & I2) + if( level % 2 ) { + if(dir == QChar::DirL || dir == QChar::DirAN) + level++; + } else { + if( dir == QChar::DirR ) + level++; + else if( dir == QChar::DirAN ) + level += 2; + } + //printf("new run: level = %d\n", level); + } + + int start; + int stop; + // explicit + implicit levels here + uchar level; +}; + +class Q_EXPORT QComplexText { +public: + enum Shape { + XIsolated, + XFinal, + XInitial, + XMedial + }; + static Shape glyphVariant( const QString &str, int pos); + static Shape glyphVariantLogical( const QString &str, int pos); + + //QT2HACK + //static QString shapedString( const QString &str, int from = 0, int len = -1, QPainter::TextDirection dir = QPainter::Auto); + static QChar shapedCharacter(const QString &str, int pos); + + // positions non spacing marks relative to the base character at position pos. + static QPointArray positionMarks( QFontPrivate *f, const QString &str, int pos, QRect *boundingRect = 0 ); + + static QList *bidiReorderLine( QBidiControl *control, const QString &str, int start, int len ); + static QString bidiReorderString( const QString &str, QChar::Direction basicDir = QChar::DirON ); +}; + +}; // namespace + +#endif diff --git a/bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp b/bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp new file mode 100644 index 0000000..98b8eef --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qrichtext.cpp @@ -0,0 +1,7124 @@ +/**************************************************************************** +** Implementation of the internal Qt classes dealing with rich text +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the kernel module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#include "qrichtext_p.h" +#include "qstringlist.h" +#include "qfont.h" +#include "qtextstream.h" +#include "qfile.h" +#include "qregexp.h" +#include "qapplication.h" +#include "qclipboard.h" +#include "qmap.h" +#include "qfileinfo.h" +#include "qstylesheet.h" +#include "qmime.h" +#include "qregexp.h" +#include "qimage.h" +#include "qdragobject.h" +#include "qpaintdevicemetrics.h" +#include "qpainter.h" +#include "qdrawutil.h" +#include "qcursor.h" +#include "qstack.h" +#include "qcomplextext_p.h" + +#include + +using namespace Qt3; + +//#define PARSER_DEBUG +//#define DEBUG_COLLECTION +//#define DEBUG_TABLE_RENDERING + +static QTextFormatCollection *qFormatCollection = 0; + +//ANY_CHARSET_BEGIN +QMap* m_charsetMap = 0; +//ANY_CHARSET_END + +#if defined(PARSER_DEBUG) +static QString debug_indent; +#endif + +static double scale_factor( double v ) +{ + return v/QPaintDevice::x11AppDpiY(); +} + +static bool is_printer( QPainter *p ) +{ + //if ( !p || !p->device() ) + return FALSE; + //return p->device()->devType() == QInternal::Printer; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +void QTextCommandHistory::addCommand( QTextCommand *cmd ) +{ + if ( current < (int)history.count() - 1 ) { + QPtrList commands; + commands.setAutoDelete( FALSE ); + + for( int i = 0; i <= current; ++i ) { + commands.insert( i, history.at( 0 ) ); + history.take( 0 ); + } + + commands.append( cmd ); + history.clear(); + history = commands; + history.setAutoDelete( TRUE ); + } else { + history.append( cmd ); + } + + if ( (int)history.count() > steps ) + history.removeFirst(); + else + ++current; +} + +QTextCursor *QTextCommandHistory::undo( QTextCursor *c ) +{ + if ( current > -1 ) { + QTextCursor *c2 = history.at( current )->unexecute( c ); + --current; + return c2; + } + return 0; +} + +QTextCursor *QTextCommandHistory::redo( QTextCursor *c ) +{ + if ( current > -1 ) { + if ( current < (int)history.count() - 1 ) { + ++current; + return history.at( current )->execute( c ); + } + } else { + if ( history.count() > 0 ) { + ++current; + return history.at( current )->execute( c ); + } + } + return 0; +} + +bool QTextCommandHistory::isUndoAvailable() +{ + return current > -1; +} + +bool QTextCommandHistory::isRedoAvailable() +{ + return current > -1 || history.count() > 0; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextDeleteCommand::QTextDeleteCommand( QTextDocument *d, int i, int idx, const QMemArray &str, + const QValueList< QPtrVector > &os, + const QValueList &ols, + const QMemArray &oas) + : QTextCommand( d ), id( i ), index( idx ), parag( 0 ), text( str ), oldStyles( os ), oldListStyles( ols ), oldAligns( oas ) +{ + for ( int j = 0; j < (int)text.size(); ++j ) { + if ( text[ j ].format() ) + text[ j ].format()->addRef(); + } +} + +QTextDeleteCommand::QTextDeleteCommand( QTextParag *p, int idx, const QMemArray &str ) + : QTextCommand( 0 ), id( -1 ), index( idx ), parag( p ), text( str ) +{ + for ( int i = 0; i < (int)text.size(); ++i ) { + if ( text[ i ].format() ) + text[ i ].format()->addRef(); + } +} + +QTextDeleteCommand::~QTextDeleteCommand() +{ + for ( int i = 0; i < (int)text.size(); ++i ) { + if ( text[ i ].format() ) + text[ i ].format()->removeRef(); + } + text.resize( 0 ); +} + +QTextCursor *QTextDeleteCommand::execute( QTextCursor *c ) +{ + QTextParag *s = doc ? doc->paragAt( id ) : parag; + if ( !s ) { +// qWarning( "can't locate parag at %d, last parag: %d", id, doc->lastParag()->paragId() ); + return 0; + } + + cursor.setParag( s ); + cursor.setIndex( index ); + int len = text.size(); + if ( c ) + *c = cursor; + if ( doc ) { + doc->setSelectionStart( QTextDocument::Temp, &cursor ); + for ( int i = 0; i < len; ++i ) + cursor.gotoRight(); + doc->setSelectionEnd( QTextDocument::Temp, &cursor ); + doc->removeSelectedText( QTextDocument::Temp, &cursor ); + if ( c ) + *c = cursor; + } else { + s->remove( index, len ); + } + + return c; +} + +QTextCursor *QTextDeleteCommand::unexecute( QTextCursor *c ) +{ + QTextParag *s = doc ? doc->paragAt( id ) : parag; + if ( !s ) { +// qWarning( "can't locate parag at %d, last parag: %d", id, doc->lastParag()->paragId() ); + return 0; + } + + cursor.setParag( s ); + cursor.setIndex( index ); + QString str = QTextString::toString( text ); + cursor.insert( str, TRUE, &text ); + cursor.setParag( s ); + cursor.setIndex( index ); + if ( c ) { + c->setParag( s ); + c->setIndex( index ); + for ( int i = 0; i < (int)text.size(); ++i ) + c->gotoRight(); + } + + QValueList< QPtrVector >::Iterator it = oldStyles.begin(); + QValueList::Iterator lit = oldListStyles.begin(); + int i = 0; + QTextParag *p = s; + bool end = FALSE; + while ( p ) { + if ( it != oldStyles.end() ) + p->setStyleSheetItems( *it ); + else + end = TRUE; + if ( lit != oldListStyles.end() ) + p->setListStyle( *lit ); + else + end = TRUE; + if ( i < (int)oldAligns.size() ) + p->setAlignment( oldAligns.at( i ) ); + else + end = TRUE; + if ( end ) + break; + p = p->next(); + ++it; + ++lit; + ++i; + } + + s = cursor.parag(); + while ( s ) { + s->format(); + s->setChanged( TRUE ); + if ( s == c->parag() ) + break; + s = s->next(); + } + + return &cursor; +} + +QTextFormatCommand::QTextFormatCommand( QTextDocument *d, int sid, int sidx, int eid, int eidx, + const QMemArray &old, QTextFormat *f, int fl ) + : QTextCommand( d ), startId( sid ), startIndex( sidx ), endId( eid ), endIndex( eidx ), format( f ), oldFormats( old ), flags( fl ) +{ + format = d->formatCollection()->format( f ); + for ( int j = 0; j < (int)oldFormats.size(); ++j ) { + if ( oldFormats[ j ].format() ) + oldFormats[ j ].format()->addRef(); + } +} + +QTextFormatCommand::~QTextFormatCommand() +{ + format->removeRef(); + for ( int j = 0; j < (int)oldFormats.size(); ++j ) { + if ( oldFormats[ j ].format() ) + oldFormats[ j ].format()->removeRef(); + } +} + +QTextCursor *QTextFormatCommand::execute( QTextCursor *c ) +{ + QTextParag *sp = doc->paragAt( startId ); + QTextParag *ep = doc->paragAt( endId ); + if ( !sp || !ep ) + return c; + + QTextCursor start( doc ); + start.setParag( sp ); + start.setIndex( startIndex ); + QTextCursor end( doc ); + end.setParag( ep ); + end.setIndex( endIndex ); + + doc->setSelectionStart( QTextDocument::Temp, &start ); + doc->setSelectionEnd( QTextDocument::Temp, &end ); + doc->setFormat( QTextDocument::Temp, format, flags ); + doc->removeSelection( QTextDocument::Temp ); + *c = end; + return c; +} + +QTextCursor *QTextFormatCommand::unexecute( QTextCursor *c ) +{ + QTextParag *sp = doc->paragAt( startId ); + QTextParag *ep = doc->paragAt( endId ); + if ( !sp || !ep ) + return 0; + + int idx = startIndex; + int fIndex = 0; + while ( TRUE ) { + if ( oldFormats.at( fIndex ).c == '\n' ) { + if ( idx > 0 ) { + if ( idx < sp->length() && fIndex > 0 ) + sp->setFormat( idx, 1, oldFormats.at( fIndex - 1 ).format() ); + if ( sp == ep ) + break; + sp = sp->next(); + idx = 0; + } + fIndex++; + } + if ( oldFormats.at( fIndex ).format() ) + sp->setFormat( idx, 1, oldFormats.at( fIndex ).format() ); + idx++; + fIndex++; + if ( fIndex >= (int)oldFormats.size() ) + break; + if ( idx >= sp->length() ) { + if ( sp == ep ) + break; + sp = sp->next(); + idx = 0; + } + } + + QTextCursor end( doc ); + end.setParag( ep ); + end.setIndex( endIndex ); + *c = end; + return c; +} + +QTextAlignmentCommand::QTextAlignmentCommand( QTextDocument *d, int fParag, int lParag, int na, const QMemArray &oa ) + : QTextCommand( d ), firstParag( fParag ), lastParag( lParag ), newAlign( na ), oldAligns( oa ) +{ +} + +QTextCursor *QTextAlignmentCommand::execute( QTextCursor *c ) +{ + QTextParag *p = doc->paragAt( firstParag ); + if ( !p ) + return c; + while ( p ) { + p->setAlignment( newAlign ); + if ( p->paragId() == lastParag ) + break; + p = p->next(); + } + return c; +} + +QTextCursor *QTextAlignmentCommand::unexecute( QTextCursor *c ) +{ + QTextParag *p = doc->paragAt( firstParag ); + if ( !p ) + return c; + int i = 0; + while ( p ) { + if ( i < (int)oldAligns.size() ) + p->setAlignment( oldAligns.at( i ) ); + if ( p->paragId() == lastParag ) + break; + p = p->next(); + ++i; + } + return c; +} + +QTextParagTypeCommand::QTextParagTypeCommand( QTextDocument *d, int fParag, int lParag, bool l, + QStyleSheetItem::ListStyle s, const QValueList< QPtrVector > &os, + const QValueList &ols ) + : QTextCommand( d ), firstParag( fParag ), lastParag( lParag ), list( l ), listStyle( s ), oldStyles( os ), oldListStyles( ols ) +{ +} + +QTextCursor *QTextParagTypeCommand::execute( QTextCursor *c ) +{ + QTextParag *p = doc->paragAt( firstParag ); + if ( !p ) + return c; + while ( p ) { + p->setList( list, (int)listStyle ); + if ( p->paragId() == lastParag ) + break; + p = p->next(); + } + return c; +} + +QTextCursor *QTextParagTypeCommand::unexecute( QTextCursor *c ) +{ + QTextParag *p = doc->paragAt( firstParag ); + if ( !p ) + return c; + QValueList< QPtrVector >::Iterator it = oldStyles.begin(); + QValueList::Iterator lit = oldListStyles.begin(); + while ( p ) { + if ( it != oldStyles.end() ) + p->setStyleSheetItems( *it ); + if ( lit != oldListStyles.end() ) + p->setListStyle( *lit ); + if ( p->paragId() == lastParag ) + break; + p = p->next(); + ++it; + ++lit; + } + return c; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextCursor::QTextCursor( QTextDocument *d ) + : doc( d ), ox( 0 ), oy( 0 ) +{ + nested = FALSE; + idx = 0; + string = doc ? doc->firstParag() : 0; + tmpIndex = -1; +} + +QTextCursor::QTextCursor() +{ +} + +QTextCursor::QTextCursor( const QTextCursor &c ) +{ + doc = c.doc; + ox = c.ox; + oy = c.oy; + nested = c.nested; + idx = c.idx; + string = c.string; + tmpIndex = c.tmpIndex; + indices = c.indices; + parags = c.parags; + xOffsets = c.xOffsets; + yOffsets = c.yOffsets; +} + +QTextCursor &QTextCursor::operator=( const QTextCursor &c ) +{ + doc = c.doc; + ox = c.ox; + oy = c.oy; + nested = c.nested; + idx = c.idx; + string = c.string; + tmpIndex = c.tmpIndex; + indices = c.indices; + parags = c.parags; + xOffsets = c.xOffsets; + yOffsets = c.yOffsets; + + return *this; +} + +bool QTextCursor::operator==( const QTextCursor &c ) const +{ + return doc == c.doc && string == c.string && idx == c.idx; +} + +int QTextCursor::totalOffsetX() const +{ + if ( !nested ) + return 0; + QValueStack::ConstIterator xit = xOffsets.begin(); + int xoff = ox; + for ( ; xit != xOffsets.end(); ++xit ) + xoff += *xit; + return xoff; +} + +int QTextCursor::totalOffsetY() const +{ + if ( !nested ) + return 0; + QValueStack::ConstIterator yit = yOffsets.begin(); + int yoff = oy; + for ( ; yit != yOffsets.end(); ++yit ) + yoff += *yit; + return yoff; +} + +void QTextCursor::gotoIntoNested( const QPoint &globalPos ) +{ + if ( !doc ) + return; + push(); + ox = 0; + int bl, y; + string->lineHeightOfChar( idx, &bl, &y ); + oy = y + string->rect().y(); + nested = TRUE; + QPoint p( globalPos.x() - offsetX(), globalPos.y() - offsetY() ); + Q_ASSERT( string->at( idx )->isCustom() ); + string->at( idx )->customItem()->enterAt( this, doc, string, idx, ox, oy, p ); +} + +void QTextCursor::invalidateNested() +{ + if ( nested ) { + QValueStack::Iterator it = parags.begin(); + QValueStack::Iterator it2 = indices.begin(); + for ( ; it != parags.end(); ++it, ++it2 ) { + if ( *it == string ) + continue; + (*it)->invalidate( 0 ); + if ( (*it)->at( *it2 )->isCustom() ) + (*it)->at( *it2 )->customItem()->invalidate(); + } + } +} + +void QTextCursor::insert( const QString &str, bool checkNewLine, QMemArray *formatting ) +{ + tmpIndex = -1; + bool justInsert = TRUE; + QString s( str ); +#if defined(Q_WS_WIN) + if ( checkNewLine ) + s = s.replace( QRegExp( "\\r" ), "" ); +#endif + if ( checkNewLine ) + justInsert = s.find( '\n' ) == -1; + if ( justInsert ) { + string->insert( idx, s ); + if ( formatting ) { + for ( int i = 0; i < (int)s.length(); ++i ) { + if ( formatting->at( i ).format() ) { + formatting->at( i ).format()->addRef(); + string->string()->setFormat( idx + i, formatting->at( i ).format(), TRUE ); + } + } + } + idx += s.length(); + } else { + QStringList lst = QStringList::split( '\n', s, TRUE ); + QStringList::Iterator it = lst.begin(); + int y = string->rect().y() + string->rect().height(); + int lastIndex = 0; + for ( ; it != lst.end(); ++it ) { + if ( it != lst.begin() ) { + splitAndInsertEmptyParag( FALSE, TRUE ); + string->setEndState( -1 ); + string->prev()->format( -1, FALSE ); + } + QString s = *it; + if ( s.isEmpty() ) + continue; + string->insert( idx, s ); + if ( formatting ) { + int len = s.length(); + if ( it != --lst.end() ) + len++; + for ( int i = 0; i < len; ++i ) { + if ( formatting->at( i + lastIndex ).format() ) { + formatting->at( i + lastIndex ).format()->addRef(); + string->string()->setFormat( i + idx, formatting->at( i + lastIndex ).format(), TRUE ); + } + } + lastIndex += len; + } + + idx += s.length(); + } + string->format( -1, FALSE ); + int dy = string->rect().y() + string->rect().height() - y; + QTextParag *p = string; + p->setParagId( p->prev()->paragId() + 1 ); + p = p->next(); + while ( p ) { + p->setParagId( p->prev()->paragId() + 1 ); + p->move( dy ); + p->invalidate( 0 ); + p->setEndState( -1 ); + p = p->next(); + } + } + + int h = string->rect().height(); + string->format( -1, TRUE ); + if ( h != string->rect().height() ) + invalidateNested(); + else if ( doc && doc->parent() ) + doc->nextDoubleBuffered = TRUE; +} + +void QTextCursor::gotoLeft() +{ + tmpIndex = -1; + + if ( idx > 0 ) { + idx--; + } else if ( string->prev() ) { + string = string->prev(); + while ( !string->isVisible() ) + string = string->prev(); + idx = string->length() - 1; + } else { + if ( nested ) { + pop(); + processNesting( Prev ); + if ( idx == -1 ) { + pop(); + if ( idx > 0 ) { + idx--; + } else if ( string->prev() ) { + string = string->prev(); + idx = string->length() - 1; + } + } + } + } + + if ( string->at( idx )->isCustom() && + string->at( idx )->customItem()->isNested() ) { + processNesting( EnterEnd ); + } +} + +void QTextCursor::push() +{ + indices.push( idx ); + parags.push( string ); + xOffsets.push( ox ); + yOffsets.push( oy ); + nestedStack.push( nested ); +} + +void QTextCursor::pop() +{ + if ( !doc ) + return; + idx = indices.pop(); + string = parags.pop(); + ox = xOffsets.pop(); + oy = yOffsets.pop(); + if ( doc->parent() ) + doc = doc->parent(); + nested = nestedStack.pop(); +} + +void QTextCursor::restoreState() +{ + while ( !indices.isEmpty() ) + pop(); +} + +bool QTextCursor::place( const QPoint &p, QTextParag *s ) +{ + QPoint pos( p ); + QRect r; + if ( pos.y() < s->rect().y() ) + pos.setY( s->rect().y() ); + while ( s ) { + r = s->rect(); + r.setWidth( doc ? doc->width() : QWIDGETSIZE_MAX ); + if ( !s->next() || ( pos.y() >= r.y() && pos.y() < s->next()->rect().y() ) ) + break; + s = s->next(); + } + + if ( !s ) + return FALSE; + + setParag( s, FALSE ); + int y = s->rect().y(); + int lines = s->lines(); + QTextStringChar *chr = 0; + int index = 0; + int i = 0; + int cy = 0; + //int ch = 0; + for ( ; i < lines; ++i ) { + chr = s->lineStartOfLine( i, &index ); + cy = s->lineY( i ); + //ch = s->lineHeight( i ); + if ( !chr ) + return FALSE; + if ( i < lines - 1 && pos.y() >= y + cy && pos.y() <= y + s->lineY( i+1 ) ) + break; + } + int nextLine; + if ( i < lines - 1 ) + s->lineStartOfLine( i+1, &nextLine ); + else + nextLine = s->length(); + i = index; + int x = s->rect().x(); + if ( pos.x() < x ) + pos.setX( x + 1 ); + int cw; + int curpos = s->length()-1; + int dist = 10000000; + bool inCustom = FALSE; + while ( i < nextLine ) { + chr = s->at(i); + int cpos = x + chr->x; + cw = s->string()->width( i ); + if ( chr->isCustom() && chr->customItem()->isNested() ) { + if ( pos.x() >= cpos && pos.x() <= cpos + cw && + pos.y() >= y + cy && pos.y() <= y + cy + chr->height() ) { + inCustom = TRUE; + curpos = i; + break; + } + } else { + if( chr->rightToLeft ) + cpos += cw; + int d = cpos - pos.x(); + bool dm = d < 0 ? !chr->rightToLeft : chr->rightToLeft; + if ( QABS( d ) < dist || (dist == d && dm == TRUE ) ) { + dist = QABS( d ); + curpos = i; + } + } + i++; + } + setIndex( curpos, FALSE ); + + if ( inCustom && doc && parag()->at( curpos )->isCustom() && parag()->at( curpos )->customItem()->isNested() ) { + gotoIntoNested( pos ); + QPoint p( pos.x() - offsetX(), pos.y() - offsetY() ); + if ( !place( p, document()->firstParag() ) ) + pop(); + } + return TRUE; +} + +void QTextCursor::processNesting( Operation op ) +{ + if ( !doc ) + return; + push(); + ox = 0; + int bl, y; + string->lineHeightOfChar( idx, &bl, &y ); + oy = y + string->rect().y(); + nested = TRUE; + + switch ( op ) { + case EnterBegin: + string->at( idx )->customItem()->enter( this, doc, string, idx, ox, oy ); + break; + case EnterEnd: + string->at( idx )->customItem()->enter( this, doc, string, idx, ox, oy, TRUE ); + break; + case Next: + string->at( idx )->customItem()->next( this, doc, string, idx, ox, oy ); + break; + case Prev: + string->at( idx )->customItem()->prev( this, doc, string, idx, ox, oy ); + break; + case Down: + string->at( idx )->customItem()->down( this, doc, string, idx, ox, oy ); + break; + case Up: + string->at( idx )->customItem()->up( this, doc, string, idx, ox, oy ); + break; + } +} + +void QTextCursor::gotoRight() +{ + tmpIndex = -1; + + if ( string->at( idx )->isCustom() && + string->at( idx )->customItem()->isNested() ) { + processNesting( EnterBegin ); + return; + } + + if ( idx < string->length() - 1 ) { + idx++; + } else if ( string->next() ) { + string = string->next(); + while ( !string->isVisible() ) + string = string->next(); + idx = 0; + } else { + if ( nested ) { + pop(); + processNesting( Next ); + if ( idx == -1 ) { + pop(); + if ( idx < string->length() - 1 ) { + idx++; + } else if ( string->next() ) { + string = string->next(); + idx = 0; + } + } + } + } +} + +void QTextCursor::gotoUp() +{ + int indexOfLineStart; + int line; + QTextStringChar *c = string->lineStartOfChar( idx, &indexOfLineStart, &line ); + if ( !c ) + return; + + tmpIndex = QMAX( tmpIndex, idx - indexOfLineStart ); + if ( indexOfLineStart == 0 ) { + if ( !string->prev() ) { + if ( !nested ) + return; + pop(); + processNesting( Up ); + if ( idx == -1 ) { + pop(); + if ( !string->prev() ) + return; + idx = tmpIndex = 0; + } else { + tmpIndex = -1; + return; + } + } + string = string->prev(); + while ( !string->isVisible() ) + string = string->prev(); + int lastLine = string->lines() - 1; + if ( !string->lineStartOfLine( lastLine, &indexOfLineStart ) ) + return; + if ( indexOfLineStart + tmpIndex < string->length() ) + idx = indexOfLineStart + tmpIndex; + else + idx = string->length() - 1; + } else { + --line; + int oldIndexOfLineStart = indexOfLineStart; + if ( !string->lineStartOfLine( line, &indexOfLineStart ) ) + return; + if ( indexOfLineStart + tmpIndex < oldIndexOfLineStart ) + idx = indexOfLineStart + tmpIndex; + else + idx = oldIndexOfLineStart - 1; + } +} + +void QTextCursor::gotoDown() +{ + int indexOfLineStart; + int line; + QTextStringChar *c = string->lineStartOfChar( idx, &indexOfLineStart, &line ); + if ( !c ) + return; + + tmpIndex = QMAX( tmpIndex, idx - indexOfLineStart ); + if ( line == string->lines() - 1 ) { + if ( !string->next() ) { + if ( !nested ) + return; + pop(); + processNesting( Down ); + if ( idx == -1 ) { + pop(); + if ( !string->next() ) + return; + idx = tmpIndex = 0; + } else { + tmpIndex = -1; + return; + } + } + string = string->next(); + while ( !string->isVisible() ) + string = string->next(); + if ( !string->lineStartOfLine( 0, &indexOfLineStart ) ) + return; + int end; + if ( string->lines() == 1 ) + end = string->length(); + else + string->lineStartOfLine( 1, &end ); + if ( indexOfLineStart + tmpIndex < end ) + idx = indexOfLineStart + tmpIndex; + else + idx = end - 1; + } else { + ++line; + int end; + if ( line == string->lines() - 1 ) + end = string->length(); + else + string->lineStartOfLine( line + 1, &end ); + if ( !string->lineStartOfLine( line, &indexOfLineStart ) ) + return; + if ( indexOfLineStart + tmpIndex < end ) + idx = indexOfLineStart + tmpIndex; + else + idx = end - 1; + } +} + +void QTextCursor::gotoLineEnd() +{ + tmpIndex = -1; + int indexOfLineStart; + int line; + QTextStringChar *c = string->lineStartOfChar( idx, &indexOfLineStart, &line ); + if ( !c ) + return; + + if ( line == string->lines() - 1 ) { + idx = string->length() - 1; + } else { + c = string->lineStartOfLine( ++line, &indexOfLineStart ); + indexOfLineStart--; + idx = indexOfLineStart; + } +} + +void QTextCursor::gotoLineStart() +{ + tmpIndex = -1; + int indexOfLineStart; + int line; + QTextStringChar *c = string->lineStartOfChar( idx, &indexOfLineStart, &line ); + if ( !c ) + return; + + idx = indexOfLineStart; +} + +void QTextCursor::gotoHome() +{ + tmpIndex = -1; + if ( doc ) + string = doc->firstParag(); + idx = 0; +} + +void QTextCursor::gotoEnd() +{ + if ( doc && !doc->lastParag()->isValid() ) + { + qDebug("Last parag, %d, is invalid - aborting gotoEnd() !",doc->lastParag()->paragId()); + return; + } + + tmpIndex = -1; + if ( doc ) + string = doc->lastParag(); + idx = string->length() - 1; + qDebug("gotoEnd: going to parag %d, index %d",string->paragId(),idx); +} + +void QTextCursor::gotoPageUp( int visibleHeight ) +{ + tmpIndex = -1; + QTextParag *s = string; + int h = visibleHeight; + int y = s->rect().y(); + while ( s ) { + if ( y - s->rect().y() >= h ) + break; + s = s->prev(); + } + + if ( !s && doc ) + s = doc->firstParag(); + + string = s; + idx = 0; +} + +void QTextCursor::gotoPageDown( int visibleHeight ) +{ + tmpIndex = -1; + QTextParag *s = string; + int h = visibleHeight; + int y = s->rect().y(); + while ( s ) { + if ( s->rect().y() - y >= h ) + break; + s = s->next(); + } + + if ( !s && doc ) { + s = doc->lastParag(); + string = s; + idx = string->length() - 1; + return; + } + + if ( !s->isValid() ) + return; + + string = s; + idx = 0; +} + +void QTextCursor::gotoWordLeft() +{ + gotoLeft(); + tmpIndex = -1; + QTextString *s = string->string(); + bool allowSame = FALSE; + for ( int i = idx - 1; i >= 0; --i ) { + if ( s->at( i ).c.isSpace() || s->at( i ).c == '\t' ) { + if ( !allowSame && s->at( i ).c == s->at( idx ).c ) + continue; + idx = i + 1; + return; + } + if ( !allowSame && s->at( i ).c != s->at( idx ).c ) + allowSame = TRUE; + } + + idx = 0; +} + +void QTextCursor::gotoWordRight() +{ + tmpIndex = -1; + QTextString *s = string->string(); + bool allowSame = FALSE; + for ( int i = idx + 1; i < (int)s->length(); ++i ) { + if ( s->at( i ).c.isSpace() || s->at( i ).c == '\t' ) { + if ( !allowSame && s->at( i ).c == s->at( idx ).c ) + continue; + idx = i; + return; + } + if ( !allowSame && s->at( i ).c != s->at( idx ).c ) + allowSame = TRUE; + } + + if ( string->next() ) { + string = string->next(); + while ( !string->isVisible() ) + string = string->next(); + idx = 0; + } else { + gotoLineEnd(); + } +} + +bool QTextCursor::atParagStart() +{ + return idx == 0; +} + +bool QTextCursor::atParagEnd() +{ + return idx == string->length() - 1; +} + +void QTextCursor::splitAndInsertEmptyParag( bool ind, bool updateIds ) +{ + if ( !doc ) + return; + tmpIndex = -1; + QTextFormat *f = 0; + if ( doc->useFormatCollection() ) { + f = string->at( idx )->format(); + if ( idx == string->length() - 1 && idx > 0 ) + f = string->at( idx - 1 )->format(); + if ( f->isMisspelled() ) { + f->removeRef(); + f = doc->formatCollection()->format( f->font(), f->color() ); + } + } + + if ( atParagStart() ) { + QTextParag *p = string->prev(); + QTextParag *s = doc->createParag( doc, p, string, updateIds ); + if ( f ) + s->setFormat( 0, 1, f, TRUE ); + s->copyParagData( string ); + if ( ind ) { + s->indent(); + s->format(); + indent(); + string->format(); + } + } else if ( atParagEnd() ) { + QTextParag *n = string->next(); + QTextParag *s = doc->createParag( doc, string, n, updateIds ); + if ( f ) + s->setFormat( 0, 1, f, TRUE ); + s->copyParagData( string ); + if ( ind ) { + int oi, ni; + s->indent( &oi, &ni ); + string = s; + idx = ni; + } else { + string = s; + idx = 0; + } + } else { + QString str = string->string()->toString().mid( idx, 0xFFFFFF ); + QTextParag *n = string->next(); + QTextParag *s = doc->createParag( doc, string, n, updateIds ); + s->copyParagData( string ); + s->remove( 0, 1 ); + s->append( str, TRUE ); + for ( uint i = 0; i < str.length(); ++i ) { + s->setFormat( i, 1, string->at( idx + i )->format(), TRUE ); + if ( string->at( idx + i )->isCustom() ) { + QTextCustomItem * item = string->at( idx + i )->customItem(); + s->at( i )->setCustomItem( item ); + string->at( idx + i )->loseCustomItem(); +#if 0 + s->addCustomItem(); + string->removeCustomItem(); +#endif + doc->unregisterCustomItem( item, string ); + doc->registerCustomItem( item, s ); + } + } + string->truncate( idx ); + if ( ind ) { + int oi, ni; + s->indent( &oi, &ni ); + string = s; + idx = ni; + } else { + string = s; + idx = 0; + } + } + + invalidateNested(); +} + +bool QTextCursor::remove() +{ + tmpIndex = -1; + if ( !atParagEnd() ) { + string->remove( idx, 1 ); + int h = string->rect().height(); + string->format( -1, TRUE ); + if ( h != string->rect().height() ) + invalidateNested(); + else if ( doc && doc->parent() ) + doc->nextDoubleBuffered = TRUE; + return FALSE; + } else if ( string->next() ) { + + if ( string->length() == 1 ) { + string->next()->setPrev( string->prev() ); + if ( string->prev() ) + string->prev()->setNext( string->next() ); + QTextParag *p = string->next(); + delete string; + string = p; + string->invalidate( 0 ); + QTextParag *s = string; + while ( s ) { + s->id = s->p ? s->p->id + 1 : 0; + s->state = -1; + s->needPreProcess = TRUE; + s->changed = TRUE; + s = s->n; + } + string->format(); + } else { + string->join( string->next() ); + } + invalidateNested(); + return TRUE; + } + return FALSE; +} + +void QTextCursor::killLine() +{ + if ( atParagEnd() ) + return; + string->remove( idx, string->length() - idx - 1 ); + int h = string->rect().height(); + string->format( -1, TRUE ); + if ( h != string->rect().height() ) + invalidateNested(); + else if ( doc && doc->parent() ) + doc->nextDoubleBuffered = TRUE; +} + +void QTextCursor::indent() +{ + int oi = 0, ni = 0; + string->indent( &oi, &ni ); + if ( oi == ni ) + return; + + if ( idx >= oi ) + idx += ni - oi; + else + idx = ni; +} + +void QTextCursor::setDocument( QTextDocument *d ) +{ + doc = d; + string = d->firstParag(); + idx = 0; + nested = FALSE; + restoreState(); + tmpIndex = -1; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextDocument::QTextDocument( QTextDocument *p ) + : par( p ), parParag( 0 ), tc( 0 ), tArray( 0 ), tStopWidth( 0 ) +{ + fCollection = new QTextFormatCollection; + init(); +} + +QTextDocument::QTextDocument( QTextDocument *p, QTextFormatCollection *f ) + : par( p ), parParag( 0 ), tc( 0 ), tArray( 0 ), tStopWidth( 0 ) +{ + fCollection = f; + init(); +} + +void QTextDocument::init() +{ +//ANY_CHARSET_BEGIN + m_assignedFontMap = false; + charsetMap = new QMap; +// ASSERT(m_charsetMap); + + if (!m_charsetMap) { + m_assignedFontMap = true; + m_charsetMap = charsetMap; + } +//ANY_CHARSET_END + +#if defined(PARSER_DEBUG) + qDebug( "new QTextDocument (%p)", this ); +#endif + if ( par ) + par->insertChild( this ); + pProcessor = 0; + useFC = TRUE; + pFormatter = 0; + indenter = 0; + fParag = 0; + txtFormat = Qt::AutoText; + preferRichText = FALSE; + pages = FALSE; + focusIndicator.parag = 0; + minw = 0; + minwParag = 0; + align = Qt3::AlignAuto; + nSelections = 1; + addMargs = FALSE; + + sheet_ = QStyleSheet::defaultSheet(); + factory_ = QMimeSourceFactory::defaultFactory(); + contxt = QString::null; + fCollection->setStyleSheet( sheet_ ); + + linkC = Qt::blue; + underlLinks = TRUE; + backBrush = 0; + buf_pixmap = 0; + nextDoubleBuffered = FALSE; + + if ( par ) + withoutDoubleBuffer = par->withoutDoubleBuffer; + else + withoutDoubleBuffer = FALSE; + + lParag = fParag = createParag( this, 0, 0 ); + tmpCursor = 0; + + cx = 0; + cy = 2; + if ( par ) + cx = cy = 0; + cw = 600; + vw = 0; + flow_ = new QTextFlow; + flow_->setWidth( cw ); + + selectionColors[ Standard ] = QApplication::palette().color( QPalette::Active, QColorGroup::Highlight ); + selectionText[ Standard ] = TRUE; + commandHistory = new QTextCommandHistory( 100 ); + tStopWidth = formatCollection()->defaultFormat()->width( 'x' ) * 8; +} + +QTextDocument::~QTextDocument() +{ + if ( par ) + par->removeChild( this ); + clear(); + delete commandHistory; + delete flow_; + if ( !par ) + delete pFormatter; + delete fCollection; + delete pProcessor; + delete buf_pixmap; + delete indenter; + delete backBrush; + if ( tArray ) + delete [] tArray; +//ANY_CHARSET_BEGIN + if (charsetMap) { + delete charsetMap; + charsetMap = 0; + if (m_assignedFontMap) + m_charsetMap = 0; + m_assignedFontMap = false; + } +//ANY_CHARSET_END +} + +void QTextDocument::clear( bool createEmptyParag ) +{ + if ( flow_ ) + flow_->clear(); + while ( fParag ) { + QTextParag *p = fParag->next(); + delete fParag; + fParag = p; + } + fParag = lParag = 0; + if ( createEmptyParag ) + fParag = lParag = createParag( this ); + selections.clear(); +} + +int QTextDocument::widthUsed() const +{ + QTextParag *p = fParag; + int w = 0; + while ( p ) { + int a = p->alignment(); + p->setAlignment( Qt::AlignLeft ); + p->invalidate( 0 ); + p->format(); + w = QMAX( w, p->rect().width() ); + p->setAlignment( a ); + p->invalidate( 0 ); + p = p->next(); + } + return w; +} + +QTextParag *QTextDocument::createParag( QTextDocument *d, QTextParag *pr, QTextParag *nx, bool updateIds ) +{ + return new QTextParag( d, pr, nx, updateIds ); +} + +bool QTextDocument::setMinimumWidth( int w, QTextParag *p ) +{ + if ( w == -1 ) { + minw = 0; + p = 0; + } + if ( p == minwParag ) { + minw = w; + emit minimumWidthChanged( minw ); + } else if ( w > minw ) { + minw = w; + minwParag = p; + emit minimumWidthChanged( minw ); + } + cw = QMAX( minw, cw ); + return TRUE; +} + +void QTextDocument::setPlainText( const QString &text ) +{ + clear(); + preferRichText = FALSE; + + QString s; + lParag = 0; + QStringList lst = QStringList::split( '\n', text, TRUE ); + for ( QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) { + lParag = createParag( this, lParag, 0 ); + if ( !fParag ) + fParag = lParag; + s = *it; + if ( !s.isEmpty() ) { + if ( s[ (int)s.length() - 1 ] == '\r' ) + s.remove( s.length() - 1, 1 ); + lParag->append( s ); + } + } + + if ( !lParag ) + lParag = fParag = createParag( this, 0, 0 ); +} + +struct Q_EXPORT Tag { + Tag(){} + Tag( const QString&n, const QStyleSheetItem* s ):name(n),style(s) { + wsm = QStyleSheetItem::WhiteSpaceNormal; + } + QString name; + const QStyleSheetItem* style; + QStyleSheetItem::WhiteSpaceMode wsm; + QTextFormat format; + +#if defined(Q_FULL_TEMPLATE_INSTANTIATION) + bool operator==( const Tag& ) const { return FALSE; } +#endif +}; + +#define NEWPAR if ( !curpar || ( curtag.name != "table" && curtag.name != "li" ) || curpar->length() > 1 ) { if ( !hasNewPar ) curpar = createParag( this, curpar ); \ + hasNewPar = TRUE; \ + QPtrVector vec( tags.count() ); \ + int i = 0; \ + for ( QValueStack::Iterator it = tags.begin(); it != tags.end(); ++it ) \ + vec.insert( i++, (*it).style ); \ + curpar->setStyleSheetItems( vec ); }while(FALSE) +#define NEWPAROPEN(nstyle) if ( !curpar || ( curtag.name != "table" && curtag.name != "li" ) || curpar->length() > 1 ) { if ( !hasNewPar ) curpar = createParag( this, curpar ); \ + hasNewPar = TRUE; \ + QPtrVector vec( tags.count()+1 ); \ + int i = 0; \ + for ( QValueStack::Iterator it = tags.begin(); it != tags.end(); ++it ) \ + vec.insert( i++, (*it).style ); \ + vec.insert( i, nstyle ); \ + curpar->setStyleSheetItems( vec ); }while(FALSE) + + +void QTextDocument::setRichText( const QString &text, const QString &context ) +{ + setTextFormat( Qt::RichText ); + if ( !context.isEmpty() ) + setContext( context ); + clear(); + fParag = lParag = createParag( this ); + setRichTextInternal( text ); +} + +void QTextDocument::setRichTextInternal( const QString &text ) +{ + QTextParag* curpar = lParag; + int pos = 0; + QValueStack tags; + Tag curtag( "", sheet_->item("") ); + curtag.format = *formatCollection()->defaultFormat(); + bool space = FALSE; + + QString doc = text; + int depth = 0; + bool hasNewPar = TRUE; + QStyleSheetItem::ListStyle curListStyle; + while ( pos < int( doc.length() ) ) { + if (hasPrefix(doc, pos, '<' ) ){ + if (!hasPrefix(doc, pos+1, QChar('/'))) { + // open tag + QMap attr; + bool emptyTag = FALSE; + QString tagname = parseOpenTag(doc, pos, attr, emptyTag); + if ( tagname.isEmpty() ) + continue; // nothing we could do with this, probably parse error + while ( eat( doc, pos, '\n' ) ) + ; // eliminate newlines right after openings + + const QStyleSheetItem* nstyle = sheet_->item(tagname); + if ( nstyle ) { + // we might have to close some 'forgotten' tags + while ( !nstyle->allowedInContext( curtag.style ) ) { + QString msg; + msg.sprintf( "QText Warning: Document not valid ( '%s' not allowed in '%s' #%d)", + tagname.ascii(), curtag.style->name().ascii(), pos); + sheet_->error( msg ); + if ( tags.isEmpty() ) + break; + curtag = tags.pop(); + depth--; + } + if ( nstyle->name() == "ol" ) { + curListStyle = nstyle->listStyle(); + QMap::Iterator it = attr.find( "type" ); + if ( it != attr.end() ) { + QString sl = *it; + if ( sl == "1" ) { + curListStyle = QStyleSheetItem::ListDecimal; + } else if ( sl == "a" ) { + curListStyle = QStyleSheetItem::ListLowerAlpha; + } else if ( sl == "A" ) { + curListStyle = QStyleSheetItem::ListUpperAlpha; + } else { + sl = sl.lower(); + if ( sl == "square" ) + curListStyle = QStyleSheetItem::ListSquare; + else if ( sl == "disc" ) + curListStyle = QStyleSheetItem::ListDisc; + else if ( sl == "circle" ) + curListStyle = QStyleSheetItem::ListCircle; + } + } + } + } + + QTextCustomItem* custom = 0; + // some well-known empty tags + if ( tagname == "br" ) { + emptyTag = TRUE; + NEWPAR; + } else if ( tagname == "hr" ) { + emptyTag = TRUE; + custom = sheet_->tag( tagname, attr, contxt, *factory_ , emptyTag, this ); + NEWPAR; + } else if ( tagname == "table" ) { + QTextFormat format = curtag.format.makeTextFormat( nstyle, attr ); + custom = parseTable( attr, format, doc, pos, curpar ); + (void ) eatSpace( doc, pos ); + emptyTag = TRUE; + } else { + custom = sheet_->tag( tagname, attr, contxt, *factory_ , emptyTag, this ); + } + + if ( !nstyle && !custom ) // we have no clue what this tag could be, ignore it + continue; + + if ( custom ) { + QTextFormat format = curtag.format.makeTextFormat( nstyle, attr ); + int index = curpar->length() - 1; + if ( index < 0 ) + index = 0; + curpar->append( QChar('b') ); + curpar->setFormat( index, 1, &format ); + curpar->at( index )->setCustomItem( custom ); + curpar->addCustomItem(); + registerCustomItem( custom, curpar ); + hasNewPar = FALSE; + } else if ( !emptyTag ) { + tags += curtag; + if ( nstyle ) { + // ignore whitespace for inline elements if there was already one + if ( nstyle->whiteSpaceMode() == QStyleSheetItem::WhiteSpaceNormal + && ( space || nstyle->displayMode() != QStyleSheetItem::DisplayInline ) ) + eatSpace( doc, pos ); + + // some styles are not self nesting + if ( nstyle == curtag.style && !nstyle->selfNesting() ) + (void) tags.pop(); + + if ( curtag.style->displayMode() == QStyleSheetItem::DisplayListItem ) + hasNewPar = FALSE; // we want empty paragraphs in this case + if ( nstyle->displayMode() != QStyleSheetItem::DisplayInline ) + NEWPAROPEN(nstyle); + if ( nstyle->displayMode() == QStyleSheetItem::DisplayListItem ) + curpar->setListStyle( curListStyle ); + curtag.style = nstyle; + curtag.wsm = nstyle->whiteSpaceMode(); + curtag.format = curtag.format.makeTextFormat( nstyle, attr ); + if ( nstyle->displayMode() != QStyleSheetItem::DisplayInline ) + curpar->setFormat( &curtag.format ); + if ( nstyle->name() == "li" ) { + if ( attr.find( "value" ) != attr.end() ) + curpar->setListValue( (*attr.find( "value" )).toInt() ); + } + } + curtag.name = tagname; + if ( curtag.name == "a" && attr.find( "name" ) != attr.end() && doc[ pos] == '<' ) // hack to be sure + doc.insert( pos, " " ); // formats or inserted + if ( attr.find( "align" ) != attr.end() && + ( curtag.name == "p" || curtag.name == "li" || curtag.name[ 0 ] == 'h' ) ) { + if ( *attr.find( "align" ) == "center" ) + curpar->setAlignment( Qt::AlignCenter ); + else if ( *attr.find( "align" ) == "right" ) + curpar->setAlignment( Qt::AlignRight ); + else if ( *attr.find( "align" ) == "justify" ) + curpar->setAlignment( Qt3::AlignJustify ); + } + depth++; + } + } else { + // close tag + QString tagname = parseCloseTag( doc, pos ); + if ( tagname.isEmpty() ) + continue; // nothing we could do with this, probably parse error + while ( eat( doc, pos, '\n' ) ) + ; // eliminate newlines right after closings + if ( !sheet_->item( tagname ) ) // ignore unknown tags + continue; + depth--; + while ( curtag.name != tagname ) { + QString msg; + msg.sprintf( "QText Warning: Document not valid ( '%s' not closed before '%s' #%d)", + curtag.name.ascii(), tagname.ascii(), pos); + sheet_->error( msg ); + if ( !hasNewPar && curtag.style->displayMode() != QStyleSheetItem::DisplayInline + && curtag.wsm == QStyleSheetItem::WhiteSpaceNormal ) { + eatSpace( doc, pos ); + NEWPAR; + } + if ( tags.isEmpty() ) + break; + curtag = tags.pop(); + depth--; + } + + if ( !hasNewPar && curtag.style->displayMode() != QStyleSheetItem::DisplayInline + && curtag.wsm == QStyleSheetItem::WhiteSpaceNormal ) { + eatSpace( doc, pos ); + NEWPAR; + } + if ( !tags.isEmpty() ) + curtag = tags.pop(); + } + } else { + // normal contents + QString s; + QChar c; + bool hadNonSpace = !curpar->string()->toString().simplifyWhiteSpace().isEmpty(); + while ( pos < int( doc.length() ) && !hasPrefix(doc, pos, '<' ) ){ + c = parseChar( doc, pos, curtag.wsm ); + space = c.isSpace(); + hadNonSpace = hadNonSpace || !space; + if ( c == '\n' ) // happens in WhiteSpacePre mode + break; + if ( !hadNonSpace && space && curtag.wsm == QStyleSheetItem::WhiteSpaceNormal ) + continue; + if ( c == '\r' ) + continue; + s += c; + } + if ( !s.isEmpty() && curtag.style->displayMode() != QStyleSheetItem::DisplayNone ) { + hasNewPar = FALSE; + int index = curpar->length() - 1; + if ( index < 0 ) + index = 0; + curpar->append( s ); + curpar->setFormat( index, s.length(), &curtag.format ); + } + if ( c == '\n' ) + NEWPAR; + + } + } +} + +void QTextDocument::setText( const QString &text, const QString &context ) +{ + oText = text; + focusIndicator.parag = 0; + selections.clear(); + if ( txtFormat == Qt::AutoText && QStyleSheet::mightBeRichText( text ) || + txtFormat == Qt::RichText ) + setRichText( text, context ); + else + setPlainText( text ); +} + +QString QTextDocument::plainText( QTextParag *p ) const +{ + if ( !p ) { + QString buffer; + QString s; + QTextParag *p = fParag; + while ( p ) { + s = p->string()->toString(); + s.remove( s.length() - 1, 1 ); + if ( p->next() ) + s += "\n"; + buffer += s; + p = p->next(); + } + return buffer; + } else { + return p->string()->toString(); + } +} + +static QString align_to_string( const QString &tag, int a ) +{ + if ( tag == "p" || tag == "li" || tag[ 0 ] == 'h' ) { + if ( a & Qt::AlignRight ) + return " align=right "; + if ( a & Qt::AlignCenter ) + return " align=center "; + if ( a & Qt3::AlignJustify ) + return " align=justify "; + } + return ""; +} + +QString QTextDocument::richText( QTextParag *p ) const +{ + QString s; + if ( !p ) { + p = fParag; + QPtrVector lastItems, items; + while ( p ) { + items = p->styleSheetItems(); + if ( items.size() ) { + QStyleSheetItem *item = items[ items.size() - 1 ]; + items.resize( items.size() - 1 ); + if ( items.size() > lastItems.size() ) { + for ( int i = lastItems.size(); i < (int)items.size(); ++i ) { + if ( items[ i ]->name().isEmpty() ) + continue; + if ( items[ i ]->name() == "li" && p->listValue() != -1 ) + s += "
  • listValue() ) + "\">"; + else + s += "<" + items[ i ]->name() + align_to_string( items[ i ]->name(), p->alignment() ) + ">"; + } + } else { + QString end; + for ( int i = items.size(); i < (int)lastItems.size(); ++i ) { + if ( lastItems[ i ]->name().isEmpty() ) + continue; + end.prepend( "name() + ">" ); + } + s += end; + } + lastItems = items; + if ( item->name() == "li" && p->listValue() != -1 ) + s += "
  • ") + i18n("Created by") + QString::fromLatin1(" BibleTime
  • listValue() ) + "\">"; + else + s += "<" + item->name() + align_to_string( item->name(), p->alignment() ) + ">" + + p->richText() + "name() + ">\n"; + } else { + QString end; + for ( int i = 0; i < (int)lastItems.size(); ++i ) { + if ( lastItems[ i ]->name().isEmpty() ) + continue; + end.prepend( "name() + ">" ); + } + s += end; + s += "alignment() ) + ">" + p->richText() + "

    \n"; + lastItems = items; + } + p = p->next(); + } + } else { + s = p->richText(); + } + + return s; +} + +QString QTextDocument::text() const +{ + if ( plainText().simplifyWhiteSpace().isEmpty() ) + return QString::null; + if ( txtFormat == Qt::AutoText && preferRichText || txtFormat == Qt::RichText ) + return richText(); + return plainText( 0 ); +} + +QString QTextDocument::text( int parag ) const +{ + QTextParag *p = paragAt( parag ); + if ( !p ) + return QString::null; + + if ( txtFormat == Qt::AutoText && preferRichText || txtFormat == Qt::RichText ) + return richText( p ); + else + return plainText( p ); +} + +void QTextDocument::invalidate() +{ + QTextParag *s = fParag; + while ( s ) { + s->invalidate( 0 ); + s = s->next(); + } +} + +void QTextDocument::selectionStart( int id, int ¶gId, int &index ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return; + QTextDocumentSelection &sel = *it; + paragId = !sel.swapped ? sel.startCursor.parag()->paragId() : sel.endCursor.parag()->paragId(); + index = !sel.swapped ? sel.startCursor.index() : sel.endCursor.index(); +} + +QTextCursor QTextDocument::selectionStartCursor( int id) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return QTextCursor( this ); + QTextDocumentSelection &sel = *it; + if ( sel.swapped ) + return sel.endCursor; + return sel.startCursor; +} + +QTextCursor QTextDocument::selectionEndCursor( int id) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return QTextCursor( this ); + QTextDocumentSelection &sel = *it; + if ( !sel.swapped ) + return sel.endCursor; + return sel.startCursor; +} + +void QTextDocument::selectionEnd( int id, int ¶gId, int &index ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return; + QTextDocumentSelection &sel = *it; + paragId = sel.swapped ? sel.startCursor.parag()->paragId() : sel.endCursor.parag()->paragId(); + index = sel.swapped ? sel.startCursor.index() : sel.endCursor.index(); +} + +QTextParag *QTextDocument::selectionStart( int id ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return 0; + QTextDocumentSelection &sel = *it; + if ( sel.startCursor.parag()->paragId() < sel.endCursor.parag()->paragId() ) + return sel.startCursor.parag(); + return sel.endCursor.parag(); +} + +QTextParag *QTextDocument::selectionEnd( int id ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return 0; + QTextDocumentSelection &sel = *it; + if ( sel.startCursor.parag()->paragId() > sel.endCursor.parag()->paragId() ) + return sel.startCursor.parag(); + return sel.endCursor.parag(); +} + +void QTextDocument::addSelection( int id ) +{ + nSelections = QMAX( nSelections, id + 1 ); +} + +bool QTextDocument::setSelectionEnd( int id, QTextCursor *cursor ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return FALSE; + + QTextDocumentSelection &sel = *it; + + QTextCursor start = sel.startCursor; + QTextCursor end = *cursor; + + if ( sel.endCursor.parag() == end.parag() ) { + QTextCursor c1 = start; + QTextCursor c2 = end; + if ( sel.swapped ) { + c1 = end; + c2 = start; + } + + c1.parag()->removeSelection( id ); + c2.parag()->removeSelection( id ); + if ( c1.parag() != c2.parag() ) { + c1.parag()->setSelection( id, c1.index(), c1.parag()->length() - 1 ); + c2.parag()->setSelection( id, 0, c2.index() ); + } else { + c1.parag()->setSelection( id, QMIN( c1.index(), c2.index() ), QMAX( c1.index(), c2.index() ) ); + } + + sel.startCursor = start; + sel.endCursor = end; + if ( sel.startCursor.parag() == sel.endCursor.parag() ) + sel.swapped = sel.startCursor.index() > sel.endCursor.index(); + + return TRUE; + } + + bool inSelection = FALSE; + QTextCursor c( this ); + QTextCursor tmp = sel.startCursor; + if ( sel.swapped ) + tmp = sel.endCursor; + tmp.restoreState(); + QTextCursor tmp2 = *cursor; + tmp2.restoreState(); + c.setParag( tmp.parag()->paragId() < tmp2.parag()->paragId() ? tmp.parag() : tmp2.parag() ); + QTextCursor old; + bool hadStart = FALSE; + bool hadEnd = FALSE; + bool hadStartParag = FALSE; + bool hadEndParag = FALSE; + bool hadOldStart = FALSE; + bool hadOldEnd = FALSE; + bool leftSelection = FALSE; + sel.swapped = FALSE; + while ( TRUE ) { + if ( c == start ) + hadStart = TRUE; + if ( c == end ) + hadEnd = TRUE; + if ( c.parag() == start.parag() ) + hadStartParag = TRUE; + if ( c.parag() == end.parag() ) + hadEndParag = TRUE; + if ( c == sel.startCursor ) + hadOldStart = TRUE; + if ( c == sel.endCursor ) + hadOldEnd = TRUE; + + if ( !sel.swapped && + ( hadEnd && !hadStart || + hadEnd && hadStart && start.parag() == end.parag() && start.index() > end.index() ) ) + sel.swapped = TRUE; + + if ( c == end && hadStartParag || + c == start && hadEndParag ) { + QTextCursor tmp = c; + tmp.restoreState(); + if ( tmp.parag() != c.parag() ) { + int sstart = tmp.parag()->selectionStart( id ); + tmp.parag()->removeSelection( id ); + tmp.parag()->setSelection( id, sstart, tmp.index() ); + } + } + + if ( inSelection && + ( c == end && hadStart || c == start && hadEnd ) ) + leftSelection = TRUE; + else if ( !leftSelection && !inSelection && ( hadStart || hadEnd ) ) + inSelection = TRUE; + + bool noSelectionAnymore = hadOldStart && hadOldEnd && leftSelection && !inSelection && !c.parag()->hasSelection( id ) && c.atParagEnd(); + if ( !c.parag()->hasChanged() ) { + c.parag()->removeSelection( id ); + if ( inSelection ) { + if ( c.parag() == start.parag() && start.parag() == end.parag() ) { + c.parag()->setSelection( id, QMIN( start.index(), end.index() ), QMAX( start.index(), end.index() ) ); + } else if ( c.parag() == start.parag() && !hadEndParag ) { + c.parag()->setSelection( id, start.index(), c.parag()->length() - 1 ); + } else if ( c.parag() == end.parag() && !hadStartParag ) { + c.parag()->setSelection( id, end.index(), c.parag()->length() - 1 ); + } else if ( c.parag() == end.parag() && hadEndParag ) { + c.parag()->setSelection( id, 0, end.index() ); + } else if ( c.parag() == start.parag() && hadStartParag ) { + c.parag()->setSelection( id, 0, start.index() ); + } else { + c.parag()->setSelection( id, 0, c.parag()->length() - 1 ); + } + } + } + + if ( leftSelection ) + inSelection = FALSE; + + old = c; + c.gotoRight(); + if ( old == c || noSelectionAnymore ) + break; + } + + if ( !sel.swapped ) + sel.startCursor.parag()->setSelection( id, sel.startCursor.index(), sel.startCursor.parag()->length() - 1 ); + + sel.startCursor = start; + sel.endCursor = end; + if ( sel.startCursor.parag() == sel.endCursor.parag() ) + sel.swapped = sel.startCursor.index() > sel.endCursor.index(); + + return TRUE; +} + +void QTextDocument::selectAll( int id ) +{ + removeSelection( id ); + + QTextDocumentSelection sel; + sel.swapped = FALSE; + QTextCursor c( this ); + + c.setParag( fParag ); + c.setIndex( 0 ); + sel.startCursor = c; + + c.setParag( lParag ); + c.setIndex( lParag->length() - 1 ); + sel.endCursor = c; + + QTextParag *p = fParag; + while ( p ) { + p->setSelection( id, 0, p->length() - 1 ); + p = p->next(); + } + + selections.insert( id, sel ); +} + +bool QTextDocument::removeSelection( int id ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return FALSE; + + QTextDocumentSelection &sel = *it; + + QTextCursor c( this ); + QTextCursor tmp = sel.startCursor; + if ( sel.swapped ) + tmp = sel.endCursor; + tmp.restoreState(); + c.setParag( tmp.parag() ); + QTextCursor old; + bool hadStart = FALSE; + bool hadEnd = FALSE; + QTextParag *lastParag = 0; + bool leftSelection = FALSE; + bool inSelection = FALSE; + sel.swapped = FALSE; + while ( TRUE ) { + if ( c.parag() == sel.startCursor.parag() ) + hadStart = TRUE; + if ( c.parag() == sel.endCursor.parag() ) + hadEnd = TRUE; + + if ( inSelection && + ( c == sel.endCursor && hadStart || c == sel.startCursor && hadEnd ) ) + leftSelection = TRUE; + else if ( !leftSelection && !inSelection && ( c.parag() == sel.startCursor.parag() || c.parag() == sel.endCursor.parag() ) ) + inSelection = TRUE; + + bool noSelectionAnymore = leftSelection && !inSelection && !c.parag()->hasSelection( id ) && c.atParagEnd(); + + if ( lastParag != c.parag() ) + c.parag()->removeSelection( id ); + + old = c; + lastParag = c.parag(); + c.gotoRight(); + if ( old == c || noSelectionAnymore ) + break; + } + + selections.remove( id ); + return TRUE; +} + +QString QTextDocument::selectedText( int id ) const +{ + // ######## TODO: look at textFormat() and return rich text or plain text (like the text() method!) + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return QString::null; + + QTextDocumentSelection sel = *it; + + QTextCursor c1 = sel.startCursor; + QTextCursor c2 = sel.endCursor; + if ( sel.swapped ) { + c2 = sel.startCursor; + c1 = sel.endCursor; + } + + c2.restoreState(); + c1.restoreState(); + + if ( c1.parag() == c2.parag() ) + return c1.parag()->string()->toString().mid( c1.index(), c2.index() - c1.index() ); + + QString s; + s += c1.parag()->string()->toString().mid( c1.index() ) + "\n"; + QTextParag *p = c1.parag()->next(); + while ( p && p != c2.parag() ) { + s += p->string()->toString() + "\n"; + p = p->next(); + } + s += c2.parag()->string()->toString().left( c2.index() ); + return s; +} + +void QTextDocument::setFormat( int id, QTextFormat *f, int flags ) +{ + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return; + + QTextDocumentSelection sel = *it; + + QTextCursor c1 = sel.startCursor; + QTextCursor c2 = sel.endCursor; + if ( sel.swapped ) { + c2 = sel.startCursor; + c1 = sel.endCursor; + } + + c2.restoreState(); + c1.restoreState(); + + if ( c1.parag() == c2.parag() ) { + c1.parag()->setFormat( c1.index(), c2.index() - c1.index(), f, TRUE, flags ); + return; + } + + c1.parag()->setFormat( c1.index(), c1.parag()->length() - c1.index(), f, TRUE, flags ); + QTextParag *p = c1.parag()->next(); + while ( p && p != c2.parag() ) { + p->setFormat( 0, p->length() /*- 1 removed, bug #26064*/, f, TRUE, flags ); + p = p->next(); + } + c2.parag()->setFormat( 0, c2.index(), f, TRUE, flags ); +} + +void QTextDocument::copySelectedText( int id ) +{ +#ifndef QT_NO_CLIPBOARD + if ( !hasSelection( id ) ) + return; + + QApplication::clipboard()->setText( selectedText( id ) ); +#endif +} + +void QTextDocument::removeSelectedText( int id, QTextCursor *cursor ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return; + + QTextDocumentSelection sel = *it; + + QTextCursor c1 = sel.startCursor; + QTextCursor c2 = sel.endCursor; + if ( sel.swapped ) { + c2 = sel.startCursor; + c1 = sel.endCursor; + } + + // ### no support for editing tables yet + if ( c1.nestedDepth() || c2.nestedDepth() ) + return; + + c2.restoreState(); + c1.restoreState(); + + *cursor = c1; + removeSelection( id ); + + if ( c1.parag() == c2.parag() ) { + c1.parag()->remove( c1.index(), c2.index() - c1.index() ); + return; + } + + if ( c1.index() == 0 ) + cursor->gotoLeft(); + + c1.parag()->remove( c1.index(), c1.parag()->length() - c1.index() ); + QTextParag *p = c1.parag()->next(); + int dy = 0; + QTextParag *tmp; + while ( p && p != c2.parag() ) { + tmp = p->next(); + dy -= p->rect().height(); + delete p; + p = tmp; + } + c2.parag()->remove( 0, c2.index() ); + while ( p ) { + p->move( dy ); + p->invalidate( 0 ); + p->setEndState( -1 ); + p = p->next(); + } + + c1.parag()->join( c2.parag() ); +} + +void QTextDocument::indentSelection( int id ) +{ + QMap::Iterator it = selections.find( id ); + if ( it == selections.end() ) + return; + + QTextDocumentSelection sel = *it; + QTextParag *startParag = sel.startCursor.parag(); + QTextParag *endParag = sel.endCursor.parag(); + if ( sel.endCursor.parag()->paragId() < sel.startCursor.parag()->paragId() ) { + endParag = sel.startCursor.parag(); + startParag = sel.endCursor.parag(); + } + + QTextParag *p = startParag; + while ( p && p != endParag ) { + p->indent(); + p = p->next(); + } +} + +void QTextDocument::addCommand( QTextCommand *cmd ) +{ + commandHistory->addCommand( cmd ); +} + +QTextCursor *QTextDocument::undo( QTextCursor *c ) +{ + return commandHistory->undo( c ); +} + +QTextCursor *QTextDocument::redo( QTextCursor *c ) +{ + return commandHistory->redo( c ); +} + +bool QTextDocument::find( const QString &expr, bool cs, bool wo, bool forward, + int *parag, int *index, QTextCursor *cursor ) +{ + QTextParag *p = forward ? fParag : lParag; + if ( parag ) + p = paragAt( *parag ); + else if ( cursor ) + p = cursor->parag(); + bool first = TRUE; + + while ( p ) { + QString s = p->string()->toString(); + s.remove( s.length() - 1, 1 ); // get rid of trailing space + int start = forward ? 0 : s.length() - 1; + if ( first && index ) + start = *index; + else if ( first ) + start = cursor->index(); + first = FALSE; + int res = forward ? s.find( expr, start, cs ) : s.findRev( expr, start, cs ); + if ( res != -1 ) { + bool ok = TRUE; + if ( wo ) { + int end = res + expr.length(); + if ( ( res == 0 || s[ res ].isSpace() || s[ res ].isPunct() ) && + ( end == (int)s.length() - 1 || s[ end ].isSpace() || s[ end ].isPunct() ) ) + ok = TRUE; + else + ok = FALSE; + } + if ( ok ) { + cursor->setParag( p ); + cursor->setIndex( res ); + setSelectionStart( Standard, cursor ); + cursor->setIndex( res + expr.length() ); + setSelectionEnd( Standard, cursor ); + if ( parag ) + *parag = p->paragId(); + if ( index ) + *index = res; + return TRUE; + } + } + p = forward ? p->next() : p->prev(); + } + + return FALSE; +} + +void QTextDocument::setTextFormat( Qt::TextFormat f ) +{ + txtFormat = f; +} + +Qt::TextFormat QTextDocument::textFormat() const +{ + return txtFormat; +} + +bool QTextDocument::inSelection( int selId, const QPoint &pos ) const +{ + QMap::ConstIterator it = selections.find( selId ); + if ( it == selections.end() ) + return FALSE; + + QTextDocumentSelection sel = *it; + QTextParag *startParag = sel.startCursor.parag(); + QTextParag *endParag = sel.endCursor.parag(); + if ( sel.startCursor.parag() == sel.endCursor.parag() && + sel.startCursor.parag()->selectionStart( selId ) == sel.endCursor.parag()->selectionEnd( selId ) ) + return FALSE; + if ( sel.endCursor.parag()->paragId() < sel.startCursor.parag()->paragId() ) { + endParag = sel.startCursor.parag(); + startParag = sel.endCursor.parag(); + } + + QTextParag *p = startParag; + while ( p ) { + if ( p->rect().contains( pos ) ) { + bool inSel = FALSE; + int selStart = p->selectionStart( selId ); + int selEnd = p->selectionEnd( selId ); + int y = 0; + int h = 0; + for ( int i = 0; i < p->length(); ++i ) { + if ( i == selStart ) + inSel = TRUE; + if ( i == selEnd ) + break; + if ( p->at( i )->lineStart ) { + y = (*p->lineStarts.find( i ))->y; + h = (*p->lineStarts.find( i ))->h; + } + if ( pos.y() - p->rect().y() >= y && pos.y() - p->rect().y() <= y + h ) { + if ( inSel && pos.x() >= p->at( i )->x && + pos.x() <= p->at( i )->x + p->at( i )->format()->width( p->at( i )->c ) ) + return TRUE; + } + } + } + if ( pos.y() < p->rect().y() ) + break; + if ( p == endParag ) + break; + p = p->next(); + } + + return FALSE; +} + +void QTextDocument::doLayout( QPainter *p, int w ) +{ + withoutDoubleBuffer = ( p != 0 ); + flow_->setWidth( w ); + cw = w; + vw = w; + if ( !par && is_printer( p ) ) + fCollection->setPainter( p ); + QTextParag *parag = fParag; + while ( parag ) { + parag->invalidate( 0 ); + if ( is_printer( p ) ) + parag->setPainter( p ); + parag->format(); + parag = parag->next(); + } + if ( !par && is_printer( p ) ) { + fCollection->setPainter( 0 ); + parag = fParag; + while ( parag ) { + parag->setPainter( 0 ); + parag = parag->next(); + } + } +} + +QPixmap *QTextDocument::bufferPixmap( const QSize &s ) +{ + if ( !buf_pixmap ) { + buf_pixmap = new QPixmap( s ); + } else { + if ( buf_pixmap->width() < s.width() || + buf_pixmap->height() < s.height() ) { + buf_pixmap->resize( QMAX( s.width(), buf_pixmap->width() ), + QMAX( s.height(), buf_pixmap->height() ) ); + } + } + + return buf_pixmap; +} + +void QTextDocument::draw( QPainter *p, const QRegion ®, const QColorGroup &cg, const QBrush *paper ) +{ + if ( !firstParag() ) + return; + + if ( paper ) { +//QT2HACK +// p->setBrushOrigin( -(int)p->translationX(), +// -(int)p->translationY() ); + p->setBrushOrigin( -(int)p->worldMatrix().dx(), + -(int)p->worldMatrix().dy() ); + p->fillRect( reg.boundingRect(), *paper ); + } + + QTextParag *parag = firstParag(); + QRect cr; + if ( !reg.isNull() ) + cr = reg.boundingRect(); + while ( parag ) { + if ( !parag->isValid() ) + parag->format(); + int y = parag->rect().y(); + QRect pr( parag->rect() ); + pr.setX( 0 ); + pr.setWidth( QWIDGETSIZE_MAX ); + if ( !reg.isNull() && !cr.isNull() && !cr.intersects( pr ) ) { + parag = parag->next(); + continue; + } + p->translate( 0, y ); + parag->paint( *p, cg, 0, FALSE ); + p->translate( 0, -y ); + parag = parag->next(); + } +} + +void QTextDocument::drawParag( QPainter *p, QTextParag *parag, int cx, int cy, int cw, int ch, + QPixmap *&doubleBuffer, const QColorGroup &cg, + bool drawCursor, QTextCursor *cursor, bool resetChanged ) +{ + QPainter *painter = 0; + if ( resetChanged ) + parag->setChanged( FALSE ); + QRect ir( parag->rect() ); + bool useDoubleBuffer = !parag->document()->parent(); + if ( !useDoubleBuffer && parag->document()->nextDoubleBuffered ) + useDoubleBuffer = TRUE; + if ( p->device()->devType() == QInternal::Printer ) + useDoubleBuffer = FALSE; + + if ( useDoubleBuffer ) { + painter = new QPainter; + if ( cx >= 0 && cy >= 0 ) + ir = ir.intersect( QRect( cx, cy, cw, ch ) ); + if ( !doubleBuffer || + ir.width() > doubleBuffer->width() || + ir.height() > doubleBuffer->height() ) { + doubleBuffer = bufferPixmap( ir.size() ); + painter->begin( doubleBuffer ); + } else { + painter->begin( doubleBuffer ); + } + } else { + painter = p; + painter->translate( ir.x(), ir.y() ); + } + + painter->setBrushOrigin( -ir.x(), -ir.y() ); + + if ( useDoubleBuffer ) { + painter->fillRect( QRect( 0, 0, ir.width(), ir.height() ), + cg.brush( QColorGroup::Base ) ); + } else { + if ( cursor && cursor->parag() == parag ) { + painter->fillRect( QRect( parag->at( cursor->index() )->x, 0, 2, ir.height() ), + cg.brush( QColorGroup::Base ) ); + } + } + + painter->translate( -( ir.x() - parag->rect().x() ), + -( ir.y() - parag->rect().y() ) ); + parag->paint( *painter, cg, drawCursor ? cursor : 0, TRUE, cx, cy, cw, ch ); + if ( !flow()->isEmpty() ) { + painter->translate( 0, -parag->rect().y() ); + QRect cr( cx, cy, cw, ch ); + cr = cr.intersect( QRect( 0, parag->rect().y(), parag->rect().width(), parag->rect().height() ) ); + flow()->drawFloatingItems( painter, cr.x(), cr.y(), cr.width(), cr.height(), cg, FALSE ); + painter->translate( 0, +parag->rect().y() ); + } + + if ( useDoubleBuffer ) { + delete painter; + painter = 0; + p->drawPixmap( ir.topLeft(), *doubleBuffer, QRect( QPoint( 0, 0 ), ir.size() ) ); + } else { + painter->translate( -ir.x(), -ir.y() ); + } + + if ( parag->rect().x() + parag->rect().width() < parag->document()->x() + parag->document()->width() ) { + p->fillRect( parag->rect().x() + parag->rect().width(), parag->rect().y(), + ( parag->document()->x() + parag->document()->width() ) - + ( parag->rect().x() + parag->rect().width() ), + parag->rect().height(), cg.brush( QColorGroup::Base ) ); + } + + if ( verticalBreak() && parag->lastInFrame && parag->document()->flow() ) + parag->document()->flow()->eraseAfter( parag, p, cg ); + + parag->document()->nextDoubleBuffered = FALSE; +} + +QTextParag *QTextDocument::draw( QPainter *p, int cx, int cy, int cw, int ch, const QColorGroup &cg, + bool onlyChanged, bool drawCursor, QTextCursor *cursor, bool resetChanged ) +{ + if ( withoutDoubleBuffer || par && par->withoutDoubleBuffer ) { + withoutDoubleBuffer = TRUE; + QRegion rg; + draw( p, rg, cg ); + return 0; + } + withoutDoubleBuffer = FALSE; + + if ( !firstParag() ) + return 0; + + if ( drawCursor && cursor ) + tmpCursor = cursor; + if ( cx < 0 && cy < 0 ) { + cx = 0; + cy = 0; + cw = width(); + ch = height(); + } + + QTextParag *lastFormatted = 0; + QTextParag *parag = firstParag(); + + QPixmap *doubleBuffer = 0; + QPainter painter; + + while ( parag ) { + lastFormatted = parag; + if ( !parag->isValid() ) + parag->format(); + + if ( !parag->rect().intersects( QRect( cx, cy, cw, ch ) ) ) { + QRect pr( parag->rect() ); + pr.setWidth( parag->document()->width() ); + if ( pr.intersects( QRect( cx, cy, cw, ch ) ) ) + p->fillRect( pr.intersect( QRect( cx, cy, cw, ch ) ), cg.brush( QColorGroup::Base ) ); + if ( parag->rect().y() > cy + ch ) { + tmpCursor = 0; + if ( buf_pixmap && buf_pixmap->height() > 300 ) { + delete buf_pixmap; + buf_pixmap = 0; + } + if ( verticalBreak() && flow() ) + flow()->draw( p, cx, cy, cw, ch ); + + return lastFormatted; + } + parag = parag->next(); + continue; + } + + if ( !parag->hasChanged() && onlyChanged ) { + parag = parag->next(); + continue; + } + + drawParag( p, parag, cx, cy, cw, ch, doubleBuffer, cg, drawCursor, cursor, resetChanged ); + parag = parag->next(); + } + + parag = lastParag(); + if ( parag->rect().y() + parag->rect().height() < parag->document()->height() ) { + p->fillRect( 0, parag->rect().y() + parag->rect().height(), parag->document()->width(), + parag->document()->height() - ( parag->rect().y() + parag->rect().height() ), + cg.brush( QColorGroup::Base ) ); + if ( !flow()->isEmpty() ) { + QRect cr( cx, cy, cw, ch ); + cr = cr.intersect( QRect( 0, parag->rect().y() + parag->rect().height(), parag->document()->width(), + parag->document()->height() - ( parag->rect().y() + parag->rect().height() ) ) ); + flow()->drawFloatingItems( p, cr.x(), cr.y(), cr.width(), cr.height(), cg, FALSE ); + } + } + + if ( buf_pixmap && buf_pixmap->height() > 300 ) { + delete buf_pixmap; + buf_pixmap = 0; + } + + if ( verticalBreak() && flow() ) + flow()->draw( p, cx, cy, cw, ch ); + + tmpCursor = 0; + return lastFormatted; +} + +void QTextDocument::setDefaultFont( const QFont &f ) +{ + updateFontSizes( f.pointSize() ); +} + +void QTextDocument::registerCustomItem( QTextCustomItem *i, QTextParag *p ) +{ + if ( i && i->placement() != QTextCustomItem::PlaceInline ) { + flow_->registerFloatingItem( i, i->placement() == QTextCustomItem::PlaceRight ); + p->registerFloatingItem( i ); + } + i->setParagraph( p ); + customItems.append( i ); +} + +void QTextDocument::unregisterCustomItem( QTextCustomItem *i, QTextParag *p ) +{ + flow_->unregisterFloatingItem( i ); + p->unregisterFloatingItem( i ); + customItems.removeRef( i ); + i->setParagraph( 0L ); +} + +bool QTextDocument::focusNextPrevChild( bool next ) +{ + if ( !focusIndicator.parag ) { + if ( next ) { + focusIndicator.parag = fParag; + focusIndicator.start = 0; + focusIndicator.len = 0; + } else { + focusIndicator.parag = lParag; + focusIndicator.start = lParag->length(); + focusIndicator.len = 0; + } + } else { + focusIndicator.parag->setChanged( TRUE ); + } + focusIndicator.href = QString::null; + + if ( next ) { + QTextParag *p = focusIndicator.parag; + int index = focusIndicator.start + focusIndicator.len; + while ( p ) { + for ( int i = index; i < p->length(); ++i ) { + if ( p->at( i )->format()->isAnchor() ) { + p->setChanged( TRUE ); + focusIndicator.parag = p; + focusIndicator.start = i; + focusIndicator.len = 0; + focusIndicator.href = p->at( i )->format()->anchorHref(); + while ( i < p->length() ) { + if ( !p->at( i )->format()->isAnchor() ) + return TRUE; + focusIndicator.len++; + i++; + } + } + } + index = 0; + p = p->next(); + } + } else { + QTextParag *p = focusIndicator.parag; + int index = focusIndicator.start - 1; + while ( p ) { + for ( int i = index; i >= 0; --i ) { + if ( p->at( i )->format()->isAnchor() ) { + p->setChanged( TRUE ); + focusIndicator.parag = p; + focusIndicator.start = i; + focusIndicator.len = 0; + focusIndicator.href = p->at( i )->format()->anchorHref(); + while ( i >= -1 ) { + if ( i < 0 || !p->at( i )->format()->isAnchor() ) { + focusIndicator.start++; + return TRUE; + } + if ( i < 0 ) + break; + focusIndicator.len++; + focusIndicator.start--; + i--; + } + } + } + p = p->prev(); + if ( p ) + index = p->length() - 1; + } + } + + return FALSE; +} + +int QTextDocument::length() const +{ + int l = 0; + QTextParag *p = fParag; + while ( p ) { + l += p->length(); + p = p->next(); + } + return l; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +int QTextFormat::width( const QChar &c ) const +{ + if ( c.unicode() == 0xad ) // soft hyphen + return 0; + if ( !painter || !painter->isActive() ) { + if ( c == '\t' ) + return fm.width( 'x' ) * 8; + if ( ha == AlignNormal ) { + int w; + if ( c.row() ) + w = fm.width( c ); + else + w = widths[ c.unicode() ]; + if ( w == 0 && !c.row() ) { + w = fm.width( c ); + ( (QTextFormat*)this )->widths[ c.unicode() ] = w; + } + return w; + } else { + QFont f( fn ); + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + QFontMetrics fm_( f ); + return fm_.width( c ); + } + } + + QFont f( fn ); + if ( ha != AlignNormal ) + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + painter->setFont( f ); + + return painter->fontMetrics().width( c ); +} + +int QTextFormat::width( const QString &str, int pos ) const +{ + int w; + if ( str[ pos ].unicode() == 0xad ) + return 0; + if ( !painter || !painter->isActive() ) { + if ( ha == AlignNormal ) { +// w = fm.charWidth( str, pos ); + w = fm.width( str[pos] ); + } else { + QFont f( fn ); + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + QFontMetrics fm_( f ); + w = fm_.width( str[pos] ); +// w = fm_.charWidth( str, pos ); + } + } else { + QFont f( fn ); + if ( ha != AlignNormal ) + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + painter->setFont( f ); + w = painter->fontMetrics().width( str[pos] ); +// w = painter->fontMetrics().charWidth( str, pos ); + } + return w; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextString::QTextString() +{ + textChanged = FALSE; + bidi = FALSE; + rightToLeft = FALSE; +} + +QTextString::QTextString( const QTextString &s ) +{ + textChanged = s.textChanged; + bidi = s.bidi; + rightToLeft = s.rightToLeft; + data = s.subString(); +} + +void QTextString::insert( int index, const QString &s, QTextFormat *f ) +{ + int os = data.size(); + data.resize( data.size() + s.length() ); + if ( index < os ) { + memmove( data.data() + index + s.length(), data.data() + index, + sizeof( QTextStringChar ) * ( os - index ) ); + } + for ( int i = 0; i < (int)s.length(); ++i ) { + data[ (int)index + i ].x = 0; + data[ (int)index + i ].lineStart = 0; + data[ (int)index + i ].d.format = 0; + data[ (int)index + i ].type = QTextStringChar::Regular; + data[ (int)index + i ].rightToLeft = 0; + data[ (int)index + i ].startOfRun = 0; +#if defined(Q_WS_X11) + //### workaround for broken courier fonts on X11 + if ( s[ i ] == QChar( 0x00a0U ) ) + data[ (int)index + i ].c = ' '; + else + data[ (int)index + i ].c = s[ i ]; +#else + data[ (int)index + i ].c = s[ i ]; +#endif +#ifdef DEBUG_COLLECTION + qDebug("QTextString::insert setting format %p to character %d",f,(int)index+i); +#endif + data[ (int)index + i ].setFormat( f ); + } + textChanged = TRUE; +} + +QTextString::~QTextString() +{ + clear(); +} + +void QTextString::insert( int index, QTextStringChar *c ) +{ + int os = data.size(); + data.resize( data.size() + 1 ); + if ( index < os ) { + memmove( data.data() + index + 1, data.data() + index, + sizeof( QTextStringChar ) * ( os - index ) ); + } + data[ (int)index ].c = c->c; + data[ (int)index ].x = 0; + data[ (int)index ].lineStart = 0; + data[ (int)index ].rightToLeft = 0; + data[ (int)index ].d.format = 0; + data[ (int)index ].type = QTextStringChar::Regular; + data[ (int)index ].setFormat( c->format() ); + textChanged = TRUE; +} + +void QTextString::truncate( int index ) +{ + index = QMAX( index, 0 ); + index = QMIN( index, (int)data.size() - 1 ); + if ( index < (int)data.size() ) { + for ( int i = index + 1; i < (int)data.size(); ++i ) { + if ( data[ i ].isCustom() ) { + delete data[ i ].customItem(); + if ( data[ i ].d.custom->format ) + data[ i ].d.custom->format->removeRef(); + data[ i ].d.custom = 0; + } else if ( data[ i ].format() ) { + data[ i ].format()->removeRef(); + } + } + } + data.truncate( index ); + textChanged = TRUE; +} + +void QTextString::remove( int index, int len ) +{ + for ( int i = index; i < (int)data.size() && i - index < len; ++i ) { + if ( data[ i ].isCustom() ) { + delete data[ i ].customItem(); + if ( data[ i ].d.custom->format ) + data[ i ].d.custom->format->removeRef(); + data[ i ].d.custom = 0; + } else if ( data[ i ].format() ) { + data[ i ].format()->removeRef(); + } + } + memmove( data.data() + index, data.data() + index + len, + sizeof( QTextStringChar ) * ( data.size() - index - len ) ); + data.resize( data.size() - len ); + textChanged = TRUE; +} + +void QTextString::clear() +{ + for ( int i = 0; i < (int)data.count(); ++i ) { + if ( data[ i ].isCustom() ) { + delete data[ i ].customItem(); + if ( data[ i ].d.custom->format ) + data[ i ].d.custom->format->removeRef(); + delete data[ i ].d.custom; + data[ i ].d.custom = 0; + } else if ( data[ i ].format() ) { + data[ i ].format()->removeRef(); + } + } + data.resize( 0 ); +} + +void QTextString::setFormat( int index, QTextFormat *f, bool useCollection ) +{ +// qDebug("QTextString::setFormat index=%d f=%p",index,f); + if ( useCollection && data[ index ].format() ) + { + //qDebug("QTextString::setFormat removing ref on old format %p",data[ index ].format()); + data[ index ].format()->removeRef(); + } + data[ index ].setFormat( f ); +} + +void QTextString::checkBidi() const +{ + int len = data.size(); + const QTextStringChar *c = data.data(); + ((QTextString *)this)->bidi = FALSE; + ((QTextString *)this)->rightToLeft = FALSE; + while( len ) { + uchar row = c->c.row(); + if( (row > 0x04 && row < 0x09) || row > 0xfa ) { + ((QTextString *)this)->bidi = TRUE; + basicDirection(); + return; + } + len--; + ++c; + } +} + +void QTextString::basicDirection() const +{ + int pos = 0; + ((QTextString *)this)->rightToLeft = FALSE; + while( pos < length() ) { + switch( at(pos).c.direction() ) + { + case QChar::DirL: + case QChar::DirLRO: + case QChar::DirLRE: + return; + case QChar::DirR: + case QChar::DirAL: + case QChar::DirRLO: + case QChar::DirRLE: + ((QTextString *)this)->rightToLeft = TRUE; + return; + default: + break; + } + ++pos; + } + return; +} + + +void QTextDocument::setStyleSheet( QStyleSheet *s ) +{ + if ( !s ) + return; + sheet_ = s; + fCollection->setStyleSheet( s ); + updateStyles(); +} + +void QTextDocument::updateStyles() +{ + invalidate(); + fCollection->updateStyles(); + for ( QTextDocument *d = childList.first(); d; d = childList.next() ) + d->updateStyles(); +} + +void QTextDocument::updateFontSizes( int base ) +{ + for ( QTextDocument *d = childList.first(); d; d = childList.next() ) + d->updateFontSizes( base ); + invalidate(); + fCollection->updateFontSizes( base ); +} + +void QTextDocument::updateFontAttributes( const QFont &f, const QFont &old ) +{ + for ( QTextDocument *d = childList.first(); d; d = childList.next() ) + d->updateFontAttributes( f, old ); + invalidate(); + fCollection->updateFontAttributes( f, old ); +} + +void QTextStringChar::setFormat( QTextFormat *f ) +{ + if ( type == Regular ) { + d.format = f; + } else { + if ( !d.custom ) { + d.custom = new CustomData; + d.custom->custom = 0; + } + d.custom->format = f; + } +} + +void QTextStringChar::setCustomItem( QTextCustomItem *i ) +{ + if ( !isCustom() ) { + QTextFormat *f = format(); + d.custom = new CustomData; + d.custom->format = f; + type = Custom; + } else { + delete d.custom->custom; + } + d.custom->custom = i; +} + +void QTextStringChar::loseCustomItem() // setRegular() might be a better name +{ + if ( isCustom() ) { + QTextFormat *f = d.custom->format; + d.custom->custom = 0; + delete d.custom; + type = Regular; + d.format = f; + } +} + +int QTextString::width(int idx) const +{ + int w = 0; + QTextStringChar *c = &at( idx ); + if ( c->c.unicode() == 0xad ) + return 0; + if( c->isCustom() ) { + if( c->customItem()->placement() == QTextCustomItem::PlaceInline ) + w = c->customItem()->width; + } else if ( c->type == QTextStringChar::Mark ) { + return 0; + } else { + int r = c->c.row(); + if( r < 0x06 || r > 0x1f ) + w = c->format()->width( c->c ); + else { + // complex text. We need some hacks to get the right metric here + QString str; + int pos = 0; + if( idx > 3 ) + pos = idx - 3; + int off = idx - pos; + int end = QMIN( length(), idx + 3 ); + while ( pos < end ) { + str += at(pos).c; + pos++; + } + w = c->format()->width( str, off ); + } + } + return w; +} + +QMemArray QTextString::subString( int start, int len ) const +{ + if ( len == 0xFFFFFF ) + len = data.size(); + QMemArray a; + a.resize( len ); + for ( int i = 0; i < len; ++i ) { + QTextStringChar *c = &data[ i + start ]; + a[ i ].c = c->c; + a[ i ].x = 0; + a[ i ].lineStart = 0; + a[ i ].rightToLeft = 0; + a[ i ].d.format = 0; + a[ i ].type = QTextStringChar::Regular; + a[ i ].setFormat( c->format() ); + if ( c->format() ) + c->format()->addRef(); + } + return a; +} + +QTextStringChar *QTextStringChar::clone() const +{ + QTextStringChar *chr = new QTextStringChar; + chr->c = c; + chr->x = 0; + chr->lineStart = 0; + chr->rightToLeft = 0; + chr->d.format = 0; + chr->type = QTextStringChar::Regular; + chr->setFormat( format() ); + if ( chr->format() ) + chr->format()->addRef(); + return chr; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextParag::QTextParag( QTextDocument *d, QTextParag *pr, QTextParag *nx, bool updateIds ) + : invalid( 0 ), p( pr ), n( nx ), doc( d ), align( -1 ), numSubParag( -1 ), + tm( -1 ), bm( -1 ), lm( -1 ), rm( -1 ), flm( -1 ), tc( 0 ), + numCustomItems( 0 ), pFormatter( 0 ), + tArray( 0 ), tabStopWidth( 0 ), eData( 0 ), pntr( 0 ) +{ + visible = TRUE; + list_val = -1; + newLinesAllowed = FALSE; + lastInFrame = FALSE; + movedDown = FALSE; + defFormat = formatCollection()->defaultFormat(); + if ( !doc ) { + tabStopWidth = defFormat->width( 'x' ) * 8; + commandHistory = new QTextCommandHistory( 100 ); + } +#if defined(PARSER_DEBUG) + qDebug( "new QTextParag" ); +#endif + fullWidth = TRUE; + + if ( p ) { + p->n = this; + if ( p->tc ) + tc = p->tc; + } + if ( n ) { + n->p = this; + if ( n->tc ) + tc = n->tc; + } + + if ( !tc && d && d->tableCell() ) + tc = d->tableCell(); + + if ( !p && doc ) + doc->setFirstParag( this ); + if ( !n && doc ) + doc->setLastParag( this ); + + changed = FALSE; + firstFormat = TRUE; + state = -1; + needPreProcess = FALSE; + + if ( p ) + id = p->id + 1; + else + id = 0; + if ( n && updateIds ) { + QTextParag *s = n; + while ( s ) { + s->id = s->p->id + 1; + s->numSubParag = -1; + s->lm = s->rm = s->tm = s->bm = -1, s->flm = -1; + s = s->n; + } + } + firstPProcess = TRUE; + + str = new QTextString(); + str->insert( 0, " ", formatCollection()->defaultFormat() ); +} + +QTextParag::~QTextParag() +{ + //qDebug("QTextParag::~QTextParag %p id=%d",this,paragId()); + delete str; + if ( doc && p == doc->minwParag ) { + doc->minwParag = 0; + doc->minw = 0; + } + if ( !doc ) { + delete pFormatter; + delete commandHistory; + } + if ( tArray ) + delete [] tArray; + delete eData; + QMap::Iterator it = lineStarts.begin(); + for ( ; it != lineStarts.end(); ++it ) + delete *it; +} + +void QTextParag::setNext( QTextParag *s ) +{ + n = s; + if ( !n && doc ) + doc->setLastParag( this ); +} + +void QTextParag::setPrev( QTextParag *s ) +{ + p = s; + if ( !p && doc ) + doc->setFirstParag( this ); +} + +void QTextParag::invalidate( int chr ) +{ + if ( invalid < 0 ) + invalid = chr; + else + invalid = QMIN( invalid, chr ); + for ( QTextCustomItem *i = floatingItems.first(); i; i = floatingItems.next() ) + i->move( 0, -1 ); + lm = rm = bm = tm = flm = -1; +} + +void QTextParag::insert( int index, const QString &s ) +{ + if ( doc && !doc->useFormatCollection() && doc->preProcessor() ) + str->insert( index, s, + doc->preProcessor()->format( QTextPreProcessor::Standard ) ); + else + str->insert( index, s, formatCollection()->defaultFormat() ); + invalidate( index ); + needPreProcess = TRUE; +} + +void QTextParag::truncate( int index ) +{ + str->truncate( index ); + insert( length(), " " ); + needPreProcess = TRUE; +} + +void QTextParag::remove( int index, int len ) +{ + if ( index + len - str->length() > 0 ) + return; + for ( int i = index; i < len; ++i ) { + QTextStringChar *c = at( i ); + if ( doc && c->isCustom() ) { + doc->unregisterCustomItem( c->customItem(), this ); + removeCustomItem(); + } + } + str->remove( index, len ); + invalidate( 0 ); + needPreProcess = TRUE; +} + +void QTextParag::join( QTextParag *s ) +{ + //qDebug("QTextParag::join this=%d (length %d) with %d (length %d)",paragId(),length(),s->paragId(),s->length()); + int oh = r.height() + s->r.height(); + n = s->n; + if ( n ) + n->p = this; + else if ( doc ) + doc->setLastParag( this ); + + int start = str->length(); + if ( length() > 0 && at( length() - 1 )->c == ' ' ) { + remove( length() - 1, 1 ); + --start; + } + append( s->str->toString(), TRUE ); + + for ( int i = 0; i < s->length(); ++i ) { + if ( !doc || doc->useFormatCollection() ) { + s->str->at( i ).format()->addRef(); + str->setFormat( i + start, s->str->at( i ).format(), TRUE ); + } + if ( s->str->at( i ).isCustom() ) { + QTextCustomItem * item = s->str->at( i ).customItem(); + str->at( i + start ).setCustomItem( item ); + s->str->at( i ).loseCustomItem(); + doc->unregisterCustomItem( item, s ); + doc->registerCustomItem( item, this ); + } + } + ASSERT(str->at(str->length()-1).c == ' '); + + if ( !extraData() && s->extraData() ) { + setExtraData( s->extraData() ); + s->setExtraData( 0 ); + } else if ( extraData() && s->extraData() ) { + extraData()->join( s->extraData() ); + } + delete s; + invalidate( 0 ); + r.setHeight( oh ); + needPreProcess = TRUE; + if ( n ) { + QTextParag *s = n; + while ( s ) { + s->id = s->p->id + 1; + s->state = -1; + s->needPreProcess = TRUE; + s->changed = TRUE; + s = s->n; + } + } + format(); + state = -1; +} + +void QTextParag::move( int &dy ) +{ + //qDebug("QTextParag::move paragId=%d dy=%d",paragId(),dy); + if ( dy == 0 ) + return; + changed = TRUE; + r.moveBy( 0, dy ); + for ( QTextCustomItem *i = floatingItems.first(); i; i = floatingItems.next() ) + i->move( i->x(), i->y() + dy ); + if ( p ) + p->lastInFrame = FALSE; + movedDown = FALSE; + if ( doc && doc->verticalBreak() ) { + const int oy = r.y(); + int y = oy; + doc->flow()->adjustFlow( y, r.width(), r.height(), this, TRUE ); + if ( oy != y ) { + if ( p ) { + p->lastInFrame = TRUE; + p->setChanged( TRUE ); + } + movedDown = TRUE; + int oh = r.height(); + r.setY( y ); + r.setHeight( oh ); + dy += y - oy; + //qDebug("QTextParag::move done. paragId=%d dy=%d lastInFrame=true",paragId(),dy); + } + } +} + +void QTextParag::format( int start, bool doMove ) +{ + if ( str->length() == 0 || !formatter() ) + return; + + if ( doc && + doc->preProcessor() && + ( needPreProcess || state == -1 ) ) + doc->preProcessor()->process( doc, this, invalid <= 0 ? 0 : invalid ); + needPreProcess = FALSE; + + if ( invalid == -1 ) + return; + + //qDebug("QTextParag::format id=%d invalid, formatting (moving after previous parag)",paragId()); + r.moveTopLeft( QPoint( documentX(), p ? p->r.y() + p->r.height() : documentY() ) ); + r.setWidth( documentWidth() ); + if ( p ) + p->lastInFrame = FALSE; + movedDown = FALSE; + formatAgain: + if ( doc ) { + for ( QTextCustomItem *i = floatingItems.first(); i; i = floatingItems.next() ) { + if ( i->placement() == QTextCustomItem::PlaceRight ) + i->move( r.x() + r.width() - i->width, r.y() ); + else + i->move( 0, r.y() ); + doc->flow()->updateHeight( i ); + } + } + QMap oldLineStarts = lineStarts; + lineStarts.clear(); + int y = formatter()->format( doc, this, start, oldLineStarts ); + r.setWidth( QMAX( r.width(), minimumWidth() ) ); + QMap::Iterator it = oldLineStarts.begin(); + for ( ; it != oldLineStarts.end(); ++it ) + delete *it; + + QTextStringChar *c = 0; + if ( lineStarts.count() == 1 && ( !doc || doc->flow()->isEmpty() ) && !string()->isBidi() ) { + c = &str->at( str->length() - 1 ); + r.setWidth( c->x + str->width( str->length() - 1 ) ); + } + + if ( newLinesAllowed ) { + it = lineStarts.begin(); + int usedw = 0; + for ( ; it != lineStarts.end(); ++it ) + usedw = QMAX( usedw, (*it)->w ); + r.setWidth( QMIN( usedw, r.width() ) ); + } + + if ( y != r.height() ) + r.setHeight( y ); + + if ( !visible ) + r.setHeight( 0 ); + + if ( doc && doc->verticalBreak() ) { + const int oy = r.y(); + int y = oy; + doc->flow()->adjustFlow( y, r.width(), r.height(), this, TRUE ); + if ( oy != y ) { + if ( p ) { + p->lastInFrame = TRUE; + p->setChanged( TRUE ); + } + movedDown = TRUE; + int oh = r.height(); + r.setY( y ); + r.setHeight( oh ); + goto formatAgain; + } + + } + + if ( n && doMove && n->invalid == -1 && r.y() + r.height() != n->r.y() ) { + int dy = ( r.y() + r.height() ) - n->r.y(); + QTextParag *s = n; + bool makeInvalid = p && p->lastInFrame; + //qDebug("moving. previous's lastInFrame (=makeInvalid): %d",makeInvalid); + while ( s && dy ) { + if ( !s->isFullWidth() || s->movedDown ) + makeInvalid = TRUE; + if ( makeInvalid ) + s->invalidate( 0 ); + s->move( dy ); + if ( s->lastInFrame ) + makeInvalid = TRUE; + s = s->n; + } + } + + firstFormat = FALSE; + changed = TRUE; + invalid = -1; + string()->setTextChanged( FALSE ); +} + +int QTextParag::lineHeightOfChar( int i, int *bl, int *y ) const +{ + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + QMap::ConstIterator it = lineStarts.end(); + --it; + for ( ;; ) { + if ( i >= it.key() ) { + if ( bl ) + *bl = ( *it )->baseLine; + if ( y ) + *y = ( *it )->y; + return ( *it )->h; + } + if ( it == lineStarts.begin() ) + break; + --it; + } + +// qWarning( "QTextParag::lineHeightOfChar: couldn't find lh for %d", i ); + return 15; +} + +QTextStringChar *QTextParag::lineStartOfChar( int i, int *index, int *line ) const +{ + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + int l = lineStarts.count() - 1; + QMap::ConstIterator it = lineStarts.end(); + --it; + for ( ;; ) { + if ( i >= it.key() ) { + if ( index ) + *index = it.key(); + if ( line ) + *line = l; + return &str->at( it.key() ); + } + if ( it == lineStarts.begin() ) + break; + --it; + --l; + } + +// qWarning( "QTextParag::lineStartOfChar: couldn't find %d", i ); + return 0; +} + +int QTextParag::lines() const +{ + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + return lineStarts.count(); +} + +QTextStringChar *QTextParag::lineStartOfLine( int line, int *index ) const +{ + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + if ( line >= 0 && line < (int)lineStarts.count() ) { + QMap::ConstIterator it = lineStarts.begin(); + while ( line-- > 0 ) + ++it; + int i = it.key(); + if ( index ) + *index = i; + return &str->at( i ); + } + +// qWarning( "QTextParag::lineStartOfLine: couldn't find %d", line ); + return 0; +} + +void QTextParag::setFormat( int index, int len, QTextFormat *f, bool useCollection, int flags ) +{ + if ( index < 0 ) + index = 0; + if ( index > str->length() - 1 ) + index = str->length() - 1; + if ( index + len >= str->length() ) + len = str->length() - index; + + QTextFormatCollection *fc = 0; + if ( useCollection ) + fc = formatCollection(); + QTextFormat *of; + for ( int i = 0; i < len; ++i ) { + of = str->at( i + index ).format(); + if ( !changed && f->key() != of->key() ) + changed = TRUE; + if ( invalid == -1 && + ( f->font().family() != of->font().family() || + f->font().pointSize() != of->font().pointSize() || + f->font().weight() != of->font().weight() || + f->font().italic() != of->font().italic() || + f->vAlign() != of->vAlign() ) ) { + invalidate( 0 ); + } + if ( flags == -1 || flags == QTextFormat::Format || !fc ) { +#ifdef DEBUG_COLLECTION + qDebug(" QTextParag::setFormat, will use format(f) %p %s", f, f->key().latin1()); +#endif + if ( fc ) + f = fc->format( f ); + str->setFormat( i + index, f, useCollection ); + } else { +#ifdef DEBUG_COLLECTION + qDebug(" QTextParag::setFormat, will use format(of,f,flags) of=%p %s, f=%p %s", of, of->key().latin1(), f, f->key().latin1() ); +#endif + QTextFormat *fm = fc->format( of, f, flags ); +#ifdef DEBUG_COLLECTION + qDebug(" QTextParag::setFormat, format(of,f,flags) returned %p %s ", fm,fm->key().latin1()); +#endif + str->setFormat( i + index, fm, useCollection ); + } + } +} + +void QTextParag::indent( int *oldIndent, int *newIndent ) +{ + if ( !doc || !doc->indent() || style() && style()->displayMode() != QStyleSheetItem::DisplayBlock ) { + if ( oldIndent ) + *oldIndent = 0; + if ( newIndent ) + *newIndent = 0; + if ( oldIndent && newIndent ) + *newIndent = *oldIndent; + return; + } + doc->indent()->indent( doc, this, oldIndent, newIndent ); +} + +void QTextParag::paint( QPainter &painter, const QColorGroup &cg, QTextCursor *cursor, bool drawSelections, + int clipx, int clipy, int clipw, int cliph ) +{ + if ( !visible ) + return; + QTextStringChar *chr = at( 0 ); + ASSERT( chr ); + if (!chr) { qDebug("paragraph %p %d, can't paint, EMPTY !", this, paragId()); return; } + int i = 0; + int h = 0; + int baseLine = 0, lastBaseLine = 0; + QTextFormat *lastFormat = 0; + int lastY = -1; + int startX = 0; + int bw = 0; + int cy = 0; + int curx = -1, cury = 0, curh = 0, curline = 0; + bool lastDirection = chr->rightToLeft; + QTextStringChar::Type lastType = chr->type; + int tw = 0; + + QString qstr = str->toString(); + + const int nSels = doc ? doc->numSelections() : 1; + QMemArray selectionStarts( nSels ); + QMemArray selectionEnds( nSels ); + if ( drawSelections ) { + bool hasASelection = FALSE; + for ( i = 0; i < nSels; ++i ) { + if ( !hasSelection( i ) ) { + selectionStarts[ i ] = -1; + selectionEnds[ i ] = -1; + } else { + hasASelection = TRUE; + selectionStarts[ i ] = selectionStart( i ); + int end = selectionEnd( i ); + if ( end == length() - 1 && n && n->hasSelection( i ) ) + end++; + selectionEnds[ i ] = end; + } + } + if ( !hasASelection ) + drawSelections = FALSE; + } + + int line = -1; + int cw; + bool didListLabel = FALSE; + int paintStart = 0; + int paintEnd = -1; + int lasth = 0; + for ( i = 0; i < length(); i++ ) { + chr = at( i ); + if ( !str->isBidi() && is_printer( &painter ) ) { // ### fix our broken ps-printer + if ( !chr->lineStart ) + chr->x = QMAX( chr->x, tw ); + else + tw = 0; + } + cw = string()->width( i ); + if ( chr->c == '\t' && i < length() - 1 ) + cw = at( i + 1 )->x - chr->x + 1; + if ( chr->c.unicode() == 0xad && i < length() - 1 ) + cw = 0; + + // init a new line + if ( chr->lineStart ) { + tw = 0; + ++line; + lineInfo( line, cy, h, baseLine ); + lasth = h; + if ( clipy != -1 && cy > clipy - r.y() + cliph ) // outside clip area, leave + break; + if ( lastBaseLine == 0 ) + lastBaseLine = baseLine; + } + + // draw bullet list items + if ( !didListLabel && line == 0 && style() && style()->displayMode() == QStyleSheetItem::DisplayListItem ) { + didListLabel = TRUE; + drawLabel( &painter, chr->x, cy, 0, 0, baseLine, cg ); + } + + // check for cursor mark + if ( cursor && this == cursor->parag() && i == cursor->index() ) { + curx = chr->x; + if ( chr->rightToLeft ) + curx += cw; + curh = h; + cury = cy; + curline = line; + } + + // first time - start again... + if ( !lastFormat || lastY == -1 ) { + lastFormat = chr->format(); + lastY = cy; + startX = chr->x; + if ( !chr->isCustom() && chr->c != '\n' ) + paintEnd = i; + bw = cw; + if ( !chr->isCustom() ) + continue; + } + + // check if selection state changed + bool selectionChange = FALSE; + if ( drawSelections ) { + for ( int j = 0; j < nSels; ++j ) { + selectionChange = selectionStarts[ j ] == i || selectionEnds[ j ] == i; + if ( selectionChange ) + break; + } + } + + //if something (format, etc.) changed, draw what we have so far + if ( ( ( ( alignment() & Qt3::AlignJustify ) == Qt3::AlignJustify && at(paintEnd)->c.isSpace() ) || + lastDirection != (bool)chr->rightToLeft || + chr->startOfRun || + lastY != cy || chr->format() != lastFormat || + ( paintEnd != -1 && at( paintEnd )->c =='\t' ) || chr->c == '\t' || + ( paintEnd != -1 && at( paintEnd )->c.unicode() == 0xad ) || chr->c.unicode() == 0xad || + selectionChange || chr->isCustom() ) ) { + if ( paintStart <= paintEnd ) { + // ### temporary hack until I get the new placement/shaping stuff working + int x = startX; + if ( lastType == QTextStringChar::Mark && i > 0 ) { + if ( !lastDirection ) + x += str->at(i - 1).d.mark->xoff; + else if ( i > 1 ) + x -= str->at(i - 1).d.mark->xoff + str->width( i - 2 ); + } + drawParagString( painter, qstr, paintStart, paintEnd - paintStart + 1, x, lastY, + lastBaseLine, bw, lasth, drawSelections, + lastFormat, i, selectionStarts, selectionEnds, cg, lastDirection ); + } + if ( !str->isBidi() && is_printer( &painter ) ) { // ### fix our broken ps-printer + if ( !chr->lineStart ) { + // ### the next line doesn't look 100% correct for arabic + tw = startX + painter.fontMetrics().width( qstr.mid(paintStart, paintEnd - paintStart +1) ); + chr->x = QMAX( chr->x, tw ); + } else { + tw = 0; + } + } + if ( !chr->isCustom() ) { + if ( chr->c != '\n' ) { + paintStart = i; + paintEnd = i; + } else { + paintStart = i+1; + paintEnd = -1; + } + lastFormat = chr->format(); + lastY = cy; + startX = chr->x; + bw = cw; + } else { + if ( chr->customItem()->placement() == QTextCustomItem::PlaceInline ) { + chr->customItem()->draw( &painter, chr->x, cy, clipx - r.x(), clipy - r.y(), clipw, cliph, cg, + nSels && selectionStarts[ 0 ] <= i && selectionEnds[ 0 ] >= i ); + paintStart = i+1; + paintEnd = -1; + lastFormat = chr->format(); + lastY = cy; + startX = chr->x + string()->width( i ); + bw = 0; + } else { + chr->customItem()->resize( pntr, chr->customItem()->width ); + paintStart = i+1; + paintEnd = -1; + lastFormat = chr->format(); + lastY = cy; + startX = chr->x + string()->width( i ); + bw = 0; + } + } + } else { + if ( chr->c != '\n' ) { + if( chr->rightToLeft ) { + startX = chr->x; + } + paintEnd = i; + } + bw += cw; + } + lastBaseLine = baseLine; + lasth = h; + lastDirection = chr->rightToLeft; + lastType = chr->type; + } + + // if we are through the parag, but still have some stuff left to draw, draw it now + if ( paintStart <= paintEnd ) { + bool selectionChange = FALSE; + if ( drawSelections ) { + for ( int j = 0; j < nSels; ++j ) { + selectionChange = selectionStarts[ j ] == i || selectionEnds[ j ] == i; + if ( selectionChange ) + break; + } + } + // ### temporary hack until I get the new placement/shaping stuff working + int x = startX; + if ( lastType == QTextStringChar::Mark && i > 0 ) { + if ( !lastDirection ) + x += str->at(i - 1).d.mark->xoff; + else if ( i > 1 ) + x -= str->at(i - 1).d.mark->xoff + str->width( i - 2 ); + } + drawParagString( painter, qstr, paintStart, paintEnd-paintStart+1, x, lastY, + lastBaseLine, bw, h, drawSelections, + lastFormat, i, selectionStarts, selectionEnds, cg, lastDirection ); + } + + // if we should draw a cursor, draw it now + if ( curx != -1 && cursor ) { + painter.fillRect( QRect( curx, cury, 1, curh - lineSpacing( curline ) ), cg.color( QColorGroup::Text ) ); + painter.save(); + if ( string()->isBidi() ) { + const int d = 4; + if ( at( cursor->index() )->rightToLeft ) { + painter.setPen( Qt::black ); + painter.drawLine( curx, cury, curx - d / 2, cury + d / 2 ); + painter.drawLine( curx, cury + d, curx - d / 2, cury + d / 2 ); + } else { + painter.setPen( Qt::black ); + painter.drawLine( curx, cury, curx + d / 2, cury + d / 2 ); + painter.drawLine( curx, cury + d, curx + d / 2, cury + d / 2 ); + } + } + painter.restore(); + } +} + +void QTextParag::drawParagString( QPainter &painter, const QString &s, int start, int len, int startX, + int lastY, int baseLine, int bw, int h, bool drawSelections, + QTextFormat *lastFormat, int i, const QMemArray &selectionStarts, + const QMemArray &selectionEnds, const QColorGroup &cg, bool /*rightToLeft*/ ) +{ + if ( start + len == length() ) + len--; + QString str( s ); + if ( str[ (int)str.length() - 1 ].unicode() == 0xad ) + str.remove( str.length() - 1, 1 ); + painter.setPen( QPen( lastFormat->color() ) ); + painter.setFont( lastFormat->font() ); + + if ( doc && lastFormat->isAnchor() && !lastFormat->anchorHref().isEmpty() && lastFormat->useLinkColor() ) { + painter.setPen( QPen( Qt::blue /* cg.link() */ ) ); // QT2HACK + if ( doc->underlineLinks() ) { + QFont fn = lastFormat->font(); + fn.setUnderline( TRUE ); + painter.setFont( fn ); + } + } + + if ( drawSelections ) { + const int nSels = doc ? doc->numSelections() : 1; + const int startSel = painter.device()->devType() != QInternal::Printer ? 0 : 1; + for ( int j = startSel; j < nSels; ++j ) { + if ( i > selectionStarts[ j ] && i <= selectionEnds[ j ] ) { + if ( !doc || doc->invertSelectionText( j ) ) + painter.setPen( QPen( cg.color( QColorGroup::HighlightedText ) ) ); + if ( j == QTextDocument::Standard ) + painter.fillRect( startX, lastY, bw, h, cg.color( QColorGroup::Highlight ) ); + else + painter.fillRect( startX, lastY, bw, h, doc ? doc->selectionColor( j ) : cg.color( QColorGroup::Highlight ) ); + } + } + } + //QT2HACK + //QPainter::TextDirection dir = QPainter::LTR; + //if ( rightToLeft ) + //dir = QPainter::RTL; + if ( str[start] != '\t' && str[ start ].unicode() != 0xad ) { + if ( lastFormat->vAlign() == QTextFormat::AlignNormal ) { + //QT2HACK painter.drawText( startX, lastY + baseLine, str, start, len, dir ); + painter.drawText( startX, lastY + baseLine, str.mid(start), len ); + } else if ( lastFormat->vAlign() == QTextFormat::AlignSuperScript ) { + QFont f( painter.font() ); + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + painter.setFont( f ); + //QT2HACK painter.drawText( startX, lastY + baseLine - ( h - painter.fontMetrics().height() ), str, start, len, dir ); + painter.drawText( startX, lastY + baseLine - ( h - painter.fontMetrics().height() ), str.mid(start), len ); + } else if ( lastFormat->vAlign() == QTextFormat::AlignSubScript ) { + QFont f( painter.font() ); + f.setPointSize( ( f.pointSize() * 2 ) / 3 ); + painter.setFont( f ); + //QT2HACK painter.drawText( startX, lastY + baseLine, str, start, len, dir ); + painter.drawText( startX, lastY + baseLine, str.mid(start), len ); + } + } + if ( i + 1 < length() && at( i + 1 )->lineStart && at( i )->c.unicode() == 0xad ) { + painter.drawText( startX + bw, lastY + baseLine, "\xad" ); + } + if ( lastFormat->isMisspelled() ) { + painter.save(); + painter.setPen( QPen( Qt::red, 1, Qt::DotLine ) ); + painter.drawLine( startX, lastY + baseLine + 1, startX + bw, lastY + baseLine + 1 ); + painter.restore(); + } + + i -= len; + if ( doc && lastFormat->isAnchor() && !lastFormat->anchorHref().isEmpty() && + doc->focusIndicator.parag == this && + doc->focusIndicator.start >= i && + doc->focusIndicator.start + doc->focusIndicator.len <= i + len ) { + painter.drawWinFocusRect( QRect( startX, lastY, bw, h ) ); + } + +} + +void QTextParag::drawLabel( QPainter* p, int x, int y, int w, int h, int base, const QColorGroup& cg ) +{ + if ( !style() ) + return; + QRect r ( x, y, w, h ); + QStyleSheetItem::ListStyle s = listStyle(); + + QFont font = p->font(); + p->setFont( defFormat->font() ); + QFontMetrics fm( p->fontMetrics() ); + int size = fm.lineSpacing() / 3; + + switch ( s ) { + case QStyleSheetItem::ListDecimal: + case QStyleSheetItem::ListLowerAlpha: + case QStyleSheetItem::ListUpperAlpha: + { + int n = numberOfSubParagraph(); + QString l; + switch ( s ) { + case QStyleSheetItem::ListLowerAlpha: + if ( n < 27 ) { + l = QChar( ('a' + (char) (n-1))); + break; + } + case QStyleSheetItem::ListUpperAlpha: + if ( n < 27 ) { + l = QChar( ('A' + (char) (n-1))); + break; + } + break; + default: //QStyleSheetItem::ListDecimal: + l.setNum( n ); + break; + } + l += QString::fromLatin1(". "); + p->drawText( r.right() - fm.width( l ), r.top() + base, l ); + } + break; + case QStyleSheetItem::ListSquare: + { + QRect er( r.right() - size * 2, r.top() + base - fm.boundingRect( 'A' ).height() / 2 - size / 2 - 1, size, size ); + p->fillRect( er , cg.brush( QColorGroup::Foreground ) ); + } + break; + case QStyleSheetItem::ListCircle: + { + QRect er( r.right()-size*2, r.top() + base - fm.boundingRect('A').height()/2 - size/2 - 1, size, size); + p->drawEllipse( er ); + } + break; + case QStyleSheetItem::ListDisc: + default: + { + p->setBrush( cg.brush( QColorGroup::Foreground )); + QRect er( r.right()-size*2, r.top() + base - fm.boundingRect('A').height()/2 - size/2 - 1, size, size); + p->drawEllipse( er ); + p->setBrush( Qt::NoBrush ); + } + break; + } + + p->setFont( font ); +} + +void QTextParag::setStyleSheetItems( const QPtrVector &vec ) +{ + styleSheetItemsVec = vec; + invalidate( 0 ); + lm = rm = tm = bm = flm = -1; + numSubParag = -1; +} + +void QTextParag::setList( bool b, int listStyle ) +{ + if ( !doc ) + return; + + if ( !style() ) { + styleSheetItemsVec.resize( 2 ); + styleSheetItemsVec.insert( 0, doc->styleSheet()->item( "html" ) ); + styleSheetItemsVec.insert( 1, doc->styleSheet()->item( "p" ) ); + } + + if ( b ) { + if ( style()->displayMode() != QStyleSheetItem::DisplayListItem || this->listStyle() != listStyle ) { + styleSheetItemsVec.remove( styleSheetItemsVec.size() - 1 ); + QStyleSheetItem *item = styleSheetItemsVec[ styleSheetItemsVec.size() - 2 ]; + if ( item ) + styleSheetItemsVec.remove( styleSheetItemsVec.size() - 2 ); + styleSheetItemsVec.insert( styleSheetItemsVec.size() - 2, + listStyle == QStyleSheetItem::ListDisc || listStyle == QStyleSheetItem::ListCircle + || listStyle == QStyleSheetItem::ListSquare ? + doc->styleSheet()->item( "ul" ) : doc->styleSheet()->item( "ol" ) ); + styleSheetItemsVec.insert( styleSheetItemsVec.size() - 1, doc->styleSheet()->item( "li" ) ); + setListStyle( (QStyleSheetItem::ListStyle)listStyle ); + } else { + return; + } + } else { + if ( style()->displayMode() != QStyleSheetItem::DisplayBlock ) { + styleSheetItemsVec.remove( styleSheetItemsVec.size() - 1 ); + if ( styleSheetItemsVec.size() >= 2 ) { + styleSheetItemsVec.remove( styleSheetItemsVec.size() - 2 ); + styleSheetItemsVec.resize( styleSheetItemsVec.size() - 2 ); + } else { + styleSheetItemsVec.resize( styleSheetItemsVec.size() - 1 ); + } + } else { + return; + } + } + invalidate( 0 ); + lm = rm = tm = bm = flm = -1; + numSubParag = -1; + if ( next() ) { + QTextParag *s = next(); + while ( s ) { + s->numSubParag = -1; + s->lm = s->rm = s->tm = s->bm = flm = -1; + s->numSubParag = -1; + s->invalidate( 0 ); + s = s->next(); + } + } +} + +void QTextParag::incDepth() +{ + if ( !style() || !doc ) + return; + if ( style()->displayMode() != QStyleSheetItem::DisplayListItem ) + return; + styleSheetItemsVec.resize( styleSheetItemsVec.size() + 1 ); + styleSheetItemsVec.insert( styleSheetItemsVec.size() - 1, styleSheetItemsVec[ styleSheetItemsVec.size() - 2 ] ); + styleSheetItemsVec.insert( styleSheetItemsVec.size() - 2, + listStyle() == QStyleSheetItem::ListDisc || listStyle() == QStyleSheetItem::ListCircle || + listStyle() == QStyleSheetItem::ListSquare ? + doc->styleSheet()->item( "ul" ) : doc->styleSheet()->item( "ol" ) ); + invalidate( 0 ); + lm = -1; + flm = -1; +} + +void QTextParag::decDepth() +{ + if ( !style() || !doc ) + return; + if ( style()->displayMode() != QStyleSheetItem::DisplayListItem ) + return; + int numLists = 0; + QStyleSheetItem *lastList = 0; + int lastIndex = 0; + int i; + for ( i = 0; i < (int)styleSheetItemsVec.size(); ++i ) { + QStyleSheetItem *item = styleSheetItemsVec[ i ]; + if ( item->name() == "ol" || item->name() == "ul" ) { + lastList = item; + lastIndex = i; + numLists++; + } + } + + if ( !lastList ) + return; + styleSheetItemsVec.remove( lastIndex ); + for ( i = lastIndex; i < (int)styleSheetItemsVec.size() - 1; ++i ) + styleSheetItemsVec.insert( i, styleSheetItemsVec[ i + 1 ] ); + styleSheetItemsVec.resize( styleSheetItemsVec.size() - 1 ); + if ( numLists == 1 ) + setList( FALSE, -1 ); + invalidate( 0 ); + lm = -1; + flm = -1; +} + +int QTextParag::nextTab( int, int x ) +{ + int *ta = tArray; + if ( doc ) { + if ( !ta ) + ta = doc->tabArray(); + tabStopWidth = doc->tabStopWidth(); + } + if ( ta ) { + int i = 0; + while ( ta[ i ] ) { + if ( ta[ i ] >= x ) + return tArray[ i ]; + ++i; + } + return tArray[ 0 ]; + } else { + int d; + if ( tabStopWidth != 0 ) + d = x / tabStopWidth; + else + return x; + return tabStopWidth * ( d + 1 ); + } +} + +void QTextParag::setPainter( QPainter *p ) +{ + pntr = p; + for ( int i = 0; i < length(); ++i ) { + if ( at( i )->isCustom() ) + at( i )->customItem()->adjustToPainter( p ); + } +} + +QTextFormatCollection *QTextParag::formatCollection() const +{ + if ( doc ) + return doc->formatCollection(); + if ( !qFormatCollection ) + qFormatCollection = new QTextFormatCollection; + return qFormatCollection; +} + +QString QTextParag::richText() const +{ + QString s; + QTextFormat *lastFormat = 0; + for ( int i = 0; i < length(); ++i ) { + QTextStringChar *c = &str->at( i ); + if ( !lastFormat || ( lastFormat->key() != c->format()->key() && c->c != ' ' ) ) { + s += c->format()->makeFormatChangeTags( lastFormat ); + lastFormat = c->format(); + } + if ( c->c == '<' ) { + s += "<"; + } else if ( c->c == '>' ) { + s += ">"; + } else if ( c->isCustom() ) { + s += c->customItem()->richText(); + } else { + s += c->c; + } + } + return s; +} + +void QTextParag::addCommand( QTextCommand *cmd ) +{ + if ( !doc ) + commandHistory->addCommand( cmd ); + else + doc->commands()->addCommand( cmd ); +} + +QTextCursor *QTextParag::undo( QTextCursor *c ) +{ + if ( !doc ) + return commandHistory->undo( c ); + return doc->commands()->undo( c ); +} + +QTextCursor *QTextParag::redo( QTextCursor *c ) +{ + if ( !doc ) + return commandHistory->redo( c ); + return doc->commands()->redo( c ); +} + +int QTextParag::topMargin() const +{ + if ( !p && ( !doc || !doc->addMargins() ) ) + return 0; + if ( tm != -1 ) + return tm; + QStyleSheetItem *item = style(); + if ( !item ) { + ( (QTextParag*)this )->tm = 0; + return 0; + } + + int m = 0; + if ( item->margin( QStyleSheetItem::MarginTop ) != QStyleSheetItem::Undefined ) + m = item->margin( QStyleSheetItem::MarginTop ); + QStyleSheetItem *it = 0; + QStyleSheetItem *p = prev() ? prev()->style() : 0; + for ( int i = (int)styleSheetItemsVec.size() - 2 ; i >= 0; --i ) { + it = styleSheetItemsVec[ i ]; + if ( it != p ) + break; + int mar = it->margin( QStyleSheetItem::MarginTop ); + m += mar != QStyleSheetItem::Undefined ? mar : 0; + if ( it->displayMode() != QStyleSheetItem::DisplayInline ) + break; + } + + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + + ( (QTextParag*)this )->tm = m; + return tm; +} + +int QTextParag::bottomMargin() const +{ + if ( bm != -1 ) + return bm; + QStyleSheetItem *item = style(); + if ( !item ) { + ( (QTextParag*)this )->bm = 0; + return 0; + } + + int m = 0; + if ( item->margin( QStyleSheetItem::MarginBottom ) != QStyleSheetItem::Undefined ) + m = item->margin( QStyleSheetItem::MarginBottom ); + QStyleSheetItem *it = 0; + QStyleSheetItem *n = next() ? next()->style() : 0; + for ( int i =(int)styleSheetItemsVec.size() - 2 ; i >= 0; --i ) { + it = styleSheetItemsVec[ i ]; + if ( it != n ) + break; + int mar = it->margin( QStyleSheetItem::MarginBottom ); + m += mar != QStyleSheetItem::Undefined ? mar : 0; + if ( it->displayMode() != QStyleSheetItem::DisplayInline ) + break; + } + + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + + ( (QTextParag*)this )->bm = m; + return bm; +} + +int QTextParag::leftMargin() const +{ + if ( lm != -1 ) + return lm; + QStyleSheetItem *item = style(); + if ( !item ) { + ( (QTextParag*)this )->lm = 0; + return 0; + } + int m = 0; + for ( int i = 0; i < (int)styleSheetItemsVec.size(); ++i ) { + item = styleSheetItemsVec[ i ]; + int mar = item->margin( QStyleSheetItem::MarginLeft ); + m += mar != QStyleSheetItem::Undefined ? mar : 0; + if ( item->name() == "ol" || item->name() == "ul" ) { + m += defFormat->width( '1' ) + + defFormat->width( '2' ) + + defFormat->width( '3' ) + + defFormat->width( '.' ); + } + } + + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + + ( (QTextParag*)this )->lm = m; + return lm; +} + +int QTextParag::firstLineMargin() const +{ + if ( flm != -1 ) + return lm; + QStyleSheetItem *item = style(); + if ( !item ) { + ( (QTextParag*)this )->flm = 0; + return 0; + } + int m = 0; + for ( int i = 0; i < (int)styleSheetItemsVec.size(); ++i ) { + item = styleSheetItemsVec[ i ]; + int mar = item->margin( QStyleSheetItem::MarginFirstLine ); + m += mar != QStyleSheetItem::Undefined ? mar : 0; + } + + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + + ( (QTextParag*)this )->flm = m; + return flm; +} + +int QTextParag::rightMargin() const +{ + if ( rm != -1 ) + return rm; + QStyleSheetItem *item = style(); + if ( !item ) { + ( (QTextParag*)this )->rm = 0; + return 0; + } + int m = 0; + for ( int i = 0; i < (int)styleSheetItemsVec.size(); ++i ) { + item = styleSheetItemsVec[ i ]; + int mar = item->margin( QStyleSheetItem::MarginRight ); + m += mar != QStyleSheetItem::Undefined ? mar : 0; + } + + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + + ( (QTextParag*)this )->rm = m; + return rm; +} + +int QTextParag::lineSpacing( int /*line*/ ) const +{ + QStyleSheetItem *item = style(); + if ( !item ) + return 0; + + int ls = item->lineSpacing(); + if ( ls == QStyleSheetItem::Undefined ) + return 0; + if ( is_printer( painter() ) ) { + QPaintDeviceMetrics metrics( painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + ls = (int)( (double)ls * yscale ); + } + + return ls; +} + +void QTextParag::copyParagData( QTextParag *parag ) +{ + setStyleSheetItems( parag->styleSheetItems() ); + setListStyle( parag->listStyle() ); + setAlignment( parag->alignment() ); +} + +void QTextParag::show() +{ + if ( visible || !doc ) + return; + visible = TRUE; +} + +void QTextParag::hide() +{ + if ( !visible || !doc ) + return; + visible = FALSE; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + +QTextPreProcessor::QTextPreProcessor() +{ +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextFormatter::QTextFormatter() + : wrapEnabled( TRUE ), wrapColumn( -1 ), biw( FALSE ) +{ +} + +/* only used for bidi or complex text reordering + */ +QTextParagLineStart *QTextFormatter::formatLine( QTextParag * /*parag*/, QTextString *string, QTextParagLineStart *line, + QTextStringChar *startChar, QTextStringChar *lastChar, int align, int space ) +{ +//QT2HACK +#if 0 + if( string->isBidi() ) + return bidiReorderLine( parag, string, line, startChar, lastChar, align, space ); +#endif + space = QMAX( space, 0 ); // #### with nested tables this gets negative because of a bug I didn't find yet, so workaround for now. This also means non-left aligned nested tables do not work at the moment + int start = (startChar - &string->at(0)); + int last = (lastChar - &string->at(0) ); + // do alignment Auto == Left in this case + if ( align & Qt::AlignHCenter || align & Qt::AlignRight ) { + if ( align & Qt::AlignHCenter ) + space /= 2; + for ( int j = start; j <= last; ++j ) + string->at( j ).x += space; + } else if ( align & Qt3::AlignJustify ) { + int numSpaces = 0; + for ( int j = start; j < last; ++j ) { + if( isBreakable( string, j ) ) { + numSpaces++; + } + } + int toAdd = 0; + for ( int k = start + 1; k <= last; ++k ) { + if( isBreakable( string, k ) && numSpaces ) { + int s = space / numSpaces; + toAdd += s; + space -= s; + numSpaces--; + } + string->at( k ).x += toAdd; + } + } + + if ( last >= 0 && last < string->length() ) + line->w = string->at( last ).x + string->width( last ); // #### Lars, I guess this breaks for Bidi + else + line->w = 0; + + return new QTextParagLineStart(); +} + +//QT2HACK +#if 0 + +#ifdef BIDI_DEBUG +#include +#endif + +// collects one line of the paragraph and transforms it to visual order +QTextParagLineStart *QTextFormatter::bidiReorderLine( QTextParag *parag, QTextString *text, QTextParagLineStart *line, + QTextStringChar *startChar, QTextStringChar *lastChar, int align, int space ) +{ + int start = (startChar - &text->at(0)); + int last = (lastChar - &text->at(0) ); + //printf("doing BiDi reordering from %d to %d!\n", start, last); + + QBidiControl *control = new QBidiControl( line->context(), line->status ); + QString str; + str.setUnicode( 0, last - start + 1 ); + // fill string with logically ordered chars. + QTextStringChar *ch = startChar; + QChar *qch = (QChar *)str.unicode(); + while( ch <= lastChar ) { + *qch = ch->c; + qch++; + ch++; + } + + QPtrList *runs; + runs = QComplexText::bidiReorderLine(control, str, 0, last - start + 1); + + // now construct the reordered string out of the runs... + + int left = parag->document() ? parag->leftMargin() + 4 : 4; + int x = left + ( parag->document() ? parag->firstLineMargin() : 0 ); + if ( parag->document() ) + x = parag->document()->flow()->adjustLMargin( parag->rect().y(), parag->rect().height(), left, 4 ); + int numSpaces = 0; + // set the correct alignment. This is a bit messy.... + if( align == Qt3::AlignAuto ) { + // align according to directionality of the paragraph... + if ( text->isRightToLeft() ) + align = Qt::AlignRight; + } + + if ( align & Qt::AlignHCenter ) + x += space/2; + else if ( align & Qt::AlignRight ) + x += space; + else if ( align & Qt3::AlignJustify ) { + for ( int j = start; j < last; ++j ) { + if( isBreakable( text, j ) ) { + numSpaces++; + } + } + } + int toAdd = 0; + + // in rtl text the leftmost character is usually a space + // this space should not take up visible space on the left side, to get alignment right. + // the following bool is used for that purpose + bool first = TRUE; + QTextRun *r = runs->first(); + while ( r ) { + if(r->level %2) { + // odd level, need to reverse the string + int pos = r->stop + start; + while(pos >= r->start + start) { + QTextStringChar *c = &text->at(pos); + if( numSpaces && !first && isBreakable( text, pos ) ) { + int s = space / numSpaces; + toAdd += s; + space -= s; + numSpaces--; + } + if ( first ) { + first = FALSE; + if ( c->c == ' ' ) + x -= text->width( pos ); + } + c->x = x + toAdd; + c->rightToLeft = TRUE; + c->startOfRun = FALSE; + int ww = 0; + if ( c->c.unicode() >= 32 || c->c == '\t' || c->isCustom() ) { + ww = text->width( pos ); + } else { + ww = c->format()->width( ' ' ); + } + //qDebug("setting char %d at pos %d width=%d", pos, x, ww); + x += ww; + pos--; + } + } else { + int pos = r->start + start; + while(pos <= r->stop + start) { + QTextStringChar* c = &text->at(pos); + if( numSpaces && !first && isBreakable( text, pos ) ) { + int s = space / numSpaces; + toAdd += s; + space -= s; + numSpaces--; + } + if ( first ) { + first = FALSE; + if ( c->c == ' ' ) + x -= text->width( pos ); + } + c->x = x + toAdd; + c->rightToLeft = FALSE; + c->startOfRun = FALSE; + int ww = 0; + if ( c->c.unicode() >= 32 || c->c == '\t' || c->isCustom() ) { + ww = text->width( pos ); + } else { + ww = c->format()->width( ' ' ); + } + //qDebug("setting char %d at pos %d", pos, x); + x += ww; + pos++; + } + } + text->at( r->start ).startOfRun = TRUE; + r = runs->next(); + } + QTextParagLineStart *ls = new QTextParagLineStart( control->context, control->status ); + delete control; + delete runs; + return ls; +} +#endif + +bool QTextFormatter::isBreakable( QTextString *string, int pos ) const +{ + const QChar &c = string->at( pos ).c; + char ch = c.latin1(); + if ( c.isSpace() && ch != '\n' ) + return TRUE; + if ( c.unicode() == 0xad ) // soft hyphen + return TRUE; + if ( !ch ) { + // not latin1, need to do more sophisticated checks for other scripts + uchar row = c.row(); + if ( row == 0x0e ) { + // 0e00 - 0e7f == Thai + if ( c.cell() < 0x80 ) { +#ifdef HAVE_THAI_BREAKS + // check for thai + if( string != cachedString ) { + // build up string of thai chars + QTextCodec *thaiCodec = QTextCodec::codecForMib(2259); + if ( !thaiCache ) + thaiCache = new QCString; + if ( !thaiIt ) + thaiIt = ThBreakIterator::createWordInstance(); + *thaiCache = thaiCodec->fromUnicode( s->string() ); + } + thaiIt->setText(thaiCache->data()); + for(int i = thaiIt->first(); i != thaiIt->DONE; i = thaiIt->next() ) { + if( i == pos ) + return TRUE; + if( i > pos ) + return FALSE; + } + return FALSE; +#else + // if we don't have a thai line breaking lib, allow + // breaks everywhere except directly before punctuation. + return TRUE; +#endif + } else + return FALSE; + } + if ( row < 0x11 ) // no asian font + return FALSE; + if ( row > 0x2d && row < 0xfb || row == 0x11 ) + // asian line breaking. Everywhere allowed except directly + // in front of a punctuation character. + return TRUE; + } + return FALSE; +} + +void QTextFormatter::insertLineStart( QTextParag *parag, int index, QTextParagLineStart *ls ) +{ + if ( index > 0 ) { // we can assume that only first line starts are insrted multiple times + parag->lineStartList().insert( index, ls ); + return; + } + QMap::Iterator it; + if ( ( it = parag->lineStartList().find( index ) ) == parag->lineStartList().end() ) { + parag->lineStartList().insert( index, ls ); + } else { + delete *it; + parag->lineStartList().remove( it ); + parag->lineStartList().insert( index, ls ); + } +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextFormatterBreakInWords::QTextFormatterBreakInWords() +{ +} + +int QTextFormatterBreakInWords::format( QTextDocument *doc,QTextParag *parag, + int start, const QMap & ) +{ + QTextStringChar *c = 0; + QTextStringChar *firstChar = 0; + int left = doc ? parag->leftMargin() + 4 : 4; + int x = left + ( doc ? parag->firstLineMargin() : 0 ); + int dw = parag->documentVisibleWidth() - ( doc ? 8 : 0 ); + int y = doc->addMargins() ? parag->topMargin() : 0; + int h = y; + int len = parag->length(); + if ( doc ) + x = doc->flow()->adjustLMargin( y + parag->rect().y(), parag->rect().height(), x, 4 ); + int rm = parag->rightMargin(); + int w = dw - ( doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), parag->rect().height(), rm, 4 ) : 0 ); + bool fullWidth = TRUE; + int minw = 0; + + start = 0; + if ( start == 0 ) + c = ¶g->string()->at( 0 ); + + int i = start; + QTextParagLineStart *lineStart = new QTextParagLineStart( y, y, 0 ); + insertLineStart( parag, 0, lineStart ); + + int col = 0; + int ww = 0; + QChar lastChr; + for ( ; i < len; ++i, ++col ) { + if ( c ) + lastChr = c->c; + c = ¶g->string()->at( i ); + if ( i > 0 ) { + c->lineStart = 0; + } else { + c->lineStart = 1; + firstChar = c; + } + if ( c->c.unicode() >= 32 || c->isCustom() ) { + ww = parag->string()->width( i ); + } else if ( c->c == '\t' ) { + int nx = parag->nextTab( i, x ); + if ( nx < x ) + ww = w - x; + else + ww = nx - x + 1; + } else { + ww = c->format()->width( ' ' ); + } + + if ( c->isCustom() && c->customItem()->ownLine() ) { + if ( doc ) + x = doc ? doc->flow()->adjustLMargin( y + parag->rect().y(), parag->rect().height(), left, 4 ) : left; + w = dw - ( doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), parag->rect().height(), rm, 4 ) : 0 ); + c->customItem()->resize( parag->painter(), dw ); + if ( x != left || w != dw ) + fullWidth = FALSE; + w = dw; + y += h; + h = c->height(); + lineStart = new QTextParagLineStart( y, h, h ); + insertLineStart( parag, i, lineStart ); + c->lineStart = 1; + firstChar = c; + x = 0xffffff; + continue; + } + + if ( isWrapEnabled() && + ( wrapAtColumn() == -1 && x + ww > w || + wrapAtColumn() != -1 && col >= wrapAtColumn() ) || + parag->isNewLinesAllowed() && lastChr == '\n' ) { + x = doc ? parag->document()->flow()->adjustLMargin( y + parag->rect().y(), parag->rect().height(), left, 4 ) : left; + if ( x != left ) + fullWidth = FALSE; + w = dw; + y += h; + h = c->height(); + lineStart = formatLine( parag, parag->string(), lineStart, firstChar, c-1 ); + lineStart->y = y; + insertLineStart( parag, i, lineStart ); + lineStart->baseLine = c->ascent(); + lineStart->h = c->height(); + c->lineStart = 1; + firstChar = c; + col = 0; + if ( wrapAtColumn() != -1 ) + minw = QMAX( minw, w ); + } else if ( lineStart ) { + lineStart->baseLine = QMAX( lineStart->baseLine, c->ascent() ); + h = QMAX( h, c->height() ); + lineStart->h = h; + } + + c->x = x; + x += ww; + } + + int m = parag->bottomMargin(); + if ( parag->next() && !doc->addMargins() ) + m = QMAX( m, parag->next()->topMargin() ); + parag->setFullWidth( fullWidth ); + if ( is_printer( parag->painter() ) ) { + QPaintDeviceMetrics metrics( parag->painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + y += h + m; + if ( !isWrapEnabled() ) + minw = QMAX( minw, c->x + ww ); // #### Lars: Fix this for BiDi, please + if ( doc ) + doc->setMinimumWidth( minw, parag ); + return y; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextFormatterBreakWords::QTextFormatterBreakWords() +{ +} + +int QTextFormatterBreakWords::format( QTextDocument *doc, QTextParag *parag, + int start, const QMap & ) +{ + QTextStringChar *c = 0; + start = 0; + if ( start == 0 ) + c = ¶g->string()->at( 0 ); + + QTextStringChar *firstChar = 0; + int firstCharIndex = 0; + QTextString *string = parag->string(); + int left = doc ? parag->leftMargin() + 4 : 0; + int x = left + ( doc ? parag->firstLineMargin() : 0 ); + int curLeft = left; + int y = doc && doc->addMargins() ? parag->topMargin() : 0; + int h = 0; + int len = parag->length(); + + int initialHeight = h + c->height(); // remember what adjustLMargin was called with + if ( doc ) + x = doc->flow()->adjustLMargin( y + parag->rect().y(), h + c->height(), x, 4 ); + int initialLMargin = x; // and remember the resulting adjustement we got + int dw = parag->documentVisibleWidth() - ( doc ? ( left != x ? 0 : 8 ) : -4 ); + + curLeft = x; + int rm = parag->rightMargin(); + int initialRMargin = doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), h + c->height(), rm, 4 ) : 0; + int w = dw - initialRMargin; + bool fullWidth = TRUE; + int marg = left + initialRMargin; + int minw = 0; + int tminw = marg; + int line = 0; + + int i = start; + //qDebug( "Initial QTextParagLineStart at y=%d", y ); + QTextParagLineStart *lineStart = new QTextParagLineStart( y, 0, 0 ); + insertLineStart( parag, 0, lineStart ); + int lastBreak = -1; + int tmpBaseLine = 0, tmph = 0; + bool lastWasNonInlineCustom = FALSE; + + int align = parag->alignment(); + if ( align == Qt3::AlignAuto && doc && doc->alignment() != Qt3::AlignAuto ) + align = doc->alignment(); + + int col = 0; + int ww = 0; + QChar lastChr; + for ( ; i < len; ++i, ++col ) { + if ( c ) + lastChr = c->c; + c = &string->at( i ); + if ( i > 0 && x > curLeft || lastWasNonInlineCustom ) { + c->lineStart = 0; + } else { + c->lineStart = 1; + firstChar = c; + firstCharIndex = i; + } + + if ( c->isCustom() && c->customItem()->placement() != QTextCustomItem::PlaceInline ) + lastWasNonInlineCustom = TRUE; + else + lastWasNonInlineCustom = FALSE; + + if ( c->c.unicode() >= 32 || c->isCustom() ) { + ww = string->width( i ); + } else if ( c->c == '\t' ) { + int nx = parag->nextTab( i, x ); + if ( nx < x ) + ww = w - x; + else + ww = nx - x + 1; + } else { + ww = c->format()->width( ' ' ); + } + + // Custom item that forces a new line + if ( c->isCustom() && c->customItem()->ownLine() ) { + x = doc ? doc->flow()->adjustLMargin( y + parag->rect().y(), c->height(), left, 4 ) : left; + w = dw - ( doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), c->height(), rm, 4 ) : 0 ); + QTextParagLineStart *lineStart2 = formatLine( parag, string, lineStart, firstChar, c-1, align, w - x ); + c->customItem()->resize( parag->painter(), dw ); + if ( x != left || w != dw ) + fullWidth = FALSE; + curLeft = x; + if ( i == 0 || !isBreakable( string, i - 1 ) || string->at( i - 1 ).lineStart == 0 ) { + // Create a new line for this custom item + lineStart->h += doc ? parag->lineSpacing( line++ ) : 0; + y += QMAX( h, tmph ); + tmph = c->height(); + h = tmph; + lineStart = lineStart2; + lineStart->y = y; + insertLineStart( parag, i, lineStart ); + c->lineStart = 1; + firstChar = c; + } else { + // No need for a new line, already at beginning of line + tmph = c->height(); + h = tmph; + delete lineStart2; + } + lineStart->h = h; + lineStart->baseLine = h; + tmpBaseLine = lineStart->baseLine; + lastBreak = -2; + x = 0xffffff; + minw = QMAX( minw, tminw ); + int tw = QMAX( c->customItem()->minimumWidth(), QMIN( c->customItem()->widthHint(), c->customItem()->width ) ); + if ( tw < 32000 ) + tminw = tw; + else + tminw = marg; + continue; + } + //qDebug("c=%c i=%d/%d x=%d ww=%d w=%d (test is x+ww>w) lastBreak=%d isBreakable=%d",c->c.latin1(),i,len,x,ww,w,lastBreak,isBreakable(string,i)); + // Wrapping at end of line + if ( isWrapEnabled() && + ( !isBreakable( string, i ) || ( i > 0 && !isBreakable( string, i - 1 ) ) ) && // break after ' ' + ( lastBreak != -1 || allowBreakInWords() ) && + ( wrapAtColumn() == -1 && x + ww > w && lastBreak != -1 || + wrapAtColumn() == -1 && x + ww > w - 4 && lastBreak == -1 && allowBreakInWords() || + wrapAtColumn() != -1 && col >= wrapAtColumn() ) || + parag->isNewLinesAllowed() && lastChr == '\n' ) { + //qDebug( "BREAKING" ); + if ( wrapAtColumn() != -1 ) + minw = QMAX( minw, x + ww ); + // No breakable char found -> break at current char + if ( lastBreak < 0 ) { + ASSERT( lineStart ); + //if ( lineStart ) { + // (combine lineStart and tmpBaseLine/tmph) + int belowBaseLine = QMAX( h - lineStart->baseLine, tmph - tmpBaseLine ); + lineStart->baseLine = QMAX( lineStart->baseLine, tmpBaseLine ); + h = lineStart->baseLine + belowBaseLine; + lineStart->h = h; + //} + QTextParagLineStart *lineStart2 = formatLine( parag, string, lineStart, firstChar, c-1, align, w - x ); + lineStart->h += doc ? parag->lineSpacing( line++ ) : 0; + y += lineStart->h; + + lineStart = lineStart2; + tmph = c->height(); + h = 0; + x = doc ? doc->flow()->adjustLMargin( y + parag->rect().y(), tmph, left, 4 ) : left; + initialHeight = tmph; + initialLMargin = x; + initialRMargin = ( doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), tmph, rm, 4 ) : 0 ); + w = dw - initialRMargin; + if ( parag->isNewLinesAllowed() && c->c == '\t' ) { + int nx = parag->nextTab( i, x ); + if ( nx < x ) + ww = w - x; + else + ww = nx - x + 1; + } + if ( x != left || w != dw ) + fullWidth = FALSE; + curLeft = x; + lineStart->y = y; + insertLineStart( parag, i, lineStart ); + lineStart->baseLine = c->ascent(); + lineStart->h = c->height(); + c->lineStart = 1; + firstChar = c; + tmpBaseLine = lineStart->baseLine; + lastBreak = -1; + col = 0; + } else { + // Breakable char was found + i = lastBreak; + QTextParagLineStart *lineStart2 = formatLine( parag, string, lineStart, firstChar, parag->at( lastBreak ), align, w - string->at( i ).x ); + lineStart->h += doc ? parag->lineSpacing( line++ ) : 0; + y += lineStart->h; + lineStart = lineStart2; + tmph = c->height(); + h = tmph; + x = doc ? doc->flow()->adjustLMargin( y + parag->rect().y(), h, left, 4 ) : left; + initialHeight = h; + initialLMargin = x; + initialRMargin = ( doc ? doc->flow()->adjustRMargin( y + parag->rect().y(), h, rm, 4 ) : 0 ); + w = dw - initialRMargin; + if ( parag->isNewLinesAllowed() && c->c == '\t' ) { + int nx = parag->nextTab( i, x ); + if ( nx < x ) + ww = w - x; + else + ww = nx - x + 1; + } + if ( x != left || w != dw ) + fullWidth = FALSE; + curLeft = x; + lineStart->y = y; + insertLineStart( parag, i + 1, lineStart ); + lineStart->baseLine = c->ascent(); + lineStart->h = c->height(); + c->lineStart = 1; + firstChar = c; + tmpBaseLine = lineStart->baseLine; + lastBreak = -1; + col = 0; + tminw = marg; + continue; + } + } else if ( lineStart && ( isBreakable( string, i ) || parag->isNewLinesAllowed() && c->c == '\n' ) ) { + // Breakable character + if ( len <= 2 || i < len - 1 ) { + //qDebug( " Breakable character (i=%d len=%d): combining %d/%d with %d/%d", i, len, + // tmpBaseLine, tmph, c->ascent(), c->height()+ls ); + // (combine tmpBaseLine/tmph and this character) + int belowBaseLine = QMAX( tmph - tmpBaseLine, c->height() - c->ascent() ); + tmpBaseLine = QMAX( tmpBaseLine, c->ascent() ); + tmph = tmpBaseLine + belowBaseLine; + //qDebug( " -> tmpBaseLine/tmph : %d/%d", tmpBaseLine, tmph ); + } + minw = QMAX( minw, tminw ); + tminw = marg + ww; + // (combine lineStart and tmpBaseLine/tmph) + //qDebug( "Breakable character: combining %d/%d with %d/%d", lineStart->baseLine, h, tmpBaseLine, tmph ); + int belowBaseLine = QMAX( h - lineStart->baseLine, tmph - tmpBaseLine ); + lineStart->baseLine = QMAX( lineStart->baseLine, tmpBaseLine ); + h = lineStart->baseLine + belowBaseLine; + lineStart->h = h; + // if h > initialHeight, call adjust[LR]Margin, and if the result is != initial[LR]Margin, + // format this line again + if ( doc && h > initialHeight ) + { + int newLMargin = doc->flow()->adjustLMargin( y + parag->rect().y(), h, left, 4 ); + int newRMargin = doc->flow()->adjustRMargin( y + parag->rect().y(), h, rm, 4 ); + //qDebug("new height: %d => newLMargin=%d newRMargin=%d", h, newLMargin, newRMargin); + if ( newLMargin != initialLMargin || newRMargin != initialRMargin ) + { + //qDebug("formatting again"); + i = firstCharIndex; + x = newLMargin; + w = dw - newRMargin; + initialLMargin = newLMargin; + initialRMargin = newRMargin; + initialHeight = h; + curLeft = x; + lastBreak = -1; + col = 0; + if ( parag->isNewLinesAllowed() && firstChar->c == '\t' ) { + int nx = parag->nextTab( i, x ); + if ( nx < x ) + ww = w - x; + else + ww = nx - x + 1; + } + //minw ? tminw ? + } + } + + //qDebug( " -> lineStart->baseLine/lineStart->h : %d/%d", lineStart->baseLine, lineStart->h ); + if ( i < len - 2 || c->c != ' ' ) + lastBreak = i; + } else { + // Non-breakable character + tminw += ww; + //qDebug( " Non-breakable character: combining %d/%d with %d/%d", tmpBaseLine, tmph, c->ascent(), c->height()+ls ); + // (combine tmpBaseLine/tmph and this character) + int belowBaseLine = QMAX( tmph - tmpBaseLine, c->height() - c->ascent() ); + tmpBaseLine = QMAX( tmpBaseLine, c->ascent() ); + tmph = tmpBaseLine + belowBaseLine; + //qDebug( " -> tmpBaseLine/tmph : %d/%d", tmpBaseLine, tmph ); + } + + c->x = x; + //qDebug("setting c->x to %d",c->x); + if ( c->isCustom() ) + { + //qDebug("custom item -> moving to %d,%d",x,y); + c->customItem()->move( x, y ); + } + x += ww; + //qDebug("added %d -> now x=%d",ww,x); + } + + // Finish formatting the last line + if ( lineStart ) { + //qDebug( "Last Line.... Combining %d/%d with %d/%d", lineStart->baseLine, h, tmpBaseLine, tmph ); + // (combine lineStart and tmpBaseLine/tmph) + int belowBaseLine = QMAX( h - lineStart->baseLine, tmph - tmpBaseLine ); + lineStart->baseLine = QMAX( lineStart->baseLine, tmpBaseLine ); + h = lineStart->baseLine + belowBaseLine; + lineStart->h = h; + //qDebug( " -> lineStart->baseLine/lineStart->h : %d/%d", lineStart->baseLine, lineStart->h ); + // last line in a paragraph is not justified + if ( align == Qt3::AlignJustify ) + align = Qt3::AlignAuto; + QTextParagLineStart *lineStart2 = formatLine( parag, string, lineStart, firstChar, c, align, w - x ); + h += doc ? parag->lineSpacing( line++ ) : 0; + lineStart->h = h; + delete lineStart2; + } + + minw = QMAX( minw, tminw ); + + int m = parag->bottomMargin(); + if ( parag->next() && !doc->addMargins() ) + m = QMAX( m, parag->next()->topMargin() ); + parag->setFullWidth( fullWidth ); + if ( is_printer( parag->painter() ) ) { + QPaintDeviceMetrics metrics( parag->painter()->device() ); + double yscale = scale_factor( metrics.logicalDpiY() ); + m = (int)( (double)m * yscale ); + } + //qDebug( "Adding h(%d) and bottomMargin(%d) to y(%d) => %d", h, m, y, y+h+m ); + y += h + m; + //if ( doc && doc->addMargins() ) + // y -= parag->topMargin(); // Was already in y's initial value + + if ( !isWrapEnabled() ) + minw = QMAX( minw, c->x + ww ); // #### Lars: Fix this for BiDi, please + if ( doc ) { + if ( minw < 32000 ) + doc->setMinimumWidth( minw, parag ); + } + + return y; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextIndent::QTextIndent() +{ +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextFormatCollection::QTextFormatCollection() + : cKey( 307 ), sheet( 0 ) +{ +#ifdef DEBUG_COLLECTION + qDebug("QTextFormatCollection::QTextFormatCollection %p", this); +#endif + defFormat = new QTextFormat( QApplication::font(), + QApplication::palette().color( QPalette::Active, QColorGroup::Text ) ); + lastFormat = cres = 0; + cflags = -1; + cKey.setAutoDelete( TRUE ); + cachedFormat = 0; +} + +QTextFormatCollection::~QTextFormatCollection() +{ +#ifdef DEBUG_COLLECTION + qDebug("QTextFormatCollection::~QTextFormatCollection %p", this); +#endif + delete defFormat; +} + +QTextFormat *QTextFormatCollection::format( const QTextFormat *f ) +{ + if ( f->parent() == this || f == defFormat ) { +#ifdef DEBUG_COLLECTION + qDebug( " format(f) need '%s', best case!", f->key().latin1() ); +#endif + lastFormat = const_cast(f); + lastFormat->addRef(); + return lastFormat; + } + + if ( f == lastFormat || ( lastFormat && f->key() == lastFormat->key() ) ) { +#ifdef DEBUG_COLLECTION + qDebug( " format(f) need '%s', good case!", f->key().latin1() ); +#endif + lastFormat->addRef(); + return lastFormat; + } + +#if 0 // #### disabled, because if this format is not in the + // formatcollection, it doesn't get the painter through + // QTextFormatCollection::setPainter() which breaks printing on + // windows + if ( f->isAnchor() ) { + lastFormat = createFormat( *f ); + lastFormat->collection = 0; + return lastFormat; + } +#endif + + QTextFormat *fm = cKey.find( f->key() ); + if ( fm ) { +#ifdef DEBUG_COLLECTION + qDebug( " format(f) need '%s', normal case!", f->key().latin1() ); +#endif + lastFormat = fm; + lastFormat->addRef(); + return lastFormat; + } + +#ifdef DEBUG_COLLECTION + qDebug( " format(f) need '%s', worst case!", f->key().latin1() ); +#endif + lastFormat = createFormat( *f ); + lastFormat->collection = this; + cKey.insert( lastFormat->key(), lastFormat ); + return lastFormat; +} + +QTextFormat *QTextFormatCollection::format( QTextFormat *of, QTextFormat *nf, int flags ) +{ + if ( cres && kof == of->key() && knf == nf->key() && cflags == flags ) { +#ifdef DEBUG_COLLECTION + qDebug( " format(of,nf,flags) mix of '%s' and '%s, best case!", of->key().latin1(), nf->key().latin1() ); +#endif + cres->addRef(); + return cres; + } + +#ifdef DEBUG_COLLECTION + qDebug(" format(of,nf,%d) calling createFormat(of=%p %s)",flags,of,of->key().latin1()); +#endif + cres = createFormat( *of ); + kof = of->key(); + knf = nf->key(); + cflags = flags; + +#ifdef DEBUG_COLLECTION + qDebug(" format(of,nf,%d) calling copyFormat(nf=%p %s)",flags,nf,nf->key().latin1()); +#endif + cres->copyFormat( *nf, flags ); + + QTextFormat *fm = cKey.find( cres->key() ); + if ( !fm ) { +#ifdef DEBUG_COLLECTION + qDebug( " format(of,nf,flags) mix of '%s' and '%s, worst case!", of->key().latin1(), nf->key().latin1() ); +#endif + cres->collection = this; + cKey.insert( cres->key(), cres ); + } else { +#ifdef DEBUG_COLLECTION + qDebug( " format(of,nf,flags) mix of '%s' and '%s, good case!", of->key().latin1(), nf->key().latin1() ); +#endif + delete cres; + cres = fm; + cres->addRef(); + } + + return cres; +} + +QTextFormat *QTextFormatCollection::format( const QFont &f, const QColor &c ) +{ + if ( cachedFormat && cfont == f && ccol == c ) { +#ifdef DEBUG_COLLECTION + qDebug( " format of font and col '%s' - best case", cachedFormat->key().latin1() ); +#endif + cachedFormat->addRef(); + return cachedFormat; + } + + QString key = QTextFormat::getKey( f, c, FALSE, QString::null, QString::null, QTextFormat::AlignNormal ); + cachedFormat = cKey.find( key ); + cfont = f; + ccol = c; + + if ( cachedFormat ) { +#ifdef DEBUG_COLLECTION + qDebug( " format of font and col '%s' - good case", cachedFormat->key().latin1() ); +#endif + cachedFormat->addRef(); + return cachedFormat; + } + + cachedFormat = createFormat( f, c ); + cachedFormat->collection = this; + cKey.insert( cachedFormat->key(), cachedFormat ); +#ifdef DEBUG_COLLECTION + qDebug( " format of font and col '%s' - worst case", cachedFormat->key().latin1() ); +#endif + return cachedFormat; +} + +void QTextFormatCollection::remove( QTextFormat *f ) +{ + if ( lastFormat == f ) + lastFormat = 0; + if ( cres == f ) + cres = 0; + if ( cachedFormat == f ) + cachedFormat = 0; + cKey.remove( f->key() ); +} + +void QTextFormatCollection::setPainter( QPainter *p ) +{ + QDictIterator it( cKey ); + QTextFormat *f; + while ( ( f = it.current() ) ) { + ++it; + f->setPainter( p ); + } +} + +void QTextFormatCollection::debug() +{ + qDebug( "------------ QTextFormatCollection: debug --------------- BEGIN" ); + QDictIterator it( cKey ); + for ( ; it.current(); ++it ) { + qDebug( "format '%s' (%p): refcount: %d", it.current()->key().latin1(), + it.current(), it.current()->ref ); + } + qDebug( "------------ QTextFormatCollection: debug --------------- END" ); +} + +void QTextFormatCollection::updateStyles() +{ + QDictIterator it( cKey ); + QTextFormat *f; + while ( ( f = it.current() ) ) { + ++it; + f->updateStyle(); + } +} + +void QTextFormatCollection::updateFontSizes( int base ) +{ + QDictIterator it( cKey ); + QTextFormat *f; + while ( ( f = it.current() ) ) { + ++it; + f->stdPointSize = base; + f->fn.setPointSize( f->stdPointSize ); + styleSheet()->scaleFont( f->fn, f->logicalFontSize ); + f->update(); + } + f = defFormat; + f->stdPointSize = base; + f->fn.setPointSize( f->stdPointSize ); + styleSheet()->scaleFont( f->fn, f->logicalFontSize ); + f->update(); +} + +void QTextFormatCollection::updateFontAttributes( const QFont &f, const QFont &old ) +{ + QDictIterator it( cKey ); + QTextFormat *fm; + while ( ( fm = it.current() ) ) { + ++it; + if ( fm->fn.family() == old.family() && + fm->fn.weight() == old.weight() && + fm->fn.italic() == old.italic() && + fm->fn.underline() == old.underline() ) { + fm->fn.setFamily( f.family() ); + fm->fn.setWeight( f.weight() ); + fm->fn.setItalic( f.italic() ); + fm->fn.setUnderline( f.underline() ); + fm->update(); + } + } + fm = defFormat; + if ( fm->fn.family() == old.family() && + fm->fn.weight() == old.weight() && + fm->fn.italic() == old.italic() && + fm->fn.underline() == old.underline() ) { + fm->fn.setFamily( f.family() ); + fm->fn.setWeight( f.weight() ); + fm->fn.setItalic( f.italic() ); + fm->fn.setUnderline( f.underline() ); + fm->update(); + } +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +void QTextFormat::copyFormat( const QTextFormat & nf, int flags ) +{ + if ( flags & QTextFormat::Bold ) + fn.setBold( nf.fn.bold() ); + if ( flags & QTextFormat::Italic ) + fn.setItalic( nf.fn.italic() ); + if ( flags & QTextFormat::Underline ) + fn.setUnderline( nf.fn.underline() ); + if ( flags & QTextFormat::Family ) + fn.setFamily( nf.fn.family() ); + if ( flags & QTextFormat::Size ) + fn.setPointSize( nf.fn.pointSize() ); + if ( flags & QTextFormat::Color ) + col = nf.col; + if ( flags & QTextFormat::Misspelled ) + missp = nf.missp; + if ( flags & QTextFormat::VAlign ) + ha = nf.ha; + update(); +} + +void QTextFormat::setBold( bool b ) +{ + if ( b == fn.bold() ) + return; + fn.setBold( b ); + update(); +} + +void QTextFormat::setMisspelled( bool b ) +{ + if ( b == (bool)missp ) + return; + missp = b; + update(); +} + +void QTextFormat::setVAlign( VerticalAlignment a ) +{ + if ( a == ha ) + return; + ha = a; + update(); +} + +void QTextFormat::setItalic( bool b ) +{ + if ( b == fn.italic() ) + return; + fn.setItalic( b ); + update(); +} + +void QTextFormat::setUnderline( bool b ) +{ + if ( b == fn.underline() ) + return; + fn.setUnderline( b ); + update(); +} + +void QTextFormat::setFamily( const QString &f ) +{ + if ( f == fn.family() ) + return; + fn.setFamily( f ); + +//ANY_CHARSET_BEGIN + if ( m_charsetMap && m_charsetMap->contains(f) ) { + fn.setCharSet((*m_charsetMap)[f]); + } +//ANY_CHARSET_END + update(); +} + +void QTextFormat::setPointSize( int s ) +{ + if ( s == fn.pointSize() ) + return; + fn.setPointSize( s ); + update(); +} + +void QTextFormat::setFont( const QFont &f ) +{ + if ( f == fn && !k.isEmpty() ) + return; + fn = f; +//ANY_CHARSET_BEGIN + if (m_charsetMap && m_charsetMap->contains(fn.family())) + fn.setCharSet((*m_charsetMap)[fn.family()]); +//ANY_CHARSET_END + update(); +} + +void QTextFormat::setColor( const QColor &c ) +{ + if ( c == col ) + return; + col = c; + update(); +} + +void QTextFormat::setPainter( QPainter *p ) +{ + painter = p; + update(); +} + +static int makeLogicFontSize( int s ) +{ + int defSize = QApplication::font().pointSize(); + if ( s < defSize - 4 ) + return 1; + if ( s < defSize ) + return 2; + if ( s < defSize + 4 ) + return 3; + if ( s < defSize + 8 ) + return 4; + if ( s < defSize + 12 ) + return 5; + if (s < defSize + 16 ) + return 6; + return 7; +} + +static QTextFormat *defaultFormat = 0; + +QString QTextFormat::makeFormatChangeTags( QTextFormat *f ) const +{ + if ( !defaultFormat ) + defaultFormat = new QTextFormat( QApplication::font(), + QApplication::palette().color( QPalette::Active, QColorGroup::Text ) ); + + QString tag; + + if ( f ) { + if ( f->font() != defaultFormat->font() || + f->color().rgb() != defaultFormat->color().rgb() ) + tag += "
    "; + if ( f->font() != defaultFormat->font() ) { + if ( f->font().underline() && f->font().underline() != defaultFormat->font().underline() ) + tag += "
    "; + if ( f->font().italic() && f->font().italic() != defaultFormat->font().italic() ) + tag += "
    "; + if ( f->font().bold() && f->font().bold() != defaultFormat->font().bold() ) + tag += "
    "; + } + if ( f->isAnchor() && !f->anchorHref().isEmpty() ) + tag += ""; + } + + if ( isAnchor() ) { + if ( !anchor_href.isEmpty() ) + tag += ""; + else + tag += ""; + } + + if ( font() != defaultFormat->font() ) { + if ( font().bold() && font().bold() != defaultFormat->font().bold() ) + tag += ""; + if ( font().italic() && font().italic() != defaultFormat->font().italic() ) + tag += ""; + if ( font().underline() && font().underline() != defaultFormat->font().underline() ) + tag += ""; + } + if ( font() != defaultFormat->font() || + color().rgb() != defaultFormat->color().rgb() ) { + tag += "font().family() ) + tag +="face=\"" + fn.family() + "\" "; + if ( font().pointSize() != defaultFormat->font().pointSize() ) + tag +="size=\"" + QString::number( makeLogicFontSize( fn.pointSize() ) ) + "\" "; + if ( color().rgb() != defaultFormat->color().rgb() ) + tag +="color=\"" + col.name() + "\" "; + tag += ">"; + } + + return tag; +} + +QString QTextFormat::makeFormatEndTags() const +{ + if ( !defaultFormat ) + defaultFormat = new QTextFormat( QApplication::font(), + QApplication::palette().color( QPalette::Active, QColorGroup::Text ) ); + + QString tag; + if ( font() != defaultFormat->font() || + color().rgb() != defaultFormat->color().rgb() ) + tag += ""; + if ( font() != defaultFormat->font() ) { + if ( font().underline() && font().underline() != defaultFormat->font().underline() ) + tag += ""; + if ( font().italic() && font().italic() != defaultFormat->font().italic() ) + tag += ""; + if ( font().bold() && font().bold() != defaultFormat->font().bold() ) + tag += ""; + } + if ( isAnchor() && anchorHref().isEmpty() ) + tag += ""; + return tag; +} + +QTextFormat QTextFormat::makeTextFormat( const QStyleSheetItem *style, const QMap& attr ) const +{ + QTextFormat format(*this); + bool changed = FALSE; + if ( style ) { + format.style = style->name(); + if ( style->name() == "font") { + if ( attr.contains("color") ) { + QString s = attr["color"]; + if ( !s.isEmpty() ) { + format.col.setNamedColor( s ); + format.linkColor = FALSE; + } + } + if ( attr.contains("size") ) { + QString a = attr["size"]; + int n = a.toInt(); + if ( a[0] == '+' || a[0] == '-' ) + n += format.logicalFontSize; + format.logicalFontSize = n; + format.fn.setPointSize( format.stdPointSize ); + style->styleSheet()->scaleFont( format.fn, format.logicalFontSize ); + } + if ( attr.contains("face") ) { + QString a = attr["face"]; + if ( a.contains(',') ) + a = a.left( a.find(',') ); + format.fn.setFamily( a ); +//ANY_CHARSET_BEGIN + if (m_charsetMap && m_charsetMap->contains(format.fn.family())) { + format.fn.setCharSet((*m_charsetMap)[format.fn.family()]); + } +//ANY_CHARSET_END + } + } else { + + if ( style->isAnchor() ) { + format.anchor_href = attr["href"]; + format.anchor_name = attr["name"]; + changed = TRUE; + } + + if ( style->fontWeight() != QStyleSheetItem::Undefined ) + format.fn.setWeight( style->fontWeight() ); + if ( style->fontSize() != QStyleSheetItem::Undefined ) + format.fn.setPointSize( style->fontSize() ); + else if ( style->logicalFontSize() != QStyleSheetItem::Undefined ) { + format.logicalFontSize = style->logicalFontSize(); + format.fn.setPointSize( format.stdPointSize ); + style->styleSheet()->scaleFont( format.fn, format.logicalFontSize ); + } + else if ( style->logicalFontSizeStep() ) { + format.logicalFontSize += style->logicalFontSizeStep(); + format.fn.setPointSize( format.stdPointSize ); + style->styleSheet()->scaleFont( format.fn, format.logicalFontSize ); + } + if ( !style->fontFamily().isEmpty() ) + format.fn.setFamily( style->fontFamily() ); +//ANY_CHARSET_BEGIN + if ( !style->fontFamily().isEmpty() ) + if (m_charsetMap && m_charsetMap->contains(style->fontFamily())) + format.fn.setCharSet( (*m_charsetMap)[style->fontFamily()] ); +//ANY_CHARSET_END + if ( style->color().isValid() ) + format.col = style->color(); + if ( style->definesFontItalic() ) + format.fn.setItalic( style->fontItalic() ); + if ( style->definesFontUnderline() ) + format.fn.setUnderline( style->fontUnderline() ); + } + } + + if ( fn != format.fn || changed || col != format.col ) // slight performance improvement + format.generateKey(); + format.update(); + return format; +} + +QTextCustomItem::QTextCustomItem( QTextDocument *p ) + : width(-1), height(0), parent(p), xpos(0), ypos(-1), parag(0) +{ +} + +QTextCustomItem::~QTextCustomItem() +{ +} + +struct QPixmapInt +{ + QPixmapInt() : ref( 0 ) {} + QPixmap pm; + int ref; +}; + +static QMap *pixmap_map = 0; + +QTextImage::QTextImage( QTextDocument *p, const QMap &attr, const QString& context, + QMimeSourceFactory &factory ) + : QTextCustomItem( p ) +{ +#if defined(PARSER_DEBUG) + qDebug( debug_indent + "new QTextImage (pappi: %p)", p ); +#endif + + width = height = 0; + if ( attr.contains("width") ) + width = attr["width"].toInt(); + if ( attr.contains("height") ) + height = attr["height"].toInt(); + + reg = 0; + QString imageName = attr["src"]; + + if (!imageName) + imageName = attr["source"]; + +#if defined(PARSER_DEBUG) + qDebug( debug_indent + " .." + imageName ); +#endif + + if ( !imageName.isEmpty() ) { + imgId = QString( "%1,%2,%3,%4" ).arg( imageName ).arg( width ).arg( height ).arg( (ulong)&factory ); + if ( !pixmap_map ) + pixmap_map = new QMap; + if ( pixmap_map->contains( imgId ) ) { + QPixmapInt& pmi = pixmap_map->operator[](imgId); + pm = pmi.pm; + pmi.ref++; + width = pm.width(); + height = pm.height(); + } else { + QImage img; + const QMimeSource* m = + factory.data( imageName, context ); + if ( !m ) { +// qWarning("QTextImage: no mimesource for %s", imageName.latin1() ); + } + else { + if ( !QImageDrag::decode( m, img ) ) { +// qWarning("QTextImage: cannot decode %s", imageName.latin1() ); + } + } + + if ( !img.isNull() ) { + if ( width == 0 ) { + width = img.width(); + if ( height != 0 ) { + width = img.width() * height / img.height(); + } + } + if ( height == 0 ) { + height = img.height(); + if ( width != img.width() ) { + height = img.height() * width / img.width(); + } + } + + if ( img.width() != width || img.height() != height ){ + img = img.smoothScale(width, height); + width = img.width(); + height = img.height(); + } + pm.convertFromImage( img ); + } + if ( !pm.isNull() ) { + QPixmapInt& pmi = pixmap_map->operator[](imgId); + pmi.pm = pm; + pmi.ref++; + } + } + if ( pm.mask() ) { + QRegion mask( *pm.mask() ); + QRegion all( 0, 0, pm.width(), pm.height() ); + reg = new QRegion( all.subtract( mask ) ); + } + } + + if ( pm.isNull() && (width*height)==0 ) + width = height = 50; + + place = PlaceInline; + if ( attr["align"] == "left" ) + place = PlaceLeft; + else if ( attr["align"] == "right" ) + place = PlaceRight; + + tmpwidth = width; + tmpheight = height; + + attributes = attr; +} + +QTextImage::~QTextImage() +{ + if ( pixmap_map && pixmap_map->contains( imgId ) ) { + QPixmapInt& pmi = pixmap_map->operator[](imgId); + pmi.ref--; + if ( !pmi.ref ) { + pixmap_map->remove( imgId ); + if ( pixmap_map->isEmpty() ) { + delete pixmap_map; + pixmap_map = 0; + } + } + } +} + +QString QTextImage::richText() const +{ + QString s; + s += "::ConstIterator it = attributes.begin(); + for ( ; it != attributes.end(); ++it ) + s += it.key() + "=" + *it + " "; + s += ">"; + return s; +} + +void QTextImage::adjustToPainter( QPainter* p ) +{ + width = tmpwidth; + height = tmpheight; + if ( !is_printer( p ) ) + return; + QPaintDeviceMetrics metrics(p->device()); + width = int( width * scale_factor( metrics.logicalDpiX() ) ); + height = int( height * scale_factor( metrics.logicalDpiY() ) ); +} + +#if !defined(Q_WS_X11) +#include +#include +static QPixmap *qrt_selection = 0; +static QCleanupHandler qrt_cleanup_pixmap; +static void qrt_createSelectionPixmap( const QColorGroup &cg ) +{ + qrt_selection = new QPixmap( 2, 2 ); + qrt_cleanup_pixmap.add( qrt_selection ); + qrt_selection->fill( Qt::color0 ); + QBitmap m( 2, 2 ); + m.fill( Qt::color1 ); + QPainter p( &m ); + p.setPen( Qt::color0 ); + for ( int j = 0; j < 2; ++j ) { + p.drawPoint( j % 2, j ); + } + p.end(); + qrt_selection->setMask( m ); + qrt_selection->fill( cg.highlight() ); +} +#endif + +void QTextImage::draw( QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) +{ + if ( placement() != PlaceInline ) { + x = xpos; + y = ypos; + } + + if ( pm.isNull() ) { + p->fillRect( x , y, width, height, cg.dark() ); + return; + } + + if ( is_printer( p ) ) { +#ifndef QT_NO_TRANSFORMATIONS + p->saveWorldMatrix(); + QPaintDeviceMetrics metrics( p->device() ); + p->translate( x, y ); + p->scale( scale_factor( metrics.logicalDpiY() ), + scale_factor( metrics.logicalDpiY() ) ); + p->drawPixmap( 0, 0, pm ); + p->restoreWorldMatrix(); +#else + p->drawPixmap( x, y, pm ); +#endif + return; + } + + if ( placement() != PlaceInline && !QRect( xpos, ypos, width, height ).intersects( QRect( cx, cy, cw, ch ) ) ) + return; + + if ( placement() == PlaceInline ) + p->drawPixmap( x , y, pm ); + else + p->drawPixmap( cx , cy, pm, cx - x, cy - y, cw, ch ); + + if ( selected && placement() == PlaceInline && p->device()->devType() != QInternal::Printer ) { + p->save(); +#if defined(Q_WS_X11) + p->fillRect( QRect( QPoint( x, y ), pm.size() ), QBrush( cg.highlight(), QBrush::Dense4Pattern) ); +#else // in WIN32 Dense4Pattern doesn't work correctly (transparency problem), so work around it + if ( !qrt_selection ) + qrt_createSelectionPixmap( cg ); + p->drawTiledPixmap( x, y, pm.width(), pm.height(), *qrt_selection ); +#endif + } +} + +void QTextHorizontalLine::adjustToPainter( QPainter* p ) +{ + if ( !is_printer( p ) ) + return; + QPaintDeviceMetrics metrics(p->device()); + height = int( tmpheight * scale_factor( metrics.logicalDpiY() ) ); +} + + +QTextHorizontalLine::QTextHorizontalLine( QTextDocument *p ) + : QTextCustomItem( p ) +{ + height = tmpheight = 8; +} + +QTextHorizontalLine::~QTextHorizontalLine() +{ +} + +QString QTextHorizontalLine::richText() const +{ + return "
    "; +} + +void QTextHorizontalLine::draw( QPainter* p, int x, int y, int , int , int , int , const QColorGroup& cg, bool selected ) +{ + QRect r( x, y, width, height); + if ( is_printer( p ) || ( p && p->device() && p->device()->devType() == QInternal::Printer ) ) { + QPen oldPen = p->pen(); + p->setPen( QPen( cg.text(), height/8 ) ); + p->drawLine( r.left()-1, y + height / 2, r.right() + 1, y + height / 2 ); + p->setPen( oldPen ); + } else { + if ( selected ) + p->fillRect( r.left(), y, r.right(), y + height, cg.highlight() ); + qDrawShadeLine( p, r.left() - 1, y + height / 2, r.right() + 1, y + height / 2, cg, TRUE, height / 8 ); + } +} + + +/*****************************************************************/ +// Small set of utility functions to make the parser a bit simpler +// + +bool QTextDocument::hasPrefix(const QString& doc, int pos, QChar c) +{ + if ( pos >= (int)doc.length() ) + return FALSE; + return ( doc.unicode() )[ pos ].lower() == c.lower(); +} + +bool QTextDocument::hasPrefix( const QString& doc, int pos, const QString& s ) +{ + if ( pos + s.length() >= doc.length() ) + return FALSE; + for ( int i = 0; i < (int)s.length(); i++ ) { + if ( ( doc.unicode() )[ pos + i ].lower() != s[ i ].lower() ) + return FALSE; + } + return TRUE; +} + +static bool qt_is_cell_in_use( QPtrList& cells, int row, int col ) +{ + for ( QTextTableCell* c = cells.first(); c; c = cells.next() ) { + if ( row >= c->row() && row < c->row() + c->rowspan() + && col >= c->column() && col < c->column() + c->colspan() ) + return TRUE; + } + return FALSE; +} + +QTextCustomItem* QTextDocument::parseTable( const QMap &attr, const QTextFormat &fmt, + const QString &doc, int& pos, QTextParag *curpar ) +{ + + QTextTable* table = new QTextTable( this, attr ); + int row = -1; + int col = -1; + + QString rowbgcolor; + QString rowalign; + QString tablebgcolor = attr["bgcolor"]; + + QPtrList multicells; + + QString tagname; + (void) eatSpace(doc, pos); + while ( pos < int(doc.length() )) { + int beforePos = pos; + if (hasPrefix(doc, pos, QChar('<')) ){ + if (hasPrefix(doc, pos+1, QChar('/'))) { + tagname = parseCloseTag( doc, pos ); + if ( tagname == "table" ) { + pos = beforePos; +#if defined(PARSER_DEBUG) + debug_indent.remove( debug_indent.length() - 3, 2 ); +#endif + return table; + } + } else { + QMap attr2; + bool emptyTag = FALSE; + tagname = parseOpenTag( doc, pos, attr2, emptyTag ); + if ( tagname == "tr" ) { + rowbgcolor = attr2["bgcolor"]; + rowalign = attr2["align"]; + row++; + col = -1; + } + else if ( tagname == "td" || tagname == "th" ) { + col++; + while ( qt_is_cell_in_use( multicells, row, col ) ) { + col++; + } + + if ( row >= 0 && col >= 0 ) { + const QStyleSheetItem* s = sheet_->item(tagname); + if ( !attr2.contains("bgcolor") ) { + if (!rowbgcolor.isEmpty() ) + attr2["bgcolor"] = rowbgcolor; + else if (!tablebgcolor.isEmpty() ) + attr2["bgcolor"] = tablebgcolor; + } + if ( !attr2.contains("align") ) { + if (!rowalign.isEmpty() ) + attr2["align"] = rowalign; + } + + // extract the cell contents + int end = pos; + while ( end < (int) doc.length() + && !hasPrefix( doc, end, "richText()->parParag = curpar; + if ( cell->colspan() > 1 || cell->rowspan() > 1 ) + multicells.append( cell ); + col += cell->colspan()-1; + pos = end; + } + } + } + + } else { + ++pos; + } + } +#if defined(PARSER_DEBUG) + debug_indent.remove( debug_indent.length() - 3, 2 ); +#endif + return table; +} + +bool QTextDocument::eatSpace(const QString& doc, int& pos, bool includeNbsp ) +{ + int old_pos = pos; + while (pos < int(doc.length()) && (doc.unicode())[pos].isSpace() && ( includeNbsp || (doc.unicode())[pos] != QChar::nbsp ) ) + pos++; + return old_pos < pos; +} + +bool QTextDocument::eat(const QString& doc, int& pos, QChar c) +{ + bool ok = pos < int(doc.length()) && ((doc.unicode())[pos] == c); + if ( ok ) + pos++; + return ok; +} +/*****************************************************************/ + + + +static QMap *html_map = 0; +static void qt_cleanup_html_map() +{ + delete html_map; + html_map = 0; +} + +static QMap *htmlMap() +{ + if ( !html_map ) { + html_map = new QMap; + qAddPostRoutine( qt_cleanup_html_map ); + html_map->insert( "lt", '<'); + html_map->insert( "gt", '>'); + html_map->insert( "amp", '&'); + html_map->insert( "nbsp", 0x00a0U); + html_map->insert( "bull", 0x2022U); + html_map->insert( "aring", '\xe5'); + html_map->insert( "oslash", '\xf8'); + html_map->insert( "ouml", '\xf6'); + html_map->insert( "auml", '\xe4'); + html_map->insert( "uuml", '\xfc'); + html_map->insert( "Ouml", '\xd6'); + html_map->insert( "Auml", '\xc4'); + html_map->insert( "Uuml", '\xdc'); + html_map->insert( "szlig", '\xdf'); + html_map->insert( "copy", '\xa9'); + html_map->insert( "deg", '\xb0'); + html_map->insert( "micro", '\xb5'); + html_map->insert( "plusmn", '\xb1'); + html_map->insert( "middot", '*'); + html_map->insert( "quot", '\"'); + html_map->insert( "commat", '@'); + html_map->insert( "num", '#'); + html_map->insert( "dollar", '$'); + html_map->insert( "ldquo", '`'); + html_map->insert( "rdquo", '\''); + html_map->insert( "sol", '/' ); + html_map->insert( "bsol", '\\'); + html_map->insert( "lowbar", '_'); + html_map->insert( "shy", '\xad'); + } + return html_map; +} + +QChar QTextDocument::parseHTMLSpecialChar(const QString& doc, int& pos) +{ + QCString s; + pos++; + int recoverpos = pos; + while ( pos < int(doc.length()) && (doc.unicode())[pos] != ';' && !(doc.unicode())[pos].isSpace() && pos < recoverpos + 6) { + s += (doc.unicode())[pos]; + pos++; + } + if ((doc.unicode())[pos] != ';' && !(doc.unicode())[pos].isSpace() ) { + pos = recoverpos; + return '&'; + } + pos++; + + if ( s.length() > 1 && s[0] == '#') { + int num = s.mid(1).toInt(); + if ( num == 151 ) // ### hack for designer manual + return '-'; + return num; + } + + QMap::Iterator it = htmlMap()->find(s); + if ( it != htmlMap()->end() ) { + return *it; + } + + pos = recoverpos; + return '&'; +} + +QString QTextDocument::parseWord(const QString& doc, int& pos, bool lower) +{ + QString s; + + if ((doc.unicode())[pos] == '"') { + pos++; + while ( pos < int(doc.length()) && (doc.unicode())[pos] != '"' ) { + s += (doc.unicode())[pos]; + pos++; + } + eat(doc, pos, '"'); + } else { + static QString term = QString::fromLatin1("/>"); + while( pos < int(doc.length()) && + ((doc.unicode())[pos] != '>' && !hasPrefix( doc, pos, term)) + && (doc.unicode())[pos] != '<' + && (doc.unicode())[pos] != '=' + && !(doc.unicode())[pos].isSpace()) + { + if ( (doc.unicode())[pos] == '&') + s += parseHTMLSpecialChar( doc, pos ); + else { + s += (doc.unicode())[pos]; + pos++; + } + } + if (lower) + s = s.lower(); + } + return s; +} + +QChar QTextDocument::parseChar(const QString& doc, int& pos, QStyleSheetItem::WhiteSpaceMode wsm ) +{ + if ( pos >= int(doc.length() ) ) + return QChar::null; + + QChar c = (doc.unicode())[pos++]; + + if (c == '<' ) + return QChar::null; + + if ( c.isSpace() && c != QChar::nbsp ) { + if ( wsm == QStyleSheetItem::WhiteSpacePre ) { + if ( c == ' ' ) + return QChar::nbsp; + else + return c; + } else { // non-pre mode: collapse whitespace except nbsp + while ( pos< int(doc.length() ) && + (doc.unicode())[pos].isSpace() && (doc.unicode())[pos] != QChar::nbsp ) + pos++; + if ( wsm == QStyleSheetItem::WhiteSpaceNoWrap ) + return QChar::nbsp; + else + return ' '; + } + } + else if ( c == '&' ) + return parseHTMLSpecialChar( doc, --pos ); + else + return c; +} + +QString QTextDocument::parseOpenTag(const QString& doc, int& pos, + QMap &attr, bool& emptyTag) +{ + emptyTag = FALSE; + pos++; + if ( hasPrefix(doc, pos, '!') ) { + if ( hasPrefix( doc, pos+1, "--")) { + pos += 3; + // eat comments + QString pref = QString::fromLatin1("-->"); + while ( !hasPrefix(doc, pos, pref ) && pos < int(doc.length()) ) + pos++; + if ( hasPrefix(doc, pos, pref ) ) { + pos += 3; + eatSpace(doc, pos, TRUE); + } + emptyTag = TRUE; + return QString::null; + } + else { + // eat strange internal tags + while ( !hasPrefix(doc, pos, '>') && pos < int(doc.length()) ) + pos++; + if ( hasPrefix(doc, pos, '>') ) { + pos++; + eatSpace(doc, pos, TRUE); + } + return QString::null; + } + } + + QString tag = parseWord(doc, pos ); + eatSpace(doc, pos, TRUE); + static QString term = QString::fromLatin1("/>"); + static QString s_TRUE = QString::fromLatin1("TRUE"); + + while ((doc.unicode())[pos] != '>' && ! (emptyTag = hasPrefix(doc, pos, term) )) { + QString key = parseWord(doc, pos ); + eatSpace(doc, pos, TRUE); + if ( key.isEmpty()) { + // error recovery + while ( pos < int(doc.length()) && (doc.unicode())[pos] != '>' ) + pos++; + break; + } + QString value; + if (hasPrefix(doc, pos, '=') ){ + pos++; + eatSpace(doc, pos); + value = parseWord(doc, pos, FALSE); + } + else + value = s_TRUE; + attr.insert(key, value ); + eatSpace(doc, pos, TRUE); + } + + if (emptyTag) { + eat(doc, pos, '/'); + eat(doc, pos, '>'); + } + else + eat(doc, pos, '>'); + + return tag; +} + +QString QTextDocument::parseCloseTag( const QString& doc, int& pos ) +{ + pos++; + pos++; + QString tag = parseWord(doc, pos ); + eatSpace(doc, pos, TRUE); + eat(doc, pos, '>'); + return tag; +} + +QTextFlow::QTextFlow() +{ + width = height = pagesize = 0; + leftItems.setAutoDelete( FALSE ); + rightItems.setAutoDelete( FALSE ); +} + +QTextFlow::~QTextFlow() +{ +} + +void QTextFlow::clear() +{ + leftItems.clear(); + rightItems.clear(); +} + +void QTextFlow::setWidth( int w ) +{ + height = 0; + width = w; +} + +int QTextFlow::adjustLMargin( int yp, int, int margin, int space ) +{ + for ( QTextCustomItem* item = leftItems.first(); item; item = leftItems.next() ) { + if ( item->y() == -1 ) + continue; + if ( yp >= item->y() && yp < item->y() + item->height ) + margin = QMAX( margin, item->x() + item->width + space ); + } + return margin; +} + +int QTextFlow::adjustRMargin( int yp, int, int margin, int space ) +{ + for ( QTextCustomItem* item = rightItems.first(); item; item = rightItems.next() ) { + if ( item->y() == -1 ) + continue; + if ( yp >= item->y() && yp < item->y() + item->height ) + margin = QMAX( margin, width - item->x() - space ); + } + return margin; +} + +void QTextFlow::adjustFlow( int &yp, int , int h, QTextParag *, bool pages ) +{ + if ( pages && pagesize > 0 ) { // check pages + int ty = yp; + int yinpage = ty % pagesize; + if ( yinpage < 2 ) + yp += 2 - yinpage; + else + if ( yinpage + h > pagesize - 2 ) + yp += ( pagesize - yinpage ) + 2; + } + + if ( yp + h > height ) + { + height = yp + h; + //qDebug("QTextFlow::adjustFlow now height=%d",height); + } +} + +void QTextFlow::unregisterFloatingItem( QTextCustomItem* item ) +{ + leftItems.removeRef( item ); + rightItems.removeRef( item ); +} + +void QTextFlow::registerFloatingItem( QTextCustomItem* item, bool right ) +{ + if ( right ) { + if ( !rightItems.contains( item ) ) + rightItems.append( item ); + } else if ( !leftItems.contains( item ) ) { + leftItems.append( item ); + } +} + +void QTextFlow::drawFloatingItems( QPainter* p, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) +{ + QTextCustomItem *item; + for ( item = leftItems.first(); item; item = leftItems.next() ) { + if ( item->x() == -1 || item->y() == -1 ) + continue; + item->draw( p, item->x(), item->y(), cx, cy, cw, ch, cg, selected ); + } + + for ( item = rightItems.first(); item; item = rightItems.next() ) { + if ( item->x() == -1 || item->y() == -1 ) + continue; + item->draw( p, item->x(), item->y(), cx, cy, cw, ch, cg, selected ); + } +} + +void QTextFlow::updateHeight( QTextCustomItem *i ) +{ + height = QMAX( height, i->y() + i->height ); +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +QTextTable::QTextTable( QTextDocument *p, const QMap & attr ) + : QTextCustomItem( p ), painter( 0 ) +{ + cells.setAutoDelete( FALSE ); +#if defined(PARSER_DEBUG) + debug_indent += "\t"; + qDebug( debug_indent + "new QTextTable (%p)", this ); + debug_indent += "\t"; +#endif + cellspacing = 2; + if ( attr.contains("cellspacing") ) + cellspacing = attr["cellspacing"].toInt(); + cellpadding = 1; + if ( attr.contains("cellpadding") ) + cellpadding = attr["cellpadding"].toInt(); + border = 0; + innerborder = us_ib = 1; + if ( attr.contains("border" ) ) { + QString s( attr["border"] ); + if ( s == "TRUE" ) + border = 1; + else + border = attr["border"].toInt(); + } + us_b = border; + + if ( border ) + cellspacing += 2; + us_cs = cellspacing; + outerborder = cellspacing + border; + us_ob = outerborder; + layout = new QGridLayout( 1, 1, cellspacing ); + + fixwidth = 0; + stretch = 0; + if ( attr.contains("width") ) { + bool b; + QString s( attr["width"] ); + int w = s.toInt( &b ); + if ( b ) { + fixwidth = w; + } else { + s = s.stripWhiteSpace(); + if ( s.length() > 1 && s[ (int)s.length()-1 ] == '%' ) + stretch = s.left( s.length()-1).toInt(); + } + } + + place = PlaceInline; + if ( attr["align"] == "left" ) + place = PlaceLeft; + else if ( attr["align"] == "right" ) + place = PlaceRight; + cachewidth = 0; + attributes = attr; +} + +QTextTable::~QTextTable() +{ + delete layout; +} + +QString QTextTable::richText() const +{ + QString s; + s = "::ConstIterator it = attributes.begin(); + for ( ; it != attributes.end(); ++it ) + s += it.key() + "=" + *it + " "; + s += ">\n"; + + int lastRow = -1; + bool needEnd = FALSE; + QPtrListIterator it2( cells ); + while ( it2.current() ) { + QTextTableCell *cell = it2.current(); + ++it2; + if ( lastRow != cell->row() ) { + if ( lastRow != -1 ) + s += "\n"; + s += ""; + lastRow = cell->row(); + needEnd = TRUE; + } + s += ""; + } + if ( needEnd ) + s += "\n"; + s += "
    attributes.begin(); + for ( ; it != cell->attributes.end(); ++it ) + s += it.key() + "=" + *it + " "; + s += ">"; + s += cell->richText()->richText(); + s += "
    \n"; + return s; +} + +void QTextTable::adjustToPainter( QPainter* p) +{ + painter = p; + if ( is_printer( p ) ) { + QPaintDeviceMetrics metrics(p->device()); + double xscale = QMAX( scale_factor( metrics.logicalDpiX() ), + scale_factor( metrics.logicalDpiY() ) ); + xscale = QMAX( xscale, 1 ); + cellspacing = int(us_cs * xscale); + border = int(us_b * xscale); + innerborder = int(us_ib * xscale); + outerborder = int(us_ob * xscale); + } + for ( QTextTableCell* cell = cells.first(); cell; cell = cells.next() ) + cell->adjustToPainter(); + + width = 0; +} + +void QTextTable::verticalBreak( int yt, QTextFlow* flow ) +{ + if ( flow->pageSize() <= 0 ) + return; + int shift = 0; + for (QTextTableCell* cell = cells.first(); cell; cell = cells.next() ) { + QRect r = cell->geometry(); + r.moveBy(0, shift ); + cell->setGeometry( r ); + if ( cell->column() == 0 ) { + int y = yt + outerborder + cell->geometry().y(); + int oldy = y; + flow->adjustFlow( y, width, cell->geometry().height() + 2*cellspacing, 0 ); + shift += y - oldy; + r = cell->geometry(); + r.moveBy(0, y - oldy ); + cell->setGeometry( r ); + } + } + height += shift; +} + +void QTextTable::draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) +{ + if ( placement() != PlaceInline ) { + x = xpos; + y = ypos; + } + + lastX = x; + lastY = y; + + painter = p; + + for (QTextTableCell* cell = cells.first(); cell; cell = cells.next() ) { + if ( cx < 0 && cy < 0 || + QRect( cx, cy, cw, ch ).intersects( QRect( x + outerborder + cell->geometry().x(), + y + outerborder + cell->geometry().y(), + cell->geometry().width(), cell->geometry().height() ) ) ) { + cell->draw( x+outerborder, y+outerborder, cx, cy, cw, ch, cg, selected ); + if ( border ) { + QRect r( x+outerborder+cell->geometry().x() - us_ib, + y+outerborder+cell->geometry().y() - us_ib, + cell->geometry().width() + 2 * us_ib, + cell->geometry().height() + 2 * us_ib ); + int s = cellspacing; + if ( is_printer( p ) || ( p && p->device() && p->device()->devType() == QInternal::Printer ) ) { + qDrawPlainRect( p, r, cg.text(), us_ib ); + } else { + p->fillRect( r.left()-s, r.top(), s, r.height(), cg.button() ); + p->fillRect( r.right(), r.top(), s, r.height(), cg.button() ); + p->fillRect( r.left()-s, r.top()-s, r.width()+2*s, s, cg.button() ); + p->fillRect( r.left()-s, r.bottom(), r.width()+2*s, s, cg.button() ); + qDrawShadePanel( p, r, cg, TRUE, us_ib ); + } + } + } + } + if ( border ) { + QRect r ( x, y, width, height ); + if ( is_printer( p ) || ( p && p->device() && p->device()->devType() == QInternal::Printer ) ) { + qDrawPlainRect( p, QRect(QMAX( 0, r.x()+1 ), QMAX( 0, r.y()+1 ), QMAX( r.width()-2, 0 ), QMAX( 0, r.height()-2 ) ), cg.text(), us_b ); + } else { + int s = border; + p->fillRect( r.left(), r.top(), s, r.height(), cg.button() ); + p->fillRect( r.right()-s, r.top(), s, r.height(), cg.button() ); + p->fillRect( r.left(), r.top(), r.width(), s, cg.button() ); + p->fillRect( r.left(), r.bottom()-s, r.width(), s, cg.button() ); + qDrawShadePanel( p, r, cg, FALSE, us_b ); + } + } + +#if defined(DEBUG_TABLE_RENDERING) + p->save(); + p->setPen( Qt::red ); + p->drawRect( x, y, width, height ); + p->restore(); +#endif +} + +void QTextTable::resize( QPainter* p, int nwidth ) +{ + if ( fixwidth && cachewidth != 0 ) + return; + if ( nwidth == cachewidth ) + return; + cachewidth = nwidth; + int w = nwidth; + painter = p; + if ( is_printer( painter ) ) { + adjustToPainter( painter ); + } else { + painter = 0; + } + format( w ); + if ( nwidth >= 32000 ) + nwidth = w; + if ( stretch ) + nwidth = nwidth * stretch / 100; + + width = nwidth + 2*outerborder; + layout->invalidate(); + int shw = layout->sizeHint().width() + 2*outerborder; + int mw = layout->minimumSize().width() + 2*outerborder; + if ( stretch ) + width = QMAX( mw, nwidth ); + else + width = QMAX( mw, QMIN( nwidth, shw ) ); + + if ( fixwidth ) + width = fixwidth; + + layout->invalidate(); + mw = layout->minimumSize().width() + 2*outerborder; + width = QMAX( width, mw ); + + int h = layout->heightForWidth( width-2*outerborder ); + layout->setGeometry( QRect(0, 0, width-2*outerborder, h) ); + height = layout->geometry().height()+2*outerborder; +}; + +void QTextTable::format( int &w ) +{ + for ( int i = 0; i < (int)cells.count(); ++i ) { + QTextTableCell *cell = cells.at( i ); + cell->richText()->doLayout( painter, QWIDGETSIZE_MAX ); + cell->cached_sizehint = cell->richText()->widthUsed() + 2 * ( innerborder + 4 ); + if ( cell->cached_sizehint > 32000 ) // nested table in paragraph + cell->cached_sizehint = cell->minimumSize().width(); + cell->richText()->doLayout( painter, cell->cached_sizehint ); + cell->cached_width = -1; + } + w = widthHint(); + layout->invalidate(); + layout->activate(); + width = minimumWidth(); +} + +void QTextTable::addCell( QTextTableCell* cell ) +{ + cells.append( cell ); + layout->addMultiCell( cell, cell->row(), cell->row() + cell->rowspan()-1, + cell->column(), cell->column() + cell->colspan()-1 ); +} + +void QTextTable::enter( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, bool atEnd ) +{ + currCell.remove( c ); + if ( !atEnd ) { + next( c, doc, parag, idx, ox, oy ); + } else { + currCell.insert( c, cells.count() ); + prev( c, doc, parag, idx, ox, oy ); + } +} + +void QTextTable::enterAt( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, const QPoint &pos ) +{ + currCell.remove( c ); + int lastCell = -1; + int lastY = -1; + for ( int i = 0; i < (int)cells.count(); ++i ) { + QTextTableCell *cell = cells.at( i ); + if ( !cell ) + continue; + if ( cell->geometry().x() - innerborder <= pos.x() && + cell->geometry().x() + cell->geometry().width() + innerborder >= pos.x() ) { + if ( cell->geometry().y() > lastY ) { + lastCell = i; + lastY = cell->geometry().y(); + } + if ( cell->geometry().y() - innerborder <= pos.y() && + cell->geometry().y() + cell->geometry().height() + innerborder >= pos.y() ) { + currCell.insert( c, i ); + break; + } + } + } + + if ( currCell.find( c ) == currCell.end() ) { + if ( lastY != -1 ) + currCell.insert( c, lastCell ); + } + + QTextTableCell *cell = cells.at( *currCell.find( c ) ); + if ( !cell ) + return; + doc = cell->richText(); + parag = doc->firstParag(); + idx = 0; + ox += cell->geometry().x() + outerborder + parent->x(); + oy += cell->geometry().y() + outerborder; +} + +void QTextTable::next( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) +{ + int cc = *currCell.find( c ); + if ( cc > (int)cells.count() - 1 || cc < 0 ) + cc = -1; + currCell.remove( c ); + currCell.insert( c, ++cc ); + if ( cc >= (int)cells.count() ) { + currCell.insert( c, 0 ); + QTextCustomItem::next( c, doc, parag, idx, ox, oy ); + QTextTableCell *cell = cells.at( 0 ); + if ( !cell ) + return; + doc = cell->richText(); + idx = -1; + return; + } + + QTextTableCell *cell = cells.at( *currCell.find( c ) ); + if ( !cell ) + return; + doc = cell->richText(); + parag = doc->firstParag(); + idx = 0; + ox += cell->geometry().x() + outerborder + parent->x(); + oy += cell->geometry().y() + outerborder; +} + +void QTextTable::prev( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) +{ + int cc = *currCell.find( c ); + if ( cc > (int)cells.count() - 1 || cc < 0 ) + cc = cells.count(); + currCell.remove( c ); + currCell.insert( c, --cc ); + if ( cc < 0 ) { + currCell.insert( c, 0 ); + QTextCustomItem::prev( c, doc, parag, idx, ox, oy ); + QTextTableCell *cell = cells.at( 0 ); + if ( !cell ) + return; + doc = cell->richText(); + idx = -1; + return; + } + + QTextTableCell *cell = cells.at( *currCell.find( c ) ); + if ( !cell ) + return; + doc = cell->richText(); + parag = doc->firstParag(); + idx = parag->length() - 1; + ox += cell->geometry().x() + outerborder + parent->x(); + oy += cell->geometry().y() + outerborder; +} + +void QTextTable::down( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) +{ + QTextTableCell *cell = cells.at( *currCell.find( c ) ); + if ( cell->row_ == layout->numRows() - 1 ) { + currCell.insert( c, 0 ); + QTextCustomItem::down( c, doc, parag, idx, ox, oy ); + QTextTableCell *cell = cells.at( 0 ); + if ( !cell ) + return; + doc = cell->richText(); + idx = -1; + return; + } + + int oldRow = cell->row_; + int oldCol = cell->col_; + int cc = *currCell.find( c ); + for ( int i = cc; i < (int)cells.count(); ++i ) { + cell = cells.at( i ); + if ( cell->row_ > oldRow && cell->col_ == oldCol ) { + currCell.insert( c, i ); + break; + } + } + doc = cell->richText(); + if ( !cell ) + return; + parag = doc->firstParag(); + idx = 0; + ox += cell->geometry().x() + outerborder + parent->x(), + oy += cell->geometry().y() + outerborder; +} + +void QTextTable::up( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) +{ + QTextTableCell *cell = cells.at( *currCell.find( c ) ); + if ( cell->row_ == 0 ) { + currCell.insert( c, 0 ); + QTextCustomItem::up( c, doc, parag, idx, ox, oy ); + QTextTableCell *cell = cells.at( 0 ); + if ( !cell ) + return; + doc = cell->richText(); + idx = -1; + return; + } + + int oldRow = cell->row_; + int oldCol = cell->col_; + int cc = *currCell.find( c ); + for ( int i = cc; i >= 0; --i ) { + cell = cells.at( i ); + if ( cell->row_ < oldRow && cell->col_ == oldCol ) { + currCell.insert( c, i ); + break; + } + } + doc = cell->richText(); + if ( !cell ) + return; + parag = doc->lastParag(); + idx = parag->length() - 1; + ox += cell->geometry().x() + outerborder + parent->x(); + oy += cell->geometry().y() + outerborder; +} + +QTextTableCell::QTextTableCell( QTextTable* table, + int row, int column, + const QMap &attr, + const QStyleSheetItem* /*style*/, // ### use them + const QTextFormat& /*fmt*/, const QString& context, + QMimeSourceFactory &factory, QStyleSheet *sheet, + const QString& doc) +{ +#if defined(PARSER_DEBUG) + qDebug( debug_indent + "new QTextTableCell1 (pappi: %p)", table ); + qDebug( debug_indent + doc ); +#endif + cached_width = -1; + cached_sizehint = -1; + + maxw = QWIDGETSIZE_MAX; + minw = 0; + + parent = table; + row_ = row; + col_ = column; + stretch_ = 0; + richtext = new QTextDocument( table->parent ); + richtext->setTableCell( this ); + QString align = *attr.find( "align" ); + if ( !align.isEmpty() ) { + if ( align.lower() == "left" ) + richtext->setAlignment( Qt::AlignLeft ); + else if ( align.lower() == "center" ) + richtext->setAlignment( Qt::AlignHCenter ); + else if ( align.lower() == "right" ) + richtext->setAlignment( Qt::AlignRight ); + } + richtext->setFormatter( table->parent->formatter() ); + richtext->setUseFormatCollection( table->parent->useFormatCollection() ); + richtext->setMimeSourceFactory( &factory ); + richtext->setStyleSheet( sheet ); + richtext->setDefaultFont( table->parent->formatCollection()->defaultFormat()->font() ); + richtext->setRichText( doc, context ); + rowspan_ = 1; + colspan_ = 1; + if ( attr.contains("colspan") ) + colspan_ = attr["colspan"].toInt(); + if ( attr.contains("rowspan") ) + rowspan_ = attr["rowspan"].toInt(); + + background = 0; + if ( attr.contains("bgcolor") ) { + background = new QBrush(QColor( attr["bgcolor"] )); + } + + hasFixedWidth = FALSE; + if ( attr.contains("width") ) { + bool b; + QString s( attr["width"] ); + int w = s.toInt( &b ); + if ( b ) { + maxw = w; + minw = maxw; + hasFixedWidth = TRUE; + } else { + s = s.stripWhiteSpace(); + if ( s.length() > 1 && s[ (int)s.length()-1 ] == '%' ) + stretch_ = s.left( s.length()-1).toInt(); + } + } + + attributes = attr; + + parent->addCell( this ); +} + +QTextTableCell::QTextTableCell( QTextTable* table, int row, int column ) +{ +#if defined(PARSER_DEBUG) + qDebug( debug_indent + "new QTextTableCell2( pappi: %p", table ); +#endif + maxw = QWIDGETSIZE_MAX; + minw = 0; + cached_width = -1; + cached_sizehint = -1; + + parent = table; + row_ = row; + col_ = column; + stretch_ = 0; + richtext = new QTextDocument( table->parent ); + richtext->setTableCell( this ); + richtext->setFormatter( table->parent->formatter() ); + richtext->setUseFormatCollection( table->parent->useFormatCollection() ); + richtext->setDefaultFont( table->parent->formatCollection()->defaultFormat()->font() ); + richtext->setRichText( "", QString::null ); + rowspan_ = 1; + colspan_ = 1; + background = 0; + hasFixedWidth = FALSE; + parent->addCell( this ); +} + + +QTextTableCell::~QTextTableCell() +{ + delete background; + background = 0; + delete richtext; + richtext = 0; +} + +QSize QTextTableCell::sizeHint() const +{ + if ( cached_sizehint != -1 ) + return QSize( cached_sizehint, 0 ); + QTextTableCell *that = (QTextTableCell*)this; + if ( stretch_ ) + return QSize( ( that->cached_sizehint = QWIDGETSIZE_MAX ), 0 ); + return QSize( ( that->cached_sizehint = richtext->widthUsed() + 2 * ( table()->innerborder + 4 ) ), 0 ); +} + +QSize QTextTableCell::minimumSize() const +{ + if ( stretch_ ) + return QSize( QMAX( minw, parent->width * stretch_ / 100 - 2*parent->cellspacing), 0 ); + return QSize(QMAX( richtext->minimumWidth(), minw ),0); +} + +QSize QTextTableCell::maximumSize() const +{ + return QSize( QWIDGETSIZE_MAX, QWIDGETSIZE_MAX ); +} + +QSizePolicy::ExpandData QTextTableCell::expanding() const +{ + return QSizePolicy::BothDirections; +} + +bool QTextTableCell::isEmpty() const +{ + return FALSE; +} +void QTextTableCell::setGeometry( const QRect& r ) +{ + if ( r.width() != cached_width ) + richtext->doLayout( painter(), r.width() ); + cached_width = r.width(); + richtext->setWidth( r.width() ); + richtext->flow()->height = r.height(); + geom = r; +} + +QRect QTextTableCell::geometry() const +{ + return geom; +} + +bool QTextTableCell::hasHeightForWidth() const +{ + return TRUE; +} + +int QTextTableCell::heightForWidth( int w ) const +{ + w = QMAX( minw, w ); + + if ( cached_width != w ) { + QTextTableCell* that = (QTextTableCell*) this; + that->richtext->doLayout( painter(), w ); + that->cached_width = w; + } + return richtext->height() + 2 * parent->innerborder; +} + +void QTextTableCell::adjustToPainter() +{ + if ( !is_printer( painter() ) ) + return; + richtext->formatCollection()->setPainter( painter() ); + QTextParag *parag = richtext->firstParag(); + while ( parag ) { + parag->setPainter( painter() ); + parag = parag->next(); + } +} + +QPainter* QTextTableCell::painter() const +{ + return parent->painter; +} + +void QTextTableCell::draw( int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool ) +{ + if ( cached_width != geom.width() ) { + richtext->doLayout( painter(), geom.width() ); + cached_width = geom.width(); + } + QColorGroup g( cg ); + if ( background ) + g.setBrush( QColorGroup::Base, *background ); + else if ( richtext->paper() ) + g.setBrush( QColorGroup::Base, *richtext->paper() ); + + painter()->save(); + painter()->translate( x + geom.x(), y + geom.y() ); + if ( background ) + painter()->fillRect( 0, 0, geom.width(), geom.height(), *background ); + else if ( richtext->paper() ) + painter()->fillRect( 0, 0, geom.width(), geom.height(), *richtext->paper() ); + + QRegion r; + QTextCursor *c = 0; + if ( richtext->parent()->tmpCursor ) + c = richtext->parent()->tmpCursor; + if ( cx >= 0 && cy >= 0 ) + richtext->draw( painter(), cx - ( x + geom.x() ), cy - ( y + geom.y() ), cw, ch, g, FALSE, (c != 0), c ); + else + richtext->draw( painter(), -1, -1, -1, -1, g, FALSE, (c != 0), c ); + +#if defined(DEBUG_TABLE_RENDERING) + painter()->save(); + painter()->setPen( Qt::blue ); + painter()->drawRect( 0, 0, geom.width(), geom.height() ); + painter()->restore(); +#endif + + painter()->restore(); +} + + +///// Some of this is in qrichtext_p.cpp in qt-rsync at the moment + +QTextFormat::QTextFormat() + : fm( QFontMetrics( fn ) ), linkColor( TRUE ), logicalFontSize( 3 ), stdPointSize( qApp->font().pointSize() ), + painter( 0 ), different( NoFlags ) +{ + ref = 0; + missp = FALSE; + ha = AlignNormal; + collection = 0; +//#ifdef DEBUG_COLLECTION +// qDebug("QTextFormat simple ctor, no addRef ! %p",this); +//#endif +} + +QTextFormat::QTextFormat( const QStyleSheetItem *style ) + : fm( QFontMetrics( fn ) ), linkColor( TRUE ), logicalFontSize( 3 ), stdPointSize( qApp->font().pointSize() ), + painter( 0 ), different( NoFlags ) +{ +#ifdef DEBUG_COLLECTION + qDebug("QTextFormat::QTextFormat( const QStyleSheetItem *style )"); +#endif + ref = 0; + this->style = style->name(); + missp = FALSE; + ha = AlignNormal; + collection = 0; + fn = QFont( style->fontFamily(), + style->fontSize(), + style->fontWeight(), + style->fontItalic() ); + fn.setUnderline( style->fontUnderline() ); + col = style->color(); + fm = QFontMetrics( fn ); + leftBearing = fm.minLeftBearing(); + rightBearing = fm.minRightBearing(); + hei = fm.height(); + asc = fm.ascent(); + dsc = fm.descent(); + missp = FALSE; + ha = AlignNormal; + memset( widths, 0, 256 ); + generateKey(); + addRef(); + updateStyleFlags(); +} + +QTextFormat::QTextFormat( const QFont &f, const QColor &c, QTextFormatCollection * coll ) + : fn( f ), col( c ), fm( QFontMetrics( f ) ), linkColor( TRUE ), + logicalFontSize( 3 ), stdPointSize( f.pointSize() ), painter( 0 ), + different( NoFlags ) +{ +#ifdef DEBUG_COLLECTION + qDebug("QTextFormat with font & color & coll (%p), addRef. %p",coll,this); +#endif + ref = 0; + collection = coll; + leftBearing = fm.minLeftBearing(); + rightBearing = fm.minRightBearing(); + hei = fm.height(); + asc = fm.ascent(); + dsc = fm.descent(); + missp = FALSE; + ha = AlignNormal; + memset( widths, 0, 256 ); + generateKey(); + addRef(); + updateStyleFlags(); +} + +QTextFormat::QTextFormat( const QTextFormat &f ) + : fm( f.fm ) +{ +#ifdef DEBUG_COLLECTION + //qDebug("QTextFormat::QTextFormat %p copy ctor (copying %p). Will addRef.",this,&f); +#endif + ref = 0; + collection = 0; + fn = f.fn; + col = f.col; + painter = f.painter; + leftBearing = f.leftBearing; + rightBearing = f.rightBearing; + memset( widths, 0, 256 ); + hei = f.hei; + asc = f.asc; + dsc = f.dsc; + stdPointSize = f.stdPointSize; + logicalFontSize = f.logicalFontSize; + missp = f.missp; + ha = f.ha; + k = f.k; + anchor_name = f.anchor_name; + anchor_href = f.anchor_href; + linkColor = f.linkColor; + style = f.style; + different = f.different; + addRef(); +} + +QTextFormat& QTextFormat::operator=( const QTextFormat &f ) +{ +#ifdef DEBUG_COLLECTION + qDebug("QTextFormat::operator= %p (copying %p). Will addRef",this,&f); +#endif + ref = 0; + collection = f.collection; + fn = f.fn; + col = f.col; + fm = f.fm; + leftBearing = f.leftBearing; + rightBearing = f.rightBearing; + memset( widths, 0, 256 ); + hei = f.hei; + asc = f.asc; + dsc = f.dsc; + stdPointSize = f.stdPointSize; + logicalFontSize = f.logicalFontSize; + missp = f.missp; + ha = f.ha; + k = f.k; + anchor_name = f.anchor_name; + anchor_href = f.anchor_href; + linkColor = f.linkColor; + style = f.style; + different = f.different; + addRef(); + return *this; +} + +void QTextFormat::update() +{ + fm = QFontMetrics( fn ); + leftBearing = fm.minLeftBearing(); + rightBearing = fm.minRightBearing(); + hei = fm.height(); + asc = fm.ascent(); + dsc = fm.descent(); + memset( widths, 0, 256 ); + generateKey(); + updateStyleFlags(); +} + +void QTextFormat::addRef() +{ + ref++; +#ifdef DEBUG_COLLECTION + if ( collection ) + qDebug( " add ref of '%s' to %d (%p) (coll %p)", k.latin1(), ref, this, collection ); +#endif +} + +void QTextFormat::removeRef() +{ + ref--; + if ( !collection ) + return; +#ifdef DEBUG_COLLECTION + qDebug( " remove ref of '%s' to %d (%p) (coll %p)", k.latin1(), ref, this, collection ); +#endif + if ( ref == 0 ) + collection->remove( this ); +} + +void QTextParag::setTabArray( int *a ) +{ + if ( tArray ) + delete [] tArray; + tArray = a; +} + +void QTextParag::setTabStops( int tw ) +{ + if ( doc ) + doc->setTabStops( tw ); + else + tabStopWidth = tw; +} + + + diff --git a/bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h b/bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h new file mode 100644 index 0000000..a04db64 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qrichtext_p.h @@ -0,0 +1,2446 @@ +/**************************************************************************** +** +** Definition of internal rich text classes +** +** Created : 990124 +** +** Copyright (C) 1999-2000 Trolltech AS. All rights reserved. +** +** This file is part of the kernel module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#ifndef QT3_QRICHTEXT_P_H +#define QT3_QRICHTEXT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of a number of Qt sources files. This header file may change from +// version to version without notice, or even be removed. +// +// We mean it. +// +// + +#ifndef QT_H +#include "qt3stuff.h" +#include "qstring.h" +#include "qlist.h" +#include "qrect.h" +#include "qfontmetrics.h" +#include "qintdict.h" +#include "qmap.h" +#include "qstringlist.h" +#include "qfont.h" +#include "qcolor.h" +#include "qsize.h" +#include "qvaluelist.h" +#include "qvaluestack.h" +#include "qobject.h" +#include "qdict.h" +#include "qtextstream.h" +#include "qpixmap.h" +#include "qstylesheet.h" +#include "qvector.h" +#include "qpainter.h" +#include "qlayout.h" +#include "qobject.h" +#include +#include "qcomplextext_p.h" +#include "qapplication.h" +#endif // QT_H + +// We need this to avoid clashes +namespace Qt3 { + +class QTextDocument; +class QTextString; +class QTextPreProcessor; +class QTextFormat; +class QTextCursor; +class QTextParag; +class QTextFormatter; +class QTextIndent; +class QTextFormatCollection; +class QStyleSheetItem; +class QTextCustomItem; +class QTextFlow; +struct QBidiContext; + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextStringChar +{ + friend class QTextString; + +public: + // this is never called, initialize variables in QTextString::insert()!!! + QTextStringChar() : lineStart( 0 ), type( Regular ), startOfRun( 0 ) {d.format=0;} + ~QTextStringChar(); + QChar c; + enum Type { Regular, Custom, Mark, Shaped }; + uint lineStart : 1; + uint rightToLeft : 1; + uint hasCursor : 1; + uint canBreak : 1; + Type type : 2; + uint startOfRun : 1; + + int x; + int height() const; + int ascent() const; + int descent() const; + bool isCustom() const { return type == Custom; } + QTextFormat *format() const; + QTextCustomItem *customItem() const; + void setFormat( QTextFormat *f ); + void setCustomItem( QTextCustomItem *i ); + void loseCustomItem(); + QTextStringChar *clone() const; + struct CustomData + { + QTextFormat *format; + QTextCustomItem *custom; + }; + + struct MarkData + { + QTextFormat *format; + short xoff; // x offset for painting the Mark + short yoff; // y offset for painting the Mark + }; + + struct ShapedData + { + QTextFormat *format; + QChar shapedGlyph; + }; + + union { + QTextFormat* format; + CustomData* custom; + MarkData *mark; + ShapedData *shaped; + } d; + +private: + QTextStringChar &operator=( const QTextStringChar & ) { + //abort(); + return *this; + } + QTextStringChar( const QTextStringChar & ); // copy-constructor, forbidden + friend class QComplexText; + friend class QTextParag; +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QMemArray; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextString +{ +public: + + QTextString(); + QTextString( const QTextString &s ); + ~QTextString(); + + QString toString() const; + static QString toString( const QMemArray &data ); + QString toReverseString() const; + + QTextStringChar &at( int i ) const; + int length() const; + + int width( int idx ) const; + + void insert( int index, const QString &s, QTextFormat *f ); + void insert( int index, QTextStringChar *c ); + void truncate( int index ); + void remove( int index, int len ); + void clear(); + + void setFormat( int index, QTextFormat *f, bool useCollection ); + + void setTextChanged( bool b ) { textChanged = b; } + void setBidi( bool b ) { bidi = b; } + bool isTextChanged() const { return textChanged; } + bool isBidi() const; + bool isRightToLeft() const; + + QMemArray subString( int start = 0, int len = 0xFFFFFF ) const; + QMemArray rawData() const { return data; } + + void operator=( const QString &s ) { clear(); insert( 0, s, 0 ); } + void operator+=( const QString &s ); + void prepend( const QString &s ) { insert( 0, s, 0 ); } + +private: + void checkBidi() const; + void basicDirection() const; + + QMemArray data; + uint textChanged : 1; + uint bidi : 1; // true when the paragraph has right to left characters + uint rightToLeft : 1; // true if the basic direction of the paragraph is right to left. +}; + +inline bool QTextString::isBidi() const +{ + if ( textChanged ) + checkBidi(); + return bidi; +} + +inline bool QTextString::isRightToLeft() const +{ + if ( textChanged ) + checkBidi(); + return rightToLeft; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QValueStack; +template class Q_EXPORT QValueStack; +template class Q_EXPORT QValueStack; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextCursor +{ +public: + QTextCursor( QTextDocument *d ); + QTextCursor(); + QTextCursor( const QTextCursor &c ); + QTextCursor &operator=( const QTextCursor &c ); + bool operator==( const QTextCursor &c ) const; + bool operator!=( const QTextCursor &c ) const { return !(*this == c); } + + QTextDocument *document() const { return doc; } + void setDocument( QTextDocument *d ); + + QTextParag *parag() const; + int index() const; + void setParag( QTextParag *s, bool restore = TRUE ); + + void gotoLeft(); + void gotoRight(); + void gotoUp(); + void gotoDown(); + void gotoLineEnd(); + void gotoLineStart(); + void gotoHome(); + void gotoEnd(); + void gotoPageUp( int visibleHeight ); + void gotoPageDown( int visibleHeight ); + void gotoWordLeft(); + void gotoWordRight(); + + void insert( const QString &s, bool checkNewLine, QMemArray *formatting = 0 ); + void splitAndInsertEmptyParag( bool ind = TRUE, bool updateIds = TRUE ); + bool remove(); + void killLine(); + void indent(); + + bool atParagStart(); + bool atParagEnd(); + + void setIndex( int i, bool restore = TRUE ); + + void checkIndex(); + + int offsetX() const { return ox; } + int offsetY() const { return oy; } + + QTextParag *topParag() const { return parags.isEmpty() ? string : parags.first(); } + int totalOffsetX() const; + int totalOffsetY() const; + + bool place( const QPoint &pos, QTextParag *s ); + void restoreState(); + + int x() const; + int y() const; + + int nestedDepth() const { return indices.count(); } + +private: + enum Operation { EnterBegin, EnterEnd, Next, Prev, Up, Down }; + + void push(); + void pop(); + void processNesting( Operation op ); + void invalidateNested(); + void gotoIntoNested( const QPoint &globalPos ); + + QTextParag *string; + QTextDocument *doc; + int idx, tmpIndex; + int ox, oy; + QValueStack indices; + QValueStack parags; + QValueStack xOffsets; + QValueStack yOffsets; + QValueStack nestedStack; + bool nested; + +}; + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextCommand +{ +public: + enum Commands { Invalid, Insert, Delete, Format, Alignment, ParagType }; + + QTextCommand( QTextDocument *d ) : doc( d ), cursor( d ) {} + virtual ~QTextCommand() {} + virtual Commands type() const { return Invalid; }; + + virtual QTextCursor *execute( QTextCursor *c ) = 0; + virtual QTextCursor *unexecute( QTextCursor *c ) = 0; + +protected: + QTextDocument *doc; + QTextCursor cursor; + +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QPtrList; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextCommandHistory +{ +public: + QTextCommandHistory( int s ) : current( -1 ), steps( s ) { history.setAutoDelete( TRUE ); } + ~QTextCommandHistory() { clear(); } + + void clear() { history.clear(); current = -1; } + + void addCommand( QTextCommand *cmd ); + QTextCursor *undo( QTextCursor *c ); + QTextCursor *redo( QTextCursor *c ); + + bool isUndoAvailable(); + bool isRedoAvailable(); + + void setUndoDepth( int d ) { steps = d; } + int undoDepth() const { return steps; } + +private: + QPtrList history; + int current, steps; + +}; + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextCustomItem +{ +public: + QTextCustomItem( QTextDocument *p ); + virtual ~QTextCustomItem(); + + virtual void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ) = 0; + + virtual void move( int x, int y ) { xpos = x; ypos = y; } + int x() const { return xpos; } + int y() const { return ypos; } + + virtual void adjustToPainter( QPainter* ) { width = 0; } + + enum Placement { PlaceInline = 0, PlaceLeft, PlaceRight }; + virtual Placement placement() const { return PlaceInline; } + bool placeInline() { return placement() == PlaceInline; } + + virtual bool ownLine() const { return FALSE; } + virtual void resize( QPainter*, int nwidth ){ width = nwidth; }; + virtual void invalidate() {}; + + virtual bool isNested() const { return FALSE; } + virtual int minimumWidth() const { return 0; } + virtual int widthHint() const { return 0; } + + virtual QString richText() const { return QString::null; } + + int width; + int height; + + virtual void enter( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, bool atEnd = FALSE ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; Q_UNUSED( atEnd ) + } + virtual void enterAt( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, const QPoint & ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; + } + virtual void next( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; + } + virtual void prev( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; + } + virtual void down( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; + } + virtual void up( QTextCursor *, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ) { + doc = doc; parag = parag; idx = idx; ox = ox; oy = oy; + } + + QTextDocument *parent; // obsolete? + + QTextParag *paragraph() const { return parag; } + void setParagraph( QTextParag * p ) { parag = p; } +protected: + int xpos; + int ypos; +private: + QTextParag *parag; +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QMap; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextImage : public QTextCustomItem +{ +public: + QTextImage( QTextDocument *p, const QMap &attr, const QString& context, + QMimeSourceFactory &factory); + ~QTextImage(); + + Placement placement() const { return place; } + void adjustToPainter( QPainter* ); + int widthHint() const { return width; } + int minimumWidth() const { return width; } + + QString richText() const; + + void draw( QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); + +private: + QRegion* reg; + QPixmap pm; + Placement place; + int tmpwidth, tmpheight; + QMap attributes; + QString imgId; + +}; + +class Q_EXPORT QTextHorizontalLine : public QTextCustomItem +{ +public: + QTextHorizontalLine( QTextDocument *p ); + ~QTextHorizontalLine(); + void adjustToPainter( QPainter* ); + void draw(QPainter* p, int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); + QString richText() const; + + bool ownLine() const { return TRUE; } + +private: + int tmpheight; + +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QPtrList; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextFlow +{ + friend class QTextDocument; + friend class QTextTableCell; + +public: + QTextFlow(); + virtual ~QTextFlow(); + + virtual void setWidth( int w ); + virtual void setPageSize( int ps ) { pagesize = ps; } + int pageSize() const { return pagesize; } + + virtual int adjustLMargin( int yp, int h, int margin, int space ); + virtual int adjustRMargin( int yp, int h, int margin, int space ); + + virtual void registerFloatingItem( QTextCustomItem* item, bool right = FALSE ); + virtual void unregisterFloatingItem( QTextCustomItem* item ); + virtual void drawFloatingItems(QPainter* p, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); + virtual void adjustFlow( int &yp, int w, int h, QTextParag *parag, bool pages = TRUE ); + + virtual bool isEmpty() { return leftItems.isEmpty() && rightItems.isEmpty(); } + virtual void updateHeight( QTextCustomItem *i ); + + virtual void draw( QPainter *, int , int , int , int ) {} + virtual void eraseAfter( QTextParag *, QPainter *, const QColorGroup& ) {} + + void clear(); + +private: + int width; + int height; + + int pagesize; + + QPtrList leftItems; + QPtrList rightItems; + +}; + +class QTextTable; + +class Q_EXPORT QTextTableCell : public QLayoutItem +{ + friend class QTextTable; + +public: + QTextTableCell( QTextTable* table, + int row, int column, + const QMap &attr, + const QStyleSheetItem* style, + const QTextFormat&, const QString& context, + QMimeSourceFactory &factory, QStyleSheet *sheet, const QString& doc ); + QTextTableCell( QTextTable* table, int row, int column ); + + ~QTextTableCell(); + QSize sizeHint() const ; + QSize minimumSize() const ; + QSize maximumSize() const ; + QSizePolicy::ExpandData expanding() const; + bool isEmpty() const; + void setGeometry( const QRect& ) ; + QRect geometry() const; + + bool hasHeightForWidth() const; + int heightForWidth( int ) const; + + void adjustToPainter(); + + int row() const { return row_; } + int column() const { return col_; } + int rowspan() const { return rowspan_; } + int colspan() const { return colspan_; } + int stretch() const { return stretch_; } + + QTextDocument* richText() const { return richtext; } + QTextTable* table() const { return parent; } + + void draw( int x, int y, int cx, int cy, int cw, int ch, const QColorGroup& cg, bool selected ); + + QBrush *backGround() const { return background; } + virtual void invalidate() { cached_width = -1; cached_sizehint = -1; } + +private: + QPainter* painter() const; + QRect geom; + QTextTable* parent; + QTextDocument* richtext; + int row_; + int col_; + int rowspan_; + int colspan_; + int stretch_; + int maxw; + int minw; + bool hasFixedWidth; + QBrush *background; + int cached_width; + int cached_sizehint; + QMap attributes; + +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QPtrList; +template class Q_EXPORT QMap; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextTable: public QTextCustomItem +{ + friend class QTextTableCell; + +public: + QTextTable( QTextDocument *p, const QMap &attr ); + ~QTextTable(); + void adjustToPainter( QPainter *p ); + void verticalBreak( int y, QTextFlow* flow ); + void draw( QPainter* p, int x, int y, int cx, int cy, int cw, int ch, + const QColorGroup& cg, bool selected ); + + bool noErase() const { return TRUE; }; + bool ownLine() const { return TRUE; } + Placement placement() const { return place; } + bool isNested() const { return TRUE; } + void resize( QPainter*, int nwidth ); + virtual void invalidate() { cachewidth = -1; }; + /// ## QString anchorAt( QPainter* p, int x, int y ); + + virtual void enter( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, bool atEnd = FALSE ); + virtual void enterAt( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy, const QPoint &pos ); + virtual void next( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ); + virtual void prev( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ); + virtual void down( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ); + virtual void up( QTextCursor *c, QTextDocument *&doc, QTextParag *¶g, int &idx, int &ox, int &oy ); + + QString richText() const; + + int minimumWidth() const { return layout ? layout->minimumSize().width() : 0; } + int widthHint() const { return ( layout ? layout->sizeHint().width() : 0 ) + 2 * outerborder; } + +private: + void format( int &w ); + void addCell( QTextTableCell* cell ); + +private: + QGridLayout* layout; + QPtrList cells; + QPainter* painter; + int cachewidth; + int fixwidth; + int cellpadding; + int cellspacing; + int border; + int outerborder; + int stretch; + int innerborder; + int us_ib, us_b, us_ob, us_cs; + int lastX, lastY; + QMap attributes; + + QMap currCell; + + Placement place; +}; + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class QTextTableCell; +class QTextParag; + +struct Q_EXPORT QTextDocumentSelection +{ + QTextCursor startCursor, endCursor; + bool swapped; +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QMap; +template class Q_EXPORT QMap; +template class Q_EXPORT QMap; +template class Q_EXPORT QPtrList; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextDocument : public QObject +{ + Q_OBJECT + + friend class QTextTableCell; + friend class QTextCursor; + friend class QTextView; + friend class QTextParag; + +public: +//ANY_CHARSET_BEGIN + QMap* charsetMap; +//ANY_CHARSET_END + + enum SelectionIds { + Standard = 0, + Temp = 32000 // This selection must not be drawn, it's used e.g. by undo/redo to + // remove multiple lines with removeSelectedText() + }; + + QTextDocument( QTextDocument *p ); + QTextDocument( QTextDocument *d, QTextFormatCollection *f ); + ~QTextDocument(); + QTextDocument *parent() const { return par; } + QTextParag *parentParag() const { return parParag; } + + void setText( const QString &text, const QString &context ); + QMap attributes() const { return attribs; } + void setAttributes( const QMap &attr ) { attribs = attr; } + + QString text() const; + QString text( int parag ) const; + QString originalText() const; + + int x() const; + int y() const; + int width() const; + int widthUsed() const; + int visibleWidth() const; + int height() const; + void setWidth( int w ); + int minimumWidth() const; + bool setMinimumWidth( int w, QTextParag *parag ); + + QTextParag *firstParag() const; + QTextParag *lastParag() const; + void setFirstParag( QTextParag *p ); + void setLastParag( QTextParag *p ); + + void invalidate(); + + void setPreProcessor( QTextPreProcessor *sh ); + QTextPreProcessor *preProcessor() const; + + void setFormatter( QTextFormatter *f ); + QTextFormatter *formatter() const; + + void setIndent( QTextIndent *i ); + QTextIndent *indent() const; + + QColor selectionColor( int id ) const; + bool invertSelectionText( int id ) const; + void setSelectionColor( int id, const QColor &c ); + void setInvertSelectionText( int id, bool b ); + bool hasSelection( int id ) const; + void setSelectionStart( int id, QTextCursor *cursor ); + bool setSelectionEnd( int id, QTextCursor *cursor ); + void selectAll( int id ); + bool removeSelection( int id ); + void selectionStart( int id, int ¶gId, int &index ); + QTextCursor selectionStartCursor( int id ); + QTextCursor selectionEndCursor( int id ); + void selectionEnd( int id, int ¶gId, int &index ); + void setFormat( int id, QTextFormat *f, int flags ); + QTextParag *selectionStart( int id ); + QTextParag *selectionEnd( int id ); + int numSelections() const { return nSelections; } + void addSelection( int id ); + + QString selectedText( int id ) const; + void copySelectedText( int id ); + void removeSelectedText( int id, QTextCursor *cursor ); + void indentSelection( int id ); + + QTextParag *paragAt( int i ) const; + + void addCommand( QTextCommand *cmd ); + QTextCursor *undo( QTextCursor *c = 0 ); + QTextCursor *redo( QTextCursor *c = 0 ); + QTextCommandHistory *commands() const { return commandHistory; } + + QTextFormatCollection *formatCollection() const; + + bool find( const QString &expr, bool cs, bool wo, bool forward, int *parag, int *index, QTextCursor *cursor ); + + void setTextFormat( Qt::TextFormat f ); + Qt::TextFormat textFormat() const; + + bool inSelection( int selId, const QPoint &pos ) const; + + QStyleSheet *styleSheet() const { return sheet_; } + QMimeSourceFactory *mimeSourceFactory() const { return factory_; } + QString context() const { return contxt; } + + void setStyleSheet( QStyleSheet *s ); + void updateStyles(); + void updateFontSizes( int base ); + void updateFontAttributes( const QFont &f, const QFont &old ); + void setMimeSourceFactory( QMimeSourceFactory *f ) { if ( f ) factory_ = f; } + void setContext( const QString &c ) { if ( !c.isEmpty() ) contxt = c; } + + void setUnderlineLinks( bool b ) { underlLinks = b; } + bool underlineLinks() const { return underlLinks; } + + void setPaper( QBrush *brush ) { if ( backBrush ) delete backBrush; backBrush = brush; } + QBrush *paper() const { return backBrush; } + + void doLayout( QPainter *p, int w ); + void draw( QPainter *p, const QRegion ®, const QColorGroup &cg, const QBrush *paper = 0 ); + void drawParag( QPainter *p, QTextParag *parag, int cx, int cy, int cw, int ch, + QPixmap *&doubleBuffer, const QColorGroup &cg, + bool drawCursor, QTextCursor *cursor, bool resetChanged = TRUE ); + QTextParag *draw( QPainter *p, int cx, int cy, int cw, int ch, const QColorGroup &cg, + bool onlyChanged = FALSE, bool drawCursor = FALSE, QTextCursor *cursor = 0, + bool resetChanged = TRUE ); + + void setDefaultFont( const QFont &f ); + + void registerCustomItem( QTextCustomItem *i, QTextParag *p ); + void unregisterCustomItem( QTextCustomItem *i, QTextParag *p ); + const QList & allCustomItems() const { return customItems; } + + void setFlow( QTextFlow *f ); + QTextFlow *flow() const { return flow_; } + bool verticalBreak() const { return pages; } + void setVerticalBreak( bool b ) { pages = b; } + + void setUseFormatCollection( bool b ) { useFC = b; } + bool useFormatCollection() const { return useFC; } + + QTextTableCell *tableCell() const { return tc; } + void setTableCell( QTextTableCell *c ) { tc = c; } + + void setPlainText( const QString &text ); + void setRichText( const QString &text, const QString &context ); + QString richText( QTextParag *p = 0 ) const; + QString plainText( QTextParag *p = 0 ) const; + + bool focusNextPrevChild( bool next ); + + int alignment() const; + void setAlignment( int a ); + + int *tabArray() const; + int tabStopWidth() const; + void setTabArray( int *a ); + void setTabStops( int tw ); + + void setUndoDepth( int d ) { commandHistory->setUndoDepth( d ); } + int undoDepth() const { return commandHistory->undoDepth(); } + + int length() const; + void clear( bool createEmptyParag = FALSE ); + + virtual QTextParag *createParag( QTextDocument *d, QTextParag *pr = 0, QTextParag *nx = 0, bool updateIds = TRUE ); + void insertChild( QObject *o ) { QObject::insertChild( o ); } + void removeChild( QObject *o ) { QObject::removeChild( o ); } + void insertChild( QTextDocument *d ) { childList.append( d ); } + void removeChild( QTextDocument *d ) { childList.removeRef( d ); } + QPtrList children() const { return childList; } + + void setAddMargins( bool b ) { addMargs = b; } + int addMargins() const { return addMargs; } + +signals: + void minimumWidthChanged( int ); + +private: +//ANY_CHARSET_BEGIN + bool m_assignedFontMap; +//ANY_CHARSET_END + void init(); + QPixmap *bufferPixmap( const QSize &s ); + // HTML parser + bool hasPrefix(const QString& doc, int pos, QChar c); + bool hasPrefix(const QString& doc, int pos, const QString& s); + QTextCustomItem* parseTable( const QMap &attr, const QTextFormat &fmt, const QString &doc, int& pos, QTextParag *curpar ); + bool eatSpace(const QString& doc, int& pos, bool includeNbsp = FALSE ); + bool eat(const QString& doc, int& pos, QChar c); + QString parseOpenTag(const QString& doc, int& pos, QMap &attr, bool& emptyTag); + QString parseCloseTag( const QString& doc, int& pos ); + QChar parseHTMLSpecialChar(const QString& doc, int& pos); + QString parseWord(const QString& doc, int& pos, bool lower = TRUE); + QChar parseChar(const QString& doc, int& pos, QStyleSheetItem::WhiteSpaceMode wsm ); + void setRichTextInternal( const QString &text ); + +private: + struct Q_EXPORT Focus { + QTextParag *parag; + int start, len; + QString href; + }; + + int cx, cy, cw, vw; + QTextParag *fParag, *lParag; + QTextPreProcessor *pProcessor; + QMap selectionColors; + QMap selections; + QMap selectionText; + QTextCommandHistory *commandHistory; + QTextFormatter *pFormatter; + QTextIndent *indenter; + QTextFormatCollection *fCollection; + Qt::TextFormat txtFormat; + bool preferRichText; + QTextFlow *flow_; + QPtrList customItems; + bool pages; + QTextDocument *par; + QTextParag *parParag; + bool useFC; + QTextTableCell *tc; + bool withoutDoubleBuffer; + QTextCursor *tmpCursor; + bool underlLinks; + QColor linkC; + QBrush *backBrush; + QPixmap *buf_pixmap; + bool nextDoubleBuffered; + Focus focusIndicator; + int minw; + QTextParag *minwParag; + QStyleSheet* sheet_; + QMimeSourceFactory* factory_; + QString contxt; + QMap attribs; + int align; + int *tArray; + int tStopWidth; + int uDepth; + QString oText; + QPtrList childList; + int nSelections; + bool addMargs; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + +class Q_EXPORT QTextDeleteCommand : public QTextCommand +{ +public: + QTextDeleteCommand( QTextDocument *d, int i, int idx, const QMemArray &str, + const QValueList< QPtrVector > &os, + const QValueList &ols, + const QMemArray &oas ); + QTextDeleteCommand( QTextParag *p, int idx, const QMemArray &str ); + ~QTextDeleteCommand(); + Commands type() const { return Delete; }; + QTextCursor *execute( QTextCursor *c ); + QTextCursor *unexecute( QTextCursor *c ); + +protected: + int id, index; + QTextParag *parag; + QMemArray text; + QValueList< QPtrVector > oldStyles; + QValueList oldListStyles; + QMemArray oldAligns; + +}; + +class Q_EXPORT QTextInsertCommand : public QTextDeleteCommand +{ +public: + QTextInsertCommand( QTextDocument *d, int i, int idx, const QMemArray &str, + const QValueList< QPtrVector > &os, + const QValueList &ols, + const QMemArray &oas ) + : QTextDeleteCommand( d, i, idx, str, os, ols, oas ) {} + QTextInsertCommand( QTextParag *p, int idx, const QMemArray &str ) + : QTextDeleteCommand( p, idx, str ) {} + Commands type() const { return Insert; }; + QTextCursor *execute( QTextCursor *c ) { return QTextDeleteCommand::unexecute( c ); } + QTextCursor *unexecute( QTextCursor *c ) { return QTextDeleteCommand::execute( c ); } + +}; + +class Q_EXPORT QTextFormatCommand : public QTextCommand +{ +public: + QTextFormatCommand( QTextDocument *d, int sid, int sidx, int eid, int eidx, const QMemArray &old, QTextFormat *f, int fl ); + ~QTextFormatCommand(); + Commands type() const { return Format; } + QTextCursor *execute( QTextCursor *c ); + QTextCursor *unexecute( QTextCursor *c ); + +protected: + int startId, startIndex, endId, endIndex; + QTextFormat *format; + QMemArray oldFormats; + int flags; + +}; + +class Q_EXPORT QTextAlignmentCommand : public QTextCommand +{ +public: + QTextAlignmentCommand( QTextDocument *d, int fParag, int lParag, int na, const QMemArray &oa ); + Commands type() const { return Alignment; } + QTextCursor *execute( QTextCursor *c ); + QTextCursor *unexecute( QTextCursor *c ); + +private: + int firstParag, lastParag; + int newAlign; + QMemArray oldAligns; + +}; + +class Q_EXPORT QTextParagTypeCommand : public QTextCommand +{ +public: + QTextParagTypeCommand( QTextDocument *d, int fParag, int lParag, bool l, + QStyleSheetItem::ListStyle s, const QValueList< QPtrVector > &os, + const QValueList &ols ); + Commands type() const { return ParagType; } + QTextCursor *execute( QTextCursor *c ); + QTextCursor *unexecute( QTextCursor *c ); + +private: + int firstParag, lastParag; + bool list; + QStyleSheetItem::ListStyle listStyle; + QValueList< QPtrVector > oldStyles; + QValueList oldListStyles; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +struct Q_EXPORT QTextParagSelection +{ + int start, end; +}; + +struct Q_EXPORT QTextParagLineStart +{ + QTextParagLineStart() : y( 0 ), baseLine( 0 ), h( 0 ), bidicontext( 0 ) { } + QTextParagLineStart( ushort y_, ushort bl, ushort h_ ) : y( y_ ), baseLine( bl ), h( h_ ), + w( 0 ), bidicontext( 0 ) { } + QTextParagLineStart( QBidiContext *c, QBidiStatus s ) : y(0), baseLine(0), h(0), + status( s ), bidicontext( c ) { if ( bidicontext ) bidicontext->ref(); } + ~QTextParagLineStart() { if ( bidicontext && bidicontext->deref() ) delete bidicontext; } + void setContext( QBidiContext *c ) { + if ( c == bidicontext ) + return; + if ( bidicontext && bidicontext->deref() ) + delete bidicontext; + bidicontext = c; + if ( bidicontext ) + bidicontext->ref(); + } + QBidiContext *context() const { return bidicontext; } + +public: + ushort y, baseLine, h; + QBidiStatus status; + int w; + +private: + QBidiContext *bidicontext; + +}; + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QMap; +template class Q_EXPORT QMap; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextParagData +{ +public: + QTextParagData() {} + virtual ~QTextParagData() {} + virtual void join( QTextParagData * ) {} +}; + +class Q_EXPORT QTextParag +{ + friend class QTextDocument; + friend class QTextCursor; + +public: + QTextParag( QTextDocument *d, QTextParag *pr = 0, QTextParag *nx = 0, bool updateIds = TRUE ); + virtual ~QTextParag(); + + QTextString *string() const; + QTextStringChar *at( int i ) const; // maybe remove later + int length() const; // maybe remove later + + void setListStyle( QStyleSheetItem::ListStyle ls ); + QStyleSheetItem::ListStyle listStyle() const; + void setListValue( int v ) { list_val = v; } + int listValue() const { return list_val; } + + void setList( bool b, int listStyle ); + void incDepth(); + void decDepth(); + + void setFormat( QTextFormat *fm ); + QTextFormat *paragFormat() const; + + QTextDocument *document() const; + + QRect rect() const; + void setHeight( int h ) { r.setHeight( h ); } + void setWidth( int w ) { r.setWidth( w ); } + void show(); + void hide(); + bool isVisible() const { return visible; } + + bool isLastInFrame() const { return lastInFrame; } + void setMovedDown( bool b ) { movedDown = b; } + bool isMovedDown() const { return movedDown; } + + QTextParag *prev() const; + QTextParag *next() const; + void setPrev( QTextParag *s ); + void setNext( QTextParag *s ); + + void insert( int index, const QString &s ); + void append( const QString &s, bool reallyAtEnd = FALSE ); + void truncate( int index ); + void remove( int index, int len ); + void join( QTextParag *s ); + + void invalidate( int chr ); + + void move( int &dy ); + void format( int start = -1, bool doMove = TRUE ); + + bool isValid() const; + bool hasChanged() const; + void setChanged( bool b, bool recursive = FALSE ); + + int lineHeightOfChar( int i, int *bl = 0, int *y = 0 ) const; + QTextStringChar *lineStartOfChar( int i, int *index = 0, int *line = 0 ) const; + int lines() const; + QTextStringChar *lineStartOfLine( int line, int *index = 0 ) const; + int lineY( int l ) const; + int lineBaseLine( int l ) const; + int lineHeight( int l ) const; + void lineInfo( int l, int &y, int &h, int &bl ) const; + + void setSelection( int id, int start, int end ); + void removeSelection( int id ); + int selectionStart( int id ) const; + int selectionEnd( int id ) const; + bool hasSelection( int id ) const; + bool hasAnySelection() const; + bool fullSelected( int id ) const; + + void setEndState( int s ); + int endState() const; + + void setParagId( int i ); + int paragId() const; + + bool firstPreProcess() const; + void setFirstPreProcess( bool b ); + + void indent( int *oldIndent = 0, int *newIndent = 0 ); + + void setExtraData( QTextParagData *data ); + QTextParagData *extraData() const; + + QMap &lineStartList(); + + void setFormat( int index, int len, QTextFormat *f, bool useCollection = TRUE, int flags = -1 ); + + void setAlignment( int a ); + int alignment() const; + + virtual void paint( QPainter &painter, const QColorGroup &cg, QTextCursor *cursor = 0, bool drawSelections = FALSE, + int clipx = -1, int clipy = -1, int clipw = -1, int cliph = -1 ); + + void setStyleSheetItems( const QPtrVector &vec ); + QPtrVector styleSheetItems() const; + QStyleSheetItem *style() const; + + virtual int topMargin() const; + virtual int bottomMargin() const; + virtual int leftMargin() const; + virtual int firstLineMargin() const; + virtual int rightMargin() const; + virtual int lineSpacing( int line ) const; + + int numberOfSubParagraph() const; + void registerFloatingItem( QTextCustomItem *i ); + void unregisterFloatingItem( QTextCustomItem *i ); + + void setFullWidth( bool b ) { fullWidth = b; } + bool isFullWidth() const { return fullWidth; } + + QTextTableCell *tableCell() const { return tc; } + void setTableCell( QTextTableCell *c ) { tc = c; } + + void addCustomItem(); + void removeCustomItem(); + int customItems() const; + + QBrush *background() const; + + void setDocumentRect( const QRect &r ); + int documentWidth() const; + int documentVisibleWidth() const; + int documentX() const; + int documentY() const; + QTextFormatCollection *formatCollection() const; + void setFormatter( QTextFormatter *f ); + QTextFormatter *formatter() const; + int minimumWidth() const; + + virtual int nextTab( int i, int x ); + void setTabArray( int *a ); + void setTabStops( int tw ); + int *tabArray() const { return tArray; } + + void setPainter( QPainter *p ); + QPainter *painter() const { return pntr; } + + void setNewLinesAllowed( bool b ); + bool isNewLinesAllowed() const; + + QString richText() const; + + void addCommand( QTextCommand *cmd ); + QTextCursor *undo( QTextCursor *c = 0 ); + QTextCursor *redo( QTextCursor *c = 0 ); + QTextCommandHistory *commands() const { return commandHistory; } + virtual void copyParagData( QTextParag *parag ); + +protected: + virtual void drawLabel( QPainter* p, int x, int y, int w, int h, int base, const QColorGroup& cg ); + virtual void drawParagString( QPainter &painter, const QString &str, int start, int len, int startX, + int lastY, int baseLine, int bw, int h, bool drawSelections, + QTextFormat *lastFormat, int i, const QMemArray &selectionStarts, + const QMemArray &selectionEnds, const QColorGroup &cg, bool rightToLeft ); + +private: + + QMap lineStarts; + int invalid; + QRect r; + QTextParag *p, *n; + QTextDocument *doc; + bool changed : 1; + bool firstFormat : 1; + bool firstPProcess : 1; + bool needPreProcess : 1; + bool fullWidth : 1; + bool newLinesAllowed : 1; + bool movedDown : 1; + bool lastInFrame : 1; + bool visible : 1; + QMap selections; + int state, id; + QTextString *str; + int align; + QPtrVector styleSheetItemsVec; + QStyleSheetItem::ListStyle listS; + int numSubParag; + int tm, bm, lm, rm, flm; + QTextFormat *defFormat; + QPtrList floatingItems; + QTextTableCell *tc; + int numCustomItems; + QRect docRect; + QTextFormatter *pFormatter; + int *tArray; + int tabStopWidth; + QTextParagData *eData; + QPainter *pntr; + QTextCommandHistory *commandHistory; + int list_val; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextFormatter +{ +public: + QTextFormatter(); + virtual ~QTextFormatter() {} + virtual int format( QTextDocument *doc, QTextParag *parag, int start, const QMap &oldLineStarts ) = 0; + + bool isWrapEnabled() const { return wrapEnabled;} + int wrapAtColumn() const { return wrapColumn;} + virtual void setWrapEnabled( bool b ) { wrapEnabled = b; } + virtual void setWrapAtColumn( int c ) { wrapColumn = c; } + virtual void setAllowBreakInWords( bool b ) { biw = b; } + bool allowBreakInWords() const { return biw; } + +protected: + virtual QTextParagLineStart *formatLine( QTextParag *parag, QTextString *string, QTextParagLineStart *line, QTextStringChar *start, + QTextStringChar *last, int align = Qt3::AlignAuto, int space = 0 ); + //QTextStringChar + //virtual QTextParagLineStart *bidiReorderLine( QTextParag *parag, QTextString *string, QTextParagLineStart *line, QTextStringChar *start, + // QTextStringChar *last, int align, int space ); + virtual bool isBreakable( QTextString *string, int pos ) const; + void insertLineStart( QTextParag *parag, int index, QTextParagLineStart *ls ); + +private: + bool wrapEnabled; + int wrapColumn; + bool biw; + +#ifdef HAVE_THAI_BREAKS + static QCString *thaiCache; + static QTextString *cachedString; + static ThBreakIterator *thaiIt; +#endif +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextFormatterBreakInWords : public QTextFormatter +{ +public: + QTextFormatterBreakInWords(); + int format( QTextDocument *doc, QTextParag *parag, int start, const QMap &oldLineStarts ); + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextFormatterBreakWords : public QTextFormatter +{ +public: + QTextFormatterBreakWords(); + int format( QTextDocument *doc, QTextParag *parag, int start, const QMap &oldLineStarts ); + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextIndent +{ +public: + QTextIndent(); + virtual void indent( QTextDocument *doc, QTextParag *parag, int *oldIndent = 0, int *newIndent = 0 ) = 0; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextPreProcessor +{ +public: + enum Ids { + Standard = 0 + }; + + QTextPreProcessor(); + virtual void process( QTextDocument *doc, QTextParag *, int, bool = TRUE ) = 0; + virtual QTextFormat *format( int id ) = 0; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +class Q_EXPORT QTextFormat +{ + friend class QTextFormatCollection; + +public: + enum Flags { + NoFlags, + Bold = 1, + Italic = 2, + Underline = 4, + Family = 8, + Size = 16, + Color = 32, + Misspelled = 64, + VAlign = 128, + Font = Bold | Italic | Underline | Family | Size, + Format = Font | Color | Misspelled | VAlign + }; + + enum VerticalAlignment { AlignNormal, AlignSubScript, AlignSuperScript }; + + QTextFormat(); + virtual ~QTextFormat() {} + QTextFormat( const QStyleSheetItem *s ); + QTextFormat( const QFont &f, const QColor &c, QTextFormatCollection *parent = 0 ); + QTextFormat( const QTextFormat &fm ); + QTextFormat makeTextFormat( const QStyleSheetItem *style, const QMap& attr ) const; + QTextFormat& operator=( const QTextFormat &fm ); + virtual void copyFormat( const QTextFormat &fm, int flags ); + QColor color() const; + QFont font() const; + bool isMisspelled() const; + VerticalAlignment vAlign() const; + int minLeftBearing() const; + int minRightBearing() const; + int width( const QChar &c ) const; + int width( const QString &str, int pos ) const; + int height() const; + int ascent() const; + int descent() const; + QString anchorHref() const; + QString anchorName() const; + bool isAnchor() const; + bool useLinkColor() const; + + void setBold( bool b ); + void setItalic( bool b ); + void setUnderline( bool b ); + void setFamily( const QString &f ); + void setPointSize( int s ); + void setFont( const QFont &f ); + void setColor( const QColor &c ); + void setMisspelled( bool b ); + void setVAlign( VerticalAlignment a ); + + bool operator==( const QTextFormat &f ) const; + QTextFormatCollection *parent() const; + void setCollection( QTextFormatCollection *parent ) { collection = parent; } + QString key() const; + + static QString getKey( const QFont &f, const QColor &c, bool misspelled, const QString &lhref, const QString &lnm, VerticalAlignment vAlign ); + + void addRef(); + void removeRef(); + + QString makeFormatChangeTags( QTextFormat *f ) const; + QString makeFormatEndTags() const; + + void setPainter( QPainter *p ); + void updateStyle(); + void updateStyleFlags(); + void setStyle( const QString &s ); + QString styleName() const { return style; } + + int changed() const { return different; } + +protected: + virtual void generateKey(); + QFont fn; + void update(); + void setKey( const QString &key ) { k = key; } + +private: + QString k; + QColor col; + QFontMetrics fm; + uint missp : 1; + uint linkColor : 1; + int leftBearing, rightBearing; + VerticalAlignment ha; + uchar widths[ 256 ]; + int hei, asc, dsc; + QTextFormatCollection *collection; + int ref; + int logicalFontSize; + int stdPointSize; + QString anchor_href; + QString anchor_name; + QPainter *painter; + QString style; + int different; + +}; + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QDict; +// MOC_SKIP_END +#endif + +class Q_EXPORT QTextFormatCollection +{ + friend class QTextDocument; + +public: + QTextFormatCollection(); + virtual ~QTextFormatCollection(); + + void setDefaultFormat( QTextFormat *f ); + QTextFormat *defaultFormat() const; + QTextFormat *format( const QTextFormat *f ); + virtual QTextFormat *format( QTextFormat *of, QTextFormat *nf, int flags ); + virtual QTextFormat *format( const QFont &f, const QColor &c ); + virtual void remove( QTextFormat *f ); + virtual QTextFormat *createFormat( const QTextFormat &f ) { return new QTextFormat( f ); } + virtual QTextFormat *createFormat( const QFont &f, const QColor &c ) { return new QTextFormat( f, c, this ); } + void debug(); + + void setPainter( QPainter *p ); + QStyleSheet *styleSheet() const { return sheet; } + void setStyleSheet( QStyleSheet *s ) { sheet = s; } + void updateStyles(); + void updateFontSizes( int base ); + void updateFontAttributes( const QFont &f, const QFont &old ); + + QDict & dict() { return cKey; } + +private: + QTextFormat *defFormat, *lastFormat, *cachedFormat; + QDict cKey; + QTextFormat *cres; + QFont cfont; + QColor ccol; + QString kof, knf; + int cflags; + QStyleSheet *sheet; + +}; + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline int QTextString::length() const +{ + return data.size(); +} + +inline void QTextString::operator+=( const QString &s ) +{ + insert( length(), s, 0 ); +} + +inline int QTextParag::length() const +{ + return str->length(); +} + +inline QRect QTextParag::rect() const +{ + return r; +} + +inline QTextParag *QTextCursor::parag() const +{ + return string; +} + +inline int QTextCursor::index() const +{ + return idx; +} + +inline void QTextCursor::setIndex( int i, bool restore ) +{ + if ( restore ) + restoreState(); + tmpIndex = -1; + idx = i; +} + +inline void QTextCursor::setParag( QTextParag *s, bool restore ) +{ + if ( restore ) + restoreState(); + idx = 0; + string = s; + tmpIndex = -1; +} + +inline void QTextCursor::checkIndex() +{ + if ( idx >= string->length() ) + idx = string->length() - 1; +} + +inline int QTextCursor::x() const +{ + QTextStringChar *c = string->at( idx ); + int curx = c->x; + if ( c->rightToLeft ) + curx += string->string()->width( idx ); + return curx; +} + +inline int QTextCursor::y() const +{ + int dummy, line; + string->lineStartOfChar( idx, &dummy, &line ); + return string->lineY( line ); +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline int QTextDocument::x() const +{ + return cx; +} + +inline int QTextDocument::y() const +{ + return cy; +} + +inline int QTextDocument::width() const +{ + return QMAX( cw, flow_->width ); +} + +inline int QTextDocument::visibleWidth() const +{ + return vw; +} + +inline int QTextDocument::height() const +{ + if ( lParag ) + return QMAX( flow_->height, lParag->rect().top() + lParag->rect().height() + 1 ); + return 0; +} + +inline QTextParag *QTextDocument::firstParag() const +{ + return fParag; +} + +inline QTextParag *QTextDocument::lastParag() const +{ + return lParag; +} + +inline void QTextDocument::setFirstParag( QTextParag *p ) +{ + fParag = p; +} + +inline void QTextDocument::setLastParag( QTextParag *p ) +{ + lParag = p; +} + +inline void QTextDocument::setWidth( int w ) +{ + cw = QMAX( w, minw ); + flow_->setWidth( cw ); + vw = w; +} + +inline int QTextDocument::minimumWidth() const +{ + return minw; +} + +inline QTextPreProcessor *QTextDocument::preProcessor() const +{ + return pProcessor; +} + +inline void QTextDocument::setPreProcessor( QTextPreProcessor * sh ) +{ + pProcessor = sh; +} + +inline void QTextDocument::setFormatter( QTextFormatter *f ) +{ + delete pFormatter; + pFormatter = f; +} + +inline QTextFormatter *QTextDocument::formatter() const +{ + return pFormatter; +} + +inline void QTextDocument::setIndent( QTextIndent *i ) +{ + indenter = i; +} + +inline QTextIndent *QTextDocument::indent() const +{ + return indenter; +} + +inline QColor QTextDocument::selectionColor( int id ) const +{ + return selectionColors[ id ]; +} + +inline bool QTextDocument::invertSelectionText( int id ) const +{ + return selectionText[ id ]; +} + +inline void QTextDocument::setSelectionColor( int id, const QColor &c ) +{ + selectionColors[ id ] = c; +} + +inline void QTextDocument::setInvertSelectionText( int id, bool b ) +{ + selectionText[ id ] = b; +} + +inline bool QTextDocument::hasSelection( int id ) const +{ + return selections.find( id ) != selections.end(); +} + +inline void QTextDocument::setSelectionStart( int id, QTextCursor *cursor ) +{ + QTextDocumentSelection sel; + sel.startCursor = *cursor; + sel.endCursor = *cursor; + sel.swapped = FALSE; + selections[ id ] = sel; +} + +inline QTextParag *QTextDocument::paragAt( int i ) const +{ + QTextParag *s = fParag; + while ( s ) { + if ( s->paragId() == i ) + return s; + s = s->next(); + } + return 0; +} + +inline QTextFormatCollection *QTextDocument::formatCollection() const +{ + return fCollection; +} + +inline int QTextDocument::alignment() const +{ + return align; +} + +inline void QTextDocument::setAlignment( int a ) +{ + align = a; +} + +inline int *QTextDocument::tabArray() const +{ + return tArray; +} + +inline int QTextDocument::tabStopWidth() const +{ + return tStopWidth; +} + +inline void QTextDocument::setTabArray( int *a ) +{ + tArray = a; +} + +inline void QTextDocument::setTabStops( int tw ) +{ + tStopWidth = tw; +} + +inline QString QTextDocument::originalText() const +{ + return oText; +} + +inline void QTextDocument::setFlow( QTextFlow *f ) +{ + if ( flow_ ) + delete flow_; + flow_ = f; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline QColor QTextFormat::color() const +{ + return col; +} + +inline QFont QTextFormat::font() const +{ + return fn; +} + +inline bool QTextFormat::isMisspelled() const +{ + return missp; +} + +inline QTextFormat::VerticalAlignment QTextFormat::vAlign() const +{ + return ha; +} + +inline int QTextFormat::minLeftBearing() const +{ + if ( !painter || !painter->isActive() ) + return leftBearing; + painter->setFont( fn ); + return painter->fontMetrics().minLeftBearing(); +} + +inline int QTextFormat::minRightBearing() const +{ + if ( !painter || !painter->isActive() ) + return rightBearing; + painter->setFont( fn ); + return painter->fontMetrics().minRightBearing(); +} + +inline int QTextFormat::height() const +{ + if ( !painter || !painter->isActive() ) + return hei; + painter->setFont( fn ); + return painter->fontMetrics().height(); +} + +inline int QTextFormat::ascent() const +{ + if ( !painter || !painter->isActive() ) + return asc; + painter->setFont( fn ); + return painter->fontMetrics().ascent(); +} + +inline int QTextFormat::descent() const +{ + if ( !painter || !painter->isActive() ) + return dsc; + painter->setFont( fn ); + return painter->fontMetrics().descent(); +} + +inline bool QTextFormat::operator==( const QTextFormat &f ) const +{ + return k == f.k; +} + +inline QTextFormatCollection *QTextFormat::parent() const +{ + return collection; +} + +inline QString QTextFormat::key() const +{ + return k; +} + +inline void QTextFormat::generateKey() +{ + k = QString::null; + QTextOStream ts( &k ); + ts << fn.pointSize() + << fn.weight() + << (int)fn.underline() + << (int)fn.strikeOut() + << (int)fn.italic() + << col.pixel() + << fn.family() + << (int)isMisspelled() + << anchor_href + << anchor_name + << (int)vAlign(); +} + +inline QString QTextFormat::getKey( const QFont &fn, const QColor &col, bool misspelled, + const QString &lhref, const QString &lnm, VerticalAlignment a ) +{ + QString k; + QTextOStream ts( &k ); + ts << fn.pointSize() + << fn.weight() + << (int)fn.underline() + << (int)fn.strikeOut() + << (int)fn.italic() + << col.pixel() + << fn.family() + << (int)misspelled + << lhref + << lnm + << (int)a; + return k; +} + +inline QString QTextFormat::anchorHref() const +{ + return anchor_href; +} + +inline QString QTextFormat::anchorName() const +{ + return anchor_name; +} + +inline bool QTextFormat::isAnchor() const +{ + return !anchor_href.isEmpty() || !anchor_name.isEmpty(); +} + +inline bool QTextFormat::useLinkColor() const +{ + return linkColor; +} + +inline void QTextFormat::setStyle( const QString &s ) +{ + style = s; + updateStyleFlags(); +} + +inline void QTextFormat::updateStyle() +{ + if ( !collection || !collection->styleSheet() ) + return; + QStyleSheetItem *item = collection->styleSheet()->item( style ); + if ( !item ) + return; + if ( !( different & Color ) && item->color().isValid() ) + col = item->color(); + if ( !( different & Size ) && item->fontSize() != -1 ) + fn.setPointSize( item->fontSize() ); + if ( !( different & Family ) && !item->fontFamily().isEmpty() ) + fn.setFamily( item->fontFamily() ); + if ( !( different & Bold ) && item->fontWeight() != -1 ) + fn.setWeight( item->fontWeight() ); + if ( !( different & Italic ) && item->definesFontItalic() ) + fn.setItalic( item->fontItalic() ); + if ( !( different & Underline ) && item->definesFontUnderline() ) + fn.setUnderline( item->fontUnderline() ); + generateKey(); + update(); + +} + +inline void QTextFormat::updateStyleFlags() +{ + different = NoFlags; + if ( !collection || !collection->styleSheet() ) + return; + QStyleSheetItem *item = collection->styleSheet()->item( style ); + if ( !item ) + return; + if ( item->color() != col ) + different |= Color; + if ( item->fontSize() != fn.pointSize() ) + different |= Size; + if ( item->fontFamily() != fn.family() ) + different |= Family; + if ( item->fontItalic() != fn.italic() ) + different |= Italic; + if ( item->fontUnderline() != fn.underline() ) + different |= Underline; + if ( item->fontWeight() != fn.weight() ) + different |= Bold; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline QTextStringChar &QTextString::at( int i ) const +{ + return data[ i ]; +} + +inline QString QTextString::toString( const QArray &data ) +{ + QString s; + int l = data.size(); + s.setUnicode( 0, l ); + QTextStringChar *c = data.data(); + QChar *uc = (QChar *)s.unicode(); + while ( l-- ) { + *uc = c->c; + uc++; + c++; + } + + return s; +} + +inline QString QTextString::toString() const +{ + return toString( data ); +} + +inline QString QTextString::toReverseString() const +{ + QString s; + int l = length(); + s.setUnicode(0, l); + QTextStringChar *c = data.data() + (l-1); + QChar *uc = (QChar *)s.unicode(); + while ( l-- ) { + *uc = c->c; + uc++; + c--; + } + + return s; +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline QTextStringChar *QTextParag::at( int i ) const +{ + return &str->at( i ); +} + +inline bool QTextParag::isValid() const +{ + return invalid == -1; +} + +inline bool QTextParag::hasChanged() const +{ + return changed; +} + +inline void QTextParag::setChanged( bool b, bool recursive ) +{ + changed = b; + if ( recursive ) { + if ( doc && doc->parentParag() ) + doc->parentParag()->setChanged( b, recursive ); + } +} + +inline void QTextParag::append( const QString &s, bool reallyAtEnd ) +{ + if ( reallyAtEnd ) + insert( str->length(), s ); + else + insert( QMAX( str->length() - 1, 0 ), s ); +} + +inline QTextParag *QTextParag::prev() const +{ + return p; +} + +inline QTextParag *QTextParag::next() const +{ + return n; +} + +inline void QTextParag::setSelection( int id, int start, int end ) +{ + QMap::ConstIterator it = selections.find( id ); + if ( it != selections.end() ) { + if ( start == ( *it ).start && end == ( *it ).end ) + return; + } + + QTextParagSelection sel; + sel.start = start; + sel.end = end; + selections[ id ] = sel; + setChanged( TRUE, TRUE ); +} + +inline void QTextParag::removeSelection( int id ) +{ + if ( !hasSelection( id ) ) + return; + selections.remove( id ); + setChanged( TRUE, TRUE ); +} + +inline int QTextParag::selectionStart( int id ) const +{ + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return -1; + return ( *it ).start; +} + +inline int QTextParag::selectionEnd( int id ) const +{ + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return -1; + return ( *it ).end; +} + +inline bool QTextParag::hasSelection( int id ) const +{ + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return FALSE; + return ( *it ).start != ( *it ).end || length() == 1; +} + +inline bool QTextParag::hasAnySelection() const +{ + return !selections.isEmpty(); +} + +inline bool QTextParag::fullSelected( int id ) const +{ + QMap::ConstIterator it = selections.find( id ); + if ( it == selections.end() ) + return FALSE; + return ( *it ).start == 0 && ( *it ).end == str->length() - 1; +} + +inline void QTextParag::setEndState( int s ) +{ + if ( s == state ) + return; + state = s; +} + +inline int QTextParag::endState() const +{ + return state; +} + +inline void QTextParag::setParagId( int i ) +{ + id = i; +} + +inline int QTextParag::paragId() const +{ +// if ( id == -1 ) +// qWarning( "invalid parag id!!!!!!!! (%p)", (void*)this ); + return id; +} + +inline bool QTextParag::firstPreProcess() const +{ + return firstPProcess; +} + +inline void QTextParag::setFirstPreProcess( bool b ) +{ + firstPProcess = b; +} + +inline QMap &QTextParag::lineStartList() +{ + return lineStarts; +} + +inline int QTextParag::lineY( int l ) const +{ + if ( l > (int)lineStarts.count() - 1 ) { +// qWarning( "QTextParag::lineY: line %d out of range!", l ); + return 0; + } + + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + QMap::ConstIterator it = lineStarts.begin(); + while ( l-- > 0 ) + ++it; + return ( *it )->y; +} + +inline int QTextParag::lineBaseLine( int l ) const +{ + if ( l > (int)lineStarts.count() - 1 ) { +// qWarning( "QTextParag::lineBaseLine: line %d out of range!", l ); + return 10; + } + + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + QMap::ConstIterator it = lineStarts.begin(); + while ( l-- > 0 ) + ++it; + return ( *it )->baseLine; +} + +inline int QTextParag::lineHeight( int l ) const +{ + if ( l > (int)lineStarts.count() - 1 ) { +// qWarning( "QTextParag::lineHeight: line %d out of range!", l ); + return 15; + } + + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + QMap::ConstIterator it = lineStarts.begin(); + while ( l-- > 0 ) + ++it; + return ( *it )->h; +} + +inline void QTextParag::lineInfo( int l, int &y, int &h, int &bl ) const +{ + if ( l > (int)lineStarts.count() - 1 ) { +// qWarning( "QTextParag::lineInfo: line %d out of range!", l ); + qDebug( "%d %d", lineStarts.count() - 1, l ); + y = 0; + h = 15; + bl = 10; + return; + } + + if ( !isValid() ) + ( (QTextParag*)this )->format(); + + QMap::ConstIterator it = lineStarts.begin(); + while ( l-- > 0 ) + ++it; + y = ( *it )->y; + h = ( *it )->h; + bl = ( *it )->baseLine; +} + +inline QTextString *QTextParag::string() const +{ + return str; +} + +inline QTextDocument *QTextParag::document() const +{ + return doc; +} + +inline void QTextParag::setAlignment( int a ) +{ + if ( a == align ) + return; + align = a; + invalidate( 0 ); +} + +inline int QTextParag::alignment() const +{ + if ( align != -1 ) + return align; + QStyleSheetItem *item = style(); + if ( !item ) + return Qt3::AlignAuto; + for ( int i = 0; i < (int)styleSheetItemsVec.size(); ++i ) { + item = styleSheetItemsVec[ i ]; + if ( item->alignment() != QStyleSheetItem::Undefined ) + return item->alignment(); + } + return Qt3::AlignAuto; +} + +inline QVector QTextParag::styleSheetItems() const +{ + QVector vec; + vec.resize( styleSheetItemsVec.size() ); + for ( int i = 0; i < (int)vec.size(); ++i ) + vec.insert( i, styleSheetItemsVec[ i ] ); + return vec; +} + +inline QStyleSheetItem *QTextParag::style() const +{ + if ( styleSheetItemsVec.size() == 0 ) + return 0; + return styleSheetItemsVec[ styleSheetItemsVec.size() - 1 ]; +} + +inline int QTextParag::numberOfSubParagraph() const +{ + if ( numSubParag != -1 ) + return numSubParag; + int n = 0; + QTextParag *p = (QTextParag*)this; + while ( p && style() == p->style() && listStyle() == p->listStyle() ) { + ++n; + p = p->prev(); + } + ( (QTextParag*)this )->numSubParag = n; + return n; +} + +inline void QTextParag::setListStyle( QStyleSheetItem::ListStyle ls ) +{ + listS = ls; + invalidate( 0 ); +} + +inline QStyleSheetItem::ListStyle QTextParag::listStyle() const +{ + return listS; +} + +inline void QTextParag::setFormat( QTextFormat *fm ) +{ + bool doUpdate = (bool)defFormat && defFormat != formatCollection()->defaultFormat(); + defFormat = formatCollection()->format( fm ); + if ( !doUpdate ) + return; + for ( int i = 0; i < length(); ++i ) { + if ( at( i )->format()->styleName() == defFormat->styleName() ) + at( i )->format()->updateStyle(); + } +} + +inline QTextFormat *QTextParag::paragFormat() const +{ + return defFormat; +} + +inline void QTextParag::registerFloatingItem( QTextCustomItem *i ) +{ + floatingItems.append( i ); +} + +inline void QTextParag::unregisterFloatingItem( QTextCustomItem *i ) +{ + floatingItems.removeRef( i ); +} + +inline void QTextParag::addCustomItem() +{ + numCustomItems++; +} + +inline void QTextParag::removeCustomItem() +{ + numCustomItems--; +} + +inline int QTextParag::customItems() const +{ + return numCustomItems; +} + +inline QBrush *QTextParag::background() const +{ + return tc ? tc->backGround() : 0; +} + + +inline void QTextParag::setDocumentRect( const QRect &r ) +{ + docRect = r; +} + +inline int QTextParag::documentWidth() const +{ + return doc ? doc->width() : docRect.width(); +} + +inline int QTextParag::documentVisibleWidth() const +{ + return doc ? doc->visibleWidth() : docRect.width(); +} + +inline int QTextParag::documentX() const +{ + return doc ? doc->x() : docRect.x(); +} + +inline int QTextParag::documentY() const +{ + return doc ? doc->y() : docRect.y(); +} + +inline QTextFormatter *QTextParag::formatter() const +{ + if ( doc ) + return doc->formatter(); + if ( pFormatter ) + return pFormatter; + return ( ( (QTextParag*)this )->pFormatter = new QTextFormatterBreakWords ); +} + +inline void QTextParag::setFormatter( QTextFormatter *f ) +{ + if ( doc ) return; + if ( pFormatter ) delete pFormatter; + pFormatter = f; +} + +inline int QTextParag::minimumWidth() const +{ + return doc ? doc->minimumWidth() : 0; +} + +inline void QTextParag::setExtraData( QTextParagData *data ) +{ + eData = data; +} + +inline QTextParagData *QTextParag::extraData() const +{ + return eData; +} + +inline void QTextParag::setNewLinesAllowed( bool b ) +{ + newLinesAllowed = b; +} + +inline bool QTextParag::isNewLinesAllowed() const +{ + return newLinesAllowed; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline void QTextFormatCollection::setDefaultFormat( QTextFormat *f ) +{ + defFormat = f; +} + +inline QTextFormat *QTextFormatCollection::defaultFormat() const +{ + return defFormat; +} + +// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +inline QTextStringChar::~QTextStringChar() +{ + if ( format() ) + format()->removeRef(); + switch ( type ) { + case Custom: + delete d.custom; break; + case Mark: + delete d.mark; break; + case Shaped: + delete d.shaped; break; + default: + break; + } +} + +inline QTextFormat *QTextStringChar::format() const +{ + return (type == Regular) ? d.format : d.custom->format; +} + + +inline QTextCustomItem *QTextStringChar::customItem() const +{ + return isCustom() ? d.custom->custom : 0; +} + +inline int QTextStringChar::height() const +{ + return !isCustom() ? format()->height() : ( customItem()->placement() == QTextCustomItem::PlaceInline ? customItem()->height : 0 ); +} + +inline int QTextStringChar::ascent() const +{ + return !isCustom() ? format()->ascent() : ( customItem()->placement() == QTextCustomItem::PlaceInline ? customItem()->height : 0 ); +} + +inline int QTextStringChar::descent() const +{ + return !isCustom() ? format()->descent() : 0; +} + +}; // namespace + +#endif + diff --git a/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp b/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp new file mode 100644 index 0000000..98dc721 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.cpp @@ -0,0 +1,1349 @@ +/**************************************************************************** +** $Id: qstylesheet.cpp,v 1.5 2001/06/15 13:32:21 joachim Exp $ +** +** Implementation of the QStyleSheet class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the kernel module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#include "qstylesheet.h" + +#ifndef QT_NO_RICHTEXT + +#include "qrichtext_p.h" +#include "qlayout.h" +#include "qpainter.h" +#include "qcleanuphandler.h" + +#include + +using namespace Qt3; + +class QStyleSheetItem::Data +{ +public: + QStyleSheetItem::DisplayMode disp; + int fontitalic; + int fontunderline; + int fontweight; + int fontsize; + int fontsizelog; + int fontsizestep; + int lineSpacing; + QString fontfamily; + QStyleSheetItem *parentstyle; + QString stylename; + int ncolumns; + QColor col; + bool anchor; + int align; + int margin[5]; + QStyleSheetItem::ListStyle list; + QStyleSheetItem::WhiteSpaceMode whitespacemode; + QString contxt; + bool selfnest; + QStyleSheet* sheet; +}; + +/*! + \class QStyleSheetItem qstylesheet.h + \brief The QStyleSheetItem class encapsulates a text format. + + A style consists of a name and a set of font, color, and other + display properties. When used in a \link QStyleSheet style + sheet\endlink, items define the name of a rich text tag and the + display property changes associated with it. +*/ + + +/*! \enum QStyleSheetItem::WhiteSpaceMode + + This enum defines the ways in which QStyleSheet can treat whitespace. There are three values at present: + + \value WhiteSpaceNormal any sequence of whitespace is equivalent + to a single space and is a line-break position. + + \value WhiteSpacePre whitespace must be output exactly as given + in the input. + + \value WhiteSpaceNoWrap multiple spaces are collapsed as with + WhiteSpaceNormal, but no automatic linebreaks occur. To break lines manually, + use the <br> tag. + +*/ + +/*! \enum QStyleSheetItem::Margin + + \value MarginLeft left margin + \value MarginRight right margin + \value MarginTop top margin + \value MarginBottom bottom margin + \value MarginAll all margins (left, right, top and bottom) + \value MarginVertical top and bottom margins + \value MarginHorizontal left and right margins + \value MarginFirstLine margin (indentation) of the first line of a paragarph (in addition to the MarginLeft of the paragraph) +*/ + +/*! + Constructs a new style named \a name for the stylesheet \a parent. + + All properties in QStyleSheetItem are initially in the "do not change" state, + except \link QStyleSheetItem::DisplayMode display mode\endlink, which defaults + to \c DisplayInline. +*/ +QStyleSheetItem::QStyleSheetItem( QStyleSheet* parent, const QString& name ) +{ + d = new Data; + d->stylename = name.lower(); + d->sheet = parent; + init(); + if (parent) + parent->insert( this ); +} + +/*! + Copy constructor. Constructs a copy of \a other that is + not bound to any style sheet. + */ +QStyleSheetItem::QStyleSheetItem( const QStyleSheetItem & other ) +{ + d = new Data; + *d = *other.d; +} + + +/*! + Destructs the style. Note that QStyleSheetItem objects become owned + by QStyleSheet when they are created. + */ +QStyleSheetItem::~QStyleSheetItem() +{ + delete d; +} + + + +/*! + Returns the style sheet this item is in. + */ +QStyleSheet* QStyleSheetItem::styleSheet() +{ + return d->sheet; +} + +/*! + Returns the style sheet this item is in. + */ +const QStyleSheet* QStyleSheetItem::styleSheet() const +{ + return d->sheet; +} + +/*! + \internal + Internal initialization + */ +void QStyleSheetItem::init() +{ + d->disp = DisplayInline; + + d->fontitalic = Undefined; + d->fontunderline = Undefined; + d->fontweight = Undefined; + d->fontsize = Undefined; + d->fontsizelog = Undefined; + d->fontsizestep = 0; + d->ncolumns = Undefined; + d->col = QColor(); // !isValid() + d->anchor = FALSE; + d->align = Undefined; + d->margin[0] = Undefined; + d->margin[1] = Undefined; + d->margin[2] = Undefined; + d->margin[3] = Undefined; + d->margin[4] = Undefined; + d->list = QStyleSheetItem::ListDisc; + d->whitespacemode = QStyleSheetItem::WhiteSpaceNormal; + d->selfnest = TRUE; + d->lineSpacing = Undefined; +} + +/*! + Returns the name of style. +*/ +QString QStyleSheetItem::name() const +{ + return d->stylename; +} + +/*! + Returns the \link QStyleSheetItem::DisplayMode display mode\endlink of the style. + + \sa setDisplayMode() + */ +QStyleSheetItem::DisplayMode QStyleSheetItem::displayMode() const +{ + return d->disp; +} + +/*! \enum QStyleSheetItem::DisplayMode + + This enum type defines the way adjacent elements are displayed. The possible values are: + + \value DisplayBlock elements are displayed as a rectangular block (e.g., + <P> ... </P>). + + \value DisplayInline elements are displayed in a horizontally flowing + sequence (e.g., <EM> ... </EM>). + + \value DisplayListItem elements are displayed in a vertically sequence + (e.g., <EM> ... </EM>). + + \value DisplayNone elements are not displayed at all. +*/ + +/*! + Sets the display mode of the style to \a m. + + \sa displayMode() + */ +void QStyleSheetItem::setDisplayMode(DisplayMode m) +{ + d->disp=m; +} + + +/*! + Returns the alignment of this style. Possible values are AlignAuto, AlignLeft, + AlignRight, AlignCenter and AlignJustify. + + \sa setAlignment(), Qt::AlignmentFlags + */ +int QStyleSheetItem::alignment() const +{ + return d->align; +} + +/*! + Sets the alignment. This only makes sense for styles with + \link QStyleSheetItem::DisplayMode display mode\endlink + DisplayBlock. Possible values are AlignAuto, AlignLeft, AlignRight, + AlignCenter and AlignJustify. + + \sa alignment(), displayMode(), Qt::AlignmentFlags + */ +void QStyleSheetItem::setAlignment( int f ) +{ + d->align = f; +} + + +/*! + Returns whether the style sets an italic or upright font. + + \sa setFontItalic(), definesFontItalic() + */ +bool QStyleSheetItem::fontItalic() const +{ + return d->fontitalic > 0; +} + +/*! + Sets italic or upright shape for the style. + + \sa fontItalic(), definesFontItalic() + */ +void QStyleSheetItem::setFontItalic(bool italic) +{ + d->fontitalic = italic?1:0; +} + +/*! + Returns whether the style defines a font shape. A style + does not define any shape until setFontItalic() is called. + + \sa setFontItalic(), fontItalic() + */ +bool QStyleSheetItem::definesFontItalic() const +{ + return d->fontitalic != Undefined; +} + +/*! + Returns whether the style sets an underlined font. + + \sa setFontUnderline(), definesFontUnderline() + */ +bool QStyleSheetItem::fontUnderline() const +{ + return d->fontunderline > 0; +} + +/*! + Sets underline for the style. + + \sa fontUnderline(), definesFontUnderline() + */ +void QStyleSheetItem::setFontUnderline(bool underline) +{ + d->fontunderline = underline?1:0; +} + +/*! + Returns whether the style defines a setting for the underline + property of the font. A style does not define this until + setFontUnderline() is called. + + \sa setFontUnderline(), fontUnderline() */ +bool QStyleSheetItem::definesFontUnderline() const +{ + return d->fontunderline != Undefined; +} + + +/*! + Returns the font weight setting of the style. This is either a + valid QFont::Weight or the value QStyleSheetItem::Undefined. + + \sa setFontWeight(), QFont + */ +int QStyleSheetItem::fontWeight() const +{ + return d->fontweight; +} + +/*! + Sets the font weight setting of the style. Valid values are + those defined by QFont::Weight. + + \sa QFont, fontWeight() + */ +void QStyleSheetItem::setFontWeight(int w) +{ + d->fontweight = w; +} + +/*! + Returns the logical font size setting of the style. This is either a valid + size between 1 and 7 or QStyleSheetItem::Undefined. + + \sa setLogicalFontSize(), setLogicalFontSizeStep(), QFont::pointSize(), QFont::setPointSize() + */ +int QStyleSheetItem::logicalFontSize() const +{ + return d->fontsizelog; +} + + +/*! + Sets the logical font size setting of the style tp \a s. + Valid logical sizes are 1 to 7. + + \sa logicalFontSize(), QFont::pointSize(), QFont::setPointSize() + */ +void QStyleSheetItem::setLogicalFontSize(int s) +{ + d->fontsizelog = s; +} + +/*! + Returns the logical font size step of this style. + + The default is 0. Tags such as \c big define \c +1; \c small defines + \c -1. + + \sa setLogicalFontSizeStep() + */ +int QStyleSheetItem::logicalFontSizeStep() const +{ + return d->fontsizestep; +} + +/*! + Sets the logical font size step of this style to \a s. + + \sa logicalFontSizeStep() + */ +void QStyleSheetItem::setLogicalFontSizeStep( int s ) +{ + d->fontsizestep = s; +} + + + +/*! + Sets the font size setting of the style in point measures. + + \sa fontSize(), QFont::pointSize(), QFont::setPointSize() + */ +void QStyleSheetItem::setFontSize(int s) +{ + d->fontsize = s; +} + +/*! + Returns the font size setting of the style. This is either a valid + point size or QStyleSheetItem::Undefined. + + \sa setFontSize(), QFont::pointSize(), QFont::setPointSize() + */ +int QStyleSheetItem::fontSize() const +{ + return d->fontsize; +} + + +/*! + Returns the font family setting of the style. This is either a valid + font family or QString::null if no family has been set. + + \sa setFontFamily(), QFont::family(), QFont::setFamily() + */ +QString QStyleSheetItem::fontFamily() const +{ + return d->fontfamily; +} + +/*! + Sets the font family setting of the style. + + \sa fontFamily(), QFont::family(), QFont::setFamily() + */ +void QStyleSheetItem::setFontFamily( const QString& fam) +{ + d->fontfamily = fam; +} + + +/*!\obsolete + Returns the number of columns for this style. + + \sa setNumberOfColumns(), displayMode(), setDisplayMode() + + */ +int QStyleSheetItem::numberOfColumns() const +{ + return d->ncolumns; +} + + +/*!\obsolete + Sets the number of columns for this style. Elements in the style + are divided into columns. + + This makes sense only if the style uses a block display mode + (see QStyleSheetItem::DisplayMode). + + \sa numberOfColumns() + */ +void QStyleSheetItem::setNumberOfColumns(int ncols) +{ + if (ncols > 0) + d->ncolumns = ncols; +} + + +/*! + Returns the text color of this style or an invalid color + if no color has been set yet. + + \sa setColor() QColor::isValid() + */ +QColor QStyleSheetItem::color() const +{ + return d->col; +} + +/*! + Sets the text color of this style. + + \sa color() + */ +void QStyleSheetItem::setColor( const QColor &c) +{ + d->col = c; +} + +/*! + Returns whether this style is an anchor. + + \sa setAnchor() + */ +bool QStyleSheetItem::isAnchor() const +{ + return d->anchor; +} + +/*! + Sets whether the style is an anchor (link). Elements in this style + have connections to other documents or anchors. + + \sa isAnchor() + */ +void QStyleSheetItem::setAnchor(bool anc) +{ + d->anchor = anc; +} + + +/*! + Returns the whitespace mode. + + \sa setWhiteSpaceMode() + */ +QStyleSheetItem::WhiteSpaceMode QStyleSheetItem::whiteSpaceMode() const +{ + return d->whitespacemode; +} + +/*! + Sets the whitespace mode to \a m. Possible values are +
      +
    • \c WhiteSpaceNormal + - whitespace in the document serves only as separators. + Multiple spaces or indentation are ignored. +
    • \c WhiteSpacePre + - whitespace is preserved. This is particulary useful to + display programming code. +
    • \c WhiteSpaceNoWrap + - multiple spaces are collapsed as with WhiteSpaceNormal, but no + automatic linebreaks occur. To break lines manually use the + <br> tag. +
    + */ +void QStyleSheetItem::setWhiteSpaceMode(WhiteSpaceMode m) +{ + d->whitespacemode = m; +} + + +/*! + Returns the width of margin \a m in pixel. + + The margin determinator \a m can be \c MarginLeft, \c MarginRight, + \c MarginTop, \c MarginBottom, \c MarginAll, \c MarginVertical or \c + MarginHorizontal. + + \sa setMargin() + */ +int QStyleSheetItem::margin(Margin m) const +{ + return d->margin[m]; +} + + +/*! + Sets the width of margin \a m to \a v pixels. + + The margin determinator \a m can be \c MarginLeft, \c MarginRight, + \c MarginTop, \c MarginBottom, \c MarginAll, \c MarginVertical or \c + MarginHorizontal. The value \a v must be >= 0. + + \sa margin() + */ +void QStyleSheetItem::setMargin(Margin m, int v) +{ + if (m == MarginAll ) { + d->margin[0] = v; + d->margin[1] = v; + d->margin[2] = v; + d->margin[3] = v; + d->margin[4] = v; + } else if (m == MarginVertical ) { + d->margin[MarginTop] = v; + d->margin[MarginBottom] = v; + } else if (m == MarginHorizontal ) { + d->margin[MarginLeft] = v; + d->margin[MarginRight] = v; + } else { + d->margin[m] = v; + } +} + + +/*! + Returns the list style of the style. + + \sa setListStyle() + */ +QStyleSheetItem::ListStyle QStyleSheetItem::listStyle() const +{ + return d->list; +} + +/*! \enum QStyleSheetItem::ListStyle + + This enum type defines how the items in a list are prefixed when + displayed. The currently defined values are: + + \value ListDisc a filled circle + \value ListCircle an unfilled circle + \value ListSquare a filled circle + \value ListDecimal an integer in base 10: \e 1, \e 2, \e 3, ... + \value ListLowerAlpha a lowercase letter: \e a, \e b, \e c, ... + \value ListUpperAlpha an uppercase letter: \e A, \e B, \e C, ... +*/ +/*! + Sets the list style of the style. + + This is used by nested elements that have a display mode of + DisplayListItem. + + \sa listStyle() DisplayMode + */ +void QStyleSheetItem::setListStyle(ListStyle s) +{ + d->list=s; +} + + +/*! Returns a space-separated list of names of styles that may + contain elements of this style. If nothing has been set, contexts() + returns an empty string, which indicates that this style can be + nested everywhere. + + \sa setContexts() + */ +QString QStyleSheetItem::contexts() const +{ + return d->contxt; +} + +/*! + Sets a space-separated list of names of styles that may contain + elements of this style. If \a c is empty, the style can be nested + everywhere. + + \sa contexts() + */ +void QStyleSheetItem::setContexts( const QString& c) +{ + d->contxt = QChar(' ') + c + QChar(' '); +} + +/*! + Returns TRUE if this style can be nested into an element + of style \a s, and FALSE otherwise. + + \sa contxts(), setContexts() + */ +bool QStyleSheetItem::allowedInContext( const QStyleSheetItem* s) const +{ + if ( d->contxt.isEmpty() ) + return TRUE; + return d->contxt.find( QChar(' ')+s->name()+QChar(' ')) != -1; +} + + +/*! + Returns whether this style has self-nesting enabled. + + \sa setSelfNesting() + */ +bool QStyleSheetItem::selfNesting() const +{ + return d->selfnest; +} + +/*! + Sets the self-nesting property for this style to \a nesting. + + In order to support "dirty" HTML, paragraphs <p> and list items + <li> are not self-nesting. This means that starting a new + paragraph or list item automatically closes the previous one. + + \sa selfNesting() + */ +void QStyleSheetItem::setSelfNesting( bool nesting ) +{ + d->selfnest = nesting; +} + +/*! Sets the linespacing to be \a ls pixels */ + +void QStyleSheetItem::setLineSpacing( int ls ) +{ + d->lineSpacing = ls; +} + +/*! Returns the linespacing */ + +int QStyleSheetItem::lineSpacing() const +{ + return d->lineSpacing; +} + +//************************************************************************ + + + + +//************************************************************************ + + +/*! + \class QStyleSheet qstylesheet.h + \brief A collection of styles for rich text rendering and a generator of tags. + + \ingroup drawing + \ingroup helpsystem + + By creating QStyleSheetItem objects for a style sheet you build a + definition of a set of tags. This definition will be used by the + internal rich text rendering system to parse and display text + documents to which the style sheet applies. Rich text is normally + visualized in a QTextView or a QTextBrowser. However, QLabel, + QWhatsThis and QMessageBox also support it, and other classes are likely to + follow. With QSimpleRichText it is possible to use the rich text + renderer for custom widgets as well. + + The default QStyleSheet object has the following style bindings, + sorted by structuring bindings, anchors, character style bindings + (i.e., inline styles), special elements such as horizontal lines or + images, and other tags. In addition, rich text supports simple HTML + tables. + + The structuring tags are +
      +
    • <qt>...</qt> + - A Qt rich text document. It understands the following attributes: +
        +
      • \c title + - The caption of the document. This attribute is easily accessible with + QTextView::documentTitle(). +
      • \c type + - The type of the document. The default type is \c page . It indicates that + the document is displayed in a page of its own. Another style is \c detail, + which can be used to explain certain expressions in more detail in a few + sentences. The QTextBrowser will then keep the current page and display the + new document in a small popup similar to QWhatsThis. Note that links + will not work in documents with <qt type="detail">...</qt>. +
      • \c bgcolor + - The background color, for example \c bgcolor="yellow" or \c bgcolor="#0000FF". +
      • \c background + - The background pixmap, for example \c background="granit.xpm". The pixmap name + will be resolved by a QMimeSourceFactory(). +
      • \c text + - The default text color, for example \c text="red". +
      • \c link + - The link color, for example \c link="green". +
      +
    • <h1>...</h1> + - A top-level heading. +
    • <h2>...</h2> + - A sublevel heading. +
    • <h3>...</h3> + - A sub-sublevel heading. +
    • <p>...</p> + - A left-aligned paragraph. Adjust the alignment with + the \c align attribute. Possible values are + \c left, \c right and \c center. +
    • <center>...</center> + - A centered paragraph. +
    • <blockquote>...</blockquote> + - An indented paragraph that is useful for quotes. +
    • <ul>...</ul> + - An unordered list. You can also pass a type argument to + define the bullet style. The default is \c type=disc; other + types are \c circle and \c square. +
    • <ol>...</ol> + - An ordered list. You can also pass a type argument to define + the enumeration label style. The default is \c type="1"; other + types are \c "a" and \c "A". +
    • <li>...</li> + - A list item. This tag can be used only within the context of + \c ol or \c ul. +
    • <pre>...</pre> + - For larger junks of code. Whitespaces in the contents are preserved. + For small bits of code use the inline-style \c code. +
    + + Anchors and links are done with a single tag: +
      +
    • <a>...</a> + - An anchor or link. The reference target is defined in the + \c href attribute of the tag as in <a href="target.qml">...</a>. + You can also specify an additional anchor within the specified target document, for + example <a href="target.qml#123">...</a>. If + \c a is meant to be an anchor, the reference source is given in + the \c name attribute. +
    + + The default character style bindings are +
      +
    • <em>...</em> + - Emphasized. By default this is the same as <i>...</i> (italic). +
    • <strong>...</strong> + - Strong. By default this is the same as <bold>...</bold> (bold). +
    • <i>...</i> + - Italic font style. +
    • <b>...</b> + - Bold font style. +
    • <u>...</u> + - Underlined font style. +
    • <big>...</big> + - A larger font size. +
    • <small>...</small> + - A smaller font size. +
    • <code>...</code> + - Indicates code. By default this is the same as <tt>...</tt> (typewriter). For + larger junks of code use the block-tag \c pre. +
    • <tt>...</tt> + - Typewriter font style. +
    • <font>...</font> + - Customizes the font size, family and text color. The tag understands + the following attributes: +
        +
      • \c color + - The text color, for example \c color="red" or \c color="#FF0000". +
      • \c size + - The logical size of the font. Logical sizes 1 to 7 are supported. + The value may either be absolute (for example, + \c size=3) or relative (\c size=-2). In the latter case the sizes + are simply added. +
      • \c face + - The family of the font, for example \c face=times. +
      +
    + + Special elements are: +
      +
    • <img/> + - An image. The image name for the mime source + factory is given in the source attribute, for example + <img src="qt.xpm"/>. The image tag also + understands the attributes \c width and \c height that determine + the size of the image. If the pixmap does not fit the specified + size it will be scaled automatically (by using QImage::smoothScale()). + + The \c align attribute determines where the image is + placed. By default, an image is placed inline just like a + normal character. Specify \c left or \c right to place the + image at the respective side. +
    • <hr/> + - A horizonal line. +
    • <br/> + - A line break. +
    + + Another tag not in any of the above cathegories is +
      +
    • <nobr>...</nobr> + - No break. Prevents word wrap. +
    + + In addition, rich text supports simple HTML tables. A table consists + of a set of rows in which each row contains some number of cells. Cells + are either data cells or header cells, depending on their + content. Usually a cell fills one rectangle in the table grid. It + may, however, also span several rows, columns or both. + +
      +
    • <table>...</table> + - A table definition. + The default table is frameless. Specify the boolean attribute + \c border in order to get a frame. Other attributes are +
        +
      • \c bgcolor + - The background color. +
      • \c width + - The table width. This is either absolute in pixels or relative + in percent of the column width, for example \c width=80%. +
      • \c border + - The width of the table border. The default is 0 (= no border). +
      • \c cellspacing + - Additional space around the table cells. The default is 2. +
      • \c cellpadding + - Additional space around the contents of table cells. The default is 1. +
      +
    • <tr>...</tr> + - A table row. Can be used only within \c table. Understands the attributes. +
        +
      • \c bgcolor + - The background color. +
      +
    • <td>...</td> + - A table data cell. Can be used only within \c tr. Understands the attributes. +
        +
      • \c bgcolor + - The background color. +
      • \c width + - The cell width. This is either absolute in pixels or relative + in percent of the entire table width, for example \c width=50%. +
      • \c colspan + - Defines how many columns this cell spans. The default is 1. +
      • \c rowspan + - Defines how many rows this cell spans. The default is 1. +
      • \c align + - Alignment; possible values are \c left, \c right, and \c center. The + default is left-aligned. +
      +
    • <th>...</th> + - A table header cell. Similar to \c td, but defaults to center alignment + and a bold font. +
    +*/ + +/*! + Creates a style sheet. Like any QObject, the created object will be + deleted when its parent destructs (if the child still exists). + + By default the style sheet has the tag definitions defined above. +*/ +QStyleSheet::QStyleSheet( QObject *parent, const char *name ) + : QObject( parent, name ) +{ + init(); +} + +/*! + Destructs the style sheet. All styles inserted into the style sheet + will be deleted. +*/ +QStyleSheet::~QStyleSheet() +{ +} + +/*! + \internal + Initialized the style sheet to the basic Qt style. +*/ +void QStyleSheet::init() +{ + styles.setAutoDelete( TRUE ); + + nullstyle = new QStyleSheetItem( this, + QString::fromLatin1("") ); + + QStyleSheetItem* style; + + style = new QStyleSheetItem( this, "qml" ); // compatibility + style->setDisplayMode( QStyleSheetItem::DisplayBlock ); + + style = new QStyleSheetItem( this, QString::fromLatin1("qt") ); + style->setDisplayMode( QStyleSheetItem::DisplayBlock ); + //style->setMargin( QStyleSheetItem::MarginAll, 4 ); + + style = new QStyleSheetItem( this, QString::fromLatin1("a") ); + style->setAnchor( TRUE ); + + style = new QStyleSheetItem( this, QString::fromLatin1("em") ); + style->setFontItalic( TRUE ); + + style = new QStyleSheetItem( this, QString::fromLatin1("i") ); + style->setFontItalic( TRUE ); + + style = new QStyleSheetItem( this, QString::fromLatin1("big") ); + style->setLogicalFontSizeStep( 1 ); + style = new QStyleSheetItem( this, QString::fromLatin1("large") ); // compatibility + style->setLogicalFontSizeStep( 1 ); + + style = new QStyleSheetItem( this, QString::fromLatin1("small") ); + style->setLogicalFontSizeStep( -1 ); + + style = new QStyleSheetItem( this, QString::fromLatin1("strong") ); + style->setFontWeight( QFont::Bold); + + style = new QStyleSheetItem( this, QString::fromLatin1("b") ); + style->setFontWeight( QFont::Bold); + + style = new QStyleSheetItem( this, QString::fromLatin1("h1") ); + style->setFontWeight( QFont::Bold); + style->setLogicalFontSize(6); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style-> setMargin(QStyleSheetItem::MarginTop, 12); + style-> setMargin(QStyleSheetItem::MarginBottom, 6); + + style = new QStyleSheetItem( this, QString::fromLatin1("h2") ); + style->setFontWeight( QFont::Bold); + style->setLogicalFontSize(5); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style-> setMargin(QStyleSheetItem::MarginTop, 10); + style-> setMargin(QStyleSheetItem::MarginBottom, 5); + + style = new QStyleSheetItem( this, QString::fromLatin1("h3") ); + style->setFontWeight( QFont::Bold); + style->setLogicalFontSize(4); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style-> setMargin(QStyleSheetItem::MarginTop, 8); + style-> setMargin(QStyleSheetItem::MarginBottom, 4); + + style = new QStyleSheetItem( this, QString::fromLatin1("p") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style-> setMargin(QStyleSheetItem::MarginVertical, 4); + style->setSelfNesting( FALSE ); + + style = new QStyleSheetItem( this, QString::fromLatin1("center") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setAlignment( AlignCenter ); + + style = new QStyleSheetItem( this, QString::fromLatin1("twocolumn") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setNumberOfColumns( 2 ); + + style = new QStyleSheetItem( this, QString::fromLatin1("multicol") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + (void) new QStyleSheetItem( this, QString::fromLatin1("font") ); + + style = new QStyleSheetItem( this, QString::fromLatin1("ul") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style-> setMargin(QStyleSheetItem::MarginVertical, 4); + + style = new QStyleSheetItem( this, QString::fromLatin1("ol") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setListStyle( QStyleSheetItem::ListDecimal ); + style-> setMargin(QStyleSheetItem::MarginVertical, 4); + + style = new QStyleSheetItem( this, QString::fromLatin1("li") ); + style->setDisplayMode(QStyleSheetItem::DisplayListItem); + style->setSelfNesting( FALSE ); + style->setContexts(QString::fromLatin1("ol ul")); + style-> setMargin(QStyleSheetItem::MarginVertical, 4); + + style = new QStyleSheetItem( this, QString::fromLatin1("code") ); + style->setFontFamily( QString::fromLatin1("courier") ); + + style = new QStyleSheetItem( this, QString::fromLatin1("tt") ); + style->setFontFamily( QString::fromLatin1("courier") ); + + new QStyleSheetItem(this, QString::fromLatin1("img")); + new QStyleSheetItem(this, QString::fromLatin1("br")); + new QStyleSheetItem(this, QString::fromLatin1("hr")); + + style = new QStyleSheetItem( this, QString::fromLatin1("pre") ); + style->setFontFamily( QString::fromLatin1("courier") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setWhiteSpaceMode(QStyleSheetItem::WhiteSpacePre); + style = new QStyleSheetItem( this, QString::fromLatin1("blockquote") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setMargin(QStyleSheetItem::MarginHorizontal, 40 ); + + style = new QStyleSheetItem( this, QString::fromLatin1("head") ); + style->setDisplayMode(QStyleSheetItem::DisplayNone); + style = new QStyleSheetItem( this, QString::fromLatin1("div") ); + style->setDisplayMode(QStyleSheetItem::DisplayInline ); // #### set this to DisplayBlock after the parser in the new engine has been fixed for div + style = new QStyleSheetItem( this, QString::fromLatin1("dl") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style = new QStyleSheetItem( this, QString::fromLatin1("dt") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setContexts(QString::fromLatin1("dl") ); + style = new QStyleSheetItem( this, QString::fromLatin1("dd") ); + style->setDisplayMode(QStyleSheetItem::DisplayBlock); + style->setMargin(QStyleSheetItem::MarginLeft, 30); + style->setContexts(QString::fromLatin1("dt dl") ); + style = new QStyleSheetItem( this, QString::fromLatin1("u") ); + style->setFontUnderline( TRUE); + style = new QStyleSheetItem( this, QString::fromLatin1("nobr") ); + style->setWhiteSpaceMode( QStyleSheetItem::WhiteSpaceNoWrap ); + + // tables + style = new QStyleSheetItem( this, QString::fromLatin1("table") ); + style = new QStyleSheetItem( this, QString::fromLatin1("tr") ); + style->setContexts(QString::fromLatin1("table")); + style = new QStyleSheetItem( this, QString::fromLatin1("td") ); + style->setContexts(QString::fromLatin1("tr")); + style = new QStyleSheetItem( this, QString::fromLatin1("th") ); + style->setFontWeight( QFont::Bold ); + style->setAlignment( Qt::AlignCenter ); + style->setContexts(QString::fromLatin1("tr")); + + style = new QStyleSheetItem( this, QString::fromLatin1("html") ); +} + + + +static QStyleSheet* defaultsheet = 0; +static QCleanupHandler qt_cleanup_stylesheet; + +/*! + Returns the application-wide default style sheet.This style sheet is + used by rich text rendering classes such as QSimpleRichText, + QWhatsThis and also QMessageBox to define the rendering style and + available tags within rich text documents. It serves also as initial + style sheet for the more complex render widgets QTextView and + QTextBrowser. + + \sa setDefaultSheet() +*/ +QStyleSheet* QStyleSheet::defaultSheet() +{ + if (!defaultsheet) { + defaultsheet = new QStyleSheet(); + qt_cleanup_stylesheet.add( defaultsheet ); + } + return defaultsheet; +} + +/*! + Sets the application-wide default style sheet, deleting any style + sheet previously set. The ownership is transferred. + + \sa defaultSheet() +*/ +void QStyleSheet::setDefaultSheet( QStyleSheet* sheet) +{ + if ( defaultsheet != sheet ) { + if ( defaultsheet ) + qt_cleanup_stylesheet.remove( defaultsheet ); + delete defaultsheet; + if ( sheet ) + qt_cleanup_stylesheet.add( sheet ); + } + defaultsheet = sheet; +} + +/*!\internal + Inserts \a style. Any tags generated after this time will be + bound to this style. Note that \a style becomes owned by the + style sheet and will be deleted when the style sheet destructs. +*/ +void QStyleSheet::insert( QStyleSheetItem* style ) +{ + styles.insert(style->name(), style); +} + + +/*! + Returns the style with name \a name or 0 if there is no such style. + */ +QStyleSheetItem* QStyleSheet::item( const QString& name) +{ + if ( name.isNull() ) + return 0; + return styles[name]; +} + +/*! + Returns the style with name \a name or 0 if there is no such style (const version) + */ +const QStyleSheetItem* QStyleSheet::item( const QString& name) const +{ + if ( name.isNull() ) + return 0; + return styles[name]; +} + + +/*! + Generates an internal object for tag named \a name, given the + attributes \a attr, and using additional information provided + by the mime source factory \a factory . + + This function should not (yet) be used in application code. +*/ +QTextCustomItem* QStyleSheet::tag( const QString& name, + const QMap &attr, + const QString& context, + const QMimeSourceFactory& factory, + bool /*emptyTag */, QTextDocument *doc ) const +{ + static QString s_img = QString::fromLatin1("img"); + static QString s_hr = QString::fromLatin1("hr"); + + const QStyleSheetItem* style = item( name ); + // first some known tags + if ( !style ) + return 0; + if ( style->name() == s_img ) + return new QTextImage( doc, attr, context, (QMimeSourceFactory&)factory); + if ( style->name() == s_hr ) + return new QTextHorizontalLine( doc ); + return 0; +} + + +/*! + Auxiliary function. Converts the plain text string \a plain to a + rich text formatted string while preserving its look. + */ +QString QStyleSheet::convertFromPlainText( const QString& plain) +{ + int col = 0; + QString rich; + rich += "

    "; + for ( int i = 0; i < int(plain.length()); ++i ) { + if ( plain[i] == '\n' ){ + if ( col == 1 ) + rich += "

    "; + else + rich += "
    "; + col = 0; + } + else if ( plain[i] == '\t' ){ + rich += 0x00a0U; + // while ( col / 4.0 != int( col/4 ) ) { // weird + while ( col % 4 ) { + rich += 0x00a0U; + ++col; + } + } + else if ( plain[i].isSpace() ) + rich += 0x00a0U; + else if ( plain[i] == '<' ) + rich +="<"; + else if ( plain[i] == '>' ) + rich +=">"; + else if ( plain[i] == '&' ) + rich +="&"; + else + rich += plain[i]; + ++col; + } + rich += "

    "; + return rich; +} + +// Must doc this enum somewhere, and it is logically related to QStyleSheet + +/*! + \enum Qt::TextFormat + + This enum is used in widgets that can display both plain text and + rich text, e.g., QLabel. It is used for deciding whether a text + string should be interpreted as one or the other. This is + normally done by passing one of the enum values to a setTextFormat() + function. + + \value PlainText The text string is interpreted as a normal text string. + + \value RichText The text string is interpreted as a rich text + according to the current QStyleSheet::defaultSheet(). + + \value AutoText The text string is interpreted as for \c RichText if + QStyleSheet::mightBeRichText() returns TRUE, otherwise as for \c + PlainText. +*/ + +/*! + Returns whether the string \a text is likely to be rich text + formatted. + + Note: The function uses a fast and therefore simple heuristic. It + mainly checks whether there is something that looks like a tag + before the first line break. Although the result may be correct for + most common cases, there is no guarantee. +*/ +bool QStyleSheet::mightBeRichText( const QString& text) +{ + if ( text.isEmpty() ) + return FALSE; + if ( text.left(5).lower() == " + } else if ( text[open] == '<' ) { + int close = text.find('>', open); + if ( close > -1 ) { + QString tag; + for (int i = open+1; i < close; ++i) { + if ( text[i].isDigit() || text[i].isLetter() ) + tag += text[i]; + else if ( !tag.isEmpty() && text[i].isSpace() ) + break; + else if ( !text[i].isSpace() && (!tag.isEmpty() || text[i] != '!' ) ) + return FALSE; // that's not a tag + } + return defaultSheet()->item( tag.lower() ) != 0; + } + } + return FALSE; +} + + +/*! \fn void QStyleSheet::error( const QString& msg) const + + This virtual function is called when an error occurs when + processing rich text. Reimplement it if you need to catch + error messages. + + Errors might occur if some rich text strings contain tags that are + not understood by the stylesheet, if some tags are nested incorrectly, or + if tags are not closed properly. + + \a msg is the error message. +*/ +void QStyleSheet::error( const QString& ) const +{ +} + + +/*! + Scales the font \a font to the appropriate physical point size + corresponding to the logical font size \a logicalSize. + + When calling this function, \a font has a point size corresponding to + the logical font size 3. + + Typical logical font sizes range from 1 to 7, with 1 being the smallest. + + \sa QStyleSheetItem::logicalFontSize(), + QStyleSheetItem::logicalFontSizeStep(), QFont::setPointSize() + */ +void QStyleSheet::scaleFont( QFont& font, int logicalSize ) const +{ + if ( logicalSize < 1 ) + logicalSize = 1; + if ( logicalSize > 7 ) + logicalSize = 7; + int basePointSize = font.pointSize(); + int s; + switch ( logicalSize ) { + case 1: + s = basePointSize/2; + break; + case 2: + s = (8 * basePointSize) / 10; + break; + case 4: + s = (12 * basePointSize) / 10; + break; + case 5: + s = (15 * basePointSize) / 10; + break; + case 6: + s = 2 * basePointSize; + break; + case 7: + s = (24 * basePointSize) / 10; + break; + default: + s = basePointSize; + } + font.setPointSize( s ); +} + +#endif // QT_NO_RICHTEXT diff --git a/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h b/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h new file mode 100644 index 0000000..929cd81 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qstylesheet.h @@ -0,0 +1,215 @@ +/**************************************************************************** +** $Id: qstylesheet.h,v 1.5 2002/03/19 01:15:54 joachim Exp $ +** +** Definition of the QStyleSheet class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the kernel module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#ifndef QT3_QSTYLESHEET_H +#define QT3_QSTYLESHEET_H + +#ifndef QT_H +#include "qnamespace.h" +#include "qstring.h" +#include "qvaluelist.h" +#include "qvector.h" +#include "qdict.h" +#include "qobject.h" +#endif // QT_H + +#ifndef QT_NO_RICHTEXT + +template class QMap; + +namespace Qt3 { + +class QStyleSheet; +class QTextDocument; + +class Q_EXPORT QStyleSheetItem : public Qt +{ +public: + QStyleSheetItem( QStyleSheet* parent, const QString& name ); + QStyleSheetItem( const QStyleSheetItem & ); + ~QStyleSheetItem(); + + QString name() const; + + QStyleSheet* styleSheet(); + const QStyleSheet* styleSheet() const; + + enum AdditionalStyleValues { Undefined = - 1}; + + enum DisplayMode { + DisplayBlock, + DisplayInline, + DisplayListItem, + DisplayNone + }; + + DisplayMode displayMode() const; + void setDisplayMode(DisplayMode m); + + int alignment() const; + void setAlignment( int f); + + int fontWeight() const; + void setFontWeight(int w); + + int logicalFontSize() const; + void setLogicalFontSize(int s); + + int logicalFontSizeStep() const; + void setLogicalFontSizeStep( int s ); + + int fontSize() const; + void setFontSize(int s); + + QString fontFamily() const; + void setFontFamily( const QString& ); + + int numberOfColumns() const; + void setNumberOfColumns(int ncols); + + QColor color() const; + void setColor( const QColor &); + + bool fontItalic() const; + void setFontItalic( bool ); + bool definesFontItalic() const; + + bool fontUnderline() const; + void setFontUnderline( bool ); + bool definesFontUnderline() const; + + bool isAnchor() const; + void setAnchor(bool anc); + + enum WhiteSpaceMode { WhiteSpaceNormal, WhiteSpacePre, WhiteSpaceNoWrap }; + WhiteSpaceMode whiteSpaceMode() const; + void setWhiteSpaceMode(WhiteSpaceMode m); + + enum Margin { + MarginLeft, + MarginRight, + MarginTop, + MarginBottom, + MarginFirstLine, + MarginAll, + MarginVertical, + MarginHorizontal + }; + + int margin( Margin m) const; + void setMargin( Margin, int); + + enum ListStyle { + ListDisc, + ListCircle, + ListSquare, + ListDecimal, + ListLowerAlpha, + ListUpperAlpha + }; + + ListStyle listStyle() const; + void setListStyle( ListStyle ); + + QString contexts() const; + void setContexts( const QString& ); + bool allowedInContext( const QStyleSheetItem* ) const; + + bool selfNesting() const; + void setSelfNesting( bool ); + + void setLineSpacing( int ls ); + int lineSpacing() const; + +private: + void init(); + class Data; + Data* d; +}; + + +#if defined(Q_TEMPLATEDLL) +// MOC_SKIP_BEGIN +template class Q_EXPORT QDict; +template class Q_EXPORT QValueList< QVector >; +template class Q_EXPORT QVector; +template class Q_EXPORT QValueList; +// MOC_SKIP_END +#endif + +class QTextCustomItem; + +class Q_EXPORT QStyleSheet : public QObject +{ + Q_OBJECT +public: + QStyleSheet( QObject *parent=0, const char *name=0 ); + virtual ~QStyleSheet(); + + static QStyleSheet* defaultSheet(); + static void setDefaultSheet( QStyleSheet* ); + + + QStyleSheetItem* item( const QString& name); + const QStyleSheetItem* item( const QString& name) const; + + void insert( QStyleSheetItem* item); + + virtual QTextCustomItem* tag( const QString& name, + const QMap &attr, + const QString& context, + const QMimeSourceFactory& factory, + bool emptyTag, QTextDocument *doc ) const; + + static QString convertFromPlainText( const QString& ); + static bool mightBeRichText( const QString& ); + + virtual void scaleFont( QFont& font, int logicalSize ) const; + + virtual void error( const QString& ) const; + +private: + void init(); + QDict styles; + QStyleSheetItem* nullstyle; +}; + +} // namespace + +#endif // QT_NO_RICHTEXT + +#endif // QSTYLESHEET_H diff --git a/bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h b/bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h new file mode 100644 index 0000000..2443c60 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qt3stuff.h @@ -0,0 +1,87 @@ +#ifndef QT3STUFF_H +#define QT3STUFF_H + +// This file is where the dirty hacks go :) +#include + +namespace Qt3 { // can't be Qt, a class already exists with that name :( + + enum NewFlags { + AlignAuto = 0x0000, + AlignJustify = 0x0080, // This is NOT the Qt 3 value, but we have to use another one ! + AlignHorizontal_Mask = Qt::AlignLeft | Qt::AlignRight | Qt::AlignHCenter | AlignJustify, + AlignVertical_Mask = Qt::AlignTop | Qt::AlignBottom | Qt::AlignVCenter, + WStaticContents = Qt::WNorthWestGravity, + WType_Dialog = 0x00000002, + WStyle_Dialog = 0x00000002 + }; + + enum TextFlags { + SingleLine = 0x0080, // misc. flags + DontClip = 0x0100, + ExpandTabs = 0x0200, + ShowPrefix = 0x0400, + WordBreak = 0x0800, + DontPrint = 0x1000 // internal + }; + + enum WordWrap { + NoWrap = 0x0000, + WidgetWidth = 0x2000, + FixedPixelWidth = 0x3000, + FixedColumnWidth= 0x4000 + }; + + enum WrapPolicy { + AtWordBoundary = 0x0000, + AtWhiteSpace = AtWordBoundary, // deprecated, don't use + Anywhere = 0x8000 + }; + + /*enum CursorShape { + ArrowCursor, + UpArrowCursor, + CrossCursor, + WaitCursor, + IbeamCursor, + SizeVerCursor, + SizeHorCursor, + SizeBDiagCursor, + SizeFDiagCursor, + SizeAllCursor, + BlankCursor, + SplitVCursor, + SplitHCursor, + PointingHandCursor, + ForbiddenCursor, + LastCursor = ForbiddenCursor, + BitmapCursor = 24 + };*/ + + enum Dock { Unmanaged, TornOff, Top, Bottom, Right, Left, Minimized }; + // compatibility + //typedef Dock ToolBarDock; + + enum DateFormat { + TextDate, // default Qt + ISODate, // ISO 8601 + LocalDate // locale dependant + }; + +}; + +// Called _blah in Qt 2 and Q_blah in Qt 3 +#if defined(_WS_X11) +#define Q_WS_X11 +#endif + +#define Q_ASSERT ASSERT + +// Classes renamed in Qt 3 +#define QPtrList QList +#define QPtrListIterator QListIterator +#define QPtrVector QVector +#define QMemArray QArray + +#endif // QNAMESPACE_H + diff --git a/bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp b/bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp new file mode 100644 index 0000000..8eb3fc6 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qtextedit.cpp @@ -0,0 +1,539 @@ +/**************************************************************************** +** $Id: qtextedit.cpp,v 1.5 2002/03/19 01:15:55 joachim Exp $ +** +** Definition of the QTextEdit class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the widgets module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#include "qtextedit.h" +#include "qcursor.h" + +/*! + \class QTextEdit qtextedit.h + \brief The QTextEdit widget provides a sophisticated single-page text editor. + + \ingroup basic + + QTextEdit is an advanced WYSIWYG editor supporting rich text + formatting. It is optimized to handle large text documents and + respond quickly to user input. + + If you create a new an empty QTextEdit, and want to allow the user + to edit rich text (HTML), call setTextFormat(Qt::RichText) to be + sure that text() returns the formatted text. + + QTextEdit extends QTextView with keyboard and mouse handling for + user input and functions to set/get/modify formatting, text, etc. + + As it is derived from QTextView, it supports the same functions to + set and load plain and HTML text. + + QTextEdit internally works on paragraphs. A paragraph is a formatted + string which is word-wrapped to fit into the width of the + widget. Paragraphs are seperated by hard breaks. + + For user input selections are important. To work with selections use + setSelection() and QTextView::getSelection(). To set or get the + position of the cursor use setCursorPosition() or + getCursorPosition(). + + To change the current format (the format at the cursor position) or + the format of a selection, use setBold(), setItalic(), + setUnderline(), setFamily(), setPointSize(), setFont() or + setColor(). To change paragraph formatting use setAlignment() or + setParagType(). When the cursor is moved, the signals + currentFontChanged(), currentColorChanged() and + currentAlignmentChanged() are emitted to inform about the format at + the cursor position. + + To insert text at the cursor position use insert(). cut(), copy() + and paste() can also be done through the API. If the text changes, + the textChanged() signal is emitted, and if the user inserts a new + line by pressing return/enter returnPressed() is emitted. + + QTextEdit provides command-based undo/redo. To set the depth of the + command history use setUndoDepth() - it defaults to 100 steps. To + undo or redo the last opetarion call undo() or redo(). The signals + undoAvailable() and redoAvailable() inform about when undo or redo + operations can be executed. + + Here is a list of key-bindings which are implemented for editing + +
      +
    • Left Arrow Move the cursor one character left +
    • Right Arrow Move the cursor one character right +
    • Up Arrow Move the cursor one line up +
    • Down Arrow Move the cursor one line down +
    • Page Up Move the cursor one page up +
    • Page Down Move the cursor one page down +
    • Backspace Delete the character to the left of the cursor +
    • Home Move the cursor to the beginning of the line +
    • End Move the cursor to the end of the line +
    • Delete Delete the character to the right of the cursor +
    • Ctrl+A Move the cursor to the beginning of the line +
    • Ctrl+B Move the cursor one character left +
    • Ctrl+C Copy the marked text to the clipboard (also + Ctrl+Insert under Windows) +
    • Ctrl+D Delete the character to the right of the cursor +
    • Ctrl+E Move the cursor to the end of the line +
    • Ctrl+F Move the cursor one character right +
    • Ctrl+H Delete the character to the left of the cursor +
    • Ctrl+K Delete to end of line +
    • Ctrl+N Move the cursor one line down +
    • Ctrl+P Move the cursor one line up +
    • Ctrl+V Paste the clipboard text into line edit (also + Shift+Insert under Windows) +
    • Ctrl+X Cut the marked text, copy to clipboard (also + Shift+Delete under Windows) +
    • Ctrl+Z Undo the last operation +
    • Ctrl+Y Redo the last operation +
    • Ctrl+Left Arrow Move the cursor one word left +
    • Ctrl+Right Arrow Move the cursor one word right +
    • Ctrl+Up Arrow Move the cursor one word up +
    • Ctrl+Down Arrow Move the cursor one word down +
    • Ctrl+Home Arrow Move the cursor to the beginning of the text +
    • Ctrl+End Arrow Move the cursor to the end of the text +
    + + To select (mark) text hold down the Shift key whilst pressing one of + the movement keystrokes, for example, Shift+Right Arrow will + select the character to the right, and Shift+Ctrl+Right Arrow + will select the word to the right, etc. + + All other keys with valid ASCII codes insert themselves into the + text at the cursor position. +*/ + +/*! \enum QTextEdit::KeyboardAction + + This enum is used by doKeyboardAction() to specify which action + should be exectuted: + + \value ActionBackspace Delete the character at the left of the cursor + + \value ActionDelete Delete the character at the right of the cursor + + \value ActionReturn Split the paragraph at the cursor position + + \value ActionKill Delete the text until the end of the paragraph, or + if the cursor is at the end of the paragraph, join this and the next + paragraph. +*/ + +/*! \enum QTextEdit::MoveDirection + + This enum is used by moveCursor() to specify into which direction + the cursor should be moved: + + \value MoveLeft Moves the cursor to the left + + \value MoveRight Moves the cursor to the right + + \value MoveUp Moves the cursor up one line + + \value MoveDown Moves the cursor down one line + + \value MoveHome Moves the cursor to the begin of the line + + \value MoveEnd Moves the cursor to the end of the line + + \value MovePgUp Moves the cursor one page up + + \value MovePgDown Moves the cursor one page down +*/ + + +/*! \fn void QTextEdit::getCursorPosition( int ¶g, int &index ) const + + This functions sets the \a parag and \a index parameters to the + current cursor position. + */ + +/*! \fn bool QTextEdit::isModified() const + + This function returns whether the document has been modified by the + user. +*/ + +/*! \fn bool QTextEdit::italic() const + + Returns whether the current format (the position where the cursor is + placed) is italic or not. +*/ + +/*! \fn bool QTextEdit::bold() const + + Returns whether the current format (the position where the cursor + is placed) is bold or not. +*/ + +/*! \fn bool QTextEdit::underline() const + + Returns whether the current format (the position where the cursor + is placed) is underlined or not. +*/ + +/*! \fn QString QTextEdit::family() const + + Returns the font family of the current format (the position where + the cursor is placed). +*/ + +/*! \fn int QTextEdit::pointSize() const + + Returns the poit size of the font of the current format (the + position where the cursor is placed). +*/ + +/*! \fn QColor QTextEdit::color() const + + Returns the color of the current format (the position where the + cursor is placed). +*/ + +/*! \fn QFont QTextEdit::font() const + + Returns the font of the current format (the position where the + cursor is placed). +*/ + +/*! \fn int QTextEdit::alignment() const + + Returns the alignment of the paragraph at which the cursor is + currently placed. +*/ + +/*! \fn bool QTextEdit::isOverwriteMode() const + + Returns TRUE if this editor is in overwrite mode, i.e. if + characters typed replace characters in the editor. +*/ + +/*! \fn int QTextEdit::undoDepth() const + + Returns how many steps the undo/redo history can maximally store. +*/ + +/*! \fn void QTextEdit::insert( const QString &text, bool indent, bool checkNewLine, bool removeSelected ) + + Inserts \a text at the current cursor position. If \a indent is + TRUE, the paragraph is re-indented. If \a checkNewLine is TRUE, + newline characters in \a text result in hard breaks. Otherwise, the + result of newlines is not defined. If \ removeSelected is TRUE, + selected text is removed before the text is inserted, else the + inserted text gets selected. +*/ + +/*! \fn void QTextEdit::setOverwriteMode( bool b ) + + Sets overwrite mode if \a b on is TRUE. Overwrite mode means that + characters typed replace characters in the editor. +*/ + +/*! \fn void QTextEdit::undo() + + Undoes the last operation. +*/ + +/*! \fn void QTextEdit::redo() + + Redoes the last operation. +*/ + +/*! \fn void QTextEdit::cut() + + Cuts the selected text (if there is any) and puts it on the + clipboard. +*/ + +/*! \fn void QTextEdit::paste() + + Pastes the text from the clipboard (if there is any) at the current + cursor position. Only pastes plain text. + + \sa pasteSubType() +*/ + +/*! \fn void QTextEdit::pasteSubType( const QCString &subtype ) + + Pastes the text from the clipboard (if there is any) of the format + \a subtype (this can be e.g. "plain", "html" ) at the current cursor + position. +*/ + +/*! \fn void QTextEdit::clear() + + Removes all text. + +*/ + +/*! \fn void QTextEdit::del() + + Deletes the character on the right side of the text cursor. If a + text has been marked by the user (e.g. by clicking and dragging) the + cursor is put at the beginning of the marked text and the marked + text is removed. +*/ + +/*! \fn void QTextEdit::indent() + + Re-indents the current paragraph. +*/ + +/*! \fn void QTextEdit::setItalic( bool b ) + + Sets the current format and the selected text (if there is any) to + italic, if \a b is TRUE, otherwise unsets the italic flag. +*/ + +/*! \fn void QTextEdit::setBold( bool b ) + + Sets the current format and the selected text (if there is any) to + bold, if \a b is TRUE, otherwise unsets the bold flag. +*/ + +/*! \fn void QTextEdit::setUnderline( bool b ) + + Sets the current format and the selected text (if there is any) to + underlined, if \a b is TRUE, otherwise unsets the underlined flag. +*/ + +/*! \fn void QTextEdit::setFamily( const QString &f ) + + Sets the family of the current format and the selected text (if + there is any) to \a f. +*/ + +/*! \fn void QTextEdit::setPointSize( int s ) + + Sets the point size of the current format and the selected text (if + there is any) to \a s. + + Note that if \a s is zero or negative, the behaviour of this + function is not defined. +*/ + +/*! \fn void QTextEdit::setColor( const QColor &c ) + + Sets the color of the current format and the selected text (if there + is any) to \a c. +*/ + +/*! \fn void QTextEdit::setFont( const QFont &f ) + + Sets the font of the current format and the selected text (if there + is any) to \a f. +*/ + +/*! \fn void QTextEdit::setAlignment( int a ) + + Sets the alignment of the paragraph, at which the cursor is placed, + to \a a. +*/ + +/*! \fn void QTextEdit::setParagType( QStyleSheetItem::DisplayMode dm, QStyleSheetItem::ListStyle listStyle ) + + Sets the paragraph style of the paragraph at which the cursor is + placed to \a dm. If \a dm is QStyleSheetItem::DisplayListItem, the + type of the list item is set to \a listStyle. +*/ + +/*! \fn void QTextEdit::setCursorPosition( int parag, int index ) + + Sets the cursor to the index \a index in the paragraph \a parag. +*/ + +/*! \fn void QTextEdit::setSelection( int parag_from, int index_from, int parag_to, int index_to, int selNum ) + + Sets a selection which starts at the index \a index_from in the + paragraph \a parag_from and ends at index \a index_to in the + paragraph \a parag_to. + + Uses the selection settings of selection \a selNum. If this is 0, + this is the default selection. +*/ + +/*! \fn void QTextEdit::setSelectionAttributes( int selNum, const QColor &back, bool invertText ) + + Sets the background color of the selection \a selNum to \a back and + specifies whether the text of this selection should be inverted by \a invertText. + +*/ + +/*! \fn void QTextEdit::setModified( bool m ) + + Sets the modified flag of the document to \a m. +*/ + +/*! \fn void QTextEdit::resetFormat() + + Resets the current format to the default format. +*/ + +/*! \fn void QTextEdit::setUndoDepth( int d ) + + Sets the number of steps the undo/redo history can maximally store + to \a d. +*/ + +/*! \fn void QTextEdit::undoAvailable( bool yes ) + + This signal is emitted when the availability of undo changes. If \a + yes is TRUE, then undo() will work until undoAvailable( FALSE ) is + next emitted. +*/ + +/*! \fn void QTextEdit::modificationChanged( bool m ) + + This signal is emitted when the modification of the document + changed. If \a m is TRUE, the document got modified, else the + modification state has been reset to unmodified. +*/ + +/*! \fn void QTextEdit::redoAvailable( bool yes ) + + This signal is emitted when the availability of redo changes. If \a + yes is TRUE, then redo() will work until redoAvailable( FALSE ) is + next emitted. +*/ + +/*! \fn void QTextEdit::currentFontChanged( const QFont &f ) + + This signal is emitted if the font of the current format (the format + at the position where the cursor is placed) has changed. + + \a f contains the new font. +*/ + +/*! \fn void QTextEdit::currentColorChanged( const QColor &c ) + + This signal is emitted if the color of the current format (the + format at the position where the cursor is placed) has changed. + + \a c contains the new color. +*/ + +/*! \fn void QTextEdit::currentAlignmentChanged( int a ) + + This signal is emitted if the alignment of the current paragraph + (the paragraph at which the cursor is placed) has changed. + + \a a contains the new alignment. +*/ + +/*! \fn void QTextEdit::cursorPositionChanged( QTextCursor *c ) + + This signal is emitted if the position of the cursor changed. \a c + points to the text cursor object. +*/ + +/*! \fn void QTextEdit::returnPressed() + + This signal is emitted if the user pressed the RETURN or ENTER key. +*/ + +/*! \fn void QTextEdit::setFormat( QTextFormat *f, int flags ) + + This functions sets the current format and the selected text (if + there is any) to \a f. Only the fields of \a f which are specified + by the \a flags are used. +*/ + +/*! \fn void QTextEdit::ensureCursorVisible() + + Ensures that the cursor is visible by scrolling the view if needed. +*/ + +/*! \fn void QTextEdit::placeCursor( const QPoint &pos, QTextCursor *c ) + + Places the cursor \a c at the character which is closest to \a pos + (in contents coordinates). If \a c is 0, the default text cursor is + used. +*/ + +/*! \fn void QTextEdit::moveCursor( MoveDirection direction, bool shift, bool control ) + + Moves the text cursor into the \a direction. As this is normally + used by some keyevent handler, \a shift and \a control specify the + state of the key modifiers which have an influence on the cursor + moving. +*/ + +/*! \overload void QTextEdit::moveCursor( MoveDirection direction, bool control ) +*/ + +/*! \fn void QTextEdit::removeSelectedText() + + Deletes the text which is currently selected (if there is any + selected). +*/ + +/*! \fn void QTextEdit::doKeyboardAction( KeyboardAction action ) + + Exectutes the keyboard action \a action. This is normally called by + a key event handler. +*/ + +/*! \fn QTextCursor *QTextEdit::textCursor() const + + Returns the text cursor if the editor. QTextCursor is not in the + public API, but for special cases you might use it anyway. But the + API of it might change in an incompatible manner in the future. +*/ + +/*! \fn bool QTextEdit::getFormat( int parag, int index, QFont &font, QColor &color ) + + This function sets \a font to the font and \a color to the color of + the character at position \a index in the paragraph \a parag. + + If \a parag or \a index is out of range, FALSE is returned, else + TRUE is returned. +*/ + +/*! Constructs a QTextEdit. The \a parent and \a name arguments are as + for QWidget. */ + +Qt3::QTextEdit::QTextEdit( QWidget *parent, const char *name ) + : Qt3::QTextView( parent, name ) +{ +#ifndef QT_NO_CURSOR + viewport()->setCursor( ibeamCursor ); +#endif +} + +/*! \reimp */ + +Qt3::QTextEdit::~QTextEdit() +{ +} + diff --git a/bibletime/frontend/thirdparty/qt3stuff/qtextedit.h b/bibletime/frontend/thirdparty/qt3stuff/qtextedit.h new file mode 100644 index 0000000..f77a4e4 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qtextedit.h @@ -0,0 +1,394 @@ +/**************************************************************************** +** $Id: qtextedit.h,v 1.5 2002/03/19 01:15:56 joachim Exp $ +** +** Definition of the QTextEdit class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the widgets module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#ifndef QT3_QTEXTEDIT_H +#define QT3_QTEXTEDIT_H + +#ifndef QT_H +#include "qlist.h" +#include "qpixmap.h" +#include "qcolor.h" +#endif // QT_H + +#include "qtextview.h" + +#ifndef QT_NO_TEXTEDIT + +namespace Qt3 { + +class Q_EXPORT QTextEdit : public Qt3::QTextView +{ + Q_OBJECT + Q_PROPERTY( int undoDepth READ undoDepth WRITE setUndoDepth ) + Q_PROPERTY( bool overWriteMode READ isOverwriteMode WRITE setOverwriteMode ) + +public: + QTextEdit(QWidget *parent = 0, const char *name = 0 ); + ~QTextEdit(); + + void getCursorPosition( int ¶g, int &index ) const; + bool isModified() const; + bool italic() const; + bool bold() const; + bool underline() const; + QString family() const; + int pointSize() const; + QColor color() const; + QFont font() const; + int alignment() const; + bool isOverwriteMode() const; + int undoDepth() const; + virtual void insert( const QString &text, bool indent = FALSE, bool checkNewLine = TRUE, bool removeSelected = TRUE ); + virtual bool getFormat( int parag, int index, QFont &font, QColor &color ); + +public slots: + virtual void setOverwriteMode( bool b ); + virtual void undo(); + virtual void redo(); + virtual void cut(); + virtual void paste(); + virtual void pasteSubType( const QCString &subtype ); + virtual void clear(); + virtual void del(); + virtual void indent(); + virtual void setItalic( bool b ); + virtual void setBold( bool b ); + virtual void setUnderline( bool b ); + virtual void setFamily( const QString &f ); + virtual void setPointSize( int s ); + virtual void setColor( const QColor &c ); + virtual void setFont( const QFont &f ); + virtual void setAlignment( int a ); + virtual void setParagType( Qt3::QStyleSheetItem::DisplayMode dm, Qt3::QStyleSheetItem::ListStyle listStyle ); + virtual void setCursorPosition( int parag, int index ); + virtual void setSelection( int parag_from, int index_from, int parag_to, int index_to, int selNum = 0 ); + virtual void setSelectionAttributes( int selNum, const QColor &back, bool invertText ); + virtual void setModified( bool m ); + virtual void resetFormat(); + virtual void setUndoDepth( int d ); + virtual void removeSelectedText(); + +signals: + void undoAvailable( bool yes ); + void redoAvailable( bool yes ); + void currentFontChanged( const QFont &f ); + void currentColorChanged( const QColor &c ); + void currentAlignmentChanged( int a ); + void cursorPositionChanged( Qt3::QTextCursor *c ); + void returnPressed(); + void modificationChanged( bool m ); + +protected: + enum KeyboardAction { // keep in sync with QTextView + ActionBackspace, + ActionDelete, + ActionReturn, + ActionKill + }; + + enum MoveDirection { // keep in sync with QTextView + MoveLeft, + MoveRight, + MoveUp, + MoveDown, + MoveHome, + MoveEnd, + MovePgUp, + MovePgDown + }; + + void setFormat( Qt3::QTextFormat *f, int flags ); + void ensureCursorVisible(); + void placeCursor( const QPoint &pos, Qt3::QTextCursor *c = 0 ); + void moveCursor( MoveDirection direction, bool shift, bool control ); + void moveCursor( MoveDirection direction, bool control ); + void doKeyboardAction( KeyboardAction action ); + Qt3::QTextCursor *textCursor() const; + +private: + bool isReadOnly() const { return FALSE; } + void emitUndoAvailable( bool b ) { emit undoAvailable( b ); } + void emitRedoAvailable( bool b ) { emit redoAvailable( b ); } + void emitCurrentFontChanged( const QFont &f ) { emit currentFontChanged( f ); } + void emitCurrentColorChanged( const QColor &c ) { emit currentColorChanged( c ); } + void emitCurrentAlignmentChanged( int a ) { emit currentAlignmentChanged( a ); } + void emitCursorPositionChanged( Qt3::QTextCursor *c ) { emit cursorPositionChanged( c ); } + void emitReturnPressed() { emit returnPressed(); } + void emitModificationChanged( bool m ) { emit modificationChanged( m ); } + +private: // Disabled copy constructor and operator= +#if defined(Q_DISABLE_COPY) + QTextEdit( const QTextEdit & ); + QTextEdit& operator=( const QTextEdit & ); +#endif +}; + +}; + +inline void Qt3::QTextEdit::getCursorPosition( int ¶g, int &index ) const +{ + Qt3::QTextView::getCursorPosition( parag, index ); +} + +inline bool Qt3::QTextEdit::isModified() const +{ + return Qt3::QTextView::isModified(); +} + +inline bool Qt3::QTextEdit::italic() const +{ + return Qt3::QTextView::italic(); +} + +inline bool Qt3::QTextEdit::bold() const +{ + return Qt3::QTextView::bold(); +} + +inline bool Qt3::QTextEdit::underline() const +{ + return Qt3::QTextView::underline(); +} + +inline QString Qt3::QTextEdit::family() const +{ + return Qt3::QTextView::family(); +} + +inline int Qt3::QTextEdit::pointSize() const +{ + return Qt3::QTextView::pointSize(); +} + +inline QColor Qt3::QTextEdit::color() const +{ + return Qt3::QTextView::color(); +} + +inline QFont Qt3::QTextEdit::font() const +{ + return Qt3::QTextView::font(); +} + +inline int Qt3::QTextEdit::alignment() const +{ + return Qt3::QTextView::alignment(); +} + +inline bool Qt3::QTextEdit::isOverwriteMode() const +{ + return Qt3::QTextView::isOverwriteMode(); +} + +inline int Qt3::QTextEdit::undoDepth() const +{ + return Qt3::QTextView::undoDepth(); +} + +inline void Qt3::QTextEdit::insert( const QString &text, bool indent, bool checkNewLine, bool removeSelected ) +{ + Qt3::QTextView::insert( text, indent, checkNewLine, removeSelected ); +} + +inline void Qt3::QTextEdit::setOverwriteMode( bool b ) +{ + Qt3::QTextView::setOverwriteMode( b ); +} + +inline void Qt3::QTextEdit::undo() +{ + Qt3::QTextView::undo(); +} + +inline void Qt3::QTextEdit::redo() +{ + Qt3::QTextView::redo(); +} + +inline void Qt3::QTextEdit::cut() +{ + Qt3::QTextView::cut(); +} + +inline void Qt3::QTextEdit::paste() +{ + Qt3::QTextView::paste(); +} + +inline void Qt3::QTextEdit::pasteSubType( const QCString &subtype ) +{ + Qt3::QTextView::pasteSubType( subtype ); +} + +inline void Qt3::QTextEdit::clear() +{ + Qt3::QTextView::clear(); +} + +inline void Qt3::QTextEdit::del() +{ + Qt3::QTextView::del(); +} + +inline void Qt3::QTextEdit::indent() +{ + Qt3::QTextView::indent(); +} + +inline void Qt3::QTextEdit::setItalic( bool b ) +{ + Qt3::QTextView::setItalic( b ); +} + +inline void Qt3::QTextEdit::setBold( bool b ) +{ + Qt3::QTextView::setBold( b ); +} + +inline void Qt3::QTextEdit::setUnderline( bool b ) +{ + Qt3::QTextView::setUnderline( b ); +} + +inline void Qt3::QTextEdit::setFamily( const QString &f ) +{ + Qt3::QTextView::setFamily( f ); +} + +inline void Qt3::QTextEdit::setPointSize( int s ) +{ + Qt3::QTextView::setPointSize( s ); +} + +inline void Qt3::QTextEdit::setColor( const QColor &c ) +{ + Qt3::QTextView::setColor( c ); +} + +inline void Qt3::QTextEdit::setFont( const QFont &f ) +{ + Qt3::QTextView::setFontInternal( f ); +} + +inline void Qt3::QTextEdit::setAlignment( int a ) +{ + Qt3::QTextView::setAlignment( a ); +} + +inline void Qt3::QTextEdit::setParagType( Qt3::QStyleSheetItem::DisplayMode dm, Qt3::QStyleSheetItem::ListStyle listStyle ) +{ + Qt3::QTextView::setParagType( dm, listStyle ); +} + +inline void Qt3::QTextEdit::setCursorPosition( int parag, int index ) +{ + Qt3::QTextView::setCursorPosition( parag, index ); +} + +inline void Qt3::QTextEdit::setSelection( int parag_from, int index_from, int parag_to, int index_to, int selNum ) +{ + Qt3::QTextView::setSelection( parag_from, index_from, parag_to, index_to, selNum ); +} + +inline void Qt3::QTextEdit::setSelectionAttributes( int selNum, const QColor &back, bool invertText ) +{ + Qt3::QTextView::setSelectionAttributes( selNum, back, invertText ); +} + +inline void Qt3::QTextEdit::setModified( bool m ) +{ + Qt3::QTextView::setModified( m ); +} + +inline void Qt3::QTextEdit::resetFormat() +{ + Qt3::QTextView::resetFormat(); +} + +inline void Qt3::QTextEdit::setUndoDepth( int d ) +{ + Qt3::QTextView::setUndoDepth( d ); +} + +inline void Qt3::QTextEdit::setFormat( Qt3::QTextFormat *f, int flags ) +{ + Qt3::QTextView::setFormat( f, flags ); +} + +inline void Qt3::QTextEdit::ensureCursorVisible() +{ + Qt3::QTextView::ensureCursorVisible(); +} + +inline void Qt3::QTextEdit::placeCursor( const QPoint &pos, Qt3::QTextCursor *c ) +{ + Qt3::QTextView::placeCursor( pos, c ); +} + +inline void Qt3::QTextEdit::moveCursor( MoveDirection direction, bool shift, bool control ) +{ + Qt3::QTextView::moveCursor( (MoveDirectionPrivate)direction, shift, control ); +} + +inline void Qt3::QTextEdit::moveCursor( MoveDirection direction, bool control ) +{ + Qt3::QTextView::moveCursor( (MoveDirectionPrivate)direction, control ); +} + +inline void Qt3::QTextEdit::removeSelectedText() +{ + Qt3::QTextView::removeSelectedText(); +} + +inline void Qt3::QTextEdit::doKeyboardAction( KeyboardAction action ) +{ + Qt3::QTextView::doKeyboardAction( (KeyboardActionPrivate)action ); +} + +inline Qt3::QTextCursor *Qt3::QTextEdit::textCursor() const +{ + return cursor; +} + +inline bool Qt3::QTextEdit::getFormat( int parag, int index, QFont &font, QColor &color ) +{ + return Qt3::QTextView::getFormat( parag, index, font, color ); +} + +#endif // QT_NO_TEXTEDIT + +#endif diff --git a/bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp b/bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp new file mode 100644 index 0000000..528fd0e --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qtextview.cpp @@ -0,0 +1,3155 @@ +/**************************************************************************** +** $Id: qtextview.cpp,v 1.4 2001/06/15 13:32:21 joachim Exp $ +** +** Implementation of the QTextView class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the widgets module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#include "qtextview.h" +#include "qrichtext_p.h" +#include "qpainter.h" +#include "qpen.h" +#include "qbrush.h" +#include "qpixmap.h" +#include "qfont.h" +#include "qcolor.h" +#include "qsize.h" +#include "qevent.h" +#include "qtimer.h" +#include "qapplication.h" +#include "qlistbox.h" +#include "qvbox.h" +#include "qapplication.h" +#include "qclipboard.h" +#include "qcolordialog.h" +#include "qfontdialog.h" +#include "qstylesheet.h" +#include "qdragobject.h" +#include "qurl.h" +#include "qcursor.h" +#include "qregexp.h" +#include "qpopupmenu.h" + +using namespace Qt3; + +struct Qt3::QUndoRedoInfoPrivate +{ + QTextString text; +}; + +class Qt3::QTextViewPrivate +{ +public: + int id[ 7 ]; +}; + +static bool block_set_alignment = FALSE; + +/*! + \class QTextView qtextview.h + \brief The QTextView class provides a sophisticated rich text viewer. + \ingroup basic + \ingroup helpsystem + + QTextView is a widget which can show large amounts of read-only text + with varying fonts and font attributes, e.g. different point sizes, + colors, bold, italic etc. Paragraphs can have different alignments + and word-wrap policies. QTextView can also show images (using + QMimeSourceFactory), lists and tables. If the text is too large to + view within the widget's viewport, scrollbars will appear. The text + view can load both plain text and HTML files (a subset of HTML 4 and + CSS1 is supported). + The rendering style and valid tags are defined by a styleSheet(). + Currently a subset of HTML 3.2 and 4, and CSS1 is supported, see + setStyleSheet() and QStyleSheet for details. The images identified + by image tags are displayed if they can be interpreted using the + text view's QMimeSourceFactory. (See setMimeSourceFactory() for + details.) + + If you want to provide your users with editable rich text use + QTextEdit. If you want a text browser with more navigation use + QTextBrowser. If you just need to display a small piece of rich text + use QSimpleRichText or QLabel. + + Set the text with setText(). You can include rich text directly in + code since it is based on HTML tags, e.g. + \code + textView->setText( "Red" ); + \endcode + You can append text with append(), for example to display an output log. + + By default the text view will try to guess the format of the text + (plain text or HTML) and render accordingly, but you can control + this with setTextFormat(). + + By default the text view wraps words at whitespace at the width of + the text view widget. The setWordWrap() function is used to specify + the kind of word wrap you want, or \c NoWrap. + Call setWordWrap() to set a fixed pixel width \c FixedPixelWidth, or + character column (e.g. 80 column) \c FixedColumnWidth with the + pixels or columns specified with setWrapColumnOrWidth(). If you use + word wrap to the widget's width \c WidgetWidth, you can specify + whether to break on whitespace or anywhere with setWrapPolicy(). + + The background color is set differently from other widgets, using + setPaper(). You specify a brush style which could be a plain color + or a complex pixmap. Hypertext links are automatically + underlined; this can be changed with setLinkUnderline(). The tab + stop width is set with setTabStops(). The zoomIn() and zoomOut() + functions can be used to resize the text by increasing (decreasing + for zoomOut()) the point size by one point per call. Images are not + affected. + + The entire text is returned by text(), and the text of a particular + paragraph by text(int). + + The user can select text in the text view using the mouse. If + they've selected text hasSelectedText() will return TRUE. The + selection's position can be obtained with getSelection(), and the + selection itself is returned by selectedText(). The selection can be + copied to the clipboard with copy(). The entire text can be selected + (or deselected) with selectAll(). + + The lines() function returns the number of lines in the text, + paragraphs() returns the number of paragraphs. The number of lines + within a particular paragraph is returned by linesOfParagraph(). The + length of the text in characters is returned by length(). + + You can scroll to an anchor in the text, e.g. \c{} + with scrollToAnchor(). The find() function can be used to find and + highlight (select) a given string within the text. + + The user can navigate the text view by using the scrollbars and by + clicking hypertext links with the mouse. The following keyboard + shortcuts are also supported: + +
      +
    • Up Arrow Move one line up +
    • Down Arrow Move one line down +
    • Left Arrow Move one column left +
    • Right Arrow Move one column right +
    • Page Up Move one (viewport) page up +
    • Page Down Move one (viewport) page down +
    • Home Move to the beginning of the text +
    • End Move to the end of the text +
    • Shift+Wheel Scroll the page horizontally (the Wheel is + the mouse wheel) +
    • Ctrl+Wheel Zoom the text +
    • +
    + + The text view may be able to provide some meta-information. The + documentTitle() function will return the text from within HTML + \c{} tags. + + The text displayed in a text view has \e context. The context is a + path which the text view's QMimeSourceFactory uses to resolve the + locations of files and images. It is passed to the + mimeSourceFactory() when quering data. (See QTextView::QTextView() + and context().) + + Note that we do not intend to add a full-featured web browser widget + to Qt (because that would easily double Qt's size and only few + applications would benefit from it). In particular, the rich text + support in Qt is designed to provide a fast, portable and efficient + way to add reasonable online help facilities to applications. We + will, however, extend it to some degree in future versions of Qt. + +*/ + +/*! \fn void QTextView::copyAvailable (bool yes) + + This signal is emitted when text is selected or deselected in the text + view. + + When text is selected this signal will be emitted with \a yes set to + TRUE. If no text has been selected or if the selected text is + deselected this signal is emitted with \a yes set to FALSE. + + If \a yes is TRUE, copy() can be used to copy the selection to the + clipboard. If \a yes is FALSE copy() does nothing. + + \sa selectionChanged() +*/ + + +/*! \fn void QTextView::textChanged() + + This signal is emitted whenever the text in the view changes. + + \sa setText() append() + */ + +/*! \fn void QTextView::selectionChanged() + + This signal is emitted whenever the selection changes. + + \sa copyAvailable() +*/ + +/*! \fn QTextDocument *QTextView::document() const + + This function returns the QTextDocument which is used by the text + view. + + QTextDocument is not in the public API and its API might change in an + incompatible manner in the future. +*/ + +/*! \fn void QTextView::setDocument( QTextDocument *doc ) + + This function sets the QTextDocument which should be used by the text + view. This can be used, for example, if you want to display a document + using multiple views. You would create a QTextDocument and set it to + the text views which should display it. You would need to connect to + the textChanged() and selectionChanged() signals of all the text views + and update them all accordingly (preferably with a slight delay for + efficiency reasons). + + QTextDocument is not in the public API and its API might change in an + incompatible manner in the future. +*/ + +/*! Constructs an empty QTextView with the usual \a parent and \a + name optional arguments. +*/ + +QTextView::QTextView( QWidget *parent, const char *name ) + : QScrollView( parent, name, WNorthWestGravity | WRepaintNoErase | WResizeNoErase ), + doc( new QTextDocument( 0 ) ), undoRedoInfo( doc ) +{ + init(); +} + +/*! Constructs a QTextView displaying the text \a text with + context \a context, with the usual \a parent and \a name optional + arguments. + + The \a context is a path which the text view's QMimeSourceFactory + uses to resolve the locations of files and images. It is passed to + the mimeSourceFactory() when quering data. + + For example if the text contains an image tag, + \c{<img src="image.png">}, and the context is "path/to/look/in", the + QMimeSourceFactory will try to load the image from + "path/to/look/in/image.png". If the tag was + \c{<img src="/image.png">}, the context will not be used (because + QMimeSourceFactory recognizes that we have given an absolute path) + and will try to load "/image.png". The context is applied in exactly + the same way to \e hrefs, for example, + \c{<a href="target.html">Target</a>}, would resolve to + "path/to/look/in/target.html". + +*/ + +QTextView::QTextView( const QString& text, const QString& context, + QWidget *parent, const char *name) + : QScrollView( parent, name, WNorthWestGravity | WRepaintNoErase | WResizeNoErase ), + doc( new QTextDocument( 0 ) ), undoRedoInfo( doc ) +{ + init(); + setText( text, context ); +} + +/*! \reimp */ + +QTextView::~QTextView() +{ + delete undoRedoInfo.d; + undoRedoInfo.d = 0; + delete cursor; + delete doc; + delete d; +} + +void QTextView::init() +{ + d = new QTextViewPrivate; + connect( doc, SIGNAL( minimumWidthChanged( int ) ), + this, SLOT( setRealWidth( int ) ) ); + + mousePressed = FALSE; + inDoubleClick = FALSE; + modified = FALSE; + onLink = QString::null; + overWrite = FALSE; + wrapMode = WidgetWidth; + wrapWidth = -1; + wPolicy = AtWhiteSpace; + setMode = Auto; + inDnD = FALSE; + + doc->setFormatter( new QTextFormatterBreakWords ); + currentFormat = doc->formatCollection()->defaultFormat(); + currentAlignment = Qt3::AlignAuto; + + viewport()->setBackgroundMode( PaletteBase ); + viewport()->setAcceptDrops( TRUE ); + resizeContents( 0, doc->lastParag() ? + ( doc->lastParag()->paragId() + 1 ) * doc->formatCollection()->defaultFormat()->height() : 0 ); + + setKeyCompression( TRUE ); + viewport()->setMouseTracking( TRUE ); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + cursor = new QTextCursor( doc ); + + formatTimer = new QTimer( this ); + connect( formatTimer, SIGNAL( timeout() ), + this, SLOT( formatMore() ) ); + lastFormatted = doc->firstParag(); + + scrollTimer = new QTimer( this ); + connect( scrollTimer, SIGNAL( timeout() ), + this, SLOT( doAutoScroll() ) ); + + interval = 0; + changeIntervalTimer = new QTimer( this ); + connect( changeIntervalTimer, SIGNAL( timeout() ), + this, SLOT( doChangeInterval() ) ); + + cursorVisible = TRUE; + blinkTimer = new QTimer( this ); + connect( blinkTimer, SIGNAL( timeout() ), + this, SLOT( blinkCursor() ) ); + +#ifndef QT_NO_DRAGANDDROP + dragStartTimer = new QTimer( this ); + connect( dragStartTimer, SIGNAL( timeout() ), + this, SLOT( startDrag() ) ); +#endif + + resizeTimer = new QTimer( this ); + connect( resizeTimer, SIGNAL( timeout() ), + this, SLOT( doResize() ) ); + + formatMore(); + + blinkCursorVisible = FALSE; + + connect( this, SIGNAL( textChanged() ), + this, SLOT( setModified() ) ); + viewport()->setFocusProxy( this ); + viewport()->setFocusPolicy( WheelFocus ); + viewport()->installEventFilter( this ); + installEventFilter( this ); + +#if 0 // ### background paper test code + QBrush *b = new QBrush( red, QPixmap( "/home/reggie/kde2/share/wallpapers/All-Good-People-1.jpg" ) ); + doc->setPaper( b ); + QPalette pal( palette() ); + pal.setBrush( QColorGroup::Base, *b ); + setPalette( pal ); +#endif +} + +void QTextView::paintDocument( bool drawAll, QPainter *p, int cx, int cy, int cw, int ch ) +{ + bool drawCur = hasFocus() || viewport()->hasFocus(); + if ( isReadOnly() || !cursorVisible ) + drawCur = FALSE; + QColorGroup g = colorGroup(); + if ( doc->paper() ) + g.setBrush( QColorGroup::Base, *doc->paper() ); + + if ( contentsY() == 0 ) { + p->fillRect( contentsX(), contentsY(), visibleWidth(), doc->y(), + g.brush( QColorGroup::Base ) ); + } + + p->setBrushOrigin( -contentsX(), -contentsY() ); + + lastFormatted = doc->draw( p, cx, cy, cw, ch, g, !drawAll, drawCur, cursor ); + + if ( lastFormatted == doc->lastParag() ) + resizeContents( contentsWidth(), doc->height() ); + + if ( contentsHeight() < visibleHeight() && ( !doc->lastParag() || doc->lastParag()->isValid() ) && drawAll ) + p->fillRect( 0, contentsHeight(), visibleWidth(), + visibleHeight() - contentsHeight(), g.brush( QColorGroup::Base ) ); +} + +/*! \reimp */ + +void QTextView::drawContents( QPainter *p, int cx, int cy, int cw, int ch ) +{ + paintDocument( TRUE, p, cx, cy, cw, ch ); +} + +/*! \reimp */ + +bool QTextView::event( QEvent *e ) +{ + if ( e->type() == QEvent::AccelOverride && !isReadOnly() ) { + QKeyEvent* ke = (QKeyEvent*) e; + if ( ke->state() & ControlButton ) { + switch ( ke->key() ) { + case Key_A: + case Key_E: +#if defined (Q_WS_WIN) + case Key_Insert: +#endif + case Key_X: + case Key_V: + case Key_C: + case Key_Left: + case Key_Right: + case Key_Up: + case Key_Down: + case Key_Home: + case Key_End: + ke->accept(); + default: + break; + } + } else { + switch ( ke->key() ) { + case Key_Delete: + case Key_Home: + case Key_End: + case Key_Backspace: + ke->accept(); + default: + break; + } + } + } + return QWidget::event( e ); +} + +/*! Provides scrolling and paging. + */ + +void QTextView::keyPressEvent( QKeyEvent *e ) +{ + changeIntervalTimer->stop(); + interval = 10; + + if ( isReadOnly() ) { + handleReadOnlyKeyEvent( e ); + changeIntervalTimer->start( 100, TRUE ); + return; + } + + + bool selChanged = FALSE; + for ( int i = 1; i < doc->numSelections(); ++i ) // start with 1 as we don't want to remove the Standard-Selection + selChanged = doc->removeSelection( i ) || selChanged; + + if ( selChanged ) { + cursor->parag()->document()->nextDoubleBuffered = TRUE; + repaintChanged(); + } + + bool clearUndoRedoInfo = TRUE; + + switch ( e->key() ) { + case Key_Left: + moveCursor( MoveLeft, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Right: + moveCursor( MoveRight, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Up: + moveCursor( MoveUp, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Down: + moveCursor( MoveDown, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Home: + moveCursor( MoveHome, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_End: + moveCursor( MoveEnd, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Prior: + moveCursor( MovePgUp, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Next: + moveCursor( MovePgDown, e->state() & ShiftButton, e->state() & ControlButton ); + break; + case Key_Return: case Key_Enter: + doc->removeSelection( QTextDocument::Standard ); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + clearUndoRedoInfo = FALSE; + doKeyboardAction( ActionReturn ); + emitReturnPressed(); + break; + case Key_Delete: + if ( doc->hasSelection( QTextDocument::Standard ) ) { + removeSelectedText(); + break; + } + + doKeyboardAction( ActionDelete ); + clearUndoRedoInfo = FALSE; + + break; + case Key_Backspace: + if ( doc->hasSelection( QTextDocument::Standard ) ) { + removeSelectedText(); + break; + } + + if ( !cursor->parag()->prev() && + cursor->atParagStart() ) + break; + + doKeyboardAction( ActionBackspace ); + clearUndoRedoInfo = FALSE; + + break; + case Key_F16: // Copy key on Sun keyboards + copy(); + break; + case Key_F18: // Paste key on Sun keyboards + paste(); + break; + case Key_F20: // Cut key on Sun keyboards + cut(); + break; + default: { + if ( e->text().length() && +// !( e->state() & AltButton ) && !( e->state() & MetaButton ) && + ( !e->ascii() || e->ascii() >= 32 ) || + ( e->text() == "\t" && !( e->state() & ControlButton ) ) ) { + clearUndoRedoInfo = FALSE; + if ( e->key() == Key_Tab ) { + if ( cursor->index() == 0 && cursor->parag()->style() && + cursor->parag()->style()->displayMode() == QStyleSheetItem::DisplayListItem ) { + cursor->parag()->incDepth(); + drawCursor( FALSE ); + repaintChanged(); + drawCursor( TRUE ); + break; + } + } + if ( cursor->parag()->style() && + cursor->parag()->style()->displayMode() == QStyleSheetItem::DisplayBlock && + cursor->index() == 0 && ( e->text() == "-" || e->text() == "*" ) ) { + setParagType( QStyleSheetItem::DisplayListItem, QStyleSheetItem::ListDisc ); + } else { + insert( e->text(), TRUE, FALSE ); + } + break; + } + if ( e->state() & ControlButton ) { + switch ( e->key() ) { + case Key_C: case Key_F16: // Copy key on Sun keyboards + copy(); + break; + case Key_V: + paste(); + break; + case Key_X: + cut(); + break; + case Key_I: case Key_T: case Key_Tab: + indent(); + break; + case Key_A: +#if defined(Q_WS_X11) + moveCursor( MoveHome, e->state() & ShiftButton, FALSE ); +#else + selectAll( TRUE ); +#endif + break; + case Key_B: + moveCursor( MoveLeft, e->state() & ShiftButton, FALSE ); + break; + case Key_F: + moveCursor( MoveRight, e->state() & ShiftButton, FALSE ); + break; + case Key_D: + if ( doc->hasSelection( QTextDocument::Standard ) ) { + removeSelectedText(); + break; + } + doKeyboardAction( ActionDelete ); + clearUndoRedoInfo = FALSE; + break; + case Key_H: + if ( doc->hasSelection( QTextDocument::Standard ) ) { + removeSelectedText(); + break; + } + if ( !cursor->parag()->prev() && + cursor->atParagStart() ) + break; + + doKeyboardAction( ActionBackspace ); + clearUndoRedoInfo = FALSE; + break; + case Key_E: + moveCursor( MoveEnd, e->state() & ShiftButton, FALSE ); + break; + case Key_N: + moveCursor( MoveDown, e->state() & ShiftButton, FALSE ); + break; + case Key_P: + moveCursor( MoveUp, e->state() & ShiftButton, FALSE ); + break; + case Key_Z: + undo(); + break; + case Key_Y: + redo(); + break; + case Key_K: + doKeyboardAction( ActionKill ); + break; + case Key_Insert: +#if defined(Q_WS_WIN) + copy(); +#endif + break; + } + break; + } + } + } + + emitCursorPositionChanged( cursor ); + if ( clearUndoRedoInfo ) + clearUndoRedo(); + changeIntervalTimer->start( 100, TRUE ); +} + +void QTextView::doKeyboardAction( KeyboardActionPrivate action ) +{ + if ( isReadOnly() ) + return; + + if ( cursor->nestedDepth() != 0 ) // #### for 3.0, disable editing of tables as this is not advanced enough + return; + + lastFormatted = cursor->parag(); + drawCursor( FALSE ); + + switch ( action ) { + case ActionDelete: + checkUndoRedoInfo( UndoRedoInfo::Delete ); + if ( !undoRedoInfo.valid() ) { + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.d->text = QString::null; + } + undoRedoInfo.d->text += cursor->parag()->at( cursor->index() )->c; + if ( cursor->parag()->at( cursor->index() )->format() ) { + cursor->parag()->at( cursor->index() )->format()->addRef(); + undoRedoInfo.d->text.at( undoRedoInfo.d->text.length() - 1 ).setFormat( cursor->parag()->at( cursor->index() )->format() ); + } + if ( cursor->remove() ) + undoRedoInfo.d->text += "\n"; + break; + case ActionBackspace: + if ( cursor->parag()->style() && cursor->parag()->style()->displayMode() == QStyleSheetItem::DisplayListItem && + cursor->index() == 0 ) { + cursor->parag()->decDepth(); + lastFormatted = cursor->parag(); + repaintChanged(); + drawCursor( TRUE ); + return; + } + checkUndoRedoInfo( UndoRedoInfo::Delete ); + if ( !undoRedoInfo.valid() ) { + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.d->text = QString::null; + } + cursor->gotoLeft(); + undoRedoInfo.d->text.prepend( QString( cursor->parag()->at( cursor->index() )->c ) ); + if ( cursor->parag()->at( cursor->index() )->format() ) { + cursor->parag()->at( cursor->index() )->format()->addRef(); + undoRedoInfo.d->text.at( 0 ).setFormat( cursor->parag()->at( cursor->index() )->format() ); + } + undoRedoInfo.index = cursor->index(); + if ( cursor->remove() ) { + undoRedoInfo.d->text.remove( 0, 1 ); + undoRedoInfo.d->text.prepend( "\n" ); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.id = cursor->parag()->paragId(); + } + lastFormatted = cursor->parag(); + break; + case ActionReturn: + checkUndoRedoInfo( UndoRedoInfo::Return ); + if ( !undoRedoInfo.valid() ) { + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.d->text = QString::null; + } + undoRedoInfo.d->text += "\n"; + cursor->splitAndInsertEmptyParag(); + if ( cursor->parag()->prev() ) + lastFormatted = cursor->parag()->prev(); + break; + case ActionKill: + checkUndoRedoInfo( UndoRedoInfo::Delete ); + if ( !undoRedoInfo.valid() ) { + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.d->text = QString::null; + } + if ( cursor->atParagEnd() ) { + undoRedoInfo.d->text += cursor->parag()->at( cursor->index() )->c; + if ( cursor->parag()->at( cursor->index() )->format() ) { + cursor->parag()->at( cursor->index() )->format()->addRef(); + undoRedoInfo.d->text.at( undoRedoInfo.d->text.length() - 1 ).setFormat( cursor->parag()->at( cursor->index() )->format() ); + } + if ( cursor->remove() ) + undoRedoInfo.d->text += "\n"; + } else { + int oldLen = undoRedoInfo.d->text.length(); + undoRedoInfo.d->text += cursor->parag()->string()->toString().mid( cursor->index() ); + for ( int i = cursor->index(); i < cursor->parag()->length(); ++i ) { + if ( cursor->parag()->at( i )->format() ) { + cursor->parag()->at( i )->format()->addRef(); + undoRedoInfo.d->text.at( oldLen + i - cursor->index() ).setFormat( cursor->parag()->at( i )->format() ); + } + } + undoRedoInfo.d->text.remove( undoRedoInfo.d->text.length() - 1, 1 ); + cursor->killLine(); + } + break; + } + + formatMore(); + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); + + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } + + updateCurrentFormat(); + emit textChanged(); +} + +void QTextView::readFormats( QTextCursor &c1, QTextCursor &c2, int oldLen, QTextString &text, bool fillStyles ) +{ + c2.restoreState(); + c1.restoreState(); + if ( c1.parag() == c2.parag() ) { + for ( int i = c1.index(); i < c2.index(); ++i ) { + if ( c1.parag()->at( i )->format() ) { + c1.parag()->at( i )->format()->addRef(); + text.at( oldLen + i - c1.index() ).setFormat( c1.parag()->at( i )->format() ); + } + } + if ( fillStyles ) { + undoRedoInfo.oldAligns[ 0 ] = c1.parag()->alignment(); + undoRedoInfo.oldStyles << c1.parag()->styleSheetItems(); + undoRedoInfo.oldListStyles << c1.parag()->listStyle(); + } + } else { + int lastIndex = oldLen; + int i; + for ( i = c1.index(); i < c1.parag()->length(); ++i ) { + if ( c1.parag()->at( i )->format() ) { + c1.parag()->at( i )->format()->addRef(); + text.at( lastIndex ).setFormat( c1.parag()->at( i )->format() ); + lastIndex++; + } + } + lastIndex++; + QTextParag *p = c1.parag()->next(); + while ( p && p != c2.parag() ) { + for ( int i = 0; i < p->length(); ++i ) { + if ( p->at( i )->format() ) { + p->at( i )->format()->addRef(); + text.at( i + lastIndex ).setFormat( p->at( i )->format() ); + } + } + lastIndex += p->length() + 1; + p = p->next(); + } + for ( i = 0; i < c2.index(); ++i ) { + if ( c2.parag()->at( i )->format() ) { + c2.parag()->at( i )->format()->addRef(); + text.at( i + lastIndex ).setFormat( c2.parag()->at( i )->format() ); + } + } + if ( fillStyles ) { + QTextParag *p = c1.parag(); + i = 0; + while ( p ) { + if ( i < (int)undoRedoInfo.oldAligns.size() ) + undoRedoInfo.oldAligns[ i ] = p->alignment(); + undoRedoInfo.oldStyles << p->styleSheetItems(); + undoRedoInfo.oldListStyles << p->listStyle(); + if ( p == c2.parag() ) + break; + p = p->next(); + ++i; + } + } + } +} + +void QTextView::removeSelectedText() +{ + if ( isReadOnly() ) + return; + + for ( int i = 1; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + + drawCursor( FALSE ); + checkUndoRedoInfo( UndoRedoInfo::RemoveSelected ); + if ( !undoRedoInfo.valid() ) { + doc->selectionStart( QTextDocument::Standard, undoRedoInfo.id, undoRedoInfo.index ); + undoRedoInfo.d->text = QString::null; + } + int oldLen = undoRedoInfo.d->text.length(); + undoRedoInfo.d->text = doc->selectedText( QTextDocument::Standard ); + QTextCursor c1 = doc->selectionStartCursor( QTextDocument::Standard ); + QTextCursor c2 = doc->selectionEndCursor( QTextDocument::Standard ); + undoRedoInfo.oldAligns.resize( undoRedoInfo.oldAligns.size() + QMAX( 0, c2.parag()->paragId() - c1.parag()->paragId() + 1 ) ); + readFormats( c1, c2, oldLen, undoRedoInfo.d->text, TRUE ); + doc->removeSelectedText( QTextDocument::Standard, cursor ); + ensureCursorVisible(); + lastFormatted = cursor->parag(); + formatMore(); + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); + clearUndoRedo(); + emit textChanged(); +#if defined(Q_WS_WIN) + // there seems to be a problem with repainting or erasing the area + // of the scrollview which is not the contents on windows + if ( contentsHeight() < visibleHeight() ) + viewport()->repaint( 0, contentsHeight(), visibleWidth(), visibleHeight() - contentsHeight(), TRUE ); +#endif +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::moveCursor( MoveDirectionPrivate direction, bool shift, bool control ) +{ + drawCursor( FALSE ); + if ( shift ) { + if ( !doc->hasSelection( QTextDocument::Standard ) ) + doc->setSelectionStart( QTextDocument::Standard, cursor ); + moveCursor( direction, control ); + if ( doc->setSelectionEnd( QTextDocument::Standard, cursor ) ) { + cursor->parag()->document()->nextDoubleBuffered = TRUE; + repaintChanged(); + } else { + drawCursor( TRUE ); + } + ensureCursorVisible(); + emit selectionChanged(); + emit copyAvailable( doc->hasSelection( QTextDocument::Standard ) ); + } else { + bool redraw = doc->removeSelection( QTextDocument::Standard ); + moveCursor( direction, control ); + if ( !redraw ) { + ensureCursorVisible(); + drawCursor( TRUE ); + } else { + cursor->parag()->document()->nextDoubleBuffered = TRUE; + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + } + if ( redraw ) { + emit copyAvailable( doc->hasSelection( QTextDocument::Standard ) ); + emit selectionChanged(); + } + } + + drawCursor( TRUE ); + updateCurrentFormat(); + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::moveCursor( MoveDirectionPrivate direction, bool control ) +{ + switch ( direction ) { + case MoveLeft: { + if ( !control ) + cursor->gotoLeft(); + else + cursor->gotoWordLeft(); + } break; + case MoveRight: { + if ( !control ) + cursor->gotoRight(); + else + cursor->gotoWordRight(); + } break; + case MoveUp: { + if ( !control ) + cursor->gotoUp(); + else + cursor->gotoPageUp( visibleHeight() ); + } break; + case MoveDown: { + if ( !control ) + cursor->gotoDown(); + else + cursor->gotoPageDown( visibleHeight() ); + } break; + case MoveHome: { + if ( !control ) + cursor->gotoLineStart(); + else + cursor->gotoHome(); + } break; + case MoveEnd: { + if ( !control ) + cursor->gotoLineEnd(); + else + cursor->gotoEnd(); + } break; + case MovePgUp: + cursor->gotoPageUp( visibleHeight() ); + break; + case MovePgDown: + cursor->gotoPageDown( visibleHeight() ); + break; + } + + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } + updateCurrentFormat(); +} + +/*! \reimp */ + +void QTextView::resizeEvent( QResizeEvent *e ) +{ + QScrollView::resizeEvent( e ); +#if defined(Q_WS_X11) + if ( e->oldSize().width() != e->size().width() ) +#endif + doResize(); +} + +void QTextView::ensureCursorVisible() +{ + lastFormatted = cursor->parag(); + formatMore(); + QTextStringChar *chr = cursor->parag()->at( cursor->index() ); + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + int x = cursor->parag()->rect().x() + chr->x + cursor->offsetX(); + int y = 0; int dummy; + cursor->parag()->lineHeightOfChar( cursor->index(), &dummy, &y ); + y += cursor->parag()->rect().y() + cursor->offsetY(); + int w = 1; + ensureVisible( x, y + h / 2, w, h / 2 + 2 ); +} + +void QTextView::drawCursor( bool visible ) +{ + if ( !cursor->parag() || + !cursor->parag()->isValid() || + ( !hasFocus() && !viewport()->hasFocus() && !inDnD ) || + isReadOnly() ) + return; + + QPainter p( viewport() ); + QRect r( cursor->topParag()->rect() ); + cursor->parag()->setChanged( TRUE ); + p.translate( -contentsX() + cursor->totalOffsetX(), -contentsY() + cursor->totalOffsetY() ); + QPixmap *pix = 0; + QColorGroup cg( colorGroup() ); + if ( cursor->parag()->background() ) + cg.setBrush( QColorGroup::Base, *cursor->parag()->background() ); + else if ( doc->paper() ) + cg.setBrush( QColorGroup::Base, *doc->paper() ); + p.setBrushOrigin( -contentsX(), -contentsY() ); + cursor->parag()->document()->nextDoubleBuffered = TRUE; + if ( !cursor->nestedDepth() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + p.setClipRect( QRect( r.x() - cursor->totalOffsetX() + cursor->x() - 5 - contentsX(), + r.y() - cursor->totalOffsetY() + cursor->y() - contentsY(), 10, h ) ); + doc->drawParag( &p, cursor->parag(), r.x() - cursor->totalOffsetX() + cursor->x() - 5, + r.y() - cursor->totalOffsetY() + cursor->y(), 10, h, pix, cg, visible, cursor ); + } else { + doc->drawParag( &p, cursor->parag(), r.x() - cursor->totalOffsetX(), + r.y() - cursor->totalOffsetY(), r.width(), r.height(), + pix, cg, visible, cursor ); + } + cursorVisible = visible; +} + +enum { + IdUndo = 0, + IdRedo = 1, + IdCut = 2, + IdCopy = 3, + IdPaste = 4, + IdClear = 5, + IdSelectAll = 6 +}; + +/*! \reimp */ + +void QTextView::contentsWheelEvent( QWheelEvent *e ) +{ + if ( isReadOnly() ) { + if ( e->state() & ControlButton ) { + if ( e->delta() > 0 ) + zoomOut(); + else if ( e->delta() < 0 ) + zoomIn(); + return; + } + } + QScrollView::contentsWheelEvent( e ); +} + +/*! \reimp */ + +void QTextView::contentsMousePressEvent( QMouseEvent *e ) +{ + clearUndoRedo(); + QTextCursor oldCursor = *cursor; + QTextCursor c = *cursor; + mousePos = e->pos(); + mightStartDrag = FALSE; + pressedLink = QString::null; + + if ( e->button() == LeftButton ) { + mousePressed = TRUE; + drawCursor( FALSE ); + placeCursor( e->pos() ); + ensureCursorVisible(); + + if ( isReadOnly() && linksEnabled() ) { + QTextCursor c = *cursor; + placeCursor( e->pos(), &c ); + if ( c.parag() && c.parag()->at( c.index() ) && + c.parag()->at( c.index() )->format()->isAnchor() ) { + pressedLink = c.parag()->at( c.index() )->format()->anchorHref(); + } + } + +#ifndef QT_NO_DRAGANDDROP + if ( doc->inSelection( QTextDocument::Standard, e->pos() ) ) { + mightStartDrag = TRUE; + drawCursor( TRUE ); + dragStartTimer->start( QApplication::startDragTime(), TRUE ); + dragStartPos = e->pos(); + return; + } +#endif + + bool redraw = FALSE; + if ( doc->hasSelection( QTextDocument::Standard ) ) { + emit copyAvailable( doc->hasSelection( QTextDocument::Standard ) ); + emit selectionChanged(); + if ( !( e->state() & ShiftButton ) ) { + redraw = doc->removeSelection( QTextDocument::Standard ); + doc->setSelectionStart( QTextDocument::Standard, cursor ); + } else { + redraw = doc->setSelectionEnd( QTextDocument::Standard, cursor ) || redraw; + } + } else { + if ( !( e->state() & ShiftButton ) ) { + doc->setSelectionStart( QTextDocument::Standard, cursor ); + } else { + doc->setSelectionStart( QTextDocument::Standard, &c ); + redraw = doc->setSelectionEnd( QTextDocument::Standard, cursor ) || redraw; + } + } + + for ( int i = 1; i < doc->numSelections(); ++i ) // start with 1 as we don't want to remove the Standard-Selection + redraw = doc->removeSelection( i ) || redraw; + + if ( !redraw ) { + drawCursor( TRUE ); + } else { + repaintChanged(); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + } + } else if ( e->button() == MidButton ) { +#if 0 // QT2HACK + if (QApplication::clipboard()->supportsSelection()) { +#endif + // only do middle-click pasting on systems that have selections (ie. X11) +#if 0 // QT2HACK + QApplication::clipboard()->setSelectionMode(TRUE); +#endif + paste(); +#if 0 // QT2HACK + QApplication::clipboard()->setSelectionMode(FALSE); + } +#endif + } + + if ( *cursor != oldCursor ) + updateCurrentFormat(); +} + +/*! \reimp */ + +void QTextView::contentsMouseMoveEvent( QMouseEvent *e ) +{ + if ( mousePressed ) { +#ifndef QT_NO_DRAGANDDROP + if ( mightStartDrag ) { + dragStartTimer->stop(); + if ( ( e->pos() - dragStartPos ).manhattanLength() > QApplication::startDragDistance() ) + startDrag(); + if ( !isReadOnly() ) + viewport()->setCursor( ibeamCursor ); + return; + } +#endif + mousePos = e->pos(); + doAutoScroll(); + oldMousePos = mousePos; + } + + if ( !isReadOnly() && !mousePressed ) { + if ( doc->hasSelection( QTextDocument::Standard ) && doc->inSelection( QTextDocument::Standard, e->pos() ) ) + viewport()->setCursor( arrowCursor ); + else + viewport()->setCursor( ibeamCursor ); + } + + if ( isReadOnly() && linksEnabled() ) { + QTextCursor c = *cursor; + placeCursor( e->pos(), &c ); +#ifndef QT_NO_NETWORKPROTOCOL + if ( c.parag() && c.parag()->at( c.index() ) && + c.parag()->at( c.index() )->format()->isAnchor() ) { +#ifndef QT_NO_CURSOR + viewport()->setCursor( pointingHandCursor ); +#endif + onLink = c.parag()->at( c.index() )->format()->anchorHref(); + QUrl u( doc->context(), onLink, TRUE ); + emitHighlighted( u.toString( FALSE, FALSE ) ); + } else { +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + onLink = QString::null; + emitHighlighted( QString::null ); + } +#endif + } +} + +/*! \reimp */ + +void QTextView::contentsMouseReleaseEvent( QMouseEvent * ) +{ + QTextCursor oldCursor = *cursor; + if ( scrollTimer->isActive() ) + scrollTimer->stop(); +#ifndef QT_NO_DRAGANDDROP + if ( dragStartTimer->isActive() ) + dragStartTimer->stop(); + if ( mightStartDrag ) { + selectAll( FALSE ); + mousePressed = FALSE; + } +#endif + if ( mousePressed ) { + mousePressed = FALSE; +#if 0 // QT2HACK + if (QApplication::clipboard()->supportsSelection()) { + QApplication::clipboard()->setSelectionMode(TRUE); +#endif + // only do middle-click selection on systems that support it (ie. X11) + if ( !doc->selectedText( QTextDocument::Standard ).isEmpty() ) + doc->copySelectedText( QTextDocument::Standard ); +#if 0 // QT2HACK + QApplication::clipboard()->setSelectionMode(FALSE); +#endif + emit copyAvailable( doc->hasSelection( QTextDocument::Standard ) ); + emit selectionChanged(); +#if 0 // QT2HACK + } +#endif + } + emitCursorPositionChanged( cursor ); + if ( oldCursor != *cursor ) + updateCurrentFormat(); + inDoubleClick = FALSE; + +#ifndef QT_NO_NETWORKPROTOCOL + if ( !onLink.isEmpty() && onLink == pressedLink && linksEnabled() ) { + QUrl u( doc->context(), onLink, TRUE ); + emitLinkClicked( u.toString( FALSE, FALSE ) ); + } +#endif + drawCursor( TRUE ); +} + +/*! \reimp */ + +void QTextView::contentsMouseDoubleClickEvent( QMouseEvent * ) +{ + QTextCursor c1 = *cursor; + QTextCursor c2 = *cursor; + c1.gotoWordLeft(); + c2.gotoWordRight(); + + doc->setSelectionStart( QTextDocument::Standard, &c1 ); + doc->setSelectionEnd( QTextDocument::Standard, &c2 ); + + *cursor = c2; + + repaintChanged(); + + inDoubleClick = TRUE; + mousePressed = TRUE; +} + +#ifndef QT_NO_DRAGANDDROP + +/*! \reimp */ + +void QTextView::contentsDragEnterEvent( QDragEnterEvent *e ) +{ + e->acceptAction(); + inDnD = TRUE; +} + +/*! \reimp */ + +void QTextView::contentsDragMoveEvent( QDragMoveEvent *e ) +{ + drawCursor( FALSE ); + placeCursor( e->pos(), cursor ); + drawCursor( TRUE ); + e->acceptAction(); +} + +/*! \reimp */ + +void QTextView::contentsDragLeaveEvent( QDragLeaveEvent * ) +{ + inDnD = FALSE; +} + +/*! \reimp */ + +void QTextView::contentsDropEvent( QDropEvent *e ) +{ + if ( isReadOnly() ) + return; + inDnD = FALSE; + e->acceptAction(); + QString text; + int i = -1; + while ( ( i = text.find( '\r' ) ) != -1 ) + text.replace( i, 1, "" ); + if ( QTextDrag::decode( e, text ) ) { + if ( ( e->source() == this || + e->source() == viewport() ) && + e->action() == QDropEvent::Move ) { + removeSelectedText(); + } else { + doc->removeSelection( QTextDocument::Standard ); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + } + drawCursor( FALSE ); + placeCursor( e->pos(), cursor ); + drawCursor( TRUE ); + insert( text, FALSE, TRUE, FALSE ); + } +} + +#endif + +#if 0 // QT2HACK +/*! \reimp */ +void QTextView::contentsContextMenuEvent( QContextMenuEvent *e ) +{ + clearUndoRedo(); + + e->accept(); + if ( !isReadOnly() ) { + QPopupMenu *popup = createPopupMenu(); + int r = popup->exec( e->globalPos() ); + delete popup; + + if ( r == d->id[ IdClear ] ) + clear(); + else if ( r == d->id[ IdSelectAll ] ) + selectAll(); + else if ( r == d->id[ IdUndo ] ) + undo(); + else if ( r == d->id[ IdRedo ] ) + redo(); +#ifndef QT_NO_CLIPBOARD + else if ( r == d->id[ IdCut ] ) + cut(); + else if ( r == d->id[ IdCopy ] ) + copy(); + else if ( r == d->id[ IdPaste ] ) + paste(); +#endif + } +} +#endif + +void QTextView::doAutoScroll() +{ + if ( !mousePressed ) + return; + + QPoint pos( mapFromGlobal( QCursor::pos() ) ); + drawCursor( FALSE ); + QTextCursor oldCursor = *cursor; + placeCursor( viewportToContents( pos ) ); + if ( inDoubleClick ) { + QTextCursor cl = *cursor; + cl.gotoWordLeft(); + QTextCursor cr = *cursor; + cr.gotoWordRight(); + + int diff = QABS( oldCursor.parag()->at( oldCursor.index() )->x - mousePos.x() ); + int ldiff = QABS( cl.parag()->at( cl.index() )->x - mousePos.x() ); + int rdiff = QABS( cr.parag()->at( cr.index() )->x - mousePos.x() ); + + + if ( cursor->parag()->lineStartOfChar( cursor->index() ) != + oldCursor.parag()->lineStartOfChar( oldCursor.index() ) ) + diff = 0xFFFFFF; + + if ( rdiff < diff && rdiff < ldiff ) + *cursor = cr; + else if ( ldiff < diff && ldiff < rdiff ) + *cursor = cl; + else + *cursor = oldCursor; + + } + ensureCursorVisible(); + + bool redraw = FALSE; + if ( doc->hasSelection( QTextDocument::Standard ) ) { + redraw = doc->setSelectionEnd( QTextDocument::Standard, cursor ) || redraw; + } + + if ( !redraw ) { + drawCursor( TRUE ); + } else { + repaintChanged(); + drawCursor( TRUE ); + } + + if ( !scrollTimer->isActive() && pos.y() < 0 || pos.y() > height() ) + scrollTimer->start( 100, FALSE ); + else if ( scrollTimer->isActive() && pos.y() >= 0 && pos.y() <= height() ) + scrollTimer->stop(); +} + +void QTextView::placeCursor( const QPoint &pos, QTextCursor *c ) +{ + if ( !c ) + c = cursor; + + c->restoreState(); + QTextParag *s = doc->firstParag(); + c->place( pos, s ); + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::formatMore() +{ + if ( !lastFormatted ) + return; + + int bottom = contentsHeight(); + int lastBottom = -1; + int to = !sender() ? 2 : 20; + bool firstVisible = FALSE; + QRect cr( contentsX(), contentsY(), visibleWidth(), visibleHeight() ); + for ( int i = 0; ( i < to || firstVisible ) && lastFormatted; ++i ) { + lastFormatted->format(); + if ( i == 0 ) + firstVisible = lastFormatted->rect().intersects( cr ); + else if ( firstVisible ) + firstVisible = lastFormatted->rect().intersects( cr ); + bottom = QMAX( bottom, lastFormatted->rect().top() + + lastFormatted->rect().height() ); + lastBottom = lastFormatted->rect().top() + lastFormatted->rect().height(); + lastFormatted = lastFormatted->next(); + if ( lastFormatted ) + lastBottom = -1; + } + + if ( bottom > contentsHeight() && !cursor->document()->parent() ) + resizeContents( contentsWidth(), QMAX( doc->height(), bottom ) ); + else if ( lastBottom != -1 && lastBottom < contentsHeight() && !cursor->document()->parent() ) + resizeContents( contentsWidth(), QMAX( doc->height(), lastBottom ) ); + + if ( lastFormatted ) + formatTimer->start( interval, TRUE ); + else + interval = QMAX( 0, interval ); +} + +void QTextView::doResize() +{ + if ( wrapMode != WidgetWidth ) + return; + doc->setMinimumWidth( -1, 0 ); + resizeContents( width() - verticalScrollBar()->width(), contentsHeight() ); + QScrollView::setHScrollBarMode( AlwaysOff ); + doc->setWidth( visibleWidth() ); + wrapWidth = visibleWidth(); + doc->invalidate(); + viewport()->repaint( FALSE ); + lastFormatted = doc->firstParag(); + interval = 0; + formatMore(); +} + +/* \internal */ + +void QTextView::doChangeInterval() +{ + interval = 0; +} + +/*! \reimp */ + +bool QTextView::eventFilter( QObject *o, QEvent *e ) +{ + if ( !o || !e ) + return TRUE; + + if ( o == this || o == viewport() ) { + if ( e->type() == QEvent::FocusIn ) { + blinkTimer->start( QApplication::cursorFlashTime() / 2 ); + return TRUE; + } else if ( e->type() == QEvent::FocusOut ) { + blinkTimer->stop(); + drawCursor( FALSE ); + return TRUE; + } + } + + return QScrollView::eventFilter( o, e ); +} + +void QTextView::insert( const QString &text, bool indent, bool checkNewLine, bool removeSelected ) +{ + if ( cursor->nestedDepth() != 0 ) // #### for 3.0, disable editing of tables as this is not advanced enough + return; + QTextCursor c2 = *cursor; + QString txt( text ); + drawCursor( FALSE ); + if ( !isReadOnly() && doc->hasSelection( QTextDocument::Standard ) && removeSelected ) { + checkUndoRedoInfo( UndoRedoInfo::RemoveSelected ); + if ( !undoRedoInfo.valid() ) { + doc->selectionStart( QTextDocument::Standard, undoRedoInfo.id, undoRedoInfo.index ); + undoRedoInfo.d->text = QString::null; + } + undoRedoInfo.d->text = doc->selectedText( QTextDocument::Standard ); + doc->removeSelectedText( QTextDocument::Standard, cursor ); + } + checkUndoRedoInfo( UndoRedoInfo::Insert ); + if ( !undoRedoInfo.valid() ) { + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.index = cursor->index(); + undoRedoInfo.d->text = QString::null; + } + int oldLen = undoRedoInfo.d->text.length(); + lastFormatted = checkNewLine && cursor->parag()->prev() ? + cursor->parag()->prev() : cursor->parag(); + int idx = cursor->index(); + QTextCursor oldCursor = *cursor; + cursor->insert( txt, checkNewLine ); + if ( doc->useFormatCollection() ) + cursor->parag()->setFormat( idx, txt.length(), currentFormat, TRUE ); + + if ( indent && ( txt == "{" || txt == "}" ) ) + cursor->indent(); + formatMore(); + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); + undoRedoInfo.d->text += txt; + + if ( !doc->preProcessor() ) { + for ( int i = 0; i < (int)txt.length(); ++i ) { + if ( txt[ i ] == '\n' ) + continue; + if ( c2.parag()->at( c2.index() )->format() ) { + c2.parag()->at( c2.index() )->format()->addRef(); + undoRedoInfo.d->text.setFormat( oldLen + i, c2.parag()->at( c2.index() )->format(), TRUE ); + } + c2.gotoRight(); + } + } + + emit textChanged(); + if ( !removeSelected ) { + doc->setSelectionStart( QTextDocument::Standard, &oldCursor ); + doc->setSelectionEnd( QTextDocument::Standard, cursor ); + repaintChanged(); + } + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::undo() +{ + if ( isReadOnly() ) + return; + + for ( int i = 0; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + + clearUndoRedo(); + drawCursor( FALSE ); + QTextCursor *c = doc->undo( cursor ); + if ( !c ) { + drawCursor( TRUE ); + return; + } + lastFormatted = 0; + ensureCursorVisible(); + repaintChanged(); + drawCursor( TRUE ); + emit textChanged(); + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::redo() +{ + if ( isReadOnly() ) + return; + + for ( int i = 0; i < (int)doc->numSelections(); ++i ) + doc->removeSelection( i ); + +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + + clearUndoRedo(); + drawCursor( FALSE ); + QTextCursor *c = doc->redo( cursor ); + if ( !c ) { + drawCursor( TRUE ); + return; + } + lastFormatted = 0; + ensureCursorVisible(); + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); + emit textChanged(); + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +void QTextView::paste() +{ +#ifndef QT_NO_CLIPBOARD + if ( isReadOnly() ) + return; + pasteSubType( "plain" ); + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +#endif +} + +void QTextView::checkUndoRedoInfo( UndoRedoInfo::Type t ) +{ + if ( undoRedoInfo.valid() && t != undoRedoInfo.type ) { + clearUndoRedo(); + } + undoRedoInfo.type = t; +} + +/*! Repaints changed paragraphs. + + Although used extensively internally you shouldn't need to call it + yourself. +*/ + +void QTextView::repaintChanged() +{ + QPainter p( viewport() ); + p.translate( -contentsX(), -contentsY() ); + paintDocument( FALSE, &p, contentsX(), contentsY(), visibleWidth(), visibleHeight() ); +} + +void QTextView::cut() +{ + if ( isReadOnly() ) + return; + + if ( doc->hasSelection( QTextDocument::Standard ) ) { + doc->copySelectedText( QTextDocument::Standard ); + removeSelectedText(); + } + if ( hasFocus() || viewport()->hasFocus() ) { + int h = cursor->parag()->lineHeightOfChar( cursor->index() ); + QFont f = cursor->parag()->at( cursor->index() )->format()->font(); + setMicroFocusHint( cursor->x() - contentsX() + frameWidth(), + cursor->y() + cursor->parag()->rect().y() - contentsY() + frameWidth(), 0, h, TRUE/*, &f*/ ); // QT2HACK + } +} + +/*! Copies any selected text to the clipboard. + + \sa hasSelectedText() copyAvailable() + */ + +void QTextView::copy() +{ + if ( !doc->selectedText( QTextDocument::Standard ).isEmpty() ) + doc->copySelectedText( QTextDocument::Standard ); +} + +void QTextView::indent() +{ + if ( isReadOnly() ) + return; + + drawCursor( FALSE ); + if ( !doc->hasSelection( QTextDocument::Standard ) ) + cursor->indent(); + else + doc->indentSelection( QTextDocument::Standard ); + repaintChanged(); + drawCursor( TRUE ); + emit textChanged(); +} + +/*! Reimplemented to allow tabbing through links + */ + +bool QTextView::focusNextPrevChild( bool n ) +{ + if ( !isReadOnly() || !linksEnabled() ) + return FALSE; + bool b = doc->focusNextPrevChild( n ); + if ( b ) { + repaintChanged(); + makeParagVisible( doc->focusIndicator.parag ); + } + return b; +} + +void QTextView::setFormat( QTextFormat *f, int flags ) +{ + if ( isReadOnly() ) + return; + + if ( doc->hasSelection( QTextDocument::Standard ) ) { + drawCursor( FALSE ); + QString str = doc->selectedText( QTextDocument::Standard ); + QTextCursor c1 = doc->selectionStartCursor( QTextDocument::Standard ); + QTextCursor c2 = doc->selectionEndCursor( QTextDocument::Standard ); + clearUndoRedo(); + undoRedoInfo.type = UndoRedoInfo::Format; + undoRedoInfo.id = c1.parag()->paragId(); + undoRedoInfo.index = c1.index(); + undoRedoInfo.eid = c2.parag()->paragId(); + undoRedoInfo.eindex = c2.index(); + undoRedoInfo.d->text = str; + readFormats( c1, c2, 0, undoRedoInfo.d->text ); + undoRedoInfo.format = f; + undoRedoInfo.flags = flags; + clearUndoRedo(); + doc->setFormat( QTextDocument::Standard, f, flags ); + repaintChanged(); + formatMore(); + drawCursor( TRUE ); + emit textChanged(); + } + if ( currentFormat && currentFormat->key() != f->key() ) { + currentFormat->removeRef(); + currentFormat = doc->formatCollection()->format( f ); + if ( currentFormat->isMisspelled() ) { + currentFormat->removeRef(); + currentFormat = doc->formatCollection()->format( currentFormat->font(), currentFormat->color() ); + } + emitCurrentFontChanged( currentFormat->font() ); + emitCurrentColorChanged( currentFormat->color() ); + if ( cursor->index() == cursor->parag()->length() - 1 ) { + currentFormat->addRef(); + cursor->parag()->string()->setFormat( cursor->index(), currentFormat, TRUE ); + } + } +} + +/*! \reimp */ + +void QTextView::setPalette( const QPalette &p ) +{ + QScrollView::setPalette( p ); + if ( textFormat() == PlainText ) { + QTextFormat *f = doc->formatCollection()->defaultFormat(); + f->setColor( colorGroup().text() ); + viewport()->repaint( FALSE ); + } +} + +void QTextView::setParagType( QStyleSheetItem::DisplayMode dm, QStyleSheetItem::ListStyle listStyle ) +{ + if ( isReadOnly() ) + return; + + drawCursor( FALSE ); + if ( !doc->hasSelection( QTextDocument::Standard ) ) { + clearUndoRedo(); + undoRedoInfo.type = UndoRedoInfo::ParagType; + QValueList< QVector<QStyleSheetItem> > oldStyles; + undoRedoInfo.oldStyles.clear(); + undoRedoInfo.oldStyles << cursor->parag()->styleSheetItems(); + undoRedoInfo.oldListStyles.clear(); + undoRedoInfo.oldListStyles << cursor->parag()->listStyle(); + undoRedoInfo.list = dm == QStyleSheetItem::DisplayListItem; + undoRedoInfo.listStyle = listStyle; + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.eid = cursor->parag()->paragId(); + undoRedoInfo.d->text = " "; + undoRedoInfo.index = 1; + clearUndoRedo(); + cursor->parag()->setList( dm == QStyleSheetItem::DisplayListItem, listStyle ); + repaintChanged(); + } else { + QTextParag *start = doc->selectionStart( QTextDocument::Standard ); + QTextParag *end = doc->selectionEnd( QTextDocument::Standard ); + lastFormatted = start; + clearUndoRedo(); + undoRedoInfo.type = UndoRedoInfo::ParagType; + undoRedoInfo.id = start->paragId(); + undoRedoInfo.eid = end->paragId(); + undoRedoInfo.list = dm == QStyleSheetItem::DisplayListItem; + undoRedoInfo.listStyle = listStyle; + undoRedoInfo.oldStyles.clear(); + undoRedoInfo.oldListStyles.clear(); + while ( start ) { + undoRedoInfo.oldStyles << start->styleSheetItems(); + undoRedoInfo.oldListStyles << start->listStyle(); + start->setList( dm == QStyleSheetItem::DisplayListItem, listStyle ); + if ( start == end ) + break; + start = start->next(); + } + undoRedoInfo.d->text = " "; + undoRedoInfo.index = 1; + clearUndoRedo(); + repaintChanged(); + formatMore(); + } + drawCursor( TRUE ); + emit textChanged(); +} + +void QTextView::setAlignment( int a ) +{ + if ( isReadOnly() || block_set_alignment ) + return; + + drawCursor( FALSE ); + if ( !doc->hasSelection( QTextDocument::Standard ) ) { + if ( cursor->parag()->alignment() != a ) { + clearUndoRedo(); + undoRedoInfo.type = UndoRedoInfo::Alignment; + QArray<int> oa( 1 ); + oa[ 0 ] = cursor->parag()->alignment(); + undoRedoInfo.oldAligns = oa; + undoRedoInfo.newAlign = a; + undoRedoInfo.id = cursor->parag()->paragId(); + undoRedoInfo.eid = cursor->parag()->paragId(); + undoRedoInfo.d->text = " "; + undoRedoInfo.index = 1; + clearUndoRedo(); + cursor->parag()->setAlignment( a ); + repaintChanged(); + } + } else { + QTextParag *start = doc->selectionStart( QTextDocument::Standard ); + QTextParag *end = doc->selectionEnd( QTextDocument::Standard ); + lastFormatted = start; + int len = end->paragId() - start->paragId() + 1; + clearUndoRedo(); + undoRedoInfo.type = UndoRedoInfo::Alignment; + undoRedoInfo.id = start->paragId(); + undoRedoInfo.eid = end->paragId(); + QArray<int> oa( QMAX( 0, len ) ); + int i = 0; + while ( start ) { + if ( i < (int)oa.size() ) + oa[ i ] = start->alignment(); + start->setAlignment( a ); + if ( start == end ) + break; + start = start->next(); + ++i; + } + undoRedoInfo.oldAligns = oa; + undoRedoInfo.newAlign = a; + undoRedoInfo.d->text = " "; + undoRedoInfo.index = 1; + clearUndoRedo(); + repaintChanged(); + formatMore(); + } + drawCursor( TRUE ); + if ( currentAlignment != a ) { + currentAlignment = a; + emitCurrentAlignmentChanged( currentAlignment ); + } + emit textChanged(); +} + +void QTextView::updateCurrentFormat() +{ + int i = cursor->index(); + if ( i > 0 ) + --i; + if ( currentFormat->key() != cursor->parag()->at( i )->format()->key() && doc->useFormatCollection() ) { + if ( currentFormat ) + currentFormat->removeRef(); + currentFormat = doc->formatCollection()->format( cursor->parag()->at( i )->format() ); + if ( currentFormat->isMisspelled() ) { + currentFormat->removeRef(); + currentFormat = doc->formatCollection()->format( currentFormat->font(), currentFormat->color() ); + } + emitCurrentFontChanged( currentFormat->font() ); + emitCurrentColorChanged( currentFormat->color() ); + } + + if ( currentAlignment != cursor->parag()->alignment() ) { + currentAlignment = cursor->parag()->alignment(); + block_set_alignment = TRUE; + emitCurrentAlignmentChanged( currentAlignment ); + block_set_alignment = FALSE; + } +} + +void QTextView::setItalic( bool b ) +{ + QTextFormat f( *currentFormat ); + f.setItalic( b ); + setFormat( &f, QTextFormat::Italic ); +} + +void QTextView::setBold( bool b ) +{ + QTextFormat f( *currentFormat ); + f.setBold( b ); + setFormat( &f, QTextFormat::Bold ); +} + +void QTextView::setUnderline( bool b ) +{ + QTextFormat f( *currentFormat ); + f.setUnderline( b ); + setFormat( &f, QTextFormat::Underline ); +} + +void QTextView::setFamily( const QString &f_ ) +{ + QTextFormat f( *currentFormat ); + f.setFamily( f_ ); + setFormat( &f, QTextFormat::Family ); +} + +void QTextView::setPointSize( int s ) +{ + QTextFormat f( *currentFormat ); + f.setPointSize( s ); + setFormat( &f, QTextFormat::Size ); +} + +void QTextView::setColor( const QColor &c ) +{ + QTextFormat f( *currentFormat ); + f.setColor( c ); + setFormat( &f, QTextFormat::Color ); +} + +void QTextView::setFontInternal( const QFont &f_ ) +{ + QTextFormat f( *currentFormat ); + f.setFont( f_ ); + setFormat( &f, QTextFormat::Font ); +} + +/*! Returns the text of the text view. + + If the text view is readonly (i.e. it is a QTextView or + QTextBrowser), the text set with setText() or any append() additions + is returned. + + If the text view is editable (i.e. it is a QTextEdit), the current + text is returned. If textFormat() is \c RichText the text will + contain HTML formatting tags. + */ + +QString QTextView::text() const +{ + if ( isReadOnly() ) + return doc->originalText(); + return doc->text(); +} + +/*! + Returns the text of the paragraph \a para. + + If textFormat() is \c RichText the text will contain HTML + formatting tags. +*/ + +QString QTextView::text( int para ) const +{ + return doc->text( para ); +} + +/*! Changes the text of the view to the string \a text and the + context to \a context. Any previous text is deleted. + + \a text may be interpreted either as plain text or as rich text, + depending on the textFormat(). The default setting is \c AutoText, + i.e. the text view autodetects the format from \a text. + + The optional \a context is a path which the text view's + QMimeSourceFactory uses to resolve the locations of files and images. + (See QTextView::QTextView().) It is passed to the mimeSourceFactory() + when quering data. + + \sa text(), setTextFormat() +*/ + +void QTextView::setText( const QString &text, const QString &context ) +{ + emitUndoAvailable( FALSE ); + emitRedoAvailable( FALSE ); + undoRedoInfo.clear(); + doc->commands()->clear(); + + lastFormatted = 0; + cursor->restoreState(); + doc->setText( text, context ); + doc->setMinimumWidth( -1, 0 ); + resizeContents( 0, 0 ); + cursor->setDocument( doc ); + cursor->setParag( doc->firstParag() ); + cursor->setIndex( 0 ); + + if ( qApp->font().pointSize() != QScrollView::font().pointSize() ) + setFont( QScrollView::font() ); + + viewport()->repaint( FALSE ); + emit textChanged(); + formatMore(); + updateCurrentFormat(); +} + + +/*! Finds the next occurrence of the string, \a expr, starting from + character position \a index within paragraph \a para. + + If \a para and \a index are both 0 the search begins from the start + of the text. If \a cs is TRUE the search is case sensitive, + otherwise it is case insensitive. If \a wo is TRUE the search looks + for whole word matches only; otherwise it searches for any matching + text. If \a forward is TRUE (the default) the search works forward + from the starting position to the end of the text, otherwise it + works backwards to the beginning of the text. + + If \a expr is found the function returns TRUE and overwrites \a para + with the number of the paragraph in which the first character of the + match was found and \a index with the index position of that + character within the \a para. + + If \a expr is not found the function returns FALSE and the contents + of \a index and \a para are undefined. +*/ + +bool QTextView::find( const QString &expr, bool cs, bool wo, bool forward, + int *para, int *index ) +{ + drawCursor( FALSE ); + doc->removeSelection( QTextDocument::Standard ); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif + bool found = doc->find( expr, cs, wo, forward, para, index, cursor ); + ensureCursorVisible(); + drawCursor( TRUE ); + repaintChanged(); + return found; +} + +void QTextView::blinkCursor() +{ + if ( !cursorVisible ) + return; + bool cv = cursorVisible; + blinkCursorVisible = !blinkCursorVisible; + drawCursor( blinkCursorVisible ); + cursorVisible = cv; +} + +void QTextView::setCursorPosition( int parag, int index ) +{ + QTextParag *p = doc->paragAt( parag ); + if ( !p ) + return; + + if ( index > p->length() - 1 ) + index = p->length() - 1; + + drawCursor( FALSE ); + cursor->setParag( p ); + cursor->setIndex( index ); + ensureCursorVisible(); + drawCursor( TRUE ); +} + +void QTextView::getCursorPosition( int ¶g, int &index ) const +{ + parag = cursor->parag()->paragId(); + index = cursor->index(); +} + +void QTextView::setSelection( int parag_from, int index_from, + int parag_to, int index_to, int selNum ) +{ + if ( selNum > doc->numSelections() - 1 ) + doc->addSelection( selNum ); + QTextParag *p1 = doc->paragAt( parag_from ); + if ( !p1 ) + return; + QTextParag *p2 = doc->paragAt( parag_to ); + if ( !p2 ) + return; + + if ( index_from > p1->length() - 1 ) + index_from = p1->length() - 1; + if ( index_to > p2->length() - 1 ) + index_to = p2->length() - 1; + + drawCursor( FALSE ); + QTextCursor c = *cursor; + c.setParag( p1 ); + c.setIndex( index_from ); + cursor->setParag( p2 ); + cursor->setIndex( index_to ); + doc->setSelectionStart( selNum, &c ); + doc->setSelectionEnd( selNum, cursor ); + repaintChanged(); + ensureCursorVisible(); + drawCursor( TRUE ); +} + +/*! + If there is a selection \a paraFrom is set to the number of the + paragraph in which the selection begins and \a paraTo is set to the + number of the paragraph in which the selection ends. (They could be + the same.) \a indexFrom is set to the index at which the selection + begins within \a paraFrom, and \a indexTo is set to the index at + which the selection ends within \a paraTo. + + If there is no selection \a paraFrom, \a indexFrom, \a paraTo and + \a indexTo are all set to -1. + + The \a selNum is the number of the selection (since multiple + selections are supported). It defaults to 0 (the first selection). + + \sa selectedText() + +*/ + +void QTextView::getSelection( int ¶From, int &indexFrom, + int ¶To, int &indexTo, int selNum ) const +{ + if ( !doc->hasSelection( selNum ) ) { + paraFrom = -1; + indexFrom = -1; + paraTo = -1; + indexTo = -1; + return; + } + + doc->selectionStart( selNum, paraFrom, indexFrom ); + doc->selectionEnd( selNum, paraTo, indexTo ); +} + +/*! Sets the text format to \a format. The options are: + + <ul> + + <li> \c PlainText - all characters, except newlines, are displayed + verbatim, including spaces. Whenever a newline appears in the text the + text view inserts a hard line break and begins a new paragraph. + + <li> \c RichText - rich text rendering. The available styles are + defined in the default stylesheet QStyleSheet::defaultSheet(). + + <li> \c AutoText - this is the default. The text view autodetects + which rendering style is best, \c PlainText or \c RichText. This is + done by using the QStyleSheet::mightBeRichText() heuristic. + + </ul> +*/ + +void QTextView::setTextFormat( TextFormat format ) +{ + doc->setTextFormat( format ); +} + +/*! Returns the current text format. + + \sa setTextFormat() + */ + +Qt::TextFormat QTextView::textFormat() const +{ + return doc->textFormat(); +} + +/*! Returns the number of paragraphs in the text. + */ + +int QTextView::paragraphs() const +{ + return doc->lastParag()->paragId() + 1; +} + +/*! Returns the number of lines in paragraph \a para. + */ + +int QTextView::linesOfParagraph( int para ) const +{ + QTextParag *p = doc->paragAt( para ); + if ( !p ) + return -1; + return p->lines(); +} + +/*! Returns the number of lines in the text view. + + WARNING: This function may be slow. Lines change all the time during + word wrapping, so this function has to iterate over all the paragraphs + and get the number of lines from each one individually. +*/ + +int QTextView::lines() const +{ + QTextParag *p = doc->firstParag(); + int l = 0; + while ( p ) { + l += p->lines(); + p = p->next(); + } + + return l; +} + +/*! + Returns the line number in paragraph \a para that contains the + character with index \a index. If there is no such paragraph or no + such character (e.g. the index is out of range) -1 is returned. +*/ + +int QTextView::lineOfChar( int para, int index ) +{ + QTextParag *p = doc->paragAt( para ); + if ( !p ) + return -1; + + int idx, line; + QTextStringChar *c = p->lineStartOfChar( index, &idx, &line ); + if ( !c ) + return -1; + + return line; +} + +void QTextView::setModified( bool m ) +{ + if ( modified != m ) + emitModificationChanged( m ); + modified = m; + if ( modified ) { + disconnect( this, SIGNAL( textChanged() ), + this, SLOT( setModified() ) ); + } else { + connect( this, SIGNAL( textChanged() ), + this, SLOT( setModified() ) ); + } +} + +bool QTextView::isModified() const +{ + return modified; +} + +void QTextView::setModified() +{ + setModified( TRUE ); +} + +bool QTextView::italic() const +{ + return currentFormat->font().italic(); +} + +bool QTextView::bold() const +{ + return currentFormat->font().bold(); +} + +bool QTextView::underline() const +{ + return currentFormat->font().underline(); +} + +QString QTextView::family() const +{ + return currentFormat->font().family(); +} + +int QTextView::pointSize() const +{ + return currentFormat->font().pointSize(); +} + +QColor QTextView::color() const +{ + return currentFormat->color(); +} + +QFont QTextView::font() const +{ + return currentFormat->font(); +} + +int QTextView::alignment() const +{ + return currentAlignment; +} + +void QTextView::startDrag() +{ +#ifndef QT_NO_DRAGANDDROP + mousePressed = FALSE; + inDoubleClick = FALSE; + QDragObject *drag = new QTextDrag( doc->selectedText( QTextDocument::Standard ), viewport() ); + if ( isReadOnly() ) { + drag->dragCopy(); + } else { + if ( drag->drag() && QDragObject::target() != this && QDragObject::target() != viewport() ) { + doc->removeSelectedText( QTextDocument::Standard, cursor ); + repaintChanged(); + } + } +#endif +} + +/*! + If \a select is TRUE (the default) all the text is selected. + If \a select is FALSE any selected text is deselected (i.e. the + selection is cleared). +*/ + +void QTextView::selectAll( bool select ) +{ + if ( !select ) + doc->removeSelection( QTextDocument::Standard ); + else + doc->selectAll( QTextDocument::Standard ); + repaintChanged(); + emit copyAvailable( doc->hasSelection( QTextDocument::Standard ) ); + emit selectionChanged(); +#ifndef QT_NO_CURSOR + viewport()->setCursor( isReadOnly() ? arrowCursor : ibeamCursor ); +#endif +} + +void QTextView::UndoRedoInfo::clear() +{ + if ( valid() ) { + if ( type == Insert || type == Return ) + doc->addCommand( new QTextInsertCommand( doc, id, index, d->text.rawData(), oldStyles, oldListStyles, oldAligns ) ); + else if ( type == Format ) + doc->addCommand( new QTextFormatCommand( doc, id, index, eid, eindex, d->text.rawData(), format, flags ) ); + else if ( type == Alignment ) + doc->addCommand( new QTextAlignmentCommand( doc, id, eid, newAlign, oldAligns ) ); + else if ( type == ParagType ) + doc->addCommand( new QTextParagTypeCommand( doc, id, eid, list, listStyle, oldStyles, oldListStyles ) ); + else if ( type != Invalid ) + doc->addCommand( new QTextDeleteCommand( doc, id, index, d->text.rawData(), oldStyles, oldListStyles, oldAligns ) ); + } + d->text = QString::null; + id = -1; + index = -1; + oldStyles.clear(); + oldListStyles.clear(); + oldAligns.resize( 0 ); +} + + +void QTextView::del() +{ + if ( doc->hasSelection( QTextDocument::Standard ) ) { + removeSelectedText(); + return; + } + + doKeyboardAction( ActionDelete ); +} + + +QTextView::UndoRedoInfo::UndoRedoInfo( QTextDocument *dc ) + : type( Invalid ), doc( dc ) +{ + d = new QUndoRedoInfoPrivate; + d->text = QString::null; + id = -1; + index = -1; +} + +QTextView::UndoRedoInfo::~UndoRedoInfo() +{ + delete d; +} + +bool QTextView::UndoRedoInfo::valid() const +{ + return d->text.length() > 0 && id >= 0 && index >= 0; +} + +void QTextView::resetFormat() +{ + setAlignment( Qt3::AlignAuto ); + setParagType( QStyleSheetItem::DisplayBlock, QStyleSheetItem::ListDisc ); + setFormat( doc->formatCollection()->defaultFormat(), QTextFormat::Format ); +} + +/*! Returns the QStyleSheet which is currently used in this text view. + */ + +QStyleSheet* QTextView::styleSheet() const +{ + return doc->styleSheet(); +} + +/*! Sets the stylesheet to use with this text view. + */ + +void QTextView::setStyleSheet( QStyleSheet* styleSheet ) +{ + doc->setStyleSheet( styleSheet ); +} + +/*! + Sets the background (paper) to be drawn with brush \a pap. + */ + +void QTextView::setPaper( const QBrush& pap ) +{ + doc->setPaper( new QBrush( pap ) ); + viewport()->setBackgroundColor( pap.color() ); + viewport()->update(); +} + +/*! Returns the brush which is used for the background, or an empty + brush if setPaper() has never been called. +*/ + +QBrush QTextView::paper() const +{ + if ( doc->paper() ) + return *doc->paper(); + return QBrush(); +} + +/*! + If \b is TRUE links will be displayed underlined. If \b is FALSE + links will not be displayed underlined. + +*/ + +void QTextView::setLinkUnderline( bool b ) +{ + doc->setUnderlineLinks( b ); +} + +/*! Returns TRUE if links will be displayed underlined, otherwise + returns FALSE. + */ + +bool QTextView::linkUnderline() const +{ + return doc->underlineLinks(); +} + +/*! Sets the text view's mimesource factory to \a factory. See + QMimeSourceFactory for further details. + */ + +void QTextView::setMimeSourceFactory( QMimeSourceFactory* factory ) +{ + doc->setMimeSourceFactory( factory ); +} + +/*! Returns the QMimeSourceFactory which is currently used by this + text view. +*/ + +QMimeSourceFactory* QTextView::mimeSourceFactory() const +{ + return doc->mimeSourceFactory(); +} + +/*! + Returns how many pixels high the text view needs to be to display + the text if the text view is \a w pixels wide. +*/ + +int QTextView::heightForWidth( int w ) const +{ + int oldw = doc->width(); + doc->doLayout( 0, w ); + int h = doc->height(); + doc->setWidth( oldw ); + doc->invalidate(); + ( (QTextView*)this )->formatMore(); + return h; +} + +/*! Appends the text \a text at the end of the text view. + */ + +void QTextView::append( const QString &text ) +{ + doc->removeSelection( QTextDocument::Standard ); + TextFormat f = doc->textFormat(); + if ( f == AutoText ) { + if ( QStyleSheet::mightBeRichText( text ) ) + f = RichText; + else + f = PlainText; + } + if ( f == PlainText ) { + QTextCursor oldc( *cursor ); + cursor->gotoEnd(); + insert( text, FALSE, TRUE ); + *cursor = oldc; + } else if ( f == RichText ) { + doc->setRichTextInternal( text ); + repaintChanged(); + } +} + +/*! Returns TRUE if some text is selected, otherwise returns FALSE. + */ + +bool QTextView::hasSelectedText() const +{ + return doc->hasSelection( QTextDocument::Standard ); +} + +/*! + Returns the selected text or an empty string if there is no currently + selected text. + + The text is always returned as \c PlainText regardless of the text + format. In a future release of Qt an HTML subset may be returned + depending on the text format. + */ + +QString QTextView::selectedText() const +{ + return doc->selectedText( QTextDocument::Standard ); +} + +void QTextView::handleReadOnlyKeyEvent( QKeyEvent *e ) +{ + switch( e->key() ) { + case Key_Down: + setContentsPos( contentsX(), contentsY() + 10 ); + break; + case Key_Up: + setContentsPos( contentsX(), contentsY() - 10 ); + break; + case Key_Left: + setContentsPos( contentsX() - 10, contentsY() ); + break; + case Key_Right: + setContentsPos( contentsX() + 10, contentsY() ); + break; + case Key_PageUp: + setContentsPos( contentsX(), contentsY() - visibleHeight() ); + break; + case Key_PageDown: + setContentsPos( contentsX(), contentsY() + visibleHeight() ); + break; + case Key_Home: + setContentsPos( contentsX(), 0 ); + break; + case Key_End: + setContentsPos( contentsX(), contentsHeight() - visibleHeight() ); + break; +#ifndef QT_NO_NETWORKPROTOCOL + case Key_Return: + case Key_Enter: + case Key_Space: { + if ( !doc->focusIndicator.href.isEmpty() ) { + QUrl u( doc->context(), doc->focusIndicator.href, TRUE ); + emitLinkClicked( u.toString( FALSE, FALSE ) ); + } + } break; +#endif + default: + break; + } +} + +/*! Returns the context of the view. + + The context is a path which the text view's QMimeSourceFactory + uses to resolve the locations of files and images. + + \sa text(), setText() +*/ + +QString QTextView::context() const +{ + return doc->context(); +} + +/*! Returns the document title parsed from the text. + + For \c PlainText the title will be an empty string. For \c RichText + the title will be the text between the \c{<title>} tags, if present, + otherwise an empty string. + +*/ + +QString QTextView::documentTitle() const +{ + return doc->attributes()[ "title" ]; +} + +void QTextView::makeParagVisible( QTextParag *p ) +{ + setContentsPos( contentsX(), QMIN( p->rect().y(), contentsHeight() - visibleHeight() ) ); +} + +/*! Scrolls the text view to make the anchor called \a name visible, if + it can be found in the document. An anchor is defined using the HTML + anchor tag, e.g. \c{<a name="target">}. +*/ + +void QTextView::scrollToAnchor( const QString& name ) +{ + if ( name.isEmpty() ) + return; + + QTextParag *p = doc->firstParag(); + + if ( !doc->lastParag()->isValid() ) { + while ( p ) { + if ( !p->isValid() ) + p->format(); + p = p->next(); + } + resizeContents( contentsWidth(), doc->height() ); + } + + p = doc->firstParag(); + while ( p ) { + for ( int i = 0; i < p->length(); ++i ) { + if ( p->at( i )->format()->isAnchor() && + p->at( i )->format()->anchorName() == name ) { + makeParagVisible( p ); + return; + } + } + p = p->next(); + } +} + +/*! If there is an anchor at position \a pos (in contents + coordinates), its name is returned, otherwise an empty string is + returned. +*/ + +QString QTextView::anchorAt( const QPoint& pos ) +{ + QTextCursor c( doc ); + placeCursor( pos, &c ); + return c.parag()->at( c.index() )->format()->anchorHref(); +} + +void QTextView::setRealWidth( int w ) +{ + w = QMAX( w, visibleWidth() - verticalScrollBar()->width() ); + resizeContents( w, contentsHeight() ); + QScrollView::setHScrollBarMode( setMode ); +} + +/*! + Updates all the rendering styles used to display the text. Call this + function after you change the styleSheet(). +*/ + +void QTextView::updateStyles() +{ + doc->updateStyles(); +} + +void QTextView::setDocument( QTextDocument *dc ) +{ + if ( dc == doc ) + return; + doc = dc; + cursor->setDocument( doc ); + clearUndoRedo(); + lastFormatted = 0; +} + +#ifndef QT_NO_CLIPBOARD + +/*! + Copies text in MIME subtype \a subtype from the clipboard (if there is + any) into the text view at the current text cursor position. + Any selected (marked) text is first deleted. +*/ +void QTextView::pasteSubType( const QCString& subtype ) +{ + QCString st = subtype; + QString t = QApplication::clipboard()->text(st); + if ( !t.isEmpty() ) { +#if defined(Q_OS_WIN32) + // Need to convert CRLF to NL + QRegExp crlf( QString::fromLatin1("\r\n") ); + t.replace( crlf, QChar('\n') ); +#endif + for ( int i=0; (uint) i<t.length(); i++ ) { + if ( t[ i ] < ' ' && t[ i ] != '\n' && t[ i ] != '\t' ) + t[ i ] = ' '; + } + if ( !t.isEmpty() ) + insert( t, FALSE, TRUE ); + } +} + +#ifndef QT_NO_MIMECLIPBOARD +/*! + Prompts the user to choose a type from a list of text types available, + then copies text from the clipboard (if there is any) into the text + view at the current text cursor position. Any selected (marked) text + is first deleted. +*/ +void QTextView::pasteSpecial( const QPoint& pt ) +{ + QCString st = pickSpecial( QApplication::clipboard()->data(), TRUE, pt ); + if ( !st.isEmpty() ) + pasteSubType( st ); +} +#endif +#ifndef QT_NO_MIME +QCString QTextView::pickSpecial( QMimeSource* ms, bool always_ask, const QPoint& pt ) +{ + if ( ms ) { + QPopupMenu popup( this ); + QString fmt; + int n = 0; + QDict<void> done; + for (int i = 0; !( fmt = ms->format( i ) ).isNull(); i++) { + int semi = fmt.find( ";" ); + if ( semi >= 0 ) + fmt = fmt.left( semi ); + if ( fmt.left( 5 ) == "text/" ) { + fmt = fmt.mid( 5 ); + if ( !done.find( fmt ) ) { + done.insert( fmt,(void*)1 ); + popup.insertItem( fmt, i ); + n++; + } + } + } + if ( n ) { + int i = n ==1 && !always_ask ? popup.idAt( 0 ) : popup.exec( pt ); + if ( i >= 0 ) + return popup.text(i).latin1(); + } + } + return QCString(); +} +#endif // QT_NO_MIME +#endif // QT_NO_CLIPBOARD + +/*! \enum QTextView::WordWrap + + This enum describes the QTextView's word wrap modes. The following + values are valid: + + \value NoWrap Do not wrap the text. + + \value WidgetWidth Wrap the text at the current width of the + widget (this is the default). Wrapping is at whitespace by default; + this can be changed with setWrapPolicy(). + + \value FixedPixelWidth Wrap at a fixed number of pixels from the + widget's left side. The number of pixels is set with + wrapColumnOrWidth(). + + \value FixedColumnWidth Wrap at a fixed number of character columns + from the widget's left side. The number of characters is set with + wrapColumnOrWidth(). + This is useful whenever you need formatted text that can also be + displayed gracefully on devices with monospaced fonts, for example a + standard VT100 terminal, where you might set wrapColumnOrWidth() to + 80. + + \sa setWordWrap() +*/ + +/*! Sets the word wrap mode. + + The default mode is \c WidgetWidth which causes words to be wrapped + at the right edge of the widget. Wrapping occurs at spaces, keeping + whole words intact. If you want wrapping to occur within words use + setWrapPolicy(). If you set a wrap mode of \c FixedPixelWidth or \c + FixedColumnWidth you should also call setWrapColumnOrWidth() to set + the width you want. + + \sa wordWrap(), setWrapColumnOrWidth(), setWrapPolicy() +*/ + +void QTextView::setWordWrap( WordWrap mode ) +{ + wrapMode = mode; + switch ( mode ) { + case NoWrap: + document()->formatter()->setWrapEnabled( FALSE ); + document()->formatter()->setWrapAtColumn( -1 ); + break; + case WidgetWidth: + document()->formatter()->setWrapEnabled( TRUE ); + document()->formatter()->setWrapAtColumn( -1 ); + doResize(); + break; + case FixedPixelWidth: + document()->formatter()->setWrapEnabled( TRUE ); + document()->formatter()->setWrapAtColumn( -1 ); + setWrapColumnOrWidth( wrapWidth ); + break; + case FixedColumnWidth: + document()->formatter()->setWrapEnabled( TRUE ); + document()->formatter()->setWrapAtColumn( wrapWidth ); + setWrapColumnOrWidth( wrapWidth ); + break; + } +} + +/*! Returns the current word wrap mode. + + \sa setWordWrap() + */ +QTextView::WordWrap QTextView::wordWrap() const +{ + return wrapMode; +} + +/*! + If the wrap mode is \c FixedPixelWidth, the \a value is the number + of pixels from the left edge of the widget at which text should be + wrapped. If the wrap mode is \c FixedColumnWidth, the \a value is + the column number (in character columns) from the left edge of the + widget at which text should be wrapped. + + \sa setWordWrap() + */ + +void QTextView::setWrapColumnOrWidth( int value ) +{ + wrapWidth = value; + if ( wrapMode == FixedColumnWidth ) { + document()->formatter()->setWrapAtColumn( wrapWidth ); + } else { + document()->formatter()->setWrapAtColumn( -1 ); + resizeContents( wrapWidth, contentsHeight() ); + doc->setWidth( wrapWidth ); + doc->invalidate(); + viewport()->repaint( FALSE ); + lastFormatted = doc->firstParag(); + interval = 0; + formatMore(); + } +} + +/*! + If the wrap mode is \c FixedPixelWidth, returns the number of pixels + from the left edge of the widget at which text is wrapped. If the + wrap mode is \c FixedColumnWidth, returns the column number (in + character columns) from the left edge of the widget at which text is + wrapped. + + \sa setWordWrap(), setWrapColumnOrWidth() + */ +int QTextView::wrapColumnOrWidth() const +{ + return wrapWidth; +} + + +/*! \enum QTextView::WrapPolicy + + Defines where text can be wrapped in word wrap mode. + + The following values are valid: + \value AtWhiteSpace Break lines at whitespace, e.g. spaces or + newlines. + \value Anywhere Break anywhere, including within words. + + \sa setWrapPolicy() +*/ + +/*! Defines where text can be wrapped when word wrap mode is not \a + NoWrap. The choices are \c AtWhiteSpace (the default) and \c + Anywhere. + + \sa setWordWrap(), wrapPolicy() + */ + +void QTextView::setWrapPolicy( WrapPolicy policy ) +{ + if ( wPolicy == policy ) + return; + QTextFormatter *formatter; + if ( policy == AtWhiteSpace ) + formatter = new QTextFormatterBreakWords; + else + formatter = new QTextFormatterBreakInWords; + formatter->setWrapAtColumn( document()->formatter()->wrapAtColumn() ); + formatter->setWrapEnabled( document()->formatter()->isWrapEnabled() ); + document()->setFormatter( formatter ); + doc->invalidate(); + viewport()->repaint( FALSE ); + lastFormatted = doc->firstParag(); + interval = 0; + formatMore(); +} + +/*! + + Returns the current word wrap policy. + + \sa setWrapPolicy() + */ +QTextView::WrapPolicy QTextView::wrapPolicy() const +{ + return wPolicy; +} + +/*! Deletes the contents of the text view. + */ + +void QTextView::clear() +{ + cursor->restoreState(); + doc->clear( TRUE ); + cursor->setDocument( doc ); + cursor->setParag( doc->firstParag() ); + cursor->setIndex( 0 ); + viewport()->repaint( FALSE ); +} + +int QTextView::undoDepth() const +{ + return document()->undoDepth(); +} + +/*! Returns the number of characters of the text. + */ + +int QTextView::length() const +{ + return document()->length(); +} + +/*! Returns the tab width used by the text view. + */ + +int QTextView::tabStopWidth() const +{ + return document()->tabStopWidth(); +} + +void QTextView::setUndoDepth( int d ) +{ + document()->setUndoDepth( d ); +} + +/*! Sets the tab width used by the text view to \a ts. + */ + +void QTextView::setTabStops( int ts ) +{ + document()->setTabStops( ts ); +} + +/*! \reimp */ + +void QTextView::setHScrollBarMode( ScrollBarMode sm ) +{ + setMode = sm; +} + +/*! \reimp */ + +QSize QTextView::sizeHint() const +{ + // ### calculate a reasonable one + return QSize( 100, 100 ); +} + +void QTextView::clearUndoRedo() +{ + undoRedoInfo.clear(); + emitUndoAvailable( doc->commands()->isUndoAvailable() ); + emitRedoAvailable( doc->commands()->isRedoAvailable() ); +} + +bool QTextView::getFormat( int parag, int index, QFont &font, QColor &color ) +{ + QTextParag *p = doc->paragAt( parag ); + if ( !p ) + return FALSE; + if ( index < 0 || index >= p->length() ) + return FALSE; + font = p->at( index )->format()->font(); + color = p->at( index )->format()->color(); + return TRUE; +} + +/*! This function is called to create the popup menu which is shown + when the user clicks on the text view with the right mouse button. If + you want to create a custom popup menu, reimplement this function + and return the created popup menu. Ownership is transferred to + the caller. +*/ + +QPopupMenu *QTextView::createPopupMenu() +{ + QPopupMenu *popup = new QPopupMenu( this ); + d->id[ IdUndo ] = popup->insertItem( tr( "Undo" ) ); + d->id[ IdRedo ] = popup->insertItem( tr( "Redo" ) ); + popup->insertSeparator(); +#ifndef QT_NO_CLIPBOARD + d->id[ IdCut ] = popup->insertItem( tr( "Cut" ) ); + d->id[ IdCopy ] = popup->insertItem( tr( "Copy" ) ); + d->id[ IdPaste ] = popup->insertItem( tr( "Paste" ) ); +#endif + d->id[ IdClear ] = popup->insertItem( tr( "Clear" ) ); + popup->insertSeparator(); + d->id[ IdSelectAll ] = popup->insertItem( tr( "Select All" ) ); + popup->setItemEnabled( d->id[ IdUndo ], !isReadOnly() && doc->commands()->isUndoAvailable() ); + popup->setItemEnabled( d->id[ IdRedo ], !isReadOnly() && doc->commands()->isRedoAvailable() ); +#ifndef QT_NO_CLIPBOARD + popup->setItemEnabled( d->id[ IdCut ], !isReadOnly() && doc->hasSelection( QTextDocument::Standard ) ); + popup->setItemEnabled( d->id[ IdCopy ], doc->hasSelection( QTextDocument::Standard ) ); + popup->setItemEnabled( d->id[ IdPaste ], !isReadOnly() && !QApplication::clipboard()->text().isEmpty() ); +#endif + popup->setItemEnabled( d->id[ IdClear ], !isReadOnly() && !text().isEmpty() ); + popup->setItemEnabled( d->id[ IdSelectAll ], (bool)text().length() ); + return popup; +} + +/*! \reimp */ + +void QTextView::setFont( const QFont &f ) +{ + QScrollView::setFont( f ); + doc->setMinimumWidth( -1, 0 ); + + // ### that is a bit hacky + static short diff = 1; + diff *= -1; + doc->setWidth( visibleWidth() + diff ); + + doc->updateFontSizes( f.pointSize() ); + lastFormatted = doc->firstParag(); + formatMore(); + repaintChanged(); +} + +/*! \fn zoomIn() + + Zooms in on the text by by making the standard font size one + point larger and recalculating all font sizes. This does not change + the size of images. + +*/ + +/*! \fn zoomOut() + + Zooms out on the text by by making the standard font size one + point smaller and recalculating all font sizes. This does not change + the size of images. + +*/ + + +/*! + Zooms in on the text by by making the standard font size \a range + points larger and recalculating all font sizes. This does not change + the size of images. +*/ + +void QTextView::zoomIn( int range ) +{ + QFont f( QScrollView::font() ); + f.setPointSize( f.pointSize() + range ); + setFont( f ); +} + +/*! Zooms out on the text by making the standard font size \a range + points smaller and recalculating all font sizes. This does not + change the size of images. +*/ + +void QTextView::zoomOut( int range ) +{ + QFont f( QScrollView::font() ); + f.setPointSize( QMAX( 1, f.pointSize() - range ) ); + setFont( f ); +} + +/* As the engine of QTextView is optimized for large amounts text, it + is not sure that after e.g. calling setText() the whole document is + formatted, as only the visible part is formatted immediately, and + the rest delayed or on demand if needed. + + If you need some information (like contentsHeight() to get the + height of the document) to be correct after e.g. calling setText(), + call this function to ensure that the whole document has been + formatted properly. +*/ + +void QTextView::sync() +{ + if ( !lastFormatted ) + return; + QTextParag *p = lastFormatted; + while ( p ) { + p->format(); + p = p->next(); + } + resizeContents( contentsWidth(), doc->height() ); +} + +/*! \reimp */ + +void QTextView::setEnabled( bool b ) +{ + QScrollView::setEnabled( b ); + if ( textFormat() == PlainText ) { + QTextFormat *f = doc->formatCollection()->defaultFormat(); + f->setColor( colorGroup().text() ); + viewport()->repaint( FALSE ); + } +} + +void QTextView::setSelectionAttributes( int selNum, const QColor &back, bool invertText ) +{ + if ( selNum < 1 ) + return; + if ( selNum > doc->numSelections() ) + doc->addSelection( selNum ); + doc->setSelectionColor( selNum, back ); + doc->setInvertSelectionText( selNum, invertText ); +} diff --git a/bibletime/frontend/thirdparty/qt3stuff/qtextview.h b/bibletime/frontend/thirdparty/qt3stuff/qtextview.h new file mode 100644 index 0000000..b4d4c03 --- /dev/null +++ b/bibletime/frontend/thirdparty/qt3stuff/qtextview.h @@ -0,0 +1,377 @@ +/**************************************************************************** +** $Id: qtextview.h,v 1.6 2002/03/19 01:15:56 joachim Exp $ +** +** Definition of the QTextView class +** +** Created : 990101 +** +** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +** This file is part of the widgets module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition +** licenses may use this file in accordance with the Qt Commercial License +** Agreement provided with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#ifndef QT3_QTEXTVIEW_H +#define QT3_QTEXTVIEW_H + +#ifndef QT_H +#include "qscrollview.h" +#include "qstylesheet.h" +#include "qpainter.h" +#include "qvector.h" +#include "qvaluelist.h" +#endif // QT_H + +class QPainter; +class QKeyEvent; +class QResizeEvent; +class QMouseEvent; +class QTimer; +class QFont; +class QColor; +class QPopupMenu; + +namespace Qt3 { + class QTextEdit; + + class QTextString; + class QTextCommand; + class QTextParag; + class QTextFormat; + class QTextDocument; + class QTextCursor; + class QTextViewPrivate; + class QTextBrowser; + struct QUndoRedoInfoPrivate; + +class Q_EXPORT QTextView : public QScrollView +{ + friend class QTextEdit; + friend class QTextBrowser; + + Q_OBJECT + Q_ENUMS( WordWrap WrapPolicy ) + Q_PROPERTY( TextFormat textFormat READ textFormat WRITE setTextFormat ) + Q_PROPERTY( QString text READ text WRITE setText ) + Q_PROPERTY( QBrush paper READ paper WRITE setPaper ) + Q_PROPERTY( bool linkUnderline READ linkUnderline WRITE setLinkUnderline ) + Q_PROPERTY( QString documentTitle READ documentTitle ) + Q_PROPERTY( int length READ length ) + Q_PROPERTY( WordWrap wordWrap READ wordWrap WRITE setWordWrap ) + Q_PROPERTY( int wrapColumnOrWidth READ wrapColumnOrWidth WRITE setWrapColumnOrWidth ) + Q_PROPERTY( WrapPolicy wrapPolicy READ wrapPolicy WRITE setWrapPolicy ) + +public: + enum WordWrap { + NoWrap, + WidgetWidth, + FixedPixelWidth, + FixedColumnWidth + }; + + enum WrapPolicy { + AtWhiteSpace, + Anywhere + }; + + QTextView( const QString& text, const QString& context = QString::null, + QWidget *parent=0, const char *name=0); + QTextView( QWidget *parent = 0, const char *name = 0 ); + virtual ~QTextView(); + void setPalette( const QPalette & ); + void setFont( const QFont &f ); + + QString text() const; + QString text( int para ) const; + TextFormat textFormat() const; + QString context() const; + QString documentTitle() const; + + void getSelection( int ¶From, int &indexFrom, + int ¶To, int &indexTo, int selNum = 0 ) const; + virtual bool find( const QString &expr, bool cs, bool wo, bool forward = TRUE, + int *para = 0, int *index = 0 ); + + void append( const QString& text ); + + int paragraphs() const; + int lines() const; + int linesOfParagraph( int para ) const; + int lineOfChar( int para, int chr ); + int length() const; + + Qt3::QStyleSheet* styleSheet() const; + QMimeSourceFactory* mimeSourceFactory() const; + + QBrush paper() const; + bool linkUnderline() const; + + int heightForWidth( int w ) const; + + bool hasSelectedText() const; + QString selectedText() const; + + WordWrap wordWrap() const; + int wrapColumnOrWidth() const; + WrapPolicy wrapPolicy() const; + + int tabStopWidth() const; + void setHScrollBarMode( ScrollBarMode ); + + QString anchorAt( const QPoint& pos ); + + QSize sizeHint() const; + +public slots: + void setEnabled( bool ); + virtual void setMimeSourceFactory( QMimeSourceFactory* factory ); + virtual void setStyleSheet( Qt3::QStyleSheet* styleSheet ); + virtual void scrollToAnchor( const QString& name ); + virtual void setPaper( const QBrush& pap ); + virtual void setLinkUnderline( bool ); + + virtual void setWordWrap( WordWrap mode ); + virtual void setWrapColumnOrWidth( int ); + virtual void setWrapPolicy( WrapPolicy policy ); + + virtual void copy(); + + void setText( const QString &txt ) { setText( txt, QString::null ); } + virtual void setTextFormat( TextFormat f ); + virtual void setText( const QString &txt, const QString &context ); + + virtual void selectAll( bool select = TRUE ); + virtual void setTabStops( int ts ); + virtual void zoomIn( int range ); + virtual void zoomOut( int range ); + virtual void zoomIn() { zoomIn( 1 ); } + virtual void zoomOut() { zoomOut( 1 ); } + + virtual void sync(); + +signals: + void textChanged(); + void selectionChanged(); + void copyAvailable( bool ); + +protected: + void repaintChanged(); + void updateStyles(); + void drawContents( QPainter *p, int cx, int cy, int cw, int ch ); + bool event( QEvent *e ); + void keyPressEvent( QKeyEvent *e ); + void resizeEvent( QResizeEvent *e ); + void contentsMousePressEvent( QMouseEvent *e ); + void contentsMouseMoveEvent( QMouseEvent *e ); + void contentsMouseReleaseEvent( QMouseEvent *e ); + void contentsMouseDoubleClickEvent( QMouseEvent *e ); + void contentsWheelEvent( QWheelEvent *e ); +#ifndef QT_NO_DRAGANDDROP + void contentsDragEnterEvent( QDragEnterEvent *e ); + void contentsDragMoveEvent( QDragMoveEvent *e ); + void contentsDragLeaveEvent( QDragLeaveEvent *e ); + void contentsDropEvent( QDropEvent *e ); +#endif + // void contentsContextMenuEvent( QContextMenuEvent *e ); QT2HACK + bool eventFilter( QObject *o, QEvent *e ); + bool focusNextPrevChild( bool next ); + QTextDocument *document() const; + void setDocument( QTextDocument *doc ); + virtual QPopupMenu *createPopupMenu(); + +protected slots: + virtual void doChangeInterval(); + +private slots: + void formatMore(); + void doResize(); + void doAutoScroll(); + void blinkCursor(); + void setModified(); + void startDrag(); + void setRealWidth( int w ); + +private: + struct Q_EXPORT UndoRedoInfo { + enum Type { Invalid, Insert, Delete, Backspace, Return, RemoveSelected, Format, Alignment, ParagType }; + + UndoRedoInfo( QTextDocument *dc ); + ~UndoRedoInfo(); + void clear(); + bool valid() const; + + QUndoRedoInfoPrivate *d; + int id; + int index; + int eid; + int eindex; + QTextFormat *format; + int flags; + Type type; + QTextDocument *doc; + QArray<int> oldAligns; + int newAlign; + bool list; + Qt3::QStyleSheetItem::ListStyle listStyle; + QValueList< QVector<Qt3::QStyleSheetItem> > oldStyles; + QValueList<Qt3::QStyleSheetItem::ListStyle> oldListStyles; + }; + + enum KeyboardActionPrivate { // keep in sync with QTextEdit + ActionBackspace, + ActionDelete, + ActionReturn, + ActionKill + }; + + enum MoveDirectionPrivate { // keep in sync with QTextEdit + MoveLeft, + MoveRight, + MoveUp, + MoveDown, + MoveHome, + MoveEnd, + MovePgUp, + MovePgDown + }; + +private: + virtual bool isReadOnly() const { return TRUE; } + virtual bool linksEnabled() const { return FALSE; } + void init(); + void drawCursor( bool visible ); + void checkUndoRedoInfo( UndoRedoInfo::Type t ); + void updateCurrentFormat(); + void handleReadOnlyKeyEvent( QKeyEvent *e ); + void makeParagVisible( QTextParag *p ); +#ifndef QT_NO_MIME + QCString pickSpecial(QMimeSource* ms, bool always_ask, const QPoint&); +#endif +#ifndef QT_NO_MIMECLIPBOARD + void pasteSpecial(const QPoint&); +#endif + +private: // these are functions which actually do editing stuff, but + // are implemented here as it is easier to implement viewing and + // editing in the same class. In QTextEdit these functions are made + // public + virtual void emitUndoAvailable( bool ) {} + virtual void emitRedoAvailable( bool ) {} + virtual void emitCurrentFontChanged( const QFont & ) {} + virtual void emitCurrentColorChanged( const QColor & ) {} + virtual void emitCurrentAlignmentChanged( int ) {} + virtual void emitCursorPositionChanged( QTextCursor * ) {} + virtual void emitReturnPressed() {} + virtual void emitHighlighted( const QString & ) {} + virtual void emitLinkClicked( const QString & ) {} + virtual void emitModificationChanged( bool ) {} + + void getCursorPosition( int ¶g, int &index ) const; + bool isModified() const; + bool italic() const; + bool bold() const; + bool underline() const; + QString family() const; + int pointSize() const; + QColor color() const; + QFont font() const; + int alignment() const; + void setOverwriteMode( bool b ) { overWrite = b; } + bool isOverwriteMode() const { return overWrite; } + int undoDepth() const; + void undo(); + void redo(); + void cut(); + void paste(); + void del(); + void clear(); + void pasteSubType( const QCString &subtype ); + void indent(); + void setItalic( bool b ); + void setBold( bool b ); + void setUnderline( bool b ); + void setFamily( const QString &f ); + void setPointSize( int s ); + void setColor( const QColor &c ); + void setFontInternal( const QFont &f ); + void setAlignment( int ); + void setParagType( QStyleSheetItem::DisplayMode, QStyleSheetItem::ListStyle listStyle ); + void setCursorPosition( int parag, int index ); + void setSelection( int parag_from, int index_from, + int parag_to, int index_to, int selNum = 0 ); + void setSelectionAttributes( int selNum, const QColor &back, bool invertText ); + void setModified( bool m ); + void resetFormat(); + void setUndoDepth( int d ); + void setFormat( QTextFormat *f, int flags ); + void ensureCursorVisible(); + void placeCursor( const QPoint &pos, QTextCursor *c = 0 ); + void moveCursor( MoveDirectionPrivate direction, bool shift, bool control ); + void moveCursor( MoveDirectionPrivate direction, bool control ); + void removeSelectedText(); + void doKeyboardAction( KeyboardActionPrivate action ); + void insert( const QString &text, bool indent = FALSE, bool checkNewLine = TRUE, bool removeSelected = TRUE ); + void readFormats( QTextCursor &c1, QTextCursor &c2, int oldLen, QTextString &text, bool fillStyles = FALSE ); + void clearUndoRedo(); + bool getFormat( int parag, int index, QFont &font, QColor &color ); + void paintDocument( bool drawAll, QPainter *p, int cx = -1, int cy = -1, int cw = -1, int ch = -1 ); + +private: + QTextDocument *doc; + QTextCursor *cursor; + bool mousePressed; + QTimer *formatTimer, *scrollTimer, *changeIntervalTimer, *blinkTimer, *dragStartTimer, *resizeTimer; + QTextParag *lastFormatted; + int interval; + UndoRedoInfo undoRedoInfo; + QTextFormat *currentFormat; + int currentAlignment; + bool inDoubleClick; + QPoint oldMousePos, mousePos; + bool cursorVisible, blinkCursorVisible; + bool readOnly, modified, mightStartDrag; + QPoint dragStartPos; + QString onLink; + bool overWrite; + WordWrap wrapMode; + WrapPolicy wPolicy; + int wrapWidth; + QScrollView::ScrollBarMode setMode; + QString pressedLink; + QTextViewPrivate *d; + bool inDnD; + +}; + +inline QTextDocument *QTextView::document() const +{ + return doc; +} + +}; // namespace + +#endif diff --git a/bibletime/main.cpp b/bibletime/main.cpp new file mode 100644 index 0000000..2fa844b --- /dev/null +++ b/bibletime/main.cpp @@ -0,0 +1,220 @@ +/*************************************************************************** + main.cpp - The file containing main ;-) + ------------------- + begin : Mit Jan 19 12:57:15 CET 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** +* * +* 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. * +* * +***************************************************************************/ + + +/* $Header: /cvsroot/bibletime/bibletime/bibletime/main.cpp,v 1.61 2002/03/31 23:01:01 joachim Exp $ */ +/* $Revision: 1.61 $ */ + +//standard includes +#include <stdlib.h> +#include <stdio.h> +#include <signal.h> + +//own includes +#include "resource.h" +#include "bibletime.h" +#include "config.h" + +//frontend includes +#include "frontend/kstartuplogo.h" +#include "frontend/chtmldialog.h" +#include "frontend/cbtconfig.h" + +//KDE includes +#include <kcmdlineargs.h> +#include <kcrash.h> +#include <kglobal.h> +#include <kapp.h> +#include <kstddirs.h> +#include <kinstance.h> +#include <kaboutdata.h> +#include <klocale.h> + +#include <kmessagebox.h> + +bool showDebugMessages = false; +BibleTime* bibletime = 0; + +void myMessageOutput( QtMsgType type, const char *msg ) { + //we use this messagehandler to switch debugging off in final releases + switch ( type ) { + case QtDebugMsg: + if (showDebugMessages) //only show messages if they are enabled! + fprintf( stderr,"(BibleTime %s) Debug: %s\n",VERSION, msg ); + break; + case QtWarningMsg: + fprintf( stderr,"(BibleTime %s) WARNING: %s\n",VERSION, msg ); + break; + case QtFatalMsg: + fprintf( stderr,"(BibleTime %s) _FATAL_: %s\nPlease contact info@bibletime.de and report this bug!",VERSION, msg ); + abort(); // dump core on purpose + } +} + +extern "C" { + static void setSignalHandler(void (*handler)(int)); + + // Crash recovery signal handler + static void signalHandler(int sigId) { + setSignalHandler(SIG_DFL); + fprintf(stderr, "*** BibleTime got signal %d (Exiting)\n", sigId); + // try to cleanup all windows + if (bibletime) { + bibletime->saveSettings(); + fprintf(stderr, "*** Saving seemed to be succesful. If restoring does not work on next startup \ +please use the option --ignore-startprofile\n"); + } + ::exit(-1); //exit BibleTime + } + + // Crash recovery signal handler + static void crashHandler(int sigId) { + setSignalHandler(SIG_DFL); + fprintf(stderr, "*** BibleTime got signal %d (Crashing). Trying to save settings.\n", sigId); + if (bibletime) { + bibletime->saveSettings(); + fprintf(stderr, "*** Saving seemed to be succesful. If restoring does not work on next startup \ +please use the option --ignore-startprofile\n"); + } + // Return to DrKonqi. + } + + static void setSignalHandler(void (*handler)(int)) { + signal(SIGKILL, handler); + signal(SIGTERM, handler); + signal(SIGHUP, handler); + KCrash::setEmergencySaveFunction(crashHandler); + } +} + +int main(int argc, char* argv[]) { + qInstallMsgHandler( myMessageOutput ); + + //create about data for this application + static KCmdLineOptions options[] = + { + {"debug", I18N_NOOP("Enable debug messages"),0}, + {"ignore-startprofile", I18N_NOOP("Ignore the startup profile saved after the last BibleTime execution."),0}, + {0,0,0} + }; + + KAboutData aboutData( + PACKAGE, + "BibleTime", + VERSION, + I18N_NOOP("Bible study tool for KDE 2"), + KAboutData::License_GPL_V2, + I18N_NOOP("(c)1999-2002, The BibleTime Team"), + I18N_NOOP("BibleTime is an easy to use but powerful Bible study tool for KDE 2.\n\nWe are looking for translators and handbook authors.\nIf you'd like to join use send an eMail to info@bibletime.de."), + "http://www.bibletime.de/", + "info@bibletime.de" + ); + + //we could so change this to a file reading function (including commented out people + //coders + // active developers (sorted by name) + aboutData.addAuthor("Joachim Ansorg", I18N_NOOP("Project coordinator"), "jansorg@gmx.de", ""); + aboutData.addAuthor("Martin Gruner", I18N_NOOP("Frontend, backend"), "mg.pub@gmx.net", ""); + aboutData.addAuthor("Mark Lybarger", I18N_NOOP("Searchdialog"), "mlybarge@insight.rr.com",""); +// aboutData.addAuthor("Chris Kujawa", I18N_NOOP("Frontend"),"christopher.kujawa@verizon.net", ""); +// aboutData.addAuthor("Luke Mauldin", I18N_NOOP("Frontend"),"lukeskyfly@txk.net", ""); +// aboutData.addAuthor("Tim Brodie", I18N_NOOP("Installation manager"),"tbrodie@displayworksinc.com", ""); + + //artwork (sorted by name) + aboutData.addAuthor("Timothy R. Butler", I18N_NOOP("Icons, startlogo, banners"), "tbutler@uninetsolutions.com", "www.uninetsolutions.com"); + + //documentation (sorted by name) + aboutData.addAuthor("Fred Saalbach", I18N_NOOP("Handbook"), "saalbach@sybercom.net", ""); + + //translators (sorted by language) + aboutData.addAuthor("Michal Rovnaník", I18N_NOOP("Translation into Czech"), "Michal.Rovnanik@seznam.cz", ""); + aboutData.addAuthor("Birger Langkjer", I18N_NOOP("Translation into Danish"), "birger.langkjer@image.dk", ""); + aboutData.addAuthor("Kees van Veen", I18N_NOOP("Translation into Dutch"), "cvn@interchain.nl", ""); +// aboutData.addAuthor("Mario Bertrand", I18N_NOOP("Translation into French"), "mbert@tbrq.org", ""); + aboutData.addAuthor("Mathias Bavay", I18N_NOOP("Translation into French"), "mathias.bavay@free.fr", ""); + aboutData.addAuthor("Balint Sandor", I18N_NOOP("Translation into Hungarian"), "balintsa@freemail.hu", ""); + aboutData.addAuthor("Beda Szukics", I18N_NOOP("Translation into Italian"), "bszukics@bluewin.ch", ""); + aboutData.addAuthor("Silvio Bacchetta", I18N_NOOP("Translation into Italian"), "sorgilazzaro@tiscalinet.it", ""); + aboutData.addAuthor("Espen Trydal", I18N_NOOP("Translation into Norwegian"), "etrydal@postkassa.no", ""); + aboutData.addAuthor("Benedykt P. Barszcz",I18N_NOOP("Translation into Polish"), "kb2qzv@box43.gnet.pl", ""); + aboutData.addAuthor("Nuno Bareto", I18N_NOOP("Translation into Portoguese"), "nbarr@oninet.pt", ""); + aboutData.addAuthor("Yuriy Salimovskyy", I18N_NOOP("Translation into Russian"), "y2000@pisem.net", ""); + aboutData.addAuthor("Zdeno Podobny", I18N_NOOP("Translation into Slovak"), "zdpo@post.sk", ""); + aboutData.addAuthor("Eduardo Sanchez", I18N_NOOP("Translation into Spanish"), "csanche2@calvin.edu", ""); + + //credits (sorted by name) + aboutData.addCredit("Bob Harman", I18N_NOOP("Bible study HowTo"), "N_Cov_Church@compuserve.com", ""); + + KCmdLineArgs::init(argc, argv, &aboutData); + KCmdLineArgs::addCmdLineOptions ( options ); + + + KApplication app; + KGlobal::dirs()->addResourceType("BT_pic", "share/apps/bibletime/pics/"); + + KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); + + // A binary option (on / off) + if (args->isSet("debug")) + showDebugMessages = true; + + if (kapp->isRestored()){ + for(int n = 1; KMainWindow::canBeRestored(n); n++) + (new BibleTime)->restore(n); + } + else { + const bool showIt = CBTConfig::get(CBTConfig::logo); + + if(showIt) { + KStartupLogo::createSplash(); + KStartupLogo::showSplash(); + KStartupLogo::setStatusMessage( i18n("Starting BibleTime") + QString::fromLatin1("...") ); + } + + bibletime = new BibleTime(); + + if (showIt) { + KStartupLogo::hideSplash(); + KStartupLogo::deleteSplash(); + } + + // a new BibleTime version was installed (maybe a completely new installation) + if (CBTConfig::get(CBTConfig::bibletimeVersion) != VERSION) { + CBTConfig::set(CBTConfig::bibletimeVersion, VERSION); + CHTMLDialog dlg(HELPDIALOG_FIRST_START); + dlg.exec(); + bibletime->slotSettingsOptions(); + } + + //The tip of the day + if (CBTConfig::get(CBTConfig::tips)) + bibletime->slotHelpTipOfDay(); + + bibletime->show(); + + // restore the workspace + if (CBTConfig::get(CBTConfig::restoreWorkspace) && !args->isSet("ignore-startprofile")) + bibletime->restoreWorkspace(); + + setSignalHandler(signalHandler); + + const int ret = app.exec(); + CPointers::deleteBackend(); + return ret; + } +} + diff --git a/bibletime/pics/Makefile.am b/bibletime/pics/Makefile.am new file mode 100644 index 0000000..055a752 --- /dev/null +++ b/bibletime/pics/Makefile.am @@ -0,0 +1,29 @@ +SUBDIRS = \ +lowcolor \ +highcolor \ +. + +BIBLETIME_PICS = \ +startuplogo.png + + +EXTRA_DIST = $(BIBLETIME_PICS) + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(kde_datadir)/bibletime/pics/ + chmod 755 $(DESTDIR)$(kde_datadir)/bibletime/pics/; + @for file in $(BIBLETIME_PICS); do \ + echo Installing $$file; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + chmod 644 $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + done + +uninstall-local: + @for file in $(BIBLETIME_PICS); \ + do \ + echo Removing $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + rm -f $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + done + +KDE_ICON = AUTO + diff --git a/bibletime/pics/Makefile.in b/bibletime/pics/Makefile.in new file mode 100644 index 0000000..60a434a --- /dev/null +++ b/bibletime/pics/Makefile.in @@ -0,0 +1,494 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = lowcolor highcolor . + + +BIBLETIME_PICS = startuplogo.png + + +EXTRA_DIST = $(BIBLETIME_PICS) + +KDE_ICON = AUTO +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=gen_am.sh startuplogo.png startuplogo.xcf + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: install-data-local +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: uninstall-local +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-local install-data-am install-data install-am \ +install uninstall-local uninstall-am uninstall all-redirect all-am all \ +installdirs-am installdirs mostlyclean-generic distclean-generic \ +clean-generic maintainer-clean-generic clean mostlyclean distclean \ +maintainer-clean + + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(kde_datadir)/bibletime/pics/ + chmod 755 $(DESTDIR)$(kde_datadir)/bibletime/pics/; + @for file in $(BIBLETIME_PICS); do \ + echo Installing $$file; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + chmod 644 $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + done + +uninstall-local: + @for file in $(BIBLETIME_PICS); \ + do \ + echo Removing $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + rm -f $(DESTDIR)$(kde_datadir)/bibletime/pics/$$file; \ + done + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/gen_am.sh b/bibletime/pics/gen_am.sh new file mode 100755 index 0000000..7a2540b --- /dev/null +++ b/bibletime/pics/gen_am.sh @@ -0,0 +1,54 @@ +#!/bin/bash +# +# gen_am.sh script +# +# (C) 2001 The BibleTime team +# released under the GPL +# +# This script creates the Makefile.am files in the +# bibletime/pics/*color/ and bibletime/pics/*color/*x* directories. +# +# It will not change the bibletime/pics/Makefile.am! + +# change to the dir the script is located in +cd `dirname $0` + +export HEADER="\n"\ +"# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh\n"\ +"# please do not edit this file but rather run the script to update\n" + +# create Makefile.am's in /bibletime/pics/*color/ directories +# +for I1 in `ls -d *color`; do + + echo creating $I1/Makefile.am + ( # output to Makefile.am + echo -e $HEADER + + echo -n "SUBDIRS = " + for I2 in `ls -d $I1/*x*`; do + echo -n `basename $I2`" " + done + echo + ) > $I1/Makefile.am + +done + + +# create Makefile.am's in /bibletime/pics/*color/*x* directories +# +for I1 in `ls -d *color/*x*`; do + + echo creating $I1/Makefile.am + ( # output to Makefile.am + echo -e $HEADER + + echo "KDE_ICON = AUTO" + echo "EXTRA_DIST=\\" + for I2 in `ls -d $I1/*.png`; do + echo -n `basename $I2`" " + done + echo + ) > $I1/Makefile.am + +done diff --git a/bibletime/pics/highcolor/16x16/Makefile.am b/bibletime/pics/highcolor/16x16/Makefile.am new file mode 100644 index 0000000..46127d5 --- /dev/null +++ b/bibletime/pics/highcolor/16x16/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +hi16-action-bt_bible.png hi16-action-bt_bible_add.png hi16-action-bt_bible_locked.png hi16-action-bt_book.png hi16-action-bt_book_add.png hi16-action-bt_book_locked.png hi16-action-bt_cascade.png hi16-action-bt_cascade_auto.png hi16-action-bt_commentary.png hi16-action-bt_commentary_add.png hi16-action-bt_commentary_locked.png hi16-action-bt_displayconfig.png hi16-action-bt_lexicon.png hi16-action-bt_lexicon_add.png hi16-action-bt_lexicon_locked.png hi16-action-bt_startconfig.png hi16-action-bt_swordconfig.png hi16-action-bt_tile.png hi16-action-bt_tile_auto.png hi16-app-bibletime.png diff --git a/bibletime/pics/highcolor/16x16/Makefile.in b/bibletime/pics/highcolor/16x16/Makefile.in new file mode 100644 index 0000000..5d7b1a5 --- /dev/null +++ b/bibletime/pics/highcolor/16x16/Makefile.in @@ -0,0 +1,416 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = hi16-action-bt_bible.png hi16-action-bt_bible_add.png hi16-action-bt_bible_locked.png hi16-action-bt_book.png hi16-action-bt_book_add.png hi16-action-bt_book_locked.png hi16-action-bt_cascade.png hi16-action-bt_cascade_auto.png hi16-action-bt_commentary.png hi16-action-bt_commentary_add.png hi16-action-bt_commentary_locked.png hi16-action-bt_displayconfig.png hi16-action-bt_lexicon.png hi16-action-bt_lexicon_add.png hi16-action-bt_lexicon_locked.png hi16-action-bt_startconfig.png hi16-action-bt_swordconfig.png hi16-action-bt_tile.png hi16-action-bt_tile_auto.png hi16-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/16x16/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/16x16/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/16x16/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/highcolor/16x16 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/highcolor/16x16/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 46 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_bible.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_bible_add.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible_add.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_bible_locked.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible_locked.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_book.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_book_add.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book_add.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_book_locked.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book_locked.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_cascade.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_cascade.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_cascade_auto.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_cascade_auto.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_commentary.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_commentary_add.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary_add.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_commentary_locked.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary_locked.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_displayconfig.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_displayconfig.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_lexicon.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_lexicon_add.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon_add.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_lexicon_locked.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon_locked.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_startconfig.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_startconfig.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_swordconfig.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_swordconfig.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_tile.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/hi16-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_tile_auto.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/16x16/apps + $(INSTALL_DATA) $(srcdir)/hi16-app-bibletime.png $(DESTDIR)$(kde_icondir)/hicolor/16x16/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_bible_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_book_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_cascade.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_cascade_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_commentary_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_displayconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_lexicon_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_startconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_swordconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/actions/bt_tile_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/16x16/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/16x16/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/16x16/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_bible.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_bible.png new file mode 100644 index 0000000000000000000000000000000000000000..d9dbe6f2e33e44efbce464c50938bec59c3dd83c GIT binary patch literal 586 zcmV-Q0=4~#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r2r{DDC=>ty0oO@H zK~#90jgmcU6j2n0pF6wDrZQl(NtMnbm8Bmjt3j|yEeL5WL@g|YG@HUs$Pciv6va+U z3lVH=B6cRV_Gz-L*|~GihsB+}JL(D^7%t4*^PKm6&jkLX#^XmJ#u$E1r%WbOZd@Pv zz57obAapOjd;8kW166R$lqNOASX0+^K4&vdPiI`YboKqg*Du?9d(Wh5d&Bp`bAIu{ zV*-wdkVFs>R24VF%^<*F&;x8VnVcv<1%&nW^`ayMFw^!iR0NS!KmaSl;ehVsWxhWh zJVhkYG}%T<i6jXXVQaMIm#^Kf<_eZp(?nv78PKF`M+7ya-|Mrx`>+Sl-`G5^+?^js z=MCV)=P@zXnAbUrB%~%`E~qHxhO-deZ_lD6wv){a5k*xHX;3rF3>>^;y2`<Y5=s*@ zpsX%NQj!c4LsjQjeXhWPx&TsYEjVtTC#zz%5bo~m??1P$g;J6dq5=+Pj;iHmcdXUk zweT0f+;GoR%nWmH-+8BTK`7yEY#xUfukPe;nNUFPjvKhqs`;ma(5@&fR^^oB%`NAm zvK%04JKHyJz5LVGk}ALcZ-Ar2Z*K;J{>LhWlMpIahC^1*tg^OtmJoshQAD`A^Prgc Y1v*!5X(>1V@c;k-07*qoM6N<$f~C;`WdHyG literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_bible_add.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_bible_add.png new file mode 100644 index 0000000000000000000000000000000000000000..6fbd5cc7427a289ae2cf3190fc3a8438ca9e80b8 GIT binary patch literal 599 zcmV-d0;v6oP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r2q7k9Y03Zq0pv+U zK~#90jgq@-6j2n1zdJk2u8jes7F*d_SQtwm7*>NIO8x;MjfMCC3n8GJ!cItGti)Qd z)zZSo#wKE^we~hy*6iH5=V39kvlDj<4_pph?)kmW4g5!qMh`=bG5ncK7>_4hTOaz} zdrur7v>$$W|IW<=S#ZphGL^(wP!vVgr&A6Or(C{x<>UUhubVqNFC?pH!_V(0{leMD z1RN0|i6A1VDsG0GL4a<z1K4mpK2U%R2!p|(Q4#`}X?+Y8K_oRm0R3LCOPhI_@6Y?s z5lNI~Wh13Tl7xz|G2HM=S8rxB1xu?eBQeGbpiGq=5!8&lle4}3paYPfIrlqrcYggi zWdNVPjEJ$oyr{BBLMjvHf{J2pICIf?-5VvbW;QcK6jec_M9nZWaPXGttO_nPp_H)# zXjT^^DM<w;hN{k<`b>cXMFWshZNYK#idhx2xo~%9clWimEi@%5Au8Zt=BQdV?2gsi z+ZGl8%nkR7#mq4G`p#Q}bA%&b`PtJ)-tQlyD5khOs@{a>1~2#CkmorfLY8G=iGonC zD9l&oG|6{59bn!U07PwT^ZJdq|Js_>-m4=D7A@SqwVt0}TRWYFa1cU9zt>~s_zJ75 lCkP=Z5JiMLTlbp~{sO2lXCUCtUa0^8002ovPDHLkV1n3l{k#AG literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_bible_locked.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_bible_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..6721084f90255f60fa3d050f5aa3e48b637e0284 GIT binary patch literal 716 zcmV;-0yF)IP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+y9RVe7l$ihk0$E8! zK~#90jgd=hR7n)ae^vK(cO+`2MWVC`#2|trNVblm#z(}B`T>U7xDa$HxY51eKoEC| z49r5w%FVbCLB-$$)F>#vP!Shux3P2U)~Rz`-0mh27Zwx;>eTt4|HJVc=ggUtE`;EI zEG*FJEU<U?v>iKs$^hKbkJqkVF*S#GhH9dWB_R|PMN!qoMY`QZc5L5y{oeh#!)MQ) z6W^P4Z=N2}sm=f4FhqnXf{2h(!c;L;a8RpdfKGQh?F8Tf*J`yKP*HNAntE4BB8bER z5WrBQQDf=m-mnKSs~R`w4j>XK%SuL!ktmTQ!v5*~_SddMzRzHp7XW1$2q9DeWvt|g zkW|UDoYSXIWB~cZ*4fO=csqYInc@Dwy@wDA)QZZBD8w>SANr2Z6RL(`gGG6-_L&fR zn^hH&L`uSkk1yD{%kjs^B4&;|bJquqePx^*m{NucpdTH+!_2|RySGgqJ#6u8ew4BC zS4?hd|J?^Lpy(%1#z+VSWh@a9oD=d)Nn(8aR-*`>dR=gi#!?CN6Ob5@Bw(Ow#IowC zLP|<3!FvPvv<v`1O)&#ALsfbH`~x9;=kb&G)Eg_vvy3lahZr9Id>I%Sm^ZO?)?d6b zUJ0rYFax#7tJl!l(B#i8YnYiCW^&Tg?Z%bAVBmTYxj|HBfr*W)86Q)|#*8d$uztPr z;6d9h1CXTu9Nsr`Y3bYf3on`4Hq7dgF7<kjst|%_blobJ0n9&r@^7t{-|)`0o%0Me y8jLi{yYJqYTVCI4`*owMkYub~yOL(Jn)wL?`eTYn#?X}j0000<MNUMnLSTY_<VS!2 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_book.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_book.png new file mode 100644 index 0000000000000000000000000000000000000000..fa419cc4ec7dc90f56157d91a030220852ed772b GIT binary patch literal 583 zcmV-N0=WH&P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r051sz&cy%#0n|xE zK~#90jg!4<6;Tw0zdd(`o63OcQsym0L84%p7ZB1|h*}D1l3utEkOvUNPD?9aK(SNH zba{YWVrI@c`zOVjxjz`t1BVTV*=v7mZASQyb9(wlQcCjY`kLkPnkSDB<HgIj0U(<n ze*W|!JcLF9cO#cfN&~|%)Y|vl-1Izr@aW68AK#D8&faM=_6pFbDng*D6jf9eGb7vy zcM#~h8Q_P@<&^<6fb8$@OGKS20`4|m$5c@*D<OcL`MjH`TR<)^F99f85NRk{&{9w> z=mv?o<L<O=+bkC6F%iUchoK)m_vD;NDUov~<tk*Vm^<yP<>ch`Y$BMB41G^{kkWvM z*DQ)sa=}9}H9VXk*t9T_kaGeNQcAcxs)m`OnpgM)#JayWib&TqP4xXhP8EH%x|AqI ztC%`wHuc6t5Wo--l#-dX?Pwtgk2={5_ceG#uvnb?Rt5(L2Qzc4>6=1;dtm0ZIRYQq z|FQsZad8nkg%scsxO=VP<9ik2jt~J{CTCHTs--rCkI%#w!KMHp<BDXxs&QbY@|uh3 z-2!TUeDw6$d;Wb^KjD_Z?_WPZc3u0m5xEj+*qP7Sy|>HW-hD*GfTXHCKYq0`aSKsG Vm4&RSJn{el002ovPDHLkV1gov{`~*| literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_book_add.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_book_add.png new file mode 100644 index 0000000000000000000000000000000000000000..0ea0d916fb976b453a4d3944e1b9ad9509a4e3f4 GIT binary patch literal 599 zcmV-d0;v6oP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r06G29dz1hG0pv+U zK~#90jghfx6;Tj|zd5^?o63Lzi<Ef*(~3fff{l_F5YkwPS_)~BUbw}LRY)z^YUw*D zzCyY@KrS)6=bSk+7H9X~D~aI1VPM(+pKtyV{-chM-%E^9eqUd+SX}dTZ{J_P`QQMu z{^Pf=U))>>;+PduPQ=*L_kHbM$IVU0<3~@v|M>Ou;N;|^hCwSpP*ns+RmrNTDy0<M z3^xOT$)o{nf3dhK00EHg?QL<dQ$@h649_U4sOF^+z{Yes8L3-9E-x<u$eIxeWX)*K zsAhDHq?lo5v~3$^vojwFe0+W14Lf(F6p1mCQX-~mR8%Quv`x#=(Yt0O7)$!D!_A4Y z$J}ZbS;;A5t`sep8;-NS!bn0&5k!bFVrHloN>NnP5+4U&>8nsgCLsjxx}Fp(`to!! zlCxGbHA*R?)<*&ddUq%1MANpz3XYrC$)#Yn0(W<2vorfEgPon7rdX-z7X=41rxdGV zcWhw4wF1D!#f9q_l7qQpX0^Kw->VUKga}|VZss+q+N#J6=BMYhZOeRqE_WFKGMq?O zry2&jL(??Cs^2ouVuuIMo`2>ab^56is45|ZVdPr9e6iO)+}(W;M6N^v8`CM9_cqzu lx{rtyAgU^_4&N?A_yaY;jBWIKP;LMK002ovPDHLkV1h8n1;79R literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_book_locked.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_book_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..076f99801068c6e7ec6938af9414b5489429cacf GIT binary patch literal 683 zcmV;c0#yBpP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0NDW8 z05zzO2K)d3010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r8Vzhnb@~7R0ys%T zK~#90jgmWSTvrr@zjGgR<w(&3g^`QIMN-(6QwKYa6@l$azrdtPVQ@-=8oLkZ2e?QV zfs-!5m5Ri5z`{=BL<v|AuncaDHJ8!MJ@@QKiWv!s!H@%+4V$w*);{Y5{>Qn0|GN-l z3`hMwb=~Ldua^DWJNFzQoWA($FOS?jkOjv~X;Vv#4NcRG`f$i#FyzV?S2v$N+gg3_ z;CsnV1I&y(3z!*dhK<X|MS!x*0b8!?o&pr70V0Vk%MeMZDI$W3pem^92m(x1Re7vA z14xnxAtOmbQbHt=QW}9&Ph1s6k*%*kbbvD}G|h0l^N_ZU#29JYmi8DTf|^m}1#4?} z^9cvdaEO}|V}rRNA|nS$C^|J+p_n<2pJ>hiVr(FU5x@))MO8R>y~CH+V190hdEk$& z&F~&TB!r9@BW8}OQgjB~yp`DA?y{!~bUMnXpY1aB!OU&o$1{MoZOQVSwrw$YOpT(G z$a6)->Ge9y&N-cq5CYX?j4G%oqJo=a=A`!ckASL?TF5d7cr%fLnPYC_?wA>uKVM;I zXPWJQ{v|Ju5L15p-8gvFe>~v;cibF&RPIpMZ#n8Oaq&_~RW&SiYYq=#f4`o5L<r-E z!bwyI2QN7{J>cU-VSe_AkXM{vGM@i=I0+E7Z&p`sY@D8L{PY9Ym#3JX9#EDQW<rb^ zOWhAA0e}DX;^(p~o@62PLdck^Dn7X|+uz%N$KGy_Zg&P%XYr#M<`+hq{{U-fa)yg2 RB6t7*002ovPDHLkV1lklCTRcw literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_cascade.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..98e81c94ba62f27d10c27d54edc81b1538409ace GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgosd&0LhE&{2{?X4SaYAH;JHrMC+gT2_iH)`f4zi8^ zGnia{vNA|)JA2=K=i#qF_3kCE5hcO-X(i=}MX3x98p@iUxrynizKQ9X$=M2~dWL!i z3I+!H28KYS5NKtgkX)2mTvF+fTUlI^nXH#utd~++ke^qgmz<y57Jc?L&`2$?k(udv zi6x~#GtJY?EX+*Jlg*6GjZ;k$Q;f~ij4cce5{(Va3@uCz61Qe<TMyL53DV_~nv+<` XU}#_vBiX_a6lCyp^>bP0l+XkKii%cE literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_cascade_auto.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..fcb3ebcd7890efdbe2935f5ed29cfe9a73852682 GIT binary patch literal 325 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgoIeEG`hE&{|d)|?YL4m{NV*O{E8Rgo?UAtCiDCEfP zm|%NIeT`R>U0dvhkfn@TtnU`MJF?{`TwLp{)6y$?Q0_y?X-10~hi5#UQB(;u&Ar4m zq9iy!t)x7$D3!rMLs`=^H!(fcH!(dkIa|S0&rr`m!N5S@zz~QO0<A0*l8Z8nODY|5 zD~n4qll4-I^-@X;^7BgclJj%hqR+kt8mR>~GBZ6dv7{7eW^$r&s+nP$iCMBqnz2EW zskw!@nMGo9Qc|L&QL?2$Vp`H;PoOSNkS>?hoWx27Lj!{t$rgT~AcLo?pUXO@geCyl C31p-I literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1846b3a95660e295ea1664d75d759dae9f80b1 GIT binary patch literal 622 zcmV-!0+IcRP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+qJ1nhy8gKvr0sBcr zK~#90jgr4lQ&AMhKli=XzAiROSV};7EDnZ66N5ifB^p9fP)8aT5{=>pVS$Z7{TCcf zjGMSQnYb{haZ{HDhQ`H_w$hf~bB@EKEl?wz<mTq)-t+x_&-Z&BC#cocMb~Pz+@E@# zYPHVoTLoKqykr3G;KPk~Z%oY*I73y~Ywyu&HEA}R$=+zNyW8N}#PttfzI`pOtv&ZC zAO<c1@9#gD>tkP7C~^7HIHn2?(&-S;LbbXh00D3%pU-cY8LHa1wzht;x%n9pNkD)o zlSy|79H3?ffSI{I2|yTzynL}r+qV(#nJi4&)tgg6N5QdWW_a%r?-5l}VTzTNry)S< zBmhwq?XwGNiecTm0QmI3=2~rs@$n0^+a521iebHe0-)%edldwMTVG$NQmFt?DwP-= z9c6lYijm<VycfhPBGR1<j{Jjixol%&F^h}Os8)Y7GMoqJP!Uvn!XM7e+Qf}}hfR#* zSmHQlW@Z-eYn(qf1b}!!#85Rv6cOzk0f6o8ZL--cx!frR2hX6Le_@82Cgz!uMBYO< zm_oR`^vI$pOS9PkOU&vtnUb72Y~qm^-F`%_7u7zY8HoxtMEt)2yy$%K&fV7>UtRML z0sQ>&{cSp(`WQI3<6J<L$&fppV_@Jc&N%^E-h1ZepLB=#3t2TDDMQ_5R{#J207*qo IM6N<$f?$Oa<^TWy literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_add.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_add.png new file mode 100644 index 0000000000000000000000000000000000000000..3c8d9b33a6a78a1b5b89172db2e5a93226ec6223 GIT binary patch literal 631 zcmV--0*L*IP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+qJ3B6~pSJ)20t87! zK~#90jgr4l(@_+~KkxO6{dTcYf<p-?Uls>bNi;F|i&Tk*U;uTbVPP;@HWLzsjX_<+ z(Kwp8ikqtogBt$=0t0bzq#$kSyZ1V@Q1Kg;o4mZ?y?f3*_Z-I&YGI+`8jXhgxwAvH zy2Fi;lFdGNYyj@}k1OxrnVQ2pLsi&o?$Kz}sn_eRyH;a&x5ky>s~^97`#Q0>_$)*~ z0-OUr+`TuQVxOHYbMZnEQw0ZIT^T@2)#{c2c;Hf@P*^cDR5f+h*T1v6`WX>vfdFwf z+qF;N05vlJ%*>@m05X{jFP<;Z3{4~iMoXi1`TCgOpWwe`W`q!s5D-<OOvL>BqYOZF z6o5F6+w6jxV%Wi(2R{9)d3$?{V(~1^W*~^5Vpyji4@@}c-gxib($W%}o0|ZX%Vh=z z1{fb7qrb105CjQ|h#V+`KXS0Pwq}Ea36;tm)#?xW`wHM3DuQZf@cWZfHhk^&;Uy+X zB1w`kIXOiL+nhPw3xEVc#85Rv6cJ5H0AOQdgIq30K7Wj!o)hSPF3eEV*7D3~S>8c7 zB;o0kIg8^Q^?D66L&T7FpiJTA@@t|fB7}hV-a*Pn*S5%YtZEaQwE_j5I|UF#XC`jm zddpvG`PHEb(h}~Bk3{E(hE93sww&|C*(~|vdAhq#;+zwp5kg>k=HbB-egPBi7*?jy R*cbo+002ovPDHLkV1hSq6Kwzh literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_locked.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_commentary_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..6c93b61dad28e5d934fcbd5f129b836c2dd0161a GIT binary patch literal 724 zcmV;_0xSKAP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0NDW8 z05zzO2K)d3010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r7Yav$o)iE80%1u+ zK~#90jgr4lQ&AMhKli;pUYn{wkYXwzRHF`}gC_oriV_nC@z*3aE+j%^A;GZV#-RQS zj3(+PIx(n;i!o}HMMV=Sh#hn=wvR$z>Am+jREW|TImyjQ&bjAv&b{BGSc8p>45(76 zq!tPVf}p^OW1Z65HzWY+&x_*^?ur$KqXcUWOXVd>rI0WTE52A{ak0qZgGVM_y?Nbz z<Hk)L0aCy&;NkfTm#ez>_NLjlcQ;}!DDXTNu$@7WHvkT>KbcI9iwM@*sxv*E<@xiM z7-K3BAnN<xasvfe5dlC%RMiN8>$=>&H9}dJF<R5r*(HaLo_3Ze_^*iwT5F8f7;A~R z5r&7axd4&10HV<-t{31$4Au&QtmGoVGvN5Yis$F^>_4!b=H~Cz)fTa$c=38-<*5$P zt&|#b97m0gjxskl2S7TVroFwLzW$304z}^-OFfg5Nv1v|Xl}`n+Lli*0}4RDh^U^P z9$H&l7#J8psgRyaXXxnIit8GT7IHa{u;frvqfrX~uTM;+QYMv3arW#vw4SGJ%Vq$| zOO?E}V2q`_1dbyB-~Iw*G8tmA7`3%EG&a^_fA7WaJtvu-jx+V~6Rx*_wuZ+~EZMJx zN2^tEuMb_7Xf#F`7C{6N2!bCh6q?wv)5G^eni2uI9L&xJtOfw;w?t}1s%-W%vG^j* z4Vt<Q3n<rTQ<LTGWUd;ZjlI%+^3<I_V|VV2alA81JidtM`B<wdl^mK9>#G4D-oLx= zd6B1%QhB8uqP|Z{>xRP2>`!Jgc@l|r7$Y=nTt{7frREnAsT5__tJGxx0000<MNUMn GLSTaM4?k4^ literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_displayconfig.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_displayconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..ac25642e288080a890474e653687f2625d365f9a GIT binary patch literal 742 zcmV<C0vY{@P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkAFBk0~FOUEL0&_`3 zK~#90jgrqxR8bViKj*$Ty%}em{FR}S{Xi`%OKH(hkPQEV7SS?V6ts$HB}9v8(Y~EK ziQ2X)!UzH(N-8O{h_L9FB^l0hbmq-_@17Rp4CuJ%Z0_aoJ)d*F=U(AIV`Su#1VJFn z`8>X#XK3)Gp1*KKWxa58^!C-p#>QJl6l-HjVTm9pQY;qBXQ9B#N`d1?Pdt3_a`KG3 z9*|0UI7W!$nAlpZwMc%MmWk)YQA89+eBIv-*pt4W+gbw<0aZ&Bg~T={iX!lr*z)vQ zRr9lZJ4w$=0Mr1&u;dtHSjsOGg#n3#gGA99jkSvFx@JQ_p-_-N3qGnYU%q^zy}gC3 zYxsU-0K00b<T|)cxwHnbm|OJnOC^v5Jw3h5&VC?lYU8nYx(e8<A5nB;Ksw!cShdLF z;$NnxU(>L;4u45_{-&#{+0`+Nmg_N<<jot`J03l_e<zNmZ+?EB&!0cCwY7n|x)fm; zu4ximTfJ8%5HFRwJn?MuY$CBq3M)Cfy7n+P_l=g8CR_&&^t=OARKYa?s_QIFO-+AO zk(c{=dk?8vVc{2TlW&>b(LtuOjbipaN*NH*UbRpG=-AlU=<x9H!mpoS&kYRp4uxSz zDwm^kD#xoZ;D!D!e-fZ4+X|~otnL6<9v>gSH_*TPNqr`RoAmGp4-;h45Zj8r+|6pu z1eJ)4<Hm|2VlZv36o-znQ!Oig9jc(JxESI%+V~k&`5_qVd7cr3Ogf9}IPBWC9mjFF za`hU07tc{Dg%~5XfSGsGcMtaWcNvkSh>@i0lC7_&xw%P2gyB<zhtjF!_n8kfzft-7 Y57pu#t5067^#A|>07*qoM6N<$f`z14egFUf literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon.png new file mode 100644 index 0000000000000000000000000000000000000000..45a402f348f0510c0c13729143e41cadefc67663 GIT binary patch literal 672 zcmV;R0$=@!P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0NDW8 z05zzO2K)d3010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r94Fza8>#>R0xd~I zK~#90jgmh|m0=XdfA78D?K&l9wTQF?frCSZm__9u0vl{`5kU}#u(kq+bS{vV7NH@L zFq$$bqNSqAL1`<OprOGmDe!9E?|r}boYU}KuNFofI2<^<&vTyVoY(OmF*$kNdGFoN ztt~2*EqX3=+t}5c2H^HSe7f++)Eot8s0twqc%PD{X<n;UwzsRCJ#+5m(!1q>si`}$ zumf)E>KL57dymz%HB=Q*MQdrb#6hW41hl(S*${x__{sL}Vv;NXpKgthG56#dtKZfc z9lXNP<|ZUYL?R-RlK>6na%pF<YwPNemBpnZ!2JAuJ5VYUGSBUq2izDPB7{H)o)7|A z%#axA>+Z9z^Zf;YLM;JE(`wCg6#(yZV8}9JjJX<Bl48Qd#I+(ovUiDTwTh|XeVP*l zPnKoGED|L{qM)W2R>vej=ZTI}-?uB9bKa+{eqHC);xfIb+wrMKBobpJilC}sV7qt{ zpzX((wPQzGTQ<G-Jb$~$Q2#|feqJSnkOM^!RZI<br`ry}?2*=%S%44%qRRY>HvqI8 zZpzOog6ghtGh=#sMgfwQ#ijaZianh+e7T2ex{awJB8X@XHbZOL|FlpKRYPqLKozyT zXJ&hVwm$)8xlhY8FFBcMt&RO%0l3<U-0rDrdov?fqJ~J^pCF2k4D?=l$iJh$x8Dd> zKD>WiDkZNA&TTkXprKr*@n9p(&4+N#3E*Rl43CW0P5c73(12X}B~rrx0000<MNUMn GLSTYi{wyZ| literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_add.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..949c28f6ff82231e94bd92c0611bb33eedcaefe9 GIT binary patch literal 689 zcmV;i0#5yjP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0NDW8 z05zzO2K)d3010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r95iJYT66#a0zOGZ zK~#90jgn7DR8bVhfA`Is##Lgb8<93a;KHOr%p&s-ffcrKBZ43<!rB$MNY@1tS{t!N zB4Nu6if9wj%7xO_P0*r+SyJF=&b#;BdrpftIzt)s!N-Bi`@Zv?bDrTpFgbbKSZmF% z-Cc^sU3$8@b?oL{1u)egzFdB;qK3#QA_12=tW8LgB&($odwV4=oWJ;X_2b&W)YJnX z?TcGF+Xp8fK4xQc6A>YZAZ2Qq7|7>yfOHp&+W{axd8V~H7st!M=X>L0EWUWf#`i5o z2XD|=Uq|qs5IiA-%mk<@6!QCxO-pBcSYKJq0W2*&(Ifc+F16gBd&-^BA)IqKXK~Jv z`jp^3ecgT9d8t1Fh{^;YNlN9JO8{7#30<1vz0cB!5a(hhCT`^b;_4+Pr4lNNwMk~+ zENPnJQ;!cR!3RVIMGrJF&~d8$?2o<T&Z4ym8{f8gx3Wg>xmIjq3BlvN$A^H3fPz-^ z#6Zi>ubU?tnwxg4wY>hY!chNZK7HB1IhP4TAc&x%Q0cDw1`7?%O$z|dIf4jFZ{7pY zbi6J*X9$Q?f~zXi({ln4udl2g{7k;5Lx->SP)hbtQ9=lWAemSdDQEw4gae2uqE!MB zM6)+ltrF_t2B>CpYR0T&W-2f<J5L<P%*@Q2!woRy6Pe1X%6n6VTrLMx>R$#v$jCtN zm1q0|vyZX_-g}}bDz~h{^=n=6>9)4U$e3+oB5Dc+YLC`ZUw;f^OaQF+p5c-4gC+b1 Xn@@K{@?>0s00000NkvXXu0mjfh(0cF literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_locked.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_lexicon_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..34928bb51607cdca5f63485b5a743a653945a76b GIT binary patch literal 792 zcmV+z1LypSP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0NDW8 z05zzO2K)d3010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+r839hyY7zhd0;Ner zK~#90jgd`gT}2p%pE*DGL=$U5+8d!pL4`^dDOd?Lt+h8PYF*S#H>Dz!E{eKS=%VS` zZrpTJXrWR|+OAqrkuI#_Dq@1VP?L)0hZ<wFRBujh?m6@Kjf;B|0@?V%%Lg;_KJ(4I zivLk#WA7-fwOVU5$nypxFV(`yQ||=;wfW%3x2^>Vibw@SJjNQdE-A~h)r*2=vtZu~ z`)^NvH+AIf*>f&hHxCRC9Uc4NJWI>VhzMQ;X)Cmaf;5c*spa{K2S}cIZm<?7$t_^+ z%v&e9a`RJ`{=UzNqpwr#?ZG>T_YUuU3j%axS-O6)8W<k((-V_1!1(yZP)Re4)x3Y< zGVh)^hA{?XG{zXLvv}t?R67)g4;+pFqP74i%cA|}0syUBMq@3`xz;oyByqy&({INB z$>vWii-I5lt;-g`Xsoq3>qsg&QQ{E^1j2?V0ru`1+Vh~9uU^r*Wa+Q_+?kkS^!Y(_ zsqx;i_{S_S9)Rvg3nVDMnYyhu0|x&2bNR^~{X18+)_nH$1jh~^<kx#k7-L8(O<sA` zGBZ<U-uF<cc%FKCj*f@B-T*#|fDd={?_32i#^6O5|NJYy{qZi=TEG&=9`6G6dP=Dy zDiw!PWB|$Z#N@^}Ze(vb{@Msd*(6B7dyh4(JrVF;um++i04%Skuu&ob3DWKX5n*um zD6_Mj%-sEjI9<bu=ZibS;_r=5wxmD^1PKsY3IX!`0c(vuc0HStWhH&poO&G=7IL-% zQ0<7+MpTQ7zwuCKlgE1<-P_hsamHhP!uLPaw*s7(H;;_Ie0B5M)$5lySnHs(vq_p} zh&Z&4=&L@m6)^qtPdCyu`7%;!MX896ETjL4ZH@Vbf0>_Kp<3<2`#|sZF1mYKp8o*0 W8+tI*vG$z+0000<MNUMnLSTZiq-t^i literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_startconfig.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_startconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..3f66b6ead6238a5234095804c2e7d8c71efb1267 GIT binary patch literal 738 zcmV<80v-K{P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkAEGTemQEmVL0&ht~ zK~#90jgh@>990y@fA`Lv?947}ST<5H5Ksh)6pTa!RYIf?q5y9|K@$WL1tp?Dd4i;k zLS;cg!6Q&mBP2q)*x~^a5gXaEXFq1{*EtkBHYB9rFCE?H{J+jM{7>At@ul(Jo5g%i z)69AQ@)iB;i?7r?xwyG`=j+L2a?2V;Boku5`;M;bR&U#~T(-P>;nGjP-Mjm-?Rf^U zKyjjUrmzMPA&VgWXg?Sz%L0%qO>=n40c>n+yiwQn&Dm@=y7TSk$xp9;0tkxYTmdQ^ z930YhEipz^g=#P;>0Q~{+WPC&^%pOGbM?dbo~wp$e)s(kEZZfhvcI=S+qO7oS4mLH z(&3!5#{$4|5xo3<ut(!PO*10|kF}6;rfoYEj;k1JafRdG0*EBezU?Tir*w|4?Pz8V zA$UYHF+^fY<SgWzQ4|1oB(Tq+-VJN)c5~LMXXt!Oj2;mvtVJY~QbJWJv!W~hKMBf9 zBlPoA)EAy*Pz^{iQB@To24?dGF(y*V<g`j~gyRH{etpQ`bj|L)M@;H7#25)NAUPwF zu?BL=U<_Fl)yFHu-CzFvd3k?!Z8DzJ)0ZZrEQ!T@f%l%euE}{tQdM%6|5Wgc+2Z=n zgPk)UeQ@#CxpS}KT#2F#hc(7pL<L(|tSx%?CyodNAdE(%aH4b!>#BECvIwe*D@s&B z<S9oyLdw#Ak?B2pGi60qL9&o@db)rr4-HlZg8{>8$auWQ$?25!7uI>@^vm47y-CVK z2oY<|V-*0{-n#$eTj$TeZjGsov8Hm4wegtg^m#SLaP8{lcSd#fVEd2l9n|dq4KAT; Um9=5nl>h($07*qoM6N<$f{Zj$lK=n! literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_swordconfig.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_swordconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..4783af8fb2706208601fb983d8d30beaa737c523 GIT binary patch literal 538 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G^nAk1j*pmYK#$X?><>&kwKSx!vbLTT>xvkVN3%ROBjLn`JZCoC{dNJ&T#NJvPS zkO(ByLXB7V_4!q$r9Jyx`T1FGDo_rH6A~1IjAt)gn7DH5*3#ZJYjjTk`uaNEz`$Tn zyJe@q0~2H8Y*S<7(_&&`|Mu7a|M$(goo}nLfx#c8V+?-Y-lyY=i$7nvzrViTviO<L z!IP8KrvtVAY1KTC$-vLwzhUOgn<cfie;dU0<M!B;z6v>YcXxTYAy9>TSi3e)3llT* z^^+%0-i+B__xIe&;N?p5Y$}TwV~xX@D=I2nnwp!puU@rEDt1@N%UA#Y{&oi0BRt(Z za>2a^Kp*`$bo8j|qgStXxrT;b{c&!t_4IA|_vL>4{QUg)4wJ(?3DY-Ri2v~H?Cb7# zyPhcm-EUR?{@&g_Sy#2T=ilGA_t0|5GzNBcX>0cVt$vc-8zjD;oo#*|gr_z(K9p5F z%L4>Da`)oc{`XFKJFoWdiN6mX|9;;ye_x%@^eGQ&e*R%K{3SV~<jq>Io0U5%Tk4E! z|5p7yxJN$U{!WmwxtY3`IWsf!;@Ab-Us)fszjt45|DF2xUs_M|OjvQKLvI!%!|cUV Vg!11<z6Zu4gQu&X%Q~loCIH<p^Sl56 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_tile.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..b466f5b75b38f5710e509d0fd571f4146dd9d2de GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgo$$GjthE&{2{?X4Sv4P`?GNTMrwF83_UmhdVK2`>I zwsTjtuBAT)Ds(S#jVKAuPb(=;EJ|f?&`{R&%uP&B^-WCAOwLv?)icyHP%tpiH!uVu zg+MC{h2)~l;*v^-+{)sT%w)aPV!f2og8aM^z2yAdw&=63fktY9jm%8XODrh`nrUg7 zlxksWl$K&>Zk%LblA4^BY;IwkY-V9%W|U@{W_)^euL)2WCrFn|YEEJ$gQ0;zjARQx PP>{jX)z4*}Q$iB}yzEf= literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-action-bt_tile_auto.png b/bibletime/pics/highcolor/16x16/hi16-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..80eafdd31d14fd0a84fa8291ab235147d69e87c1 GIT binary patch literal 324 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgoIeNM{hE&{Y?cd4EV8Fwa|Jgud_tU_x8<iqlUBX6f zyE?fw9QhwCe96tB+R(+xP{Xv#Qnr_KwfdB(8&T)%m42+r^;A3bcv{&`SD<0;C9V-A z!TD(=<%vb93=SH~nx46d>8ZYn>6yvd3Z{C7dIkyx2KokuK%@|8WucH<lv!L->5yAl zT#}irms+fsQd*FoSE84kpW7CF_BGH*EwGW9>3NAIr9d+cOjFIw4H6BElMPLi(-M=C z5-knWl9CKljgu^llFXA8bpCe(b#a1pxuoVKRx%hG7{o}n@B;-IJYD@<);T3K0RU&F BVebF{ literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/16x16/hi16-app-bibletime.png b/bibletime/pics/highcolor/16x16/hi16-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..99ca1a1726411f02b4bac797e38a95496de2cfd4 GIT binary patch literal 822 zcmV-61Ihe}P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00006VoOIv0001f z0Be0rM)d#y010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+s1|ZF*%8LL10>eo} zK~#90rBO|Ym1Puu&ilUK_uWq>?#wt>otPrKb4Tu=q!5fKVr{jcDMFz|wh1DXRxU(0 z?ZQB!bp_SJg&V=GC=`?^)JR>SBxn4Gnd`mIy)*N@@AsZ_TFg%^Y}J7W&VlnBp7T7w z|ETu-BTMVU*^l<o;LdmO^*879H>VFxZ`o2ioK-T)D{1t>Q}AAW@F<EE_@V%_=#IvY z+XMjDzWTsi{4KM$78ZBL+VGKNAb-QCG{-h=GP|E2g)<gD6bRm<@C8EfAOQ94<A2e~ zBa^0`ZLf4|^|zXPUO6+_n0UE1FksuAwwazfOaSoxx1WJo5WI)?1<JC7F@)ws^S=A> z_b#<JcV0ViVEog!558V+)<zLS8SarY>+iA5BZL9O7{SaCVGuc3Yst;rU#br78aevv zMB}B#Pz}yHHThs#Z>-Z5?;kr0fN<{fPrw3jWDpUIH89KDM#g2Rda${9tL4auG4g-8 z?t@2M-2t;eRmmyTT4Rz#2#br0n&)|V`0(e)zy5N4^yquXEdYG^#fMm4sz6x45}_hs z5vVF0M8Z<BvhwKZ6I5-g{eHh}wOS=;BVjN{gvbzHg(~2jK$X;>-JR_`c>Kfp)(rRh zJ#;!9A|lGNY>iIv-ml7z3}%6dfLWocFlcw5;Lg48uC{LedEt*4%rEuabJc1hq8kdz z$dC=PBJ%nRfCT__`?F=~@7#F0FnN2qGt5$umMi(x?#l!KSFbb?V+K)$ia-H4=kVg# zSkD1KZj|<fg`aNT=zV-^?(U&DJp68bWMl}(098OFg{rOrPyi~c{Xb6qt4^IdaVAZZ z)4uR23qu7EQOKHX5kZ<}*uQt`fqT{g5uGz+L#0wlhzy){NRt$4lE5VihzMjXtTlM% z0cO7By?=oSRa%QP%Ti>OR6zt)CDn-8yK~*Y0r>-m{}6f-XaE2J07*qoM6N<$g6<}R AdjJ3c literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/Makefile.am b/bibletime/pics/highcolor/22x22/Makefile.am new file mode 100644 index 0000000..3874b15 --- /dev/null +++ b/bibletime/pics/highcolor/22x22/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +hi22-action-bt_bible.png hi22-action-bt_bible_add.png hi22-action-bt_book.png hi22-action-bt_book_add.png hi22-action-bt_book_locked.png hi22-action-bt_cascade.png hi22-action-bt_cascade_auto.png hi22-action-bt_commentary.png hi22-action-bt_commentary_add.png hi22-action-bt_commentary_locked.png hi22-action-bt_displayconfig.png hi22-action-bt_lexicon.png hi22-action-bt_lexicon_add.png hi22-action-bt_lexicon_locked.png hi22-action-bt_parallel.png hi22-action-bt_startconfig.png hi22-action-bt_swordconfig.png hi22-action-bt_sync.png hi22-action-bt_tile.png hi22-action-bt_tile_auto.png hi22-app-bibletime.png diff --git a/bibletime/pics/highcolor/22x22/Makefile.in b/bibletime/pics/highcolor/22x22/Makefile.in new file mode 100644 index 0000000..128e280 --- /dev/null +++ b/bibletime/pics/highcolor/22x22/Makefile.in @@ -0,0 +1,423 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = hi22-action-bt_bible.png hi22-action-bt_bible_add.png hi22-action-bt_book.png hi22-action-bt_book_add.png hi22-action-bt_book_locked.png hi22-action-bt_cascade.png hi22-action-bt_cascade_auto.png hi22-action-bt_commentary.png hi22-action-bt_commentary_add.png hi22-action-bt_commentary_locked.png hi22-action-bt_displayconfig.png hi22-action-bt_lexicon.png hi22-action-bt_lexicon_add.png hi22-action-bt_lexicon_locked.png hi22-action-bt_parallel.png hi22-action-bt_startconfig.png hi22-action-bt_swordconfig.png hi22-action-bt_sync.png hi22-action-bt_tile.png hi22-action-bt_tile_auto.png hi22-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=hi22-action-bt_bible_locked.html + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/22x22/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/22x22/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/22x22/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/highcolor/22x22 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/highcolor/22x22/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 48 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_bible.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_bible.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_bible_add.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_bible_add.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_book.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_book_add.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book_add.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_book_locked.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book_locked.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_cascade.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_cascade.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_cascade_auto.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_cascade_auto.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_commentary.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_commentary_add.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary_add.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_commentary_locked.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary_locked.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_displayconfig.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_displayconfig.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_lexicon.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_lexicon_add.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon_add.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_lexicon_locked.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon_locked.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_parallel.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_parallel.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_startconfig.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_startconfig.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_swordconfig.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_swordconfig.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_sync.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_sync.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_tile.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/hi22-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_tile_auto.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/22x22/apps + $(INSTALL_DATA) $(srcdir)/hi22-app-bibletime.png $(DESTDIR)$(kde_icondir)/hicolor/22x22/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_bible.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_bible_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_book_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_cascade.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_cascade_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_commentary_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_displayconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_lexicon_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_parallel.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_startconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_swordconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_sync.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/actions/bt_tile_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/22x22/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/22x22/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/22x22/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_bible.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_bible.png new file mode 100644 index 0000000000000000000000000000000000000000..f3b8e18865b525210872dd97e56a46c23d89cea0 GIT binary patch literal 866 zcmV-o1D*VdP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+r9~0{^yxaf)0`Eyg zK~#90wUs-M97PmHPgPIP>@3WBmyB0z8;J!WuVhQWA|z5EFd>oug@3^2PLM!aM<60L zvLLYoCr<3Z=4oVswFyEX#0q&w)7|$$P}L6@W-@v-s@L?Xd%yct4g60}Sha9?_|cV} zot+oK2mw@urV&IMn!2X0E9#~$>bjy@R4f)1=g+?M>$~q={_N?kXHG_|z%j-vz$F0O z!SjMU>C;9Q2r*I=1u=%x+qZ9?0S@AdEVip^F^VC9)C@Dj%`kV|9CyR>CNaQh6e-Km z#{Bfj>i|pOYuBEA_2CZ}{(Niy)4i&$F;i3oHAPJ^ZCk@k(<b@dvK)o7EK7i)6a`RL z)sr*r#C(2A5hF2guOf&Fs)BX!l!@aMF$VB31cx6V?ltcIk78cBc)e5S&YcfYQ$!k6 z6j4Q0u`H9R6JtS$Nreu)By>nMYoEHVaW_OH!w2%1;ckFamScusJA3Z#7?^zgNxZoK z#%nj-;mfbyr-*@A1Y$@Mh-i|d1xt?F9rHfMp~eEp&UT!)6Qd#mj;SIpsm&6o42tNQ zY&b}9$;XSTSEZ2#ytSAm+o_^z3EmdYlQY(WMfyc)8oUL&XR8@HaD$okFAr+61a6u^ zUj+B;Rd>t`HBVNvG-hxpZGFVO6e^0jbcY~W%X6e@v&2fkwNm{4+g8_aJ?gC#?zvcW zS+x2l@ER%VdUD#2JcGgUlzxU<=K>!9d-Bp<ad7a<H@mOg-#$FNaIYwe{^y=U@;*}B zaqFhnM-2D}m*4qoI-P2N`tnto3zZe^$GNjsW1zbOd^qWY_TTq&{;Fyh_J7^SG>uX> z(xnzw|Iu*w-hGaaZZMxOkVX)Z)e(Pjbjz<^efjeu7JIYVEI?pXj2Mr{Y)&_MYIDlQ zWP{0M!uQ`j3Z~B6`)~RS&p*e{$B$Qo0ZvZ-xUMqW1WI=&gg}guq8Np(*~}-Cu{R=w s!q4sQp6Bat9~?hE{%J9v&mRH&4e=6cD-hjtrvLx|07*qoM6N<$g1<|V9RL6T literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_bible_add.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_bible_add.png new file mode 100644 index 0000000000000000000000000000000000000000..b865b2b2013817ef97f06fae714c2aa114051000 GIT binary patch literal 925 zcmV;O17iG%P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+r9w<W~WVrwU11d>G zK~#90wUtk3Bt;a5zpCz@$wX%+@gfF1uL{Cq64-@xvzJ^|aMhEiRoIh)ph8d(4_*Sw zUIc~BNl`@O%|8$i8<zE8?yk2vYD_Rl5~sWCz2~92ds-%wn>~l>uA;tr@ArQ72L7kV z&04s9`{Nsni;Itf;v9$s$}$i_Nm&#WMNUx`Nm1nF<DBt0=kW_q{Qk_d*FS%7@X%2@ z3+%nW0bB;a46Ir(BmU~h9L{@^B*A-ka_7#@5ct5)$YLSS$EkM_B&w(?riz+jYM3cj z9pW9NsVB?Qxzm&5D*#jATelv$c>mXxzpkx)wwf0Os)B@os30n+)T5#*@sMh7mZdJs zvJ9XtMFM1bemtxvPESuryvJ9^O9%uBhy=8O$4m?(@!o;CHrV}kf3-BT{}l7`rL9Jt zd-q;OR0yF&f)GRy5wwy?#qd7C`KUqzo)X%{n$=HH6qqR?gbLo0M-?*#j4bQW2J3~# ze(3<+Pd@dR)}DT9#|*yv{y7rw@QK5_C_xAk<*31-irNgdNsMic0}vJ${AoRrCLS<U zgkT|#l>`!6MKp;vY^6Bm<8eMwr3@ulZ843u6G22Hye^zYXPgTTVX_#?605;xmDLn! zxj|JYn_D%R0+(g$Jp{}uubQE%h+4Fo#&24eQqPZgB83D&Ei{)PTFa_P<6)5%f#*u` z=l-C1uRUtD6lPViXtJpFjo@>nD2ndM<jX2B7#7p7pxU^=TEGeUthVVoopkW}Yp?9| z`~8(XA4h*y8b@s-cx&rR*4Nh&5sr_K84ibxMkDt2_NJQ<U@u%>|GU@g$>jD`t+Faq zr6>yv3v6t>&CQ#yl4ThmeYnY6Z@%%znNk2v53u&6wZ>L|-re2h?%kgmjYhol?t82( zUj)u*n*e1g6lG|%bF=?wSXx?QZS4w!!GM=ue4bvf$IOVo+5X8kHlF+<@yTkx-*@0h zlax-U!+dX^2j+Xsb?4ar_D5&txpws`|D2q%vb@X>hljJl07plMTN3*7KxSq*=kVT> zB&i$p`_}DtY=3|M{msqIX3tk&Z*y>P@G!u?H!NC2;G_+r00000NkvXXu0mjf4M??b literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_bible_locked.html b/bibletime/pics/highcolor/22x22/hi22-action-bt_bible_locked.html new file mode 100644 index 0000000000000000000000000000000000000000..de76d8bf625e878a617291bd73a48f7127ec4f85 GIT binary patch literal 996 zcmV<A0~`E_P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rAO_wuati<e193@2 zK~#90wUte897Pa@pYEC2&91%nngko9_`m^dA_Ze)ONj&u;_JlMAsjj7U*re)o(mF4 z&I!Z`j&Q(8SV%blQi2jhEaMnMFbFHyG2YG2OjlJ7Gy4&Fmm59O^h~$r?drFlu7Url zxlt3Vs~=pNnwpvg#W@fO<ar>3oIK0OvXm^(qAW{EJ1Lz`%CmE4{(AeJi=T{7Ja!O| z687F-0?q?q23Ag(QC!`~9L{^9D8hT!T3=tA1XlcrT{P3Q6MI((i7Kj!siJ0>8fJ=> zi+Bfd>`9XNM7wqLBET`>D_5R;{`SvH`!8Skcsb27R0RnEQ9)Et>Gq1M6pNJKCQ0m) zBuM}Ut%!gmO^+tK1MPN;$a{Rbyo5lIfJi`l;>Au3Bl6yXxj|vKaeFy8vqzG7{@m4` zJJ+tgkEjqrjsziyAR=gKlZxSeg!6?9J>g?UyCP@ZmSq`cN(iA8AFxLiGX;z!sW2$4 zbMxO<fa-@I`EwUudST5BzWDN8BJc2#!@I(Q5Tvl9D;&zG%~0#dIOuTz!c^0@y906L z0YgOy7K*;KK*B&0O$rPLws?%=PTF@R4>?#DF)gqYK|~AjZsM#U<3EK%=ud_`$GXC1 zC2EQc&`=-i;GALR`iE$kaGno5hk#khsu`+^s1>NGvA6ddue_SjoP2<q<JQe@-O}P4 zqayBGAwf_Jy+cr-RoHT(mht9W@YAhH)F!D^l&7Ehll%W}J^@2c-rnC6z2}0@E~nD# zMGYS*Q6z}K{yzz6$5W{U)Z`J4do9bVt^S*pjDlgP7D$;Id0y<S>wg}=dn1l&+0ckr zR(5Ybw{WAmy1Mj36h)<cc{A%_wYc~iTU%pnY-|!&+K4J&ttr=k{O0V?hyi==;_HXC zT21<=uPl{i^)%q{@E)zB8Rq5_s?`oN(}(QuD?2;s@Z<r#8eoHiHqe`K_wFy$#@d`d z8E8(la8Z?+Y32HjJ%(BVkmo{{hhD94Lw+>7fBequ>6FJ$wW*I)sa6b8&&+gVbi|*1 z{<U4ceD>4GN6U>y!+|4?Vk(si^;(^=dX1gk@7(sU`)uF2&-C;-BF4#6<20ujEevpQ zaPO*wMjc4Z4Cfr)d!i_I6OD$|t4~=TX4$^8KEJ)yW?|vXPU~>I^Pt_{1b7Jdlxakg S3zsbb0000<MNUMnLSTZF<<>_4 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_book.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_book.png new file mode 100644 index 0000000000000000000000000000000000000000..59051ce4e9e3a6c73d1760376d64fb4c909007f6 GIT binary patch literal 781 zcmV+o1M>WdP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA7#W(MqN4x+0-8xg zK~#90wUxbY+(r~e&kVV{vYb_*lulARG7xnx0t7bT2S}Q{f!;z7;5>kVbV_HWvZ|DJ zq1rBzAWkF1f;u+=R9Fjg=KiFZA$JjoS~uZ>AUWim`R={n+=c(?2vaXkPJTMt-{1cd zj1WLo$XO7{<djIMC*{<n)YEr8UDtDP|H1q3zW?F*Cwre=wNv02;}P%;0Pf)Rg*)Xp zC<}xbX_|%@!}ZzO%TIx)aSFV%nA5}n?x-1NhMQsTxH;~I*F|E0wvEhY?au1@!?ysp zDaLWk6jjCCP*Y5`UJWxXi_|%@SsTolO@g02`!T3WFl!MJ%oH<2MGzHK>zJ-1ahxW` z03Ig6k`p2lBo~NkQ7u}Er=mz5vzjJTC&q>liId>I?@IM^q)!PqMb%IhL<YE^R?}jJ zy8+H@Hs@Aw$_WCbzQf#b^9nA?N3c}Y?wG^i;7M@Ki5MWIgnON+>lCPL6w$TV(0ydw z4DLE|O2iPzIaP~Uv7HWSQFJJr7iVk*r__@r6JsRjT)<VanxPwRFthc<HFpABTv5Q1 z>xS@RIrD12^32Ajv~7w-s?DT9M8-`}tmRc{S*)-MaBC_G*s#VhtvPhB1vJbVqZsmA zz*|x=^nt<rr3ZNlzd~(vfo}k}C@$Zx?K4K}K92i%&&Mk^bBfW|Ids;LVY%_S-fYeB z&;xvP&^NCC?a%d8)lv41{WxbOWf?;Y(|<I)e)Airr@yjVbx1C~WK!{q(^r0c{PizQ zY#uI`%K(A4X_?RG?B3bs?(Q9S7CS5!3;ue09!#Alk01FLpWox%<;64@;Ogq1pH-H- zz|7qVArNDvY1**2T>4@$_bfta{Hw#m1OE8)_sfgRzq{3Hbq??^dc2lI${E^q00000 LNkvXXu0mjfYfo;8 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_book_add.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_book_add.png new file mode 100644 index 0000000000000000000000000000000000000000..75aec6d63112912968e890c940f1aaf4b1e548a4 GIT binary patch literal 830 zcmV-E1Ht@>P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA87ZY*qfP(-0?SE6 zK~#90wUxbYTtyg$pP6%Z?KNzW(;zHSBS2IpNKwKqkOqqjNa?~QQ3{uE0kP;phhQT? zl>!M;#2rZkSCHTeOSa?!hjV7WABvg%LGsB~>`Hrf=bU-wo%eg^Tlk+|Vd%!ghu_@Y z-rjx}j1WLo$XO7{<djIMC*{<n)YEr8UDxyedmsGu*`3e7d-K}$i*^VcW4sI81i&4< z-f*Y9=gI;hMw+G}#&G%c>921AU&SHt=Ej&N25?8sFf-f?bH~kbH@q$q1GH^qG-@|r zUH*L=;B|^|95Y2#F*no{Q>|CSOv@s5&S=yIGe(2p2M@jusuIjvL<BR%%uo?T1=TvH z%bhq*6Jr1mgJ8)C5ebqDM75|EEyYt&q>fp&$<&FlAw=RJxbM4C{T%62!c9>%R0WYa zTu`gFnBi`KGa8L~EjZ-_0aD*#Zn${`7v&4ERMqa7!#u%*;G7dNKuQVsI#HJvsH_yx zwZzbU!MGaSb>x(YA&_&b5wj9Io!g@5yl`HUu@;<CPnJxKk(_e@SH)_EuB5@tmJ^rU z0dPr00ZXn2!b{}LYy8S@Rt}}DQ!G+rCJiF8I0PkHUX_-`3abFuT2a7;HHK;R(7hJW zFlVugxxWRx#)^3#n1{dgATQgmP+O$HSAc62m*<!9S?tz*G4Ad>e*DXS<~{rE_t16y zhrpvNyPKI)g1+?7>vv!1Dxb62jH9C?+@0BM#=U!AI>43Sc@OZ_L0`G9^ylN_WA^v= z0odEy<Mi~DL2%AW%Chh-4FA!vv$Mm&!2#~h;o%{Z$pjei_{X1~`2G7Iec#09#&kLj z5NMm0@p#PEWQ#YpCTwnO^8DE!;nQ2UI6FJzpUYQ#yt~WK=jX#<fQyUsZ&jvSz{uSR zArNDvY1(jYI`xf>vA_89<cr-KpA_ZqynQlz^aC$mo?Hj`7wFc9x5Vj;zW@LL07*qo IM6N<$f(?(4CjbBd literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_book_locked.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_book_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..80ccc5f954d2a7b20258748d3c83515929927614 GIT binary patch literal 908 zcmV;719SX|P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rAqTK8bKC#`0~tv~ zK~#90wUxbY9Yqv?znT5H_O-8nNU$m5f&vmEMUf>akf;Dr@zd}Id5b&%JU}G6&><># z0TKy|jwXo+MPwXf2m#3oc1(P;J2U4TirKw(;SCkL(vCEv{pRdB-<*a2>2gC0H*bD% zZFO~Z0~F^#BoSjGrAQ2c5L!YEMF=fz)6z68Z(O|m*T<iH`qkpnONZqU*n58scpCsS zux`POeD{$#oc9z(f%oosYwOlB@R=V1&y8vd@4yUEMO86X)C^O@OtEeg@1QI_RaMSS zkDt8*@S=z@3{^oyP*X$&73oGrRq`g?J5^OWRjNVojT@gkk>pfMQc9=_s*0pUl7vV% zCnsNG7=`x^%ngE545XA?iWwr3qfU~GCrL=%oOWqaF}yEu9zO_f+a^~(dfE^$6+{$~ zL`pq8A=;%y6*C2ls;YS*IK%)BLffFGm|6$Uk<Y-Xi`on|=nWnO#~APqLI{|3FUm;@ zB%LavN!HM8#yA_?G{g|_&Jkni6w|Do^l1^KFPvpF{u3NROH2{(Ju$`%?jjad<dhBL zg$CygGk0=`2Eo~i3{J5-5SEow>-01B_kZKv_bOJFpQGlu|I-id&CL&n!6|i`rGk{w z>=0zNa$4r*10Q|_Ki^+QZJD}OUVHsdp8m7_3c#61I)i&Z`%z}2sNoBxC<GBW_`9NQ zJawH=lVOkhKG4gbdyt`;l`=JA%v$yNj|sdt%3?kYMr^snvnpHvFq_S9ZobdX&H@h} zY*W@#M3wJuDR=IDe`PRYRU?aTd6TYD_TAHfqoXGrKU?SGrHaw0VSVk0g9Bx6uN^L4 z-vjLQq@5bgc=YHO<`<@1IG0#iI>r?v*4LCfclQ}gMT|m-iQad2#*gOlAHTD4q2=ZC zQ^pG;Mzta8SzntBNBqsVx9$4%D_<ABcxy75IB=9jNnO{B=f^CJ=h=Jwquc%UfZc~r zSzB8~#5i|;k(E`3!2pMcPrj5i83UD>;he*JPf?U^X)>|#=v9kpgWZQ)mv(oiT)ldE i@Azo3c|M(P1N;kqp_x-K8bOBu0000<MNUMnLSTX%Qj$^t literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_cascade.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..b837d36780498de4aa453d2e2834210b0988e04f GIT binary patch literal 727 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6-x0(?ST zfwY5zgTKGOp`jrwE33S`d`@a<h0Fe$oXHj5+pAM&S9t6e7Z<NdpIH^UwkB&@rT^xt zh?UhTbEZw3W@l$tkkVLN*jtk^y(VjFZT^Is%xU!{y)E@UD^{#<cXzLfTu~LXv?^p> zV^#Nr2@@typ1gSR;_A4?mBH(43;OFS+G>lts}mMf$1UpW>S}FmEyydWE9<B&?y1R~ zUY|d0=FFLWeSOu53o3)xRe0{KNuN;}uxa7Kg?skwnLBrGXJ@CZtZZ9b+mtC&nwy)G zlasBjtt%@lCrz5f&d%P)a7YH|H;<AazhEHEz-`Cy?;nuX2NHjQ%vuHz&mPRFt*ia_ zPwL;_clZAO{rm6TzOP{FACL`ZFueQs?pWF5fBeTjmVh)dCV9KNxF_sASq<c@_H=O! zskk-u;&r|z2Z7dyqLGfNqTw#Cf`V`Miof~#_x_0%*)y{iaQ=T<UZ|HQ@GIQsLAS9; zq0=N)jhSBDJ))CNt`azT(I$EA0&(vtp=Mg4lMBxpy)s*JoA)?t-ma|GvN@-N*mq=q z)mfp>-=;i&>c<wJ#93#){7iaj9Jlr*+pTviBn$36DYAd_b|;_x&kC-m#$5-dXKUPl zm-y$xjmVFe9~X)IIKy49y6D7S#;qy(n)6LWjDXH|FL8}13C>R|DNig)WpL0?*7VFx zOi%SqOwUZtRxs5w)H6^pFwi$J1R{k%D+`6>qRirwN{8Ia;*!i{z0_j8l+uFyyb`_S z{M@$av#)_hYJrW+OwUU!DFvEolA3C6U~XuVmYQO0m}G94Y;0zkYMhv4U|?!)VVaga lz5Q}7P!}gimrH6+VkLv2fkBL93qMeh!PC{xWt~$(69AxiFH8Uc literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_cascade_auto.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..db66d5457728007ec4eb1d40fef97fa9c25c49ec GIT binary patch literal 1042 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvNA9*HU#*D zxB|r;931@p{S6HbSy@@-<>hlyODkOV*W^sD@ZMgXI=jMSx45`?P5R8L(6u#L(<=Qp zS4FI>PMI@p+B7>myMmO)+QQzNjOjI5Q)}}l)MQSpFX?Tm?^&^8g}b|ZRpg4Qn59)A z>l&-NCrp?ydGh4Nix*eNEv^h+pKG}#!(@Gt-Ok#A{<?~`+T!l2qBai?4>2(@U0vM} zpZMy81=Vqjy1KerTU!hAO6tlwYKwa+lBXH#TWP3i$3>;aMWzP0$A&o;)nrbu&!0AP z=FGmnzUssUmBH(ZoHuLo`LeUK*Je+x@Z6bWyEZ+jxiVl=Mn;B`k`faWle)TkLqmhA zs_KjxGZrpfxM$BEZ*OmAX6Eed?3F858W<QzNJwnnyxGagDJCXn>C&a8rKM?UX;oEK zot>Ssva*X7E!w_)dwqR9A0J;~Vd1V_yXMZF+t$|R=H?a@6y)XQB`PW!85y}@!-nO{ zmq$fKDJv^iS66S^v}wweDb3Bz$;rvq*4CAkm6Ik-x*e=|7Z?W(B|(0{K$?Nuj^W=w zAgvE1{sNh`3?QC8m{VI<`|sahApH05-Mzmc>MxLdx9=-N3`hcbAc7yF45S1k2%<s4 zVD3Ahp<qMafknZl0ks_~d;IU!hb1S0mN6!IySvnT>@R!@WV3m?IEGZ*N=`VyE-`Zg zqp{0`)~UU7n`OBycJ7#|aL8s)%^#+K1KJuYJc43^qQcV!nixDaGbJNCHq6;GrAbMo zLsLt0wL@!YD9e>AH%(2pI;0hE$aZcmeNy`L>la=Lp57<DmOegb4;-?2Cbnl<*fq0l zWo6&^`jY(4=_MqFg_|pu^ZV=P=jY4E+bc%S*sx(uJ%e*Xz=kzB9gZuwVk~rQY?>5} zv}~-}8WqhXA}#dn6m4t_Pfk{}biHP2%Bv<bZ=ICfyoocX&Yi6Ndd_hMalW(q8X7uU zdYtZ}eEPcD;wxA1uycinDsvuoSeN6gYxdAe&||}<Ywe1Rsd5=-DmE=*5M!If$l$fb zX{o)6d@V3|+)G>|N`mv#O3D+9QW+dHlr=qb6Vp?D6Vo%3vlUGB4D}2Y3=H%Q41q`? z(8@v~xhS)^q|za`vbZEOSueF%FQv2~Kd(eDIX|~8`s{0<ky>CQGt=`DOG<%eS|q2M zTUc5c7@HYcCK{Ngq?#ldCMBDj8JHSd8m5|ANWSli0P5ld>2gWUNvvcrG%$#fY~cqA OGI+ZBxvX<aXaWGqKC&+W literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary.png new file mode 100644 index 0000000000000000000000000000000000000000..810ccc9800012c55f62a270751f7bf07420d6207 GIT binary patch literal 1076 zcmV-41k3x0P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rA}_ADh~)qP1Hnl| zK~#90wN*`MTvZhQ?s>m6nVHNqV<V<2RA`J~cP>&T(l(`vpdh*wDgm`28+Rrf>B207 znSvTaT`8^%R9sf1Xjf*TVv|UsNfu%uj3iC+I`8M4<Kn$}ok<;c-pA!~-{pMg`@VPX zdBFcPOs|7$*FKu4)oPCd0%HK?1aX`oNn*rNgeVFT#gP?7A;MOORx8BF@KbkQe&w|< zN|j@~b}wKengB2g08j-qJ5WXXw3!(gB3PCMB6E22=8b*;v(yXN_gq+H09CLEL<A}V zQH6>^RiIfCGJtIp9LM&9!-MAl;J+9{p%7s(GeiX}3}Mbzfe5EbvKYs)jR+h7$QiG$ zu2L9=#hsm<V_RFB4-t`Lj7h~B0|Nsx28z^g$-z@43WY^vh>YoCT&-5mPfkwG1wl|J zBHOX;sv!ey(}6-nP^(ojHg*OZ8@FKqNM@6;g2;lQlxz;%Xf&o478XW`$V!<$I8+ru z5MXxp1CVK<*yrWIsscdaI4-)ZSX*0r0)XiSiu4e^?_+&^1ABY>h~osDFqj1_3Q?e4 z!PF5{(EGZ34k7{(;qKji#BrQ~GE^9y@$}Xk=WPI}*XuDeYbvXE0ue!_QUNm~NwSJz z1q-_3Yyg$ZmtNd||H_q*=jP_#U0GRqxKt|H^YinT>$+fOOiWCGnPChN$1yHmyntJ` zzDsMIx#J^rC<EZL#JK+T_0KKKdSP^Q^wq(^!MCqoZN!I%hnSw8hDr<l6&nKs1=Q;$ zEHD3nN~Hu*g@}T)DV>aoD5%$Kc<JoW-zQGJ(`+;vzfDa|jawF(nVI(xMF%*3yb8bI zLo*;1$yUwEF$L_hV))d_)?<$kl?uM!;^bb7#Ts5*T>NBvdy5TXyHYN|b)Eb=3kyV% zfo8MqM5h&RUV5F+ojt?0ZK)yGCZY@D<Ky2qn}7Y;*XO};Y)B?kvXavFzTJ?r1f3?^ zrBYuaA_s2mSpk4%v-#=#{D)q>Ub*4>-pMd*Ay=!KcDFW=>e0s6_3;eR{U$dsFc9wT zZtZ)nC&nQ6FlCnEXC;vD^N!bDZVwbKGpE<I^QCsINBeU&nK`GOHjMt!E{r&4L~)W! zGrfN__;L9sEG>P5AZQ_p6C_EJGCm3l0ADSAt1~lCe`%5ROu1Y(fPrn<a9tP0LJ@t% z0({Sh=XqGUy>5gR=bj(a6GM;SkL}IeihmuuyUouyDHj1astRKahzOQtn@YK?p66<u uBrujfdHVDSe);w1?al4qTR{-41HeB~DNR5t@@pIb0000<MNUMnLSTYRkKo+^ literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_add.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_add.png new file mode 100644 index 0000000000000000000000000000000000000000..c3f05e28b52e091b4ad6269758ebaa8e67de09ce GIT binary patch literal 1098 zcmV-Q1hxB#P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rBRbk~T~7c21J_AJ zK~#90wUtYZ6jc<4zk90sHPhWpGc6d$M*_}FaEFh@pppPX#z&%w(WMDy5+7tXZbVQN zNMJdHCQ&B@R~i<+0t*uoi~%JsB<y%7sKdf&oV1x?n6|sC?>R22y6M)mJ8$LYrt0SW z=Rg1b?<x47hU>R+{P=s*rBdl0P@DtrTSQTdRx2WEHfc5+G^1wFY&K}r8`SF!HjF>; z`!mlz|8c&!dNJ$=EF#mu1OR4W$%Yy6(`M#yA_PHzh+8>(_RK2akn{u2X3_-Wzzna7 zs$#0B8K#DrVo4Hl5Qai36=rKIw;ludFUA;#s>geen&Q=?-Y2V~>f<CyOez&RRZ;*Q z##gRfkw&92u&}VOdVc<wJ47VqoQsQf4u?aW!-)0P4tQLNVFV&h#JL{ELqkK`cJACc zTdUQ|A`+&;aL9?n+H^2fl~QSl&6_uI{rV*wpovWC4UqsRG1(4qrBa!ho15DpB0<db z-^0wP)oL6%bP#cM1_m=7U^4}bR4Pr66j!faT@Sc^pv0SGvstcPyUx<mGEvmRw>;h} zUJW&9J6O7ca(27!zC%P15pLdGCW@j2)MM)Dj+d8T+!g|q%jL*>Z*f`u6R0Z1ViE5> ztyba~Z+N9AE(D6N?Rawe-TnLDpPik3{qp6@cjoi?@W_!PK{}nrd(ZUrG~RohgD8ra zn%d6!^Iyjv_rB{8x+(**UL#JPI{8r$1W!y%Ogy)C?b=t49<4+xD=X~Yy&KaytBN7R z!#T?3JQpr}OR<<o%}_ObGPRqrh}6pE5>Ia#`Sb3vSF4pu<%gM>naLm!w`b3rG@G|r zvu22FE{i2Vrkbpl*f9p|kz#yoUH#tsM)J9Aw(eVh)x8Ge$BrHQ;Kq%4?})-;AxAo$ z>Re~_iW&)MGTTaYOYzc<7yQ;On|v4s<|G}8$o9#}$#1IF-+mn&%#ccjXi}yoma_JH zyCEeBx<z)arSF`ox^(GL1*lf5nZ0}8&J+sn%;3P_BaKEq_NQ5L8LX4&@Zq`swgjBW z?It%oJlt4XoL|nQGwK{24P$08C+o7n#f#r_`t+9o{QT38eEP`=-v;ij0b*~e_I|Xk zwW~j$J9mz$siy!~w|<O;KNdQS30F<@U__Cp8MQix;rjn*$mIsuwd)N4PM!RMOeX0S z{{#j2?DMZI3{xip3A9isSfNm~;niguxogD6N5|~pjT`OpiA@GDHaf=W{iE!A=Pe$3 za3i>wPTxkqxLEzrw+aJ5%FJ-iAtD4p=!%7cWin|44s6-FtrN5Fz`+jY-)qn@fWbx4 Q&;S4c07*qoM6N<$f_JD5h5!Hn literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_locked.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_commentary_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..8e2603a8df0c0d61c3a6ced692b3606940065d22 GIT binary patch literal 1204 zcmV;l1WWsgP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rBM*$inQQ<61VKqe zK~#90wUtk7R8<tlfA_pMZ~jlG?a(5$f>bGxkOqkhh>`#$gqY|?mnN7dMoDAh&NLy0 zg)AG}g^C0dqsF*U_lgl>*th``C^Rj!jZjRQ!t~#C=Dm0CaWT_>Lfv`Z;wJCreCIpo zedl}dKZV)s;?kv0`<k1ZJHcTLSQ`^XF>xFbg&|>BBaA{X3~SV?HLBGbd%O4j{o3nq ze48t@l>N<sMWhcn1b`}N<3g4Cv%<_^MDRQh5wmpl>g6Wjyle)XN(OjhKo#p8&N<XM zoGR)RRfjf;hymXh5(z(5Sz3G<;J+B7D9%}|wK#QHXK~gxPKR^0UZjzeNchG%5&)}= zZ{NNxwOTDRGc(gNIXSUKL=wiBdb7r0Fo-cI^?AEh@OmeT;)xg$V>U1@7K_KvoH;XC zsZ>fL;wOB+XvCl^bWoggG&dJHa^x`M<F_z?YmCWRMa08Mo$M;`@bGZ|g$oz<iilTd z`edjol}d&4=RZbFl}t9d3ash?C6Nf&Fp4{O?sNfWGf?W6q*5uy#>SbOTOf*JY;3XC zVV&X>RunAjlG3`?_og8thzRrZ3q(=W0JW&Itk0Ks-a76BluD(@TC4T8HZS0uqfjVd zttE~dim{4yY{>J0!h5GrEqrwD+-HM>gCC5HjBL&2a{kcJkQW32)>``d`mokw3`9}H z$&)9zcI`J%C7oHu7)8~rEfL@y?Ag_<xXS#pHyVcFPhDMIKO1AN+_-W5R8LQjclPXA z78hnI6q4lfNm8i<)6-LAvl$*ee!z<dLw4?bO#9YFZjO}Awr9E~zy9X?uY3`yluFIK zdUX4vj@|Fh4i68H_V@SqdY+hpfe#78McUemq|zx=73UOnj#N72l_PNLW)n`E2m;3o zyB{*QFt!!I@7}$u`s|MFxpXR3wefP*I<NcU#fzU$O-))u<QMX3f*`TF&dxfVf_M(k zvseq|a)M$pA_!ut%T@s7?bC1CV@D5L-}lr=;ETwK-rnBdXJ;Qi$Yzry5<bpp9kd}S zbxIV~W#v>+RiYR~6yHmS0FujP<7_6q*tG3fRm6+t=H|W_8v5k@QmHVTN+p5DH&Gfc zR|h(9pqIOMvy6_8;RhA0bNq7IasAIL`&V>qMAl5MwY9Z2SDsu*21#e?<^~O;TyakY z=I3WwT5P9#&kkBzsyyE{O=m|;xjerrw<knvt*x)=`j@)yROSBtanjie9j!6N!V<<y z(%$B{eq)9e#`sN#Hef`NC5+-#12Rwf(M&)1i_VT3TS^r&*(Aw8u})}j%hwtI8x-J& zAAi+>f&Jfk;=Pp5=M5Nq&nE~1GU*K2Oq!|bKg`7BV<zs+(bks3TBWs=qu9K*c~6aU zdG<>i=QBV;RWZgOB6yx}3i-TdlFw-rcQSGB>Yj<a6?%I1O)bsms>_wi7{EX8pg%!t Szlr|<0000<MNUMnLSTYPfI!m# literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_displayconfig.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_displayconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..56982b249b22e6d0da88b6760e8953e1650f0f34 GIT binary patch literal 1146 zcmV-=1cm#FP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkADIUV6FtPvu1P4h( zK~#90wUkS2lvNmppL711X{R&)w4Gik6ttl?S^|c|1T`kQV}~&kyd`RcsKgjHhP@k! z3$H}tLfnZf6);9pC4?wK;|kG4!~!iyORv**X8K>wIiHJZn+h}T{Lb>6^PD%|_r3@I zr&6^xjvYI?uerH-6F8ItYYlO1FeWCBBBCfHiX$(ILc$;<2to$>2PbwvvFGz_E?-F0 z0&A`J0S^Np0<ydzLS?NeQz)(RJP)l^>D;*=8iBWKg6r#2cv@ktV8!8_L!85jke@Ho z(U8Nc1d^)9CLFW<>k%8*mrKP*0sc!dg5aFRT8k5hbrxqWt>qYZ>=W$l?8;%}qjyLq z6UsS~HNi)Y99GsE<y-<|4AvS%1Zxb&8bn-`TY{&x0#P-=CXO)1sHJkiVzGoVj#9Be zbG~u)k-N(|L2D1C(KW$g7!U-3DwQMR80O~-lu8SPVMtSxPngY6>e@)yltn~vipqcy zlF1ac!0NsCKg}FE^oCwoSR$3mFh5_Qr>B=|*Zw4(PH{Dpp>zLBIA<$E6~P#TlN2is zz6X5#`0);F?OW&1pUJhfw3E$d=;`UDTrLwV6^TtV6SG?xo!U&fY!CsZg{O9nQ(Bx| z<=g}Q@Pl_JUwHB5pWE9vJ@5NDrl%$u9UDO*bZ+dxS%Zk?+o3sT3kCqK9FIJ38^58h zI{3hA`?F8)dGhr;({npSq;70%lq***vu)cJlF1|r!B~r<iYwNJ=q|9=-`DfXwb9#$ zr)TDrh%hlRPCA{YxUh(y%c8Z$Izha9xlRPP#w}~XiMe7paO?ITZhU-vad2?3DV5UP zuYD$exkRD2i?(%bBoYbMwO;4VS3|-uT6P1pwzLzJ=c|I<g`dv<7#P#~+}^#9-@G{{ zHV9OB=`sUzi~JrLZpAU38#=f#{TJ=^LB$bNe2|`OCYMQ91)HIvp%XiI?i~B>^l5LY zJpbU9{_geB);^-M7wI1RoA09#-_Oy|mgnf%ubEjWEDuld@!o^1ZL(h5eqdpEczF1m zQ>PAY9qb-&X=$SVzD}ke+Ci}~M>3VH{BBi}w=%zKidSms*=Kg$@O?klTA@7;)7!;l zTb?e@qao8!N!r~|_wNU*M%r4t+CP9~GC^~`36aX5(2%HSQznn^yk(gRL9o`Y%B~8I zV@nhplBr7W6$+))s-nbVnFEjQ#tDp!TxV)(hNY!|`h>=q<<L|EfBDrJNhFeAc-nKm z?~Cu}q$S@fof|r(zqe2Nx;IO<J|%5Uz6@Wu$jK8YY0Rc&W9J6$Oik8S3{WV{d}fW` z03<~Or4(9gJTIYgzAtrkDT$3id9r2u_5ptV?b7J=(UG8BE?))s2crHLJ)IqSxBvhE M07*qoM6N<$g0M3hW&i*H literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon.png new file mode 100644 index 0000000000000000000000000000000000000000..cd7935f29c8f05e4771e53f39da4194259ec8d3b GIT binary patch literal 1155 zcmV-}1bq96P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkAC?|xtiTeNm1Q1C? zK~#90wUx_{6h$1zKULj5Gy9l<VL?_wTnGsPSz}DVm<T4ukQfs^;D4YO<H;*A9!b0t z4n{bk9*i6e97I4@Bw&z$L`5FUvan<y>}!~vnVx$6Jaq4{F6`0jRJzmE`P8?*zemIW zG}KB9M~)o+pjxdy4*{jXdxy0S=PcG3jA>)6iHvE}PTQnuo9)|nOuYNv`(O1|*38E% zfwk5j0IvZc0+KI?kX?()6iRENC_-!17#cdg3OM*w@Mm8hs%Whv2_BIE3PK1-2m}!% z2qFQ=H_-~>Sd%1iso7X~9iRjL_4+ma!{v+nrfc&bj!ce+QSY{S=h&zs2KxIcS9%E{ z5WL3+Pw;^de6~r>NRn8EKmwo_!9QNP^wC1Ab@=SjuSbr3dhlZ5{=_7$l%Hx-oH+Y4 zqj&FNjlp?`_m0qkXD1PaNNc6FQXTLYr@rrRnAYc)PoBDV<MLIfwLZCf*DJNRcD%^y zq`)2R`Q_XN=4&;avv}um-s8Q`P7wmZ3tC6SajZMw;qkF|tn;NSL+5*d-}?HhBT=M7 zlEiGTtj1P*7#_XH#P}rE*c|TgA-5%jEEWh!lF$J+)7JJhO`GjBEdz7w)>gf-hPG+b z6-9Uv>drDbIfXF>>m1HGy!UwL@jl>#5ae+N#{l(4!<yg=KncKyfVBp#AT@1#2zci( z#$c=kBm*w`EIvy^Sqx*YxW2G(uHH_QzD*lSz`BQ1Gf`FqhP#hyC}W9IOQBf6JBzcK zV&`(7z2E~+g8lG=)3uq|p$&U?uP>E*-=3R)w7Jo2=v&j%{PSoIe`A#D>I#)gFV6eS z3h%Sj%L6DOJT9U|D;}&Vems8W{K?{`XDb8y_w9dh_CoKe+qVa%wIJ6=kU~PCx10K- zI+aQpkw6GS$YG1Tuw3!nLVY0Gx#g3(Y4z39mJRUI{n^>x`pg`yN*8wHTBc`anVqZQ zoXdRm0SQ6~lI3v-Pg;?-S{GY$wK3l|rRKy#YwC@KuGFNF^91V%V-Im{OB_de<w>qM zQ|*J`gCNVT7&~_2Ti_DV4``)S*t2=dp+b^WYqc68pk5eY)v5}Df*@JX5CN6~<-cIS z0mJ!JgM(XH|4d(+Bn2v!o-99eP*@5TS>E`b059E626t{%N@=pHS16S=8p#7M`R9vJ z$sd+_{M5GDNui}LWyyVcf6k}(z9U=nlwqyMSl2n4TKPxArQfe|{P+o)&9qZED=Pl( z_!&8HVDOtrN4v`9vI0dM#S{t!y1TmR>F%ObEKw{L`TMV%YJ7Z(H{aMR8#g@1ozan% z!2t8~Ge^BEcLRxtpp-&uO%%ndQZ7reSP<(RsYzenv*%U0_U9irM@EO!X0v$<;9t<X V*zcs~`X~SZ002ovPDHLkV1mk<DI5R* literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_add.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..06fb28d3fb8b6a94cab1591c35479edd9877d810 GIT binary patch literal 1197 zcmV;e1XBBnP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkAC<G?o_=x}j1UgAX zK~#90wUte5R8<tmfA_w5)9J?y3<as7Vj(01q#6m3sOZX&7!$j|m0M(CTp4zxaYI7l z%8(EiAgoXqM$;Nd6oFcyf*}ot4HBuPw4^PaeoSYk^FHpq$HkkOejrQF%gasPefgbp z|L5bv|77ZU8|TlTIg-!kUjm0xV67pJ4aUU8QA8AlL~-OrQAiks1VPBIox7(#==t#L zw%mq=)bqev>m$G$0EmFpHbh9CdSnWvHJ<08wW<sbUR?*A{7>-bU!BfrtvzuT5eEvK zbBJ>|5yS~14yifO3Q{SJ@24_LmGVJ=2KeUvd-~_$+lLCpg^x$4C*7DeJFPKvDvz#? z4zjs6oO3v9vCiVG!#SHcsWE&%rJTbD&~@-Hckg^su2#=nzwpiI#om**)8kXqR09Tz zPq}pcSH>PaCXOPEHCStK4R~@ALGZLzS}WB6pS|*9M<uF$F?{*Ty$8d88m;x^1N-+D z-`)KR>-{wUXv=RmZn01-VoZ!R7Go{e+T;|@;jEywM=F)l4e-e1#QU+anY)8St-v4c z?fFs9)6Vx(Y|E`D&bKl$_L!;3Y2qlZ!41~cWN|LZ1%mJUG{8$ibypAsOJNXXf%#1v z^EQej!YHKK^ROb6Ow9E3Q=%v$HU?u1)>^EwSnIG(aI##%DS%R?5=YLafee6kjyR6c z3W6xaI)^oeD2j;U7?1>5*I8^*hEh*sE#gwSe4`Wwe*4xf8DP`Q(^)TRf`~_pMN|~y z1u^NSG}gqJIEmPpn$A|Rj%UGk<jK|I?A+j%cMfdMWZT}GUs&8$S*qy23kCjKoX0*G zBfmaJF4u;!Hj%>Gr1WYD6z7(ks4m5m4Nad;UK_gHwDrYY*Wp8lpIpDycIDy2u7Vci z{wR|6Nw>97S}c*vWf5^WC%77{&U0%co-dcWygl1LD@E1zQc#T@ygEKN*H)UHr<!Xf z?%YUWc8<CEBF30RSL+ZbI44ORJNK*<LA83jI$xZyVU$^#nu()QrQ94ufoCi(Hn@oy zOc;|&d9}`yTEt1z)(O@LvQ~<Ti<iCw?f@NtR!X_Iw{1V2_WgXZSVRQW%U!HnmqSqC zB$*i^z)GO31_K5dslBSZdk33eXb*fpO)l4()MpLkRzUmve_EyS(9Jt448v}qzcDLn z?gVh%dv=IYnxyMhva03jDfQn4`uh7gckV18^!4@8+uJJ*jn`VEgjRl(73+%mJTNf8 z(W6HJ=;`TUYHE5pd220>Em3S5+NtMXG<0t1<k+!ehzKW6oS?b6d6mYi?E4?C$?@ae z-+J2HpUq|!C{kXEbUIB-a|^94&19M~{5~|S4!-p!GcyIsizW8$+s90y@O&`9!outY zYqBkXFCr+V&|2epDV57+rKu?`W8>o=z4rQERoCdtQ>O@nunh1ozud`+a)>8Y00000 LNkvXXu0mjf_#QzU literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_locked.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_lexicon_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..6ce5fa866124efe648ec04d51d3e2c03e6fe249d GIT binary patch literal 1271 zcmV<T1PJ?yP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru(gX+rAtL)Lr<(u(1cXUM zK~#90wUy6rTvrvxKli>LV~=N^J#}ImH7QP28d_?E5e-5D7Enb(P*{ZjpllHTL4~@k z#J=jHqFohOAi6-!qG=i$Le)SOrD~gokhqQ$CywL9<C*cyytzNl>0-u{v}%@|r>7^q z`}Dcrd(QWq2mhxq4_bKj)t8@ZG#Up%Fa}}_cpnJC<DJ8~0nWR`xdDT6Kv@oW;_#EV ze)+3k|EX3yw39vvY^{9`_yGW_prZv<hS#1lgRzz*NwC&*PoF+H4ZQf3;1~Y*Qemx4 zR3fSZ21EoEK~zyuR0SPvVhyCJCCk!@UU&D00AujKE`DU+I(PQyoz~88RyQ|fEr!D} z1P+*l#f1gxMGX-_VkAmLq9787n~WG)mKqT<0J{f%`}_yL-R<{ZKK0t4S6~1Ai)Zue zw>IgQ{G)Z7H&4CG+SO}#=Lj(nV?f66;Yk!FvDR2?%ozO2iN7y&UH=c~j-UAG(zy?V zwf6Xtr@z~J=E-j{ljVG7BmX?}K0B=zA$Velgcyl24o@M1M8(>KG)?Uoyt1+Wb06Zw z`P1)B0so$zZLB7Vl`Km+RLtNTQ>?6A<JQI|-uV$c5M`7Wkzp-RvMgf^?v?!~%ChVY z%CZhL_wQ>&=N$t#U@}RFs&s;9bMrRNIeZ9&5Qs4nLnKBaiXwW?!6`te+x1Rj4om<< z5xjR;1Em`fMTjBboWpq!=n%M<XN^M}>RuT~iaWczXF7v2n|<Wr31I)$?Yqga2^?43 zEsXOdr6;fC#NY{js5pdCo}&_lFMv~kxN_rUYqom&;U6DaZr<GdS#ziTaktmCYwb4w zZ8wRR)@aNW6h(~?BO*F>Lv^ae7)90GYoa~yjfX0~+j!@_<CRCgRxBPndhEuj_iHDv zTv@zh6}`BM<{5ddN~hhSDC(#RBFfg*HGcBbjG5^^qJ~dCK4ZSOeDof;x!YMxo_h3H z=gzjz%G?Wl`}+2FEg0~{B<!2!&e;oWH(Sgv%wd3uNyjgqg$tidBRWl<3*UHrgI4GA z!Z^oezkjyhY^}$Eo9Nxz@~+d}oh)6MgoyZntZxwpo-|EHou}ADNRmj5(A>@#l$JaX zh(<eBy#D%|e+51O765CEkslp;^rbw@8m(3fRWM&)WO}+lF(8WfLtDwn4L*RiN}5c% z`)5S}Rz|m3T6&E6x!E$ya*ASV=+6;AL=jb%m!Dx}<qa-fy3B!ti$qCz`=n6R-(C8` z5aPbUxb)Ox#u&@6>&>w0fXeVA1={Vqba&@D{LPF?rDT4tO|vPitqu4xcpQ5(K<|I4 z_dQivU%$fSRF4C*ftjL<Nh-|G3FklDy4N6I4(}t*2lo7KzT!u7^Tu@!9vHBHUytfk zg-WhOvCPlaAFTLqZ@i<=Kfm;s#3oPI>vaQ$G)c+xoa$tisp=$aH~(W+uQplzti{}1 zjTn{LeKlqpJQxhHvvc>g80u9ZQ&o&HSZhg=)D-o)Rx5|phl6~2;jQmn{IsdxKeGJ4 hZo5|Yd%ep5p95D|yuZ1(4{HDb002ovPDHLkV1i&bWLE$H literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_parallel.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_parallel.png new file mode 100644 index 0000000000000000000000000000000000000000..b1d3ea15504e3b78027aac3a0b8a58289840b3ad GIT binary patch literal 454 zcmV;%0XhDOP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00004XF*Lt006O% z3;baP00006VoOIv0RI600RN!9r;`8x010qNS#tmY3lRVS3lRZ-WM7d0000McNliru z(E}M26)0vXLahJ*0YgbdK~#90)s#O=!$25^e{Y)W#U_-XDMEB9c2GKYkbqx6p=%eH z5O6aP=;q)kC?Znv3phB7An5Ai=<Y0ngN_Cx?R7C2{Bub!g80C}9o#*<_j30myt5Gm zj$u?+EXx2vgCK%!Porkl-@-7wfFd0LLNb&QTfN>r0CBnPi|h5SxY_TE+w)^(v6fDV z$OHiX{EAAPKs-DFaiUylRtx}`^4ic_^Dvg%;I30%oWjf+G{#_<78vKsVm+OtjT|u! zEHx2pgycoN74*rQx34gIcCi<%Vy@Xh!<|Ka#)j!QNGk4C$Lmh&{ow5MWD&pkjwili zmVUIU^D6T|^tiKoaCbB~Yz;?Pi=t>y#``V4?=O@&|927a<%499_CGHIWMV0K5g-#6 w>eWvXpi9n3$%_Ehcbppm$`u3uBmxRE29W7~O6;-u3jhEB07*qoM6N<$f=K7O!vFvP literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_startconfig.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_startconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..494cbb860a5cb7fd3df649df1a9e4ea2a422e0d7 GIT binary patch literal 1058 zcmV+-1l{|IP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkADgynAKRy5e1FuO$ zK~#90wUy6{97Pz0pQ`E~GqXFhStCIcV+42AD26Bo5u*V?%t<d^6g=hTpO8Pmt2b}) zCY}-zJZ`}Cs1h`|A_k2SgR5rT$?i^XcU65~dFa{M-Qak$nxdhr>#e8We!pt?pPHF9 zaOu(q7Zw*6kAq?ih(tn(P<9&k<-g)29)D3mraPsjd*I$3*&5z~>_l>ey!q(ag zzzYDR1Zgsm67981W-!*`oWoi(UR_;T0N%6r&|AO(w#YM_HINdbimH-S(UeG<NJ&YP zMXZ4=v*dZ!sm9x90d|Sq($doNs(RXcpLy@OcJ2D&b7xKyyhlVZ7Ob_X2tIhm+Z9nf zF$hs22FUZwsFEKLF3a-S<>lq~kGMQr|9i;F)m0r=+dQ`XD9#x~6@#HS*TMUS@pz06 z9*KggP?R~&S_8>2**ZX2TU-0$P`9V&PCUZdV-Ew^m6gx&zNRP&=6YS~W{2(VZLG1( z_vdidVvM2RpC`|9taW5rX7>{(z;D(&d^!A!_0b(v6;;89K#YO1EFmSDy1{lKskYuH zolI|go)_#VZn0yabAO<>=<(j;T(%o4yl-flhLn^LBQZu)1rb3+5lv{?OYniXiFl4Y zFh`z^Xqtxk`7Xgns_~eutu0g)mpNjLNEBieR1{HZW0=xZ>wxeu-(ofV&Tu#)*hpD+ zh%r#@7?LU&$Qn0+*cBF3+FZ{R?!GwB;GLtm-v-?Nah)=jL<!90U9zmh-O-3G5jvgD zG}j_+#;0HE--N5J9V95Rj>IOAbuwa%#1N+msOyG2&rnT75mHJ>Yc4v2Sbw>EBW?U} zhw6`t=GThisT>g{#@Ko*f@(rVQEe-*y|=`(tk|e;?|i~WdUc_{V2+=7aB%qWVn#}B z0xG3xJVl-(`$ScBN}Og`G2Fbn`R?Z3&ED|OJNEo*FMYZ&7(6o^4%w-j_T?-iFN#() zwLP&v4Ku6&Hh_({-#Tv=4-I^t7c4CF(X@BI>O?f9M7L9-x<@*Tcy9$wv{DIc9cDr` zjn#zC7>jiiZ_|IoZMTU?8>jsb_wV-J^Lf%mWQu*Dq<32gf)8=JH8cB1!&hH_!<8$a zQB^fDw52|i`0|yj>EgwwKX%rg>G%5v44KO)ih^FZ$6T*Vr|eLcCEu^zFe-^x&b^!- zI(C$wZ{3_N3@{oEKa|+-0eMOZV+__>oXgCh-%n*(q!1&<r6*3EI?46#zP)wx)=za+ cRW|_s0aQ|J;NXGL^8f$<07*qoM6N<$f?neE;{X5v literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_swordconfig.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_swordconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..ebec174b0e2ca7490a16150d59bd5083ef05cd35 GIT binary patch literal 800 zcmV+*1K<3KP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkAD<1HWQZN7j0<B3z zK~#90)stUnQehaz-{Vn_wz1<e+uU62*dGI3?J$p%!*GolEf(QL?IzaEV*P<#1iRQx zR74PU6BS)_SB$Q@2{r|xAr55a6giIY3`w_aG}B{=&UQR=cCiT&+nnyE9(XT4_?{on z_warI|ACMl4>bq{fI~e!J-sTGN|()M9d5Uq0|1cj11f87ZtkTh>W;-?p-GZN-EMat z0QLozwY9aKrzq-?$z(c45Cr&qzL3Y`ag{IBQiXyfNjpu`4-EzbiQ{-N5D0i(F4xUW zCc^<hsTQ!(XfzJDx3}Nc>-9}arLw@Xtjp<i-Vy|1u?z*Mt_p?0V7S`Z*?G6Mwe{fI z+S;n$?|(fzJ9}Rcgyf&lY7(oAM&pRpY8@vCLY+>h`Cu^kgk{+m0Fc?vuotkJVVHYn zvw0Z9umkaUd^r>fJ>WR*4FKeJGF1Yr2L=WnGYm77%jM*eNMtb(2#hT)ElmM{xSMge zjx~0>{W-%h7xVc%8jVI5W@ctaQ>l~(0M;u6+7Ybj>+5^g(a~{96h%oa7K=<zPhU@` z(_R25R)PX-en~iT%486clCF@;rxglClg(y(O4IZpj^k)F8Vx%fjv=1s=k^LMCq{&V zV3Qoz-H^)BcU|O(ZiZpbHa0d&IF1WDozBb2WO5$<TBp5$QB{k!`)7E8tvh{kyuQAr zPOH@-p-?C|IXQVHkw}EAg#v6=A;B<A({Qe93?mxq3sOX~9Q(5Re#$Yze^1WU0tEm- z=`M?TaP-=%Z|kdgT@gW4h)hhz;z2!4U62<`K|YaOt_3Wy_Mfq@<4Uz$+<=CXR9N{q zKcSS#^FJ2jUd>_M(XCfiE$OEZ{<lQ&SATwmm!>{{eaU%!699k#Ko&M@sJOG+3E7%* es*SDrcl8_pBLqvYk+!!00000<MNUMnLSTZ(OI>*Y literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_sync.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_sync.png new file mode 100644 index 0000000000000000000000000000000000000000..3c0a52d9a6818beed4c2c6ae5341f00bebe69558 GIT binary patch literal 629 zcmV-*0*d{KP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00009a7bBm000XT z000XT0n*)m`~Uy~CrLy>RCt`Fl)q~eVHn3h@8xHc#?lyQo7`X_IEbKPQmUakqz)oD zbQ2|6Y(a49CJ0sVAJ9<;NyscXIhbnEr8WH%GB_NGE(tbilIC)E4!Is_JezCsU7nY_ zdp~@iFVAyAQ50lZHW(pAQN*Zk2IZDz*?4;U7Vk?x_*QsED7rwSQU$Qi*Vner!URA9 z5SoTCK>&@lE$ck4B!FhKiQ3a>RH{^#Hvp_U5xCdW=&CBA=mOE*w*Z7byqp{iU>I20 z0w=N_8{F-7|9R1<R42+=0%#o`o_IKE3;=EbrQHG`_23oJx$^`AJ`Amg-{<2<)y4<U z%V8cT7KukA+_|6PpjIb#`I7AgC(C4kWAih_qY)M_#yF_eITxPgsM)|b9YXT@(YqZB zx_%+fyPst?-+W@)qvLfMq)R!9$t(gu2%fLs!>uTaaJbS#jx;=yLAsO&V6~KEJDEk- z2OOW}Kj1fOB%rafSD={4u)3e`*HVsRA_EM}aaop)vcvoUR`v>gr~7%^D%oEft?xG; z0kECSnziqA=jO&}uw4fovw9>KUzaldl?B2<osU;Cv{m8E@i6>2W1*{Px*%<~er>0~ z+>95uOR@(aXFUkCbN;L4Mt6Dnveb`aH}#O;f4YPN{jqS5a{NE}wL0z2EP<&YpO>G2 z27xK4waku&=X2OSK-?Thr(5U9aeQdTU%bxa34~9*lf8RYoa)$4PF?>6=}FOQkDce) P00000NkvXXu0mjfM!X&W literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_tile.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..344d4a9210230da160167993adaded3ab9d6c9c9 GIT binary patch literal 418 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6;L0X`wF zK$@MMU0z<kI%Q5(#LAlVnU(&VYYX~Y>U%mHCwI0^=&YaC)!x@s-?nh!!aaNTOqw*Q zv$NAu@%m4oPN9+@zhDM_yMKTG{RJX0@%P_9hdO;Fpe$pOx4Vnrqph~PfE+(h7srr_ zTW=?Na~)9NaWT#Mvt-%Ff792htZNaw^WE^wf!lq>?G-mZtWrGEGQ;q^!ZL{iB`bSh zEV`E-xH>g+pQvE;zptys!j5ea{juv|1N-aQd<(D7pX3cR*}cRyq9iy!t)x7$D3!rM zLs`=^H!(fcH!(dkIa|S0&rr`m!N5S@zz~QO0<A0*l8Z8nODY|5D~n4qll4-I^-@X; z^7BgclJj%hqR+kt8mR>~GBZ6dv7{7erjdnFvWc;=g^8KDL1K!jg_&8JX{w2FikXGE qrFl}C`5oToR-i6UkS>?hoWx27Lj!{t$rgT~AcLo?pUXO@geCyWKAYSC literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-action-bt_tile_auto.png b/bibletime/pics/highcolor/22x22/hi22-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..807b018849c3883845f7e57c75d37a9d98021e48 GIT binary patch literal 745 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6<H1AIbU zfiyciyS%)7b;_Koh?O<zGb{Z!*B11*)c15YPVQ`-&{;pNtG%zOzHQ;cg?skwnKWtA z?%lh$Y}wM%(o$bvzi!>SMT-`BczB43iRtR<*3{H2S+c~!!a_?+D<L5vH#fJpw>Ksx zrn$L!^XAP?PEMShoU2x?nmc!Hb#=9|u`x3<vz3)qW@e^|iHV}3;_B6_y}iA&v$G8h z3?w8Z=FOW|T3VWxmNsL?jKzx=^YQT&78dT>wad-TEhs3+-rnBa++0*tG%_-B!-fsZ zmoJZsijtO=HZwEZv}sdkXXnX}AtFHUd6oqE1vBv5{rmgxFA#wV5Df=lCR7F_3sD17 z0aFZA3eoZRU(l-!#y~?Elf2zsJU%d8c?IO`^mK6yskoJ#pde^qw2;wlgMqLyx3;vj zwY0Us#*G^{85ldZSX%7dv9oeVWo09axwtxe$c%n@9u^h_6ZuUW7EIXCu|lD3!;Bp) z%}YdfZP?PYX3n0bMMA4KZ0cHNav{gGR3wqtmrXZUma#6@wpQdS8&6allad<`&oQ+X zZ5p4rJ!Tpi&6v43LNo24{sM)h%+%gjLdDY2*46Cp>LumYyLar$+>u<t-u~RMmG#Gg z1BaQNxD6h5vk5UUEI2B<tfu<+KcFYvOI#yLg7ec#$`gxH85}f}H9d0^(^GvD(=(H^ z6-@OE^$ZjY4D<~Qfk+|H%0eNzD6_bv(jm99xFj=KFSS@NrL-VFuS737KesLV>}#Nr zT3{nH)AJHbN`YpYr<$7^o0%J%BwHq%7#LclS(v7#ni&`xCncI27^PZ@m^G^cb#a1p dxuoVKRx%hG7{o}n@B;-IJYD@<);T3K0RVN8GKByD literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/22x22/hi22-app-bibletime.png b/bibletime/pics/highcolor/22x22/hi22-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..7c3227906fe7a254686a0a4d3dd860afc47a8749 GIT binary patch literal 1235 zcmV;^1T6cBP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00006VoOIv0001f z0Be0rM)d#y010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+s20AdrGw}cb1Yk)- zK~#90g_KK-6jc<4|8wirT|EN>&NMJI<2WXcJj4t>21J-B(TEF)ip0l`xG<O?8y7%` zi3@c_*k~kCS(^A@r6CxM-~?PqgoTO7NY5jNc{BqvLw9vo)xGDqsOoA-aJ)&SZqljm zp7WjmHsOEP$&+6az#syQ(THOWtz*PdgeVFT#mPHtglIHEtnFWi7k2GlsuqKuIPvKP z01SX3!jRTpAS~%`1Y%N(Ez4r1==QmDXZGCz-oNX9dSdNzI(+CL0YJ`kVJQMcV3@(o zU}KWKNzW32K%fY)Z3V}%b3v{8q@A^VWRM0nu1D9<K}=L4>-6`h9=JAAUXsh_5Je5R zo`>$$E5TwQY`|<_bn+G!NXl^>o0#F)0C47`ZB*=gTos=_Ag{dsW{<P7>+RC6XJ7rr zQ>$+-%wn!Oj}@XYR1dIb)d~m%CWW&}IuT|F1eQ_+2-$tB3KVLkW_5>pckjMOmTlhj z@rFk?ZM?6v#_nCxj#{KKeSHFZw(kZ296$a(Yy}vdC^5z)ikQJhpp*qtP<DB;hEP0p z<daidR%{zQHn3x8;I(xRqpQ#XBFOagG_~bBvN=Ry12F(d0yAvV>J#UHz;Rp<0JQsl zp>uH4$?g00KJ(ttbJVlE2xi9U=tb%6dx{dIptT4ee((ldy9gFeT{Bn&n;#n#*Y(aO z!z0?P*Y|DT(bG$vxdOD-uq+F4+z<eCw<u~8LcxF~NeGJpL?DtBU;{vH&C30qrEagk zqYFw|NrXhWR2q=qF8+ve`6_nrc?$q=?C3!lqoJq)lSWUt89QWPg(UII+VVN-R1PYY z3c@htFbs7VhNfD*je1bOquTUfXk(IGrvnt`%vhFV!vZ4&9YqL&K!_-+Ru}B?@i8pi zo==SkBu#=bI*S^lH39y&3IM1_b=1Nta<-3ZwJIW_M@IfsQ53=VeY6Tl!8*MdB1l-0 zb(5*U+`?C*<#GMZ$Q4XYO(6_J1VMn|;b9buMJQ_Cd_o+@h{6zt1)M#cbj-~|n&7D$ z-{MO7_s_3fg6q4e*XvZNRIHslpC`+*LDc$75fNx+fCVhcBaqB{v-0K_lNkN``1IJs z?BQR3!e5gU<mdBBYfba>^RR6v1IMg^W(q`-h%u0Evx+mvxL)~;emGzMIo3xn-<VnU za_@syf3BcbyDq9>&~j`HxMehfHQh?fv6X$n%o~@hYqdYdr)!m4_fAANJ7=O<Yc7~o zwZ;O@Uf6=u-)(>nLRd;=pwv&+K~JfKe9jxoz<Jklx30S<_t2{R<x9g?zs6)`bm`67 zR-Re#Yg4x%wGeHd3){9pL|J7i7b3|ZOWob@Ja_D_*R{D09XjxipU)k&EJXmpwrser z3qS9p;OCL^a_~G4j^h9zXk*Y;@KGKgJ!>xpo|~Kf!svD%fFmLxA}FO`SvD<cZx_#V xCDs~RYig=6#vllSk;S<Gxn6p4$D*AAz&}-)$NU06)j<FN002ovPDHLkV1gf<Hu?Yn literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/Makefile.am b/bibletime/pics/highcolor/32x32/Makefile.am new file mode 100644 index 0000000..243eddc --- /dev/null +++ b/bibletime/pics/highcolor/32x32/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +hi32-action-bt_bible.png hi32-action-bt_bible_add.png hi32-action-bt_book.png hi32-action-bt_book_add.png hi32-action-bt_cascade.png hi32-action-bt_cascade_auto.png hi32-action-bt_commentary.png hi32-action-bt_commentary_add.png hi32-action-bt_displayconfig.png hi32-action-bt_lexicon.png hi32-action-bt_lexicon_add.png hi32-action-bt_startconfig.png hi32-action-bt_swordconfig.png hi32-action-bt_tile.png hi32-action-bt_tile_auto.png hi32-app-bibletime.png diff --git a/bibletime/pics/highcolor/32x32/Makefile.in b/bibletime/pics/highcolor/32x32/Makefile.in new file mode 100644 index 0000000..c3c9611 --- /dev/null +++ b/bibletime/pics/highcolor/32x32/Makefile.in @@ -0,0 +1,408 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = hi32-action-bt_bible.png hi32-action-bt_bible_add.png hi32-action-bt_book.png hi32-action-bt_book_add.png hi32-action-bt_cascade.png hi32-action-bt_cascade_auto.png hi32-action-bt_commentary.png hi32-action-bt_commentary_add.png hi32-action-bt_displayconfig.png hi32-action-bt_lexicon.png hi32-action-bt_lexicon_add.png hi32-action-bt_startconfig.png hi32-action-bt_swordconfig.png hi32-action-bt_tile.png hi32-action-bt_tile_auto.png hi32-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/32x32/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/32x32/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/32x32/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/highcolor/32x32 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/highcolor/32x32/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 38 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_bible.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_bible.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_bible_add.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_bible_add.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_book.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_book.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_book_add.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_book_add.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_cascade.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_cascade.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_cascade_auto.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_cascade_auto.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_commentary.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_commentary.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_commentary_add.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_commentary_add.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_displayconfig.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_displayconfig.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_lexicon.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_lexicon.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_lexicon_add.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_lexicon_add.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_startconfig.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_startconfig.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_swordconfig.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_swordconfig.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_tile.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/hi32-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_tile_auto.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/32x32/apps + $(INSTALL_DATA) $(srcdir)/hi32-app-bibletime.png $(DESTDIR)$(kde_icondir)/hicolor/32x32/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_bible.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_bible_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_book.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_book_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_cascade.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_cascade_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_commentary.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_commentary_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_displayconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_lexicon.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_lexicon_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_startconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_swordconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/actions/bt_tile_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/32x32/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/32x32/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/32x32/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_bible.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_bible.png new file mode 100644 index 0000000000000000000000000000000000000000..74220692b543cfeacb6bd81b0a7fdf904e722fa2 GIT binary patch literal 1431 zcmV;I1!($-P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA1~ZjqRH^^~1tdvC zK~#90wO37u97PoVUR8JR?#%AQ-N^=`Zit#64Vn;*f+&JH3PDzs7*C$Ph(Znq^&p<~ z>Ma3Jf#hOB5WVG~co8Is2`l8F@sDiQXm(e3rn~FC=b@@=dS-W>S;1Orr@O1E@2l^9 z^<FjMe`u#py=I(q*0~Zzk)y~<bh|l<qQv1thvexepV6nDeNF%%8D+xLr$4$iGt-_0 z7={Q$fT%*4!OU>%z|3G*!a3(Vhu^Y9SvnMD0ar5i?0N9|{sRZ!1n?;Um{ABAV?gAu z6@Z3+s{Y;&^zIcJUJ8u>Lk7kWh%k5k`oin)zyH>ekrl|Y6xLcW3!s2N0-%JhzE{BE z9;yKxFqV+O!Wxt2-R|L)mF4!x1QKguh`?cDsRN5bMSMs^AnLEZNIfM802#nqOIeyW z;@l(P6Ej1Up(+tX6&^Tr6@iLESmQIPsRIB|z*vJU%WO6IFb~kVbGxO}y)?PB^gHsR z05d~aAmR<k!u~q^igHv%MSE%lw-_Qa#?Yt)Y?5^J=FOk&wQJvFZEY<`EMVur>>$i= z%zj4*_rg#qP$Q$NATl6B5qB5?)7n;|C|AtVttI5$JOXoV3r293&^d%fd!7j1AtH=r zS;SrEf%E5gzQ^3njBz$iVei_O<KQEA%#PXb(B6I<Km#i)b0~{lND>PLVm|QQlk4|} z1VaLVB1w9%g9J>YA#bOdB1;L4rbBbm(W8&$1gxOb`2lzSY~af;?#JyvfP3$`8)<4I zpa+-!FoYdag}@t<HYafG*y6(go(HfGK(?@8UpaF+m9uBJn|6B|X_{bSBEi1B%h)kH z12SU}mJk94*H+Hr4JknZZ^r&MNPq$S2H<l5UjY~^9i12(AJ^TxcVX||`_OER!x)2B zs|90>_k@Jl$8A}Kz$Yt-`JlEXHzA+^mH}K1_hWzkZ9vF$dU_k?=60glm<U4zK;axi z;wmMO3D118h^vnX|3aX8#Z@86I|OEch$4IMB>}U>ttL`epq{4Dx9VXbSl2`esuWD- zoh}uTkbboW><w3|4}BF2{Y7dN0#FMT_*m8nC}Mo8j2E{ZYOdcv-v6KgAfmC(BNiL< z<PLz9<E26xK-3XD(AUa>;MmV3!R^rtioSvqbALQ946YYLcfq>0x|*Py8^1zSDYdHk zh~QF7G#WDAVE8?QEh@0OnqqA&q}(dW)D-X~x}S^()|%Y)U9d$3I-L}G*F;IBwk)l! zvhqYEQUPzI!d3{VrT`3x2!!fDI<T-R=J7Ak+aUK2+G1EamXjxced5NCvw5pE1u_Jc zhzLdRz)=yY$G=*APnoSNz^&Hgjs5!{$Y<K^rY{xs<qWK>Pmx%C{We8N-qJ72Fa`AS zBL|je+SA;cnu4_>oniY3Mn7n8+lurE44tvroKRs6^s5stt#k9n_`M2PnUh25uG-KK z6J}8sUsQ-p{VcJ*Z8+v1R!4M#qTB7p(V+@_a^bRj_npIMT<P9uG@4`n3yENifi)J! zT4ZU8BuS7a3DPu$H5O@_!dQzJkH1O)aQvltJ#qX6w5O-BxVQ*w&1eb$z?CcCd{CD8 z?XoOU6b14kN2l9Cr`tiEcaaxeuyaU~1XGif+H5v78%s4wOzq1}P?QDT_~j?Mx^RuE z9Wj!tZZ0k_<J&6_B}p>A$tx7PtQ#PFon_g_7cYG_S-RB^!{hS8#mjd_!5*p2&mX1v l`J<b;<7EIl036+D@E>xOfYC8bT_FGf002ovPDHLkV1oSFl<WWi literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_bible_add.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_bible_add.png new file mode 100644 index 0000000000000000000000000000000000000000..27f13ef2a04fbc03dea68b946577e549e1bd3dda GIT binary patch literal 1504 zcmV<61t0o}P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA6b`ldXlMWc1#L-0 zK~#90wU^(EUDXxGKWm>K_s*R=H_eO_t8LQQ8dJnNq&0<NDYTCTEdypiAN&J^T3Ya- zYJHGE!Dk<8WBX<qNi<Ljg%(s=N*|==!Ac5wP+KZ$GBKIanfv4HwfeC4+4tN#N#>^D z9`?QG+;e7szw5icd#!VX&tW|I<YTU?s;sI;42J`TgAx7yfZ=e&v6U75?svXt_kaI~ z3XspT;Hgv3f4sQ3v<x06f(WP?>OJ0jDqrEf$5$h&stVJ`@6m|SsA4!8QjI)!-ud+l zNAJG(XTTo-+$;o~bBKgv11x@+h4XM>d~R60DGmWA4(9|B4qmu${wF6-{`|g~6)4Ms zEX(j-!9dXnsBv1DHE=w~EP{i}gq)1bxnj`oAKTo#x->I^Jj-w*__(k(fz>e8kP=nY z!f_C3tb_pKAj>i-i=va(o&jIH_o#WyG=Z2Afa5e(Obzvxe$$3J02sK;QI=&^FTR%t zWPSax?(~1(y?F5wgW(YGJ?a(JU_h@v9LH}ppHwlmu^Q1WPDGq@GAn^B&v)#@5C4<B z^UlB6-rkN9E554mzCyjH@;>Yc_2V?u3N*-=86pmGl5qDT;ClN;3`d*p;>Q;m^alyp zH@08`_Zp{<X|b^<qIX1uR#_(8T^@M(<=dY1zF#_5Wko^ug?$6={l*n{VEJv9ZrK1j zY;GQ8G(1F}XBeb<5N04Z=?#sB1TgY^3_DH0bvpWVQ5t0-bmlAOyOn(NTLXbjc6Q$7 z$|oKE`j@Y=aT&h+rQ0crECB{^olHaAA$1CZA?5l69(drRdw?GScLC-3^VuUWo+|XE zmu_)OOZzE`oVmH2yN+Dt!15yETBz5U0*`M*?ll-vqXNN<lVh5I2R;D)2>cCbjVgJ# z)o$D2!-qI><PPRLZJcxTdOe(T!4n#DpSES4f>5k9)q}>Cybb{at^)sz=dDjaa|osF z-@lK82XAA(GZ!xjU{sYyQ<NIX#NR@(NYN*R8xW{(sp^yrb_DN1L=yYpCB=J7TTQj8 zK(kCU5%pdv*frDyGl?b(PS=`9EWg$O4u)&=hl!5GWRseO0G44&$Yqm&k@8ztytM6T zxc(aQ{vQf}s--?pYBr4Jj)1k}wMLpkv>7}wF-Ak7@?j;7Zckn?CK^tv{popOI$rkN z1-r)9R!)E5LWI;MweI;OaBUPCixqD={ei(vDzLRxu)Q5iZe3&=3WOFtNhSbWL+<7- zxJd<eb_xc4mn79jSk{QL_Cz9517Aypn;~FU01gpBs2@nD0;_YL{vy3=)ZS@Z?A4C- zi6{R1?f2hX9`t$(h!ac`BF6ZEqbAbKe;xf;nVVO@_j=v;j~@NnU~y?_KD3HvI8%`| z6xq0RnT^X=QoX2qV41gg@7;g%)?06XWflT<{Jy)dE-vl&y@drn+x`^O8)bAnHZEV` z<jG$~6^t{d&+yQRhd8jjEWL#VUii7WxY1@rTBrru)jsh@D=#{V=K17^nQGp8E{ z9S5-|0q@nkhNdFoxFNP&>rjyNR%7*=>FS=l;MKFQRnPq5*o)Pu`e~;#-wJC9&N(ud z;j)afD9H1iBF`y`g3M)L8E?G)y1a7c6%aVEyv*Z||Cm-;vbwsONX_(Oa_-zeo?BU2 zc@*sSW+};BMxN)Gd4x7|?KTVDu89bFp2^zU30qq`A!e|)w#NGUI%djFzt69J{lc_p z*B{4^ACoWMy3oz@ynUTpB+jJmpZ@&!2QOXPcu+(Ppxf=r*4CB*;+)e~tNlCR^h^r8 z`Q|wTw&L71R#$%@0B6s>*4!eStyX(bpFH){)3jQ<`Tq~}G;}V1I~!a80000<MNUMn GLSTYX7v1du literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_book.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_book.png new file mode 100644 index 0000000000000000000000000000000000000000..29af6eb1e300a728204ed6c31d12d84b6583313f GIT binary patch literal 1182 zcmV;P1Y!G$P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA6*KgT6*vF@1S?5I zK~#90wO2ihB}EiHx2n5GX2xK5(9CSXkHBTXL=?dZ%|?{b%-BRUb3vmGMAOYy@E^E~ zEQb371Q`TngNYOaM-ZGfnD@Hwhe6${>Ng)d{RC^K-h18ssB`YQ=iaJE_#eitTOS5y zj?4+;xWu?jSS*$p$AsORH}&;b->}!-d`khKo3r5EyLbM)etqW|KoE#P1gIHQ1R??! zhKN8oftm9Ze@_W1F~&54li<dU7ml8P>E%xVJOF?&hd>AcMESD;Fn=-2*ZD!aHkg0O z2LXWsLLd;~xuc^;AKkwF=_|7p7=|7(Mu;e2fI=NmeOjIc*so#c;6R9k4iPbgez{oe zK7M?%Gn+scBLWe`7uG4T8ca2(L=|fJa~7#7K>#QKF-98tezUGUhd^E-M_fS6kb!-g zDohP3R`2OV9RPp<AqEV?5N8v(bLWeoCQwy~DpaJ(t)dVWs7ifTld6iTH8tEVfrvr~ zG@F2mL=`<3m5S7RERriirKO>KcS6R@KomfMs`;-Zz?^cKu|Sw}8cb10iB7=9?>o7y zfP2EdLqymZhWP|iN)EtCoZNU?{ZP^(b>^P1>J4>60)V0G8te=LqbtA=PQGyVfT`vD zJ75Oa)iij8loVt`RtwBifSJ9Ur5p`%G-gGCX)0ReqT(dI8Zc>Ga|v)7A)Fw}5aDJh z<T}q4&^(c+G^N}F-acDN&LuFW5zJh3T+7fEC_w7ID4tL+L0F3(I4{8r1(FkBFej*} zd&wL`tITaq+cZ|9UOxq#ASw_RFiUN_nS<4QS0!qdOiVXLT{i_eYN;kGt}Z4l4%Z2p zQXwnS|5pV>wC10gq2@cG2UF#Cz~Xo<NM{gjZ4W3zYU2?HEGfXshEscgJujS%7wcDn zisx7wP${coFmpq;yywu*rav=SQ-K0#hOERH1+p@$WHPW#<epZ+nhKaHN&{)px5e5q ztR99Y=CksD>A3npVx@B%2n3=F3|4Yp|D4_hy?1RBDw^AK(`m?tcHk&PrunbYKS6@4 z38(@<Jr%Ev$-*nqo&h(@-ID;AuF7)dvAmVm>NYxSO#NW3Y*ib98J$qTNhUiQK%jGO zz8JslfW@5RTXz{(Dj=ek8xcSho-D$J&)mWu0Ku?WEb7xM75MhvL;n1;-LE<E$D5m5 z8`%ql5CUR|2r**ldvslgzU$EUJz|LH`yL@iymRmY0l>k#`}Y39+t|5w4adjFh%wAl z000gTfBZ6~<zFc!jN^#qxWwt=6sL<*ESC!`#|4BLUDx61?QPrI+O%P#x2_A5Uv7#q zjr8m9ztPW+exXv1vwoQTaeQ)upAKK_y6&k<zCu3r+ylZ7!!Uev|GV$E6aVv--%j`L wKm2<R_N=kLzeoG~dzZQ6Jpj)F*t_WAzy0UkR!aaM7XSbN07*qoM6N<$f*!;XdH?_b literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_book_add.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_book_add.png new file mode 100644 index 0000000000000000000000000000000000000000..29348a87f16aaff30d1ac4a93c0cccdd989d8e01 GIT binary patch literal 1252 zcmV<A1RMK_P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA6%{6jki`H11aV13 zK~#90wO31MT~!oa`<#1Uq`yH+A`a9^L9JjZI1xqgQwk0Wg_=w=b|S4fu&4uxA9R|D z6rG1W=){qNQzx1bq!F5d;z*^DCPMSxJ^SO}eC~Z|V(wEs$;o^7zLT@oUVH6*&m;T~ z<Hn6Q95Z|7fTkIv83&9;V>C^`h4bh2h38(h=U;kF0if!$;mw=Nf1EyjW)=`QA`k&; z1{HybfQ2C<5DsAGI3>M?fDjl>Xuv^m_Uw~ePn>(^I)JYL!1W>EoC8sOZvZU)F^kvn zgZA2BX;B&kIC5}~K!iuPwtjkZY3ZG3dn+&))bQRzL;(X7ngBITi!%eKYnUZ)z<ELi z5AR$(9*r*S?(UrFO`!4~jtG)A)-JFbOf{xN6>9N)6sc8$0FVQ`_cW;MV`c9?1mX@c z;tXPj2%M&=!qlK*<(_ub0RR}_yu)BH@VyBvFMs0H1gZ*Ag^CopRTQEERVlA(QdBXu zR*mEqM?}s!>P<jJyox>$m5P*mED|e1rA<R#+aY6SAaWo_#r#JSU=Fd&SRl+X4W`JX zL_6S;?k93lf#iwg9U{WaV9=jH2q6J50*7QgEq=&pkuqaXnDmAwLjr)Is#@3{1e&A( zLpY?3qX$ea=05>OaGgv;s*s$5XvkuLehM&i>SiHEgBXojR-l`THgZu(BvUn@)42K) z;Lt!gK$IcEt)UR>JXS#Ki8!TIDtREa&$cA{5@<pLW-d7{WtbGmK$?7!J)x-tVQuul zgA(*mAS40|<^UB<Ua|zDMdo&P+cYMko<0Q}ASw_RFiUB>k%N_d7bQxSbWGPpoi+tA zYAGhmuFfXR4%ZHuTp<(E|62t_wB(<ep_ZP6DVQR60?dxrjI<BYruKj`q%<B$fH?)2 zc;J-YU(O5r<Hht<pptSdEl@72Y%oiPZ1WyN-=F@-U`hotpc$eP`xJ=EOp=Mf){(ng z1yd?urpOJXjlSKiJ%*LTP{(|he-9l;A4n{BZUccpbb!Hf&dX1tcR=r*+JuVM?Xl^! z$cFa7k%{E|-@W@Mwzuz15(Q9KGx+7_U$M6K<Kz7Zr~*Ja6;Fn<FS3pz+uQfBwDfWL zaCJDu>sPO0Zg!4NojQrnzxeVopvSSiEv?DNXz!6cFkBs$qgl5Uk0ih>;2@nR8bCdW zv@6<lO&s6T=+g-;HX?w?!JvoRnlSO%>gp<n!(oYdVPOGtv$I%STs(m2KaBU^d+Q_b z{k6KTW}+7e&N+DJ;k?J7u2EGL>Z(Fr*YM8c`?U>RyZ$ygB7g|<^Yd6)S;5R;0A|L; zOBX-9ef!S4y}p{QumA9A2;=P#0-C15xEW(_w1>UX9>(Jl#?1)AjH;?|^27-{e*BnK zm4kC+pxl1rbK?HqeeC?TTgtK57n9$9-`T;&`cqX^J#@$tN>lTVufO^3@&`+wUC!69 zym|?94?h9`aL(!G=ADiFkN<gGx$-grz^z-~cHMCfz|#jT&ucaTZ2k>Zed2iBrXraD O0000<MNUMnLSTYQ0YP>E literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_cascade.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..263ad5f177c8bcc9fcdfb82ff4540312ad13ad85 GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}EByV>Y zhW{YAVDIwDKoRy5PhVH|3+!Uz^6bIyeMEplS3F%DLn`LHoo2{)Sb@j2ewE+O$^8?z zhHu>AbxrPY`Kw!g3RfB$PhDWV*D^`r-~Wxe4L5IQ*(IfYZk}7r&`|xh?fPd%h8z9H zYoa^8zdbHFZ#Czaf_E$Z4&1U7baXlNdr8BMN}2FId7=}QXFKFSpO?a0^Y?f8=a;G5 zl6VCK85~@8l{RQOxHNs9SGu6=V29NXj)Z55=QcAn6v|EzH8`|W>p*z}tL5`~vu}FZ z8!czBXZ^3Hkj6Q~+aXIWB;HH6;9TrGd1s*u%N|Z(2|5?bxb)}Vh=@;&Pa6su?WQ)E Q0{zF}>FVdQ&MBb@0Omk}YXATM literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_cascade_auto.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a846144b31e832b2c63b6b47c83ab4197767b5 GIT binary patch literal 492 zcmV<I0Tcd-P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800004XF*Lt006O% z3;baP00006VoOIv0RI600RN!9r;`8x00(qQO+^RL2No9>7V(DW?f?J*en~_@RCt{2 zRy$I|Fc5uasKPPQ<qTG*D}*lGBDJ(Nw+J0v!JTpjI*tLYC_Jl?oz>4{(~wtrB-!ty z-5mq}9bL^KW6bKrL<9hMtbO6<;{^b)J6^(b3*z^7$4gkxCa{HbMs)&fJ6B4<IT!Xt z0kQKquK2lCL<-3Swsy`CYhZTwzL~v@u2=&~DFA?TZnF-^3UJN^=kq$~x-mFwZCJO~ z!uxbssXEAZf#m$@`E5cR3jl!g;cG%#s)HK=#+a;gCXyVF`}<@UNe~lA-TCY1K9GOE zpTrNI4<`V19gq|t^*&cE0C?|{&WH#Grg~<G0=NSJKx-|M0KhN|lXX5zL}4%Gobgan zI44Q1&xK0D7YUHaO5`mfsszNOQX<1Jh$2(z#r0GzAVto&UawW>=4cY2wVn{g<nerH zLG>RIFgnZKtF;z=-)|>?MZ}Jo7(g@mA^}X)a?cEDCM*)L6hw6M|It*0OOcy~f0BUY iJS(6yzwfwXP5c6~aMW-5fK1&00000<MNUMnLSTaW@6aOv literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_commentary.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_commentary.png new file mode 100644 index 0000000000000000000000000000000000000000..748f65bb90d3b84509d6e22b100ce6484d5b739b GIT binary patch literal 1795 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_commentary_add.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_commentary_add.png new file mode 100644 index 0000000000000000000000000000000000000000..1f4b728b674c2b5063efc9eafac66974a7452a4c GIT binary patch literal 1850 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_displayconfig.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_displayconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..9a130b19d8a7173e66cc88aed57e5dd31a6b6a68 GIT binary patch literal 1775 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 R$)5lK002ovPDHLkV1j|qUQYl3 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon.png new file mode 100644 index 0000000000000000000000000000000000000000..2133cc34e39a0ad62fcd8dec800f02bd803ebea2 GIT binary patch literal 1877 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 P00000NkvXXu0mjfuXcgt literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon_add.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_lexicon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..08a145609e88a6bb7b6aaf967930ffecc31377d6 GIT binary patch literal 1935 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 V8zRMYdujjx002ovPDHLkV1g5VqSgQa literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_startconfig.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_startconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..28f0aa6d49ac23bc2a82bb69768ca5fabee45297 GIT binary patch literal 1745 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_swordconfig.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_swordconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..23fb4c53c078f212711ca81e5d3c02c7e750fca7 GIT binary patch literal 1305 zcmV+!1?KvRP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPkA04vZ_YkB|x1g1$u zK~#90?UvndQ*|81KRxZ%u3ceUM8gCD!51bnA$a43H-a&~5EDUW<i$iTG$tA^G?Dl( zsF4H{;xst3jATg2a4wAlL1(&^F-F<w&gssfXWhEdmY#KOce<XQ&Wmnl5?(gg5)*x{ zPEOAGKF{y_{Jzic2mj+g1`8nE{9?(F&*ufN*SlWRv`>Lrr_))!ef#zUKmbSs*p`ai z@AsFrwzlq!$K&r9hOx=va8zlUW&u6}4gmv8CP0#;^8Wt*UEy$epJ5nV>~{OIv9U4X z@ZrNIP{kY@7F~d%DDHuQfx1W}vNxB@ZMNBL%T!er>g((Cnx-khNg%Q$0z#osl_-k4 zWm$ex*Y#RK5Zt0D3dfEeo6>cC5cn224kQ;{fU2r%`}_M}lVy2VI-RaHP17w&lI6sS z6H~gb_s)>F0C8Y?_P<4$0$G+<i=tQ;3Watj5{V}>nT*Tt_gg$3&tyKIzW{s>v;x{( z^7|HG7=}fb<u!_;><)*+Zww6$)o7aL^7(w0o}Qj`p-}h@I0ATq)U9gVvjv$<MhFA~ z8)C88o^Uw)axfU&7>!0<ot>RXl5_+375E0Y08HJk&OLP?l}ZVsC~g}a9o-X&M4lH# z@v(3??DqM5)2gaQfm1*|&<Eu1RBOQ<Fiq3a*Vnf*8jaSes=8H@q*bb_I=o(QAsUSi z1I<7K#h@|nR&PN9Ow+VnzI^#WEEe0ZD9WS3U~r|PC?y>o9p?D>cnJ6oXaYun{CsN8 z+k$jDZT0zlA19N^y5ZsBmEmysfj}Toa`x<5Ba_JlXULBOW8AdU?}T}EV0?UB@OV6* zq*AH9nx;LJNF<gI4i4Jd+uL)xuKOwaeF}&zgnV8CqS2_(($ezb#Kgq@Y&N?xo6Wi< zNfO%H+H$(C_W(zMpMk_e$>A;*D2ifjZ*Tt~l}fz_tTIj0)!W-^X>M-T4a2xVG2Pm@ zMZnA#*4c;8TN|H~9l2K~`>#c&&4S+D-7TCuckWOolQ{^iw%hH_-rioJsi|o)pU?jR zd`WTElea6rAOXwPRIj)u%lnLV55DirTP7<?%iglv?R#xDTeZvOD(mX%5*iyDGp1>t zpCSJpn7kiy_~-R#PvRGEK!~Soj+dVO>gwpwL7=*-s><Q<cxY&7NSUU22KWN#0J8T> z4s$y2@cOmug_=j+w$`k1+Z~R|*z{DnH92YZo$uiE>C<VzLviJu+#y;Qiod6zX4}@N zmK?4wOe8B@1~yk&xiEx5vcxC=UBK6XkGn+cLLmSQC*rSf*tGEnhe?Iopro?YAynF3 zT>Z&YD6`lmU;OCZr=F<UXk`g5u>!zAe57G;DC8oOEvc|OEfr-h<n})cm6eqfrDcwx z8&c@{)>n7b13LicVhXSUTu&x)@$`hd#Aai;)6JzHPZmZ*S$cfS=3)7wKNblpsf%rA zN`Yr6o^UGnIQKWh3b10`>X9oKFV)7SkSpBLosWp}FmUw7*!3f+gf;<OrFhC+p%^-g zwh3oFbpbB`PgAsIgks1<W<*X?JX&YJUzF9)6#zv$W~ZVsL%3)}|62S7T#QCux^cum P00000NkvXXu0mjfKaX|g literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_tile.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..5dfd05f6ade0b433921f77604cddcf0efae892b4 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@mUKs7M+SzC{oH>NS%G|>0G|+7 zAYETyU#fL?&z?Qz4^Gbj@)=8l{DK)Ap4~_Tagw~<U6=)Vd_Dm=N}eu`Ar-fh6BO85 zniwZc+^HqpF~RlK|NpFu79MS|o@W5GD=$ZT_a<`}plbIL*NBqf{Irtt#G+IN2MuLS z&)mfHRNut(%;anZQ$0gH0|f&EeFH-vQV6uNP)IJyEH0^Z$gM0c$xPNuE!ImZEy&L+ z(M!(HZHqqp8fc^z*vQQEyu^}HpqVLVhG~gLsiqc|re=w$#%3wT7A6KMrj|yj7M6*Y o$>!UluT}tcae{QYq~;`6G8h^d#7MUA0|gm8UHx3vIVCg!0QuuwP5=M^ literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-action-bt_tile_auto.png b/bibletime/pics/highcolor/32x32/hi32-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..842d9ee368f4abb5a84f181c10067ce922b95233 GIT binary patch literal 403 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NS%G~10G|+7 zAYETyU#fL?&z?OE4Go*U?^FYY7)yfuf*Bm1-ADs*lDyqrSo$+=1_C+do-U3d6}Q$- zxXat1z|(U60E3nugRnyi1JCdGDUIw=rfM$l7y9n|@;vH+xUP@rnrl0+Zu=3FSQeB~ z$Z(`Z$6?VK$0Lc0k`BB+&7;Azrs+_MjnxMSg9ahp;+vP-CmG%gnya?atbJ|7ThS?7 z_OM#<&->4p=l^ew@SRB-%`+a#*#n*6Ug8>25}cn_Ql40p%HW`(tm&DXn4apJn4X!O ztzfEWsAr&HV4!bc2t*2jRu&4$MVZAVl@7U;#U+`^da1>FDWwJZc_n(u`MGV;XI}%2 z)B+osnVy$eQVKLPDLFCG$kIGH%{V17IVsWD)Y2%;B-u1AEhQ}}%{0wo&eFI`KwX?5 dT`s9PiIoh71_m*bE&M=122WQ%mvv4FO#p4MiX8v| literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/32x32/hi32-app-bibletime.png b/bibletime/pics/highcolor/32x32/hi32-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..91d58f51fd0ec637ca3fe16512a3f03bb4bea2f2 GIT binary patch literal 2178 zcmV-|2z~d7P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0001f z0Be0rM)d#y010qNS#tmY3k(1N3k(52KqANh000McNliru(gX+s0uYZAKO+DD2oFg_ zK~#90#aCO5BxM!;&i_|ccTHcmd#2~g&g{(Y&Rzy|Wl>?lY=9UHURD!_0Pzxum@H~A z3NZ?SCj-wW1~tStpHU-$2V>X=HN;)m<&wQHJMOHz?9Ppu?w#)Gs`~3c$A_w}?qQL@ zgYhIMRex2b&UbF#`G4U5EcCzp`4dlkU&V2(<JcgILPViK5QK;#gPRW=;Lja8EY8RI z;q%Y`YPr9EU=XlSL?8lK1Z*v=wTNvDYb|VS5XW(%HoY1HV`4-mLToH{@7_1Jcjl8n zQN0GX*L<oLJ@Oo)q2b}{qN9`orB4Nb2q4U07FcG82q2O?2Ovn+nGm2zK`8<e#^>hF z{3wgSH}9UHUwmhVHf>%u^f*58^=HsmC~X1Yc`mfpu$BP<EXOGz2BBkIx`xv=L{j5` z(gX(@S}8XSf}1q}+;htiJ^A2XXxGQ~FFcFMJHAa}7^!CC+EjDB{*95Lp?j;v(w#xO zedql7dGFlZJZiOm<Z>RE8Nvc)2D3$+UYRW{bCM!vNE#s#0Z1@5GKONIsGOr;+DVVk zPNS*EXy~rTs5m;qM~)n+M#2wLx$wQI?>;cip6hRffxN!igf$U-QqX75V$bL>#zse= zNF|0ufDRzr0mWeHF`nj6X$8;ov~%>!JJD*jVX9T{&C_%I^Vx^@Ri>wYxnpMEr)#$y z*jCKtP;eZnM<Ldl8)!AJ!M3j9t5d&2$y<Uk!?<+uhfrE2UP~GQu@IKTb56izbpb#T zky47B-@G{QeCvw`sCM&1@l%iebf)sDncwcZ=kD8XnwY?Wp%D!FMeNvC29y^sFD+@r zZF+s~G;$O}D}&Is(GCLm`5a<vla64Ud7ed}2aJe-NP!e7$I-A}b*K8u?ESabZrc0o z^x@lXof)6NkzM;x$rqp<SA<9a#H(v-s?YaP_KJvE;Cc+%j1d_Fr3oaG7`L3N?be7S z^&pbm6A^Nrrw9OYuBU4g+y6BE_|bds*u6&`J$MMC<$iz&)>_e8+bdTe;l-=3x~?Y_ zMG=Trk<T}=xtWKFD<CL{0Ig;XXHFkU(vbq-tT4N^aQm%?WOBz89015Ebsrtv|Jj1? zsjp4#MAgkflD37`8q6$V(6+H%@FcQOB=9_j)<C7w2GEAJ3SsD=-4=vl2&L54G^8ET zNkLMO1P6dCIrkQx7#$ocZo`culVB(WK>*+P0RYTwnV(vF@z2|bH#V+0&E^K~f8b?| zk2i4PLLYwp+#v`Aj@B3(8^*}6f#W(^`&qVGt4daki8ug0vw85wN4$X=cJ=uH6o@GE zoQOn3;{N{r*2Khi_B<DjMjbit6<Aw`qh0Ko-UX!z#>Ob*^B_`54Rnf;1(Mc4!i?RP zbO3l(xL^_E;r%xuFa}O)oS8)_Wkn?PeZQIWJRTVxhVOd-X~eMtk;Xu+3fIvHqbM_A zxl@EGKS<a6jLTC10D#C^)I){Kuf2wHxs1ulNw}_S0T=-7AP6>BS68H1>I1Wd2w*K> zSr7&h$oD$w>e0mWMA0Rp_oX0tAObI+!}RntL_~}+Vy$HW5rFXW<;(46t0h6Zo#Zqf zIz$TE(EtEz<1JqI(yw$TRM+5E07L@bSb{3u0A@zJ-4+pHBC^aJoj7sAjE`@J(i+A@ zX^$uf3#^SnBrvfBdbuAxRgbOGS*yfDX$98e>Eo}0*kW#O4q+I=7=s`P<b@Yr;7gY- zNu^RrreT@_q|_S629b$jIf;ODQeYXD1)P+?R+TP*<M{i@=lI=aoLaBr)Z9C$R4T;G zWQ?I!t3~I|ol~>3v&75*1VjX30$YHYV4@h-nl9sYreL~hNK)~Bl?;GE9KVFK^9!ff zmhke*0!n@!)>^ErtdKEAJ^JXQ%3A9X5eNjWG%N$gD6mCFzsROw8v2ZM0DhmMCjtO) z3~#-23az&N<H9+dxN-rFdYx8R-y;AN1c6>$Ty%_yNhuAa5r~X}F)G~+@fND>XlG0( z>z)Wewg3P&T0g^I{_%&!dILW=ehhzGJP&`cpEQwX%T5$UE+r!rN-2ma#IZsg0|M^Z zhGm<f%zI?JrS7|q=$^KC4=Zc0sw>Mw(ZuM?Uz=;{?e$eG2b;DYw#=ko3YhJ1n`39O z-9)u;99jj4A_tc)PQ!Jal!KBjnPfgnhnu#@<c>)U)@nTf5@}5rG2c3KahjLcYu84~ z-a`Ef{=I&cuWl^yTJydBR@l^=VH4-)cHr166`X!+6s2MTTI<Y4*UPT)P9QomHTeMm zo_t`xzUSa@<MlVLyx6$7bQUMi+)yp&O8IazAFi)y(`**vC{#9z&|ba<jtt7BJ`@Xm z=xmp-GuU(A&Ani1$0P;^2f6?hQNG@a{Klp!j1BmWGZ*S7IgEbaIDPTz%E|L@FTc6) z&l?KcZqse{+N&EFsFu**Uq+$egVOWObw;!FqDw~7Nx=ka1GSHSGP-Z}^X}Bto_8zN z%3!Oxv4x1TJ)a<JKkg~K&J@hP5y4%D56jH{y-*)+wky`MB<+^)|A#{Vz;~S#C141G zAP7F*+3@M79(zV>{bSd4a!JYwN-1cip|pnQx^Nr^uH(RUU1+7@x-OK~a8mwYVJIRD zRIAu%HLvS}50!E`_uAlK?ID0l$yv}Mj+67CNJ7(^6!Q5z%B7Nco(Jvd<S3?yIzuY9 zF|Dny(fq={=wlsD7nd3hym4~B<2d>M@(HENAMuywKiW6Le7o>Xw*UYD07*qoM6N<$ Ef?VkqKL7v# literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/Makefile.am b/bibletime/pics/highcolor/48x48/Makefile.am new file mode 100644 index 0000000..b301e25 --- /dev/null +++ b/bibletime/pics/highcolor/48x48/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +hi48-action-bt_bible.png hi48-action-bt_bible_add.png hi48-action-bt_book.png hi48-action-bt_book_add.png hi48-action-bt_commentary.png hi48-action-bt_commentary_add.png hi48-action-bt_displayconfig.png hi48-action-bt_lexicon.png hi48-action-bt_lexicon_add.png hi48-action-bt_startconfig.png hi48-action-bt_swordconfig.png hi48-app-bibletime.png diff --git a/bibletime/pics/highcolor/48x48/Makefile.in b/bibletime/pics/highcolor/48x48/Makefile.in new file mode 100644 index 0000000..62248ea --- /dev/null +++ b/bibletime/pics/highcolor/48x48/Makefile.in @@ -0,0 +1,400 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = hi48-action-bt_bible.png hi48-action-bt_bible_add.png hi48-action-bt_book.png hi48-action-bt_book_add.png hi48-action-bt_commentary.png hi48-action-bt_commentary_add.png hi48-action-bt_displayconfig.png hi48-action-bt_lexicon.png hi48-action-bt_lexicon_add.png hi48-action-bt_startconfig.png hi48-action-bt_swordconfig.png hi48-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/48x48/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/48x48/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/48x48/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/highcolor/48x48 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/highcolor/48x48/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 30 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_bible.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_bible.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_bible_add.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_bible_add.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_book.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_book.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_book_add.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_book_add.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_commentary.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_commentary.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_commentary_add.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_commentary_add.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_displayconfig.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_displayconfig.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_lexicon.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_lexicon.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_lexicon_add.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_lexicon_add.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_startconfig.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_startconfig.png + $(INSTALL_DATA) $(srcdir)/hi48-action-bt_swordconfig.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_swordconfig.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/hicolor/48x48/apps + $(INSTALL_DATA) $(srcdir)/hi48-app-bibletime.png $(DESTDIR)$(kde_icondir)/hicolor/48x48/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_bible.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_bible_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_book.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_book_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_commentary.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_commentary_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_displayconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_lexicon.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_lexicon_add.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_startconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/actions/bt_swordconfig.png + -rm -f $(DESTDIR)$(kde_icondir)/hicolor/48x48/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/48x48/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/48x48/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_bible.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_bible.png new file mode 100644 index 0000000000000000000000000000000000000000..406d2edc64e79486da07b5b1062f60b9a830b144 GIT binary patch literal 2745 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_bible_add.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_bible_add.png new file mode 100644 index 0000000000000000000000000000000000000000..61c1a88b33c7544458b704a580054ad0deb73762 GIT binary patch literal 2892 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_book.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_book.png new file mode 100644 index 0000000000000000000000000000000000000000..061d43e5d2273fc27b1f0fcd79ee3b0365d6bafd GIT binary patch literal 2009 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_book_add.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_book_add.png new file mode 100644 index 0000000000000000000000000000000000000000..ec0d33935c43a2391c2a4dd6cafe81baf45efe1e GIT binary patch literal 2148 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 a0N{V8re3~w!wdcZ0000<MNUMnLSTa9paNt7 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_commentary.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_commentary.png new file mode 100644 index 0000000000000000000000000000000000000000..f9ba3bbea4489fd7cb0bfacb757fb0f00404e7a5 GIT binary patch literal 3185 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 XrtPx2;vF=A00000NkvXXu0mjfSFk3M literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_commentary_add.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_commentary_add.png new file mode 100644 index 0000000000000000000000000000000000000000..ca4b80d923f1b36b41d80db0ca57ff94dc7a13e0 GIT binary patch literal 3291 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 Z_&;~j*32m;Y%%}<002ovPDHLkV1mRAQk(z) literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_displayconfig.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_displayconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..0851db717fbd920d2f042e9f8729d1e4727e5055 GIT binary patch literal 3267 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 BP9y*T literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon.png new file mode 100644 index 0000000000000000000000000000000000000000..69de751af6baeea13ca6ba4b023e8363ba5b7a3b GIT binary patch literal 3601 zcmV+s4({=ZP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3k(1N3k(52KqANh000McNliru(gPk9E;_TK{QUp`4W3Cv zK~#90)mll69mje8s;c+5%;OA)!{IVAN0OaLq7*^21<QsIJAe-i?1UBqopUe(!zTkq zjydRJ81f|w3>|_9aFjSm0w+!+WRGQAh80P%B+HgUal{chT!zD0-u`;2s=som?tcB= z42N4TDWG4!?$=ZOfB*meTh##n&j<UznB@8Azs-c;V9ZWOME1}cT5D+1AX3oEUMnT- zeXXFh_LNc}B4{Ncm4uQSQYpwxLMaW$aqxR*zN`+;9l{g8d0JQB?c9mLFTC*lvr?*W zEG!&`))D}LGnNA|AY)*15IR2_()N2UxYh(B3r=fY0#;f<D}vGrO4{c<*OP}9j=l20 zLyx?mWcmZg_0vKYekTAJLn*8=1OPDkr!nP4Wf*(Qn5nz_y@QPp&fFx8AKl*E_{>W$ zfB#hVxjV7|=Nz0<{sN$2Vj-V_fid<d#muiw4yODx<KK%%8M8BT&R`6K;0&CxC`*&a zJ~;dSeE?416#&<D00RiYp*5?>n2TpjF3%W9sckcXbn?0wxrI5m1mV`dTq3$B%d*~t zGVcU{-~vK$%lksELQt}_GKOHWn2Cc5aE3|?jX@F^a(m`q7|+2l&IRXn#wKOH6ALh7 zh#3Hy2wIbUQ7#BkL6DptxrWCe2nIAor@~s5mtY(s83Tmi%yAvJ40X2y;JLr~i`L5K z)#c5d_Q4~E7e4oXzxO298ufStPK2iC!4m?Ua|nlnGoFK?@-Re`RwCGYM7h<h1&GFe zF$QHIgn;LIoJ~dkeF6OFjn{%VKUz6;p||rDxXzO^bFEst-@i1}dR`Hsqb0PIsDtB( z<Kk$&fqJb5-**An2vShR(uXQE(xt`5&rAn^d{}>DLhxOA>xKaS@zo#Jes<y9S9V7I zuS%nr<uLx)yRW?Z+Q#a|(S!Hj`-Rql*6~^xV%P|9$uU^#XIO0S;DOd04z`*I!w^CU zfB|I49=ohD8I4NH0h0g#0E{t9pPN(Yg};2!fA{LzpS0t_?~^fV=iG&V{--~C@mKAg z9nCqHpE!Or^B9Lm23X(1D0I<o1~{ivY+hNz!&?y!FC4<`Y|DZGO2LU}49FP3<g_6( z>GUvTY8ilYW*B39x^~zL0J|pCQ{80rv;i>O*gE_2pMH0v+v!9ARv2TK?z?ySk@@+9 zh-!7TcedegZ6S>%QlH_v2fVv}6<L}=2!TeU2F^JQ%%t{n>JSx_nm*^LAqT^`V2<PL z;?OPt-~Z2lS$JdZ{MU$?2ucnA>*asl=yp0TfOP=B48!2^^71`9p6{d8Y9R_ec)o|h zwX5g~JN>!~c$crB(WpZRjv(;BIIlRd)jnzK7brq%8Ga2wV@p^90j}$^sUWlq0Q>K? z^IuXhCyfC%S1)Z{I=i9(Tn6wCfV0admijX@jg$-!1Oa3%#6fcaCzQmstqojv8DuTQ zg^eA|udgGD0tnHB<2oQ+p-^7`7-OKx<_sb;Ng+^~><nxIodz(G6#n?H{=A+l^(k$r zL56Vc>QxMSy$*nj0M-EXKK1ycveY73Z8?s>Og%zP2&+NCkT@LIw>#+e`be`3TIq`L zR0>ad!lO#GsycM}jMeWhzE1$qTGs{V3z`Tjld8YnCMjhHz;yr}0P<r?M~p72%)DF% z3_RDxfiMIk4Ke`v9y)^_dfgt9B(W7|A$$=|t2w|-`oyFkV0XE(2LQIRad|P7^4FA7 z$kL3`{r~_H07C#708(0&C9$g1_Kb4`o(Gsb_6IJyqY*ltE=HpmGJlSY9+%m99w5@W zRq~vWN2ST6w)d#|02_3AZY}V+Vg^b}uC#XYzolXhTg$6F^w}EUzElH+R`a-?rWxWS zL6&BgZb0e4hQ^7_<XVTxGc>9WJTBR93Sc-KI&Rh!T5u?(7#ZRi6E6p#t;P!8lGPjv z3RIj>Yl4!>HZF<)2Ni*797@ZuS`oY`^!CyIG=-41d&4A7Hd85~7`UiMUKJpKk}{+V zv+J_68mJ5^7l@J!$a$}|8FyxSoQ-X(NhN(KS3(h1slZX%|0V#|S1+`?-R^p(BqV7T zwr1S0UJG(daR5x`0+eUcP+B8V3T-K&a`Wr%09<Ks#!DKMQ7HF;g6EVMa)mXlb;l08 zpB1VA%v(SHX?M8Qem#lfI8_pjqYF{}(7{6h>HvHIOslaITkR6GQs~ABwz9<XH_bqs zZFpS3^IUMwbDtUa$kSRMSEb0yit%B}P;?Uj0Mf0u-g~LPe*Nc3mVs)4xBQt?r~Dwe z7r+7l{}=C`<vQoRT}e<#GllniZEVWS_6S=YV6%fpvyOVb2G4T<(3pCKBO6@`UiuF0 z&Ih{-yBh;gzk2(f>sMZX=X;~g?e$Da@WXRQ@A>Sh)AgC=#{nGp@WVAvO3BD*D5a1| ziTArZcyHK)HU?&tB71KYo+D7N*ARw2I2X1$AOoTzX;mD4Ix3lJE-?Fg@kA-{<*$D= zRGgh$eeLJHi$8wj<wK7@@{}{%oQ-~c`H7|Z12v}~A2|0Pul{?l*Z0CG!sc*@pKfko zbu@r91U5{N{bB{e5%6101YrQ-*lN@el`9iP_ARezQp;6&4PZm;EdXHWd)xP+9)8EU z|JX0De)sja+7~asG=J)$CxUy9Eb><Uk!-H{orT9ve*44o7v`HwNAb$FH3%Y@B!joU zh4|b>h)lwK`XML+(pV#oQ>0M_;czf86b-(m%I;Qjud$yKR{`*0x97XQaEP1VXe=IT z_t&p)ul?xtf2+^WEj1s$|G{AS*wSF9^YFzajgB^IV6H*9)kS=M4as&Fjw9eN&SMaT zz#vAyH$X24&}h^Ugr03RQIrS<6YMCPn`s*W*oQ_F6iVX6F;a2kJI7~#>+z>%q#S~? z%#d-oBW5&=kZF4K(sqZ*Mh)5WVaULNI&lQ--lH&rW8}IZS3qlx{$Pk<Ekc%M(3-#m zt2kysA^S10^fGOMeSVt&AXUb=k_^n@Eb?0%e#=f^`KyhARw@#L8{hY!VPHZJCUAF6 zoMjSmoIpxxS1yV&W2$8=n)U+BUV@r2()|IbVch4v!P}HdMpDfHU|^7jfnbavZCp8u z4O|aGY1Dc#M#B-LQUJ!wjYI}&vkev}g$SkAtD=;eH5EW(vGX(AH;hgI=)ZS<gRiW; zs76W0XnGJZ4cJ7kk!NB`vYvPRNFxHnQZK`$OV`lr_wD<bO+w5VxMWbTMQ~jgoN*8V zoR1^VB#mw){Eaog7XXvBdwl@s0Q>~DiK$~US7-q7;^O?L56#a$;QJvQQWy-HWrI=- z&N*te2y?S7c)n-XIZNRyB|`Z(X0Ma|ev1|`08-fA_e}sF0C1-OkPuv-_}K9ib91w3 zG@Ec7mY2(8M=Tb7UB^KX2Jn3!`6}=@blyPt8;W`hQOE$00J;F;{I}_K7*nrDd~tE1 z<9QxhGfilvK&0}LxWZiP4iLgt<cu+^eUz%-E&LwZuY$fAfGP-Cxi<mei(h<FL{T6C z4##ofc>-E93<e`4X$H@8AcO#ELai1-N`=921g#YU--jRg=yv;vq7aTF(Czl&c`io7 z1itSfPErKEk6JC-Q{d@wE34C{a@aa|s<|ExV`N!|+1VKo5w^G65Q0N#jdrIC&vVgi zHZdH=NRtczL%%;nnr29o6t3$bP7*NAG1F|I+wGztTA8VDr60JJL6vnHW<Q{{hUa<U zoFfPVc%BE>b)mHe=Nzu<!V$K#mQtb?1yD+1b8{Q@MjayG2MB`zj^mW|&#hFYx4%C? zn5-1@QIrQn1f^72fKkyiR|qbIfa5q2oFnl4^1hvCum0DRz4u)M(3NJS5I+b4WLbtd zPB0vf;JOY}p4_rbVl;{o#|gA11YrQBY$>iaAxZ3hon1q%Xt=1CiYCVtdk>T2wl_G6 z6=qb-YB^qqlnSkxCKzXB+v)pWxi;Ep)F8M(r<?mlqmE9e2iLXx7FrWHFT(9OEZb#B z+Xdb=09|U|Ix}M&oEvza2hX!>0Ohg>W$-)?Q4~UOQ3@rM!puw)jt~d}A5u!VuE1b0 zM6=m|>$>BpVGLLfC`r;?esJ3Wi~;#Ua3#xRKZ)bI;DUhzL>lF8WghFD$UzuJ`8|{j zId=3&S)heMnE%$oH^22<`JSbvV|e=MGhmG2z)TaIa}0)qUCqsH1Ni$N{Lq|y__6PW zq4QY=_JuHv0>D5B2gVpMFbE+aiY+H0;5rUG&(ED#z;ivgj*~|y2d-;r_RViSSH|aq zb94CJ-#%@K420k?WN_)qm0ivK9qm#+^USkXSI+&<GpS63{Wk$)vMhs?5}C{pCo$qU zMw%wbWM=<;KxJSs@Eiw?dd)PO4byBkO}$Y!Q52e5Et-%l-`E2ejA^Y{x7T6kSI@IF zO($fzqkZB}e)3V~`N0Qq96vi84qA+H7$OGTIOSKWW6U0yH2}+(C^a%Ek!2E`^FKIw z@)K`dySBOb(S?iNU;o|T{=@V%j^nP}HGntYeA|S9JKEmbe8zEv!>Zf$Hy-5@<%N${ z_k4heK6mci>K`ekmz2_{FMPE6hkHCWx)Yi2dYn1)d4A^1=Whn`cK}4NW&D?JW#0b< XGat_?vL&^S00000NkvXXu0mjf_4uif literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon_add.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_lexicon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..4d5e5046bd57ca1cc386fed09401d86405b238bc GIT binary patch literal 3703 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 V$U~R?29*E+002ovPDHLkV1myH2Soq? literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_startconfig.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_startconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..1dcc07cca640df983b492ea91e34a44ad7b16f32 GIT binary patch literal 3059 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 BxuO67 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-action-bt_swordconfig.png b/bibletime/pics/highcolor/48x48/hi48-action-bt_swordconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..d79084d4f6e20932b1e5a557604ea055784166ba GIT binary patch literal 2376 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 literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/48x48/hi48-app-bibletime.png b/bibletime/pics/highcolor/48x48/hi48-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..ff90bb5d8c420caf289fd7a805c63ba8b0db5187 GIT binary patch literal 4063 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 RnVJ9q002ovPDHLkV1i>Fj}-s_ literal 0 HcmV?d00001 diff --git a/bibletime/pics/highcolor/Makefile.am b/bibletime/pics/highcolor/Makefile.am new file mode 100644 index 0000000..c36147d --- /dev/null +++ b/bibletime/pics/highcolor/Makefile.am @@ -0,0 +1,5 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +SUBDIRS = 16x16 22x22 32x32 48x48 diff --git a/bibletime/pics/highcolor/Makefile.in b/bibletime/pics/highcolor/Makefile.in new file mode 100644 index 0000000..343843c --- /dev/null +++ b/bibletime/pics/highcolor/Makefile.in @@ -0,0 +1,467 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = 16x16 22x22 32x32 48x48 +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/highcolor + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/highcolor/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/highcolor/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/highcolor/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/lowcolor/16x16/Makefile.am b/bibletime/pics/lowcolor/16x16/Makefile.am new file mode 100644 index 0000000..0e7bf8f --- /dev/null +++ b/bibletime/pics/lowcolor/16x16/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +lo16-action-bt_bible.png lo16-action-bt_bible_locked.png lo16-action-bt_bookmark.png lo16-action-bt_bookmark_change.png lo16-action-bt_bookmark_export.png lo16-action-bt_bookmark_import.png lo16-action-bt_bookmark_new.png lo16-action-bt_cascade.png lo16-action-bt_cascade_auto.png lo16-action-bt_commentary.png lo16-action-bt_commentary_locked.png lo16-action-bt_folder.png lo16-action-bt_folder_change.png lo16-action-bt_folder_new.png lo16-action-bt_folder_open.png lo16-action-bt_lexicon.png lo16-action-bt_lexicon_locked.png lo16-action-bt_search.png lo16-action-bt_tile.png lo16-action-bt_tile_auto.png lo16-action-bt_verseref.png lo16-app-bibletime.png diff --git a/bibletime/pics/lowcolor/16x16/Makefile.in b/bibletime/pics/lowcolor/16x16/Makefile.in new file mode 100644 index 0000000..86d21ff --- /dev/null +++ b/bibletime/pics/lowcolor/16x16/Makefile.in @@ -0,0 +1,420 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = lo16-action-bt_bible.png lo16-action-bt_bible_locked.png lo16-action-bt_bookmark.png lo16-action-bt_bookmark_change.png lo16-action-bt_bookmark_export.png lo16-action-bt_bookmark_import.png lo16-action-bt_bookmark_new.png lo16-action-bt_cascade.png lo16-action-bt_cascade_auto.png lo16-action-bt_commentary.png lo16-action-bt_commentary_locked.png lo16-action-bt_folder.png lo16-action-bt_folder_change.png lo16-action-bt_folder_new.png lo16-action-bt_folder_open.png lo16-action-bt_lexicon.png lo16-action-bt_lexicon_locked.png lo16-action-bt_search.png lo16-action-bt_tile.png lo16-action-bt_tile_auto.png lo16-action-bt_verseref.png lo16-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/16x16/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/16x16/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/16x16/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/lowcolor/16x16 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/lowcolor/16x16/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 50 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/locolor/16x16/actions + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bible.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bible.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bible_locked.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bible_locked.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bookmark.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bookmark_change.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_change.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bookmark_export.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_export.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bookmark_import.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_import.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_bookmark_new.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_new.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_cascade.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_cascade.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_cascade_auto.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_cascade_auto.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_commentary.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_commentary.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_commentary_locked.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_commentary_locked.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_folder.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_folder_change.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_change.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_folder_new.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_new.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_folder_open.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_open.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_lexicon.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_lexicon.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_lexicon_locked.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_lexicon_locked.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_search.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_search.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_tile.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_tile_auto.png + $(INSTALL_DATA) $(srcdir)/lo16-action-bt_verseref.png $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_verseref.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/locolor/16x16/apps + $(INSTALL_DATA) $(srcdir)/lo16-app-bibletime.png $(DESTDIR)$(kde_icondir)/locolor/16x16/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bible.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bible_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_change.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_export.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_import.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_bookmark_new.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_cascade.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_cascade_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_commentary.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_commentary_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_change.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_new.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_folder_open.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_lexicon.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_lexicon_locked.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_search.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_tile_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/actions/bt_verseref.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/16x16/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/16x16/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/16x16/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bible.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bible.png new file mode 100644 index 0000000000000000000000000000000000000000..14b16bfeda29997879780315f8bc3ea34a2380c7 GIT binary patch literal 806 zcmV+>1KIqEP)<h;3K|Lk000e1NJLTq000mG000mO0{{R3C@l|D00004XF*Lt006O% z3;baP0005$P)t-s|Ns9jEiDNN2_hdHAQ}!TBpXUdLQhRaPE1EPGb|7g5GNoYIu{o| zFC>n8T9AHWlY3*6hHsLFaF~pDTvkjcCnr1`8)_pXT|hCurhCAebi`s)#;b<Tx|Y?! zo~4<EFE1`}ad9&f6KNtMTRt+oopZg0W5h*2#(-(clzY>*n5LVFBO@X@Iyyld99ls% z#eiqUS4_o0JjG&D$AD|nvzDcsiAYFDMIs_=BO_=^Jj}C>%c+LOUQx%biOjZ?*u|x! znS(w(JUBQwK^+}zBO_-?J=DFJ&$W=pU{lesk=DYX-OH+=m4YoTEJPn4W=K5Nz?#&% zn8#L3)vS@-%BtbduAY;B4h;=I7Z+?KBw|K8)V`S4zn#o|Yt^=w+{vin&#$JNh94gu zKNc2kB_&=&INi&v)WM_Dz@XH^q}Rx=hk<k!78W233_uqbD<2wUS4e4HPF7ArU{FGE zTStLySa4=lO-)D+3JG94E{tGAu7X;*lWEAQf6%dn*T9kC)v4#;yxG;dFfA-$K{l0S zO0$e*!JKc=vV+*akJ`nR;nSt);k)YQ#&mRaE-Wl9CL}>SG+ab9fnP+5a#ogtW3r%r z)z7)b#JyKnS2Hs+R#jATaBo#rR4ptjBqAO>JUd!iS|qmRB>(^b0d!JMQvg8b*k%9# z00Cl4M??UK1szBL000SaNLh0L01FZT01FZU(%pXi00007bV*G`2hjov6&w)rQ&nOB z005>*L_t(|oMT|X0(f}&_yq)oghilyF>wh=DQOv5IeDmnlCp}bn!1LjmNryCPg&o< z(8$=t)C?+MVQFP;V{2#c;0P6PadmU|@bvQb@r4Tby9NXX1&4%&g+m1*qoQMC<Khz% zlb`}AscCZQ8JStxIZ%PT{DQ)w;*!#`a;QLMRdr2mU427i6I7t3wXMCQv#YzO7w(yf klO|7@I&Jz4Y#zk~02Li5D98;#wEzGB07*qoM6N<$g7;iV^Z)<= literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bible_locked.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bible_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..785b5f67a4276d0ef3822c375e3ffce533f9d716 GIT binary patch literal 946 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstPBi{g#kVx zu0U~JU0qI2P9=F61t~r)6=^RICx2g8KOc8<V;unj0d)lhD{*mqeU-lIs0nq6ldF>_ zx8+Z2E11z!9uwxHuC8t)EuE#T9P41XZ&~$$StUo3f{(3kJGX1v)r0ev&TQ4!*DEY6 zG!_=lR8oqzGul13cyC+s5m)<T4VkB=RA1gUW7+IZWo0ERD=SACnI+5SrzE9ZIke== zwkbKv%1Lh4SN6@gzJKnS+U%>_rr$Za;^F!A%VxL9%gfn|iRG%Q#<^JBJ-z12!Nr#j zEVzDReS2exn3$LX508VmxVF4hO1MX6tY4U)Q$m1KL9}~gZbU&^sIRXF9~WnWwO&tx z%etnhos%<9tgOGVvE}-Ki4U)?eEwk1&8xc%bafIP&8DV!ZSF}uI4A$&rsf;_`)?hc z`tb777Y}#8dUmX&q(o0gM^{b7(b^=&#iTLbrK>1xT2u0-1$9@??>u^BZ+LjPv9WPj zXh=~(erRZju8x+9lAMi=byQT;Ug2-fz(B7q3GxeOVB#0z6HruD6yPa+`|-oaFJHfW ze5SYZKMaI2u7)xH8#C{Kvq6kdm{jO0nE1a4xYkdi?f;;{ANXYJj=lf<1IYiX%Em8k z5)v93CLeh1?<b%$7?Zr+U8*duwq^l2yF6VSLn>}1CnO}KB&8*$CO?1hB&mTRPcF`` zj?qyuQ82KhVaAS@B~!NateLZiX~y~$OV%t}wQSwOl}pz$i(R-HeC@h<gTe-ej?9D= z`3Xz%83GsPC*&;1=Wr8XWUfu-(N$ZP_DpPA*fleO?A*6+p32C~<(V5BqsWx^PHtY@ zJ-dB%{}=@t4=i{v;lhRw9Vb>~bU66r#MC$?1r>Q^Nx3N4DjRECtDEcZUm)<xx^2;; zNtZT#>N=&xrUOjF+^Rb!JpEb?^o4tgYeY$Kep*R+Vo@rCgNCxEXKrG8s&8U?W^%TI zsh**pfr5d7zJVbSDFj+sC?pqU7MD~y<W?4!WG3sS7VD*y7UbuZ=q2apwnd+P4Kz{< zY-DD7USdfp(9EPn<5csc6eIIAOEU{ggG5tv3ri!T#H6$&qm(2w6LS^42kbyyoFH8; bsX2+242A{<F_JC(KtTpiS3j3^P6<r_(}<LJ literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark.png new file mode 100644 index 0000000000000000000000000000000000000000..35488c7545813c09d03c0da52a6d090d6b423fa3 GIT binary patch literal 588 zcmV-S0<-;zP)<h;3K|Lk000e1NJLTq000mG000mO0{{R3C@l|D00004XF*Lt006O% z3;baP0001}P)t-s|Ns920tBk6s{a1m@$b55XlTa8bN&3^_4L{M`qlaQ)cgCw`1r8- z`0D%m;Pmsx`uef<_N?~yoVsfg+jbcC_1y06o$BtK1_lKF{^joO#^~s->guZI=AP!> zgzD<G=H{IK{><m+rSkHW{{Fn~?!fx`tp5JA{{E!;`lSB)obKXu{{EEG&RqWfoSv2} z{{D>m`jqzad;kCd=H_(%`iz>IBo-C~G6UxX00001bW%=J06^y0W&i*H0b)x>L;#2d z9Y_EG0GCNbK~#9!ZI9U+0Wl0lCrH)4WYk!P!6=HczyF&_mkaZK{=0LUq)8P04{$0a zQLW*x1W}ibW~<FIh)x$#_WFY%gaS$N2ocpd@nS+m@pLv{EE8WqHmOo8^kQvUAZ8o) z4Qw6nRF>y<ChWtz)`uetI5`%nMl@#@<XLE~%;oCWAOhy%R@}qt#ElPln%5gj_kG+U zUx5P)n)-pRcK`qYM|4G4bW?9;ba!ELWdJ}ZBPmI3VP|DcVP|P$Yalf)F)lD5FfcDL zF)uJNAW=FvAY*cAb98w?ZFzHaX=5&Bb1r0caBpsOE@N+PhFi_+0000gbVXQnQ)y>z zVRUtJWdJcUH)c09GGRDlG%+`2Ib}9BVK!nnWHe?rGGaM7IX57%eKG(5010$OSad{X aY+-o-F)%P(8H5i20000<MNUMnLSTXhiw*q% literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_change.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_change.png new file mode 100644 index 0000000000000000000000000000000000000000..7677f2c0961b6d1686371dfe202856c316542efb GIT binary patch literal 575 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU&(!0G|-o z|Ns9pF|n*#wd&u$J0IWg%E-t#cC`5KpZj0G-2DCP>d&87e*Zr7<Hv@dKVJR*_2A3r zW50fF{Pu0lw{LTHWeeRdllb=a&bxPWU%i{d#>VpR-_v*Rj=gxX?$xVR&z{YDcCY2t ztF6t;4#t<Y{QGz2-@iTY-W~Y$Yt6rZTYmjo^6%H2caKW`{hM;>T+F|JbLLIc`S-8q z*RLtxKGi&XR`Tyx&#YN0Vqz?pYIwzfPGu|!@(X5gcy=QV#7XjYcVXyYmGuB}CVRR# zhE&|j?Y}8>NP)+-Q|d^q=h0nacU;%L{$D?vG0Q!DPyX`>J5`+i@E2&=FN!*x&$(%x z)Y-7vsft#yE>~akw*~NMc)4|~IG!mYtmL(9^UtK2#~44I+_F*P=&8*v$vHpRt~HvU ziN4Rd`%`Uw0^{)mlO*qUvQAxd_ovWx1*T_zX5H_)>iOf}?rNKd#nMrF)veC=7HaV* z2wrUkg}Hl)YeY$Kep*R+Vo@rCgNCxEXKrG8s&8U?W^%TIsh**pfr5d7zJVbSDFj+s zC?pqU7MD~y<W?4!WG3sS7VD*y7UbuZ=q2apwnd+P4Kz{<Y-DD7USdfp(9EPHQ_Iwp zWb-s*3uE(Sqa@?R)I>uglSHFbGjnsp6w6R6mlU8bPLM8_)SSdh215gb7|9lXpdf>% LtDnm{r-UW|d%6f( literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_export.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_export.png new file mode 100644 index 0000000000000000000000000000000000000000..17edfd4f67fc6d3ef7e22335f0f6862b7ddabf06 GIT binary patch literal 550 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU!KmfKQ0) z|NsA)m{?Y=TJ`VWosaK#Wn^R=J6inr&;74oZvOst_2<tkzkeV4@ngf!AFqD@dhq4* zv0uM7e*3oO+qXHpvW0G!NqqZy=iR%xuinjJV`KUE@9DdD$6mZx_v+QEXV2z6yVp|g zc>CYKGyncg`S)+nyLShE{aW+y-<Ds$mi+rQ=iQ@{OXp(dP1E`Ispj9Wo>{Y0#Kc&B zh;$bL9mZG^<QL4~@a#q!h?C^)?!wT)D(eB{^mw{BhE&|j?Z3`<$biQ+_dw>2!>nA4 zP8!vJ|380d5y&d^{jE&29K-+SN!R)_%3nk;(#+X@UB2T?l7-Ty$0tkLb{;IUR9|#- zlULHwGf!{jZriP8TF_H`@3+dgiM|5YOe+G`we}aP&71Y>rxMfpQ*IV5vpMF98$O$N zF5%db{u(Q04g2^THqUJzM9cqV*t(2I!bw`S2IwyL64!{5;QX|b^2DN41_upgP0!rK z^i<!(^vvXJ1yemkJp%;;1APNSAW{glvQS7a$}BFabjYnNF3C*ROD)z*DJ{s)E742N z&uxo7`x<DZ7TCzl^t{B9QlOcM29}0K2BwKgNyZjQsi|pcX~|{=MrKKdrirO(7AYw& kI{LJLx;R0)TvBrqD;W$83}Pf(_<@29p00i_>zopr04Wvt6aWAK literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_import.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_import.png new file mode 100644 index 0000000000000000000000000000000000000000..7065829c7a74934850f24862e74efadf7abe6a3f GIT binary patch literal 521 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU!K6fKQ0) z|NsA)m{?Y=TJ`VWosaK#Wn^R=J6inr&;74oZvOst_2<tkzkeV4@ngf!AFqD@dhq4* zv0uM7e*3oO+qXHpvW0G!NqqZy=iR%xuinjJV`KUE@9DdD$6mZx_lIBU-@h~e{_T19 z?!do)Ti!h?dG%`RrE@X!rs+I;Rx)drikKKn#*8LKpc@!Vg8YIR9G=}s196hP-CY<u zSY<tcoEA?P$B>F!x&62K4mohRh>OOo4_z4*y(c91?|*xdX}L+l&)?4RIV5oCe?yv) z&}GSgUJEK?bi%WzM&@km*m&bD{{-%dr<IlFotxUtZ9Kj7az{v9g14?w$Lft0J^9B< z<XLQll(i<xHJTaP_Qq@7nA!94t?`V5Ge4E^Iqp<`mH6epy6q>{>|!ooBe%3^K=-(p zxJHx&=ckpFCl;kLIA|zqdgdmkr}`$QXC`MWnCcno87LSS=o=UUkwT!Ag+g*sW^qZS zLvCepNoKNMYO!8QX+eHoiC%JkZd>%(*FYn+z(!`K=Ovbu0?kZGv@|p}GE7S{PO&gb zHBPihG&MI*F-*2JH%&7)FitV`{OJtT#R<~olA4oP$zW(;5F^>b4-{nZboFyt=akR{ E0Lbjz00000 literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_new.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_bookmark_new.png new file mode 100644 index 0000000000000000000000000000000000000000..c286cfc6892403584ff9ccafd3ba57461601bc9b GIT binary patch literal 583 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU&(K0G|-o z|Ns9pF|n*#wd&u$J0IWg%E-t#cC`5KpZj0G-2DCP>d&87e*Zr7<Hv@dKVJR*_2A3r zW50fF{Pu0lw{LTHWeeRdllb=a&bxPWU%i{d#>VpR-_v*Rj=gxX?$xVR&z{YDcCY2t ztF6zT&H4B5%=70<KYg0=@86zx?+*O>wdUWyE&pdS{QI}$*RLi2e$9FJsN~<jDVNU0 z%$uh3?_bZiPc=Z-J$qL2?^n;PSt?>;EZohS89*V%k|4ie28U-i(m<RfZ+91l4pvzY zAZMzli(^Q|t=xWhp+g2duF49>zAQ>`;^p8lGrjU#p7-{rrZZ38-;=(ov5N1;6|Y72 zI{vG6EX&zy9jo2^;_K2W%?~qp7CIyuZS?XD7BhD7dDi_jYi<$at`x7_B(dn@O&w)* zyl-sfMV{`Q&FOx=X^Z9DwGG_GX(qAxVG5fs=#|?s3$_@x>d8Iy+tTY_@$x&n*Z<nT z%J#=z@z`#^BefamK=%^Yh?3y^w370~qErS44P{Nw+{E-$-^BFH<ZJ~~JwrVM1p@<p z14AHE2(+?LNG{4OE~#|Ltt>9dOx8;+)=McZ$j>X$OU}=2i$41rXrva{$jtP-#FA2= znPvtC76t}srsf8T=9Z>Lrpd;M=4L5rsmW$0i57{L2JBhsM}WFGLAqR0a}p~V3=Iro SBwP4_f()LnelF{r5}E*q_XoKE literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..98e81c94ba62f27d10c27d54edc81b1538409ace GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgosd&0LhE&{2{?X4SaYAH;JHrMC+gT2_iH)`f4zi8^ zGnia{vNA|)JA2=K=i#qF_3kCE5hcO-X(i=}MX3x98p@iUxrynizKQ9X$=M2~dWL!i z3I+!H28KYS5NKtgkX)2mTvF+fTUlI^nXH#utd~++ke^qgmz<y57Jc?L&`2$?k(udv zi6x~#GtJY?EX+*Jlg*6GjZ;k$Q;f~ij4cce5{(Va3@uCz61Qe<TMyL53DV_~nv+<` XU}#_vBiX_a6lCyp^>bP0l+XkKii%cE literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade_auto.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..fcb3ebcd7890efdbe2935f5ed29cfe9a73852682 GIT binary patch literal 325 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgoIeEG`hE&{|d)|?YL4m{NV*O{E8Rgo?UAtCiDCEfP zm|%NIeT`R>U0dvhkfn@TtnU`MJF?{`TwLp{)6y$?Q0_y?X-10~hi5#UQB(;u&Ar4m zq9iy!t)x7$D3!rMLs`=^H!(fcH!(dkIa|S0&rr`m!N5S@zz~QO0<A0*l8Z8nODY|5 zD~n4qll4-I^-@X;^7BgclJj%hqR+kt8mR>~GBZ6dv7{7eW^$r&s+nP$iCMBqnz2EW zskw!@nMGo9Qc|L&QL?2$Vp`H;PoOSNkS>?hoWx27Lj!{t$rgT~AcLo?pUXO@geCyl C31p-I literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary.png new file mode 100644 index 0000000000000000000000000000000000000000..54348d4797e6d345e2fc686b8374041736cbbd02 GIT binary patch literal 554 zcmV+_0@eMAP)<h;3K|Lk000e1NJLTq000mG000mO0{{R3C@l|D00004XF*Lt006O% z3;baP0002?P)t-s|Ns9qFf=42BvnZ~O+`3uML1PaMNLUXJUBS4tgK}qBt;w?a+0@x zm$ihNw8v#tgPOF2o3(b5w1b(mf|<2#AS65#6pEa&RUjOSp0R|QvxlF%T^t;bptOdY zvxJ$mmZh<psknZcyeuFfke;uDnY53ixq_X(EGQ_OqN;(Mx`msxkD#!XsJxV?ynvCS zc$Bk_f^8fa7)>xFq_M@Qx6H1+(yzYJt-aE&z0aw;%&w}cn5Dg{xz44u&!x81tiIK! zy49(=)v>|UuBMJG92jj~O_Zs<ps~lUyUwh-(W|=AvB1))uegqiiiU!QhK7b|X=&sW zlk@-p00DGTPE!Ct=GbNc0004EOGiWihy@);00009a7bBm000XT000XT0n*)m`~Uy| z2XskIMF-IY8WavO3*b@-0001;Nkl<Zc${s|#}<Mx5Cu@s01-5!B32Z8@4ffl`Tw6$ zk4aX%+1>MI@dUvkqRWjWS&^}af~t9a1pFi*atP`GKth;;5srZVJJv9w@Q=bF1_a`e zV4#}Glm+QbHpd(J!uO$ADl;%E)f&_rO$MsgYIhJqm_fJK9}Gw1$#h0RnlF~C^=7-< sQ^1Gg>3q4~?hiii`Fh)mDBDicKU5tMTI+J-LjV8(07*qoM6N<$f|rl=jQ{`u literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary_locked.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_commentary_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..03691827a61a32bd9ea1b73e4a80d0d170ecaf21 GIT binary patch literal 631 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU&&y0G|-o z|NsA+7?`N2sDygj__|u;x>|$=y83#$+E`euS+gcpLB&-@rfAaky6Ib6W^Fm18rnQ- zOUvx7Ws|lv&)nQJb8D`Gij9a!W@cvp;++%bt#6*WrD^Uy9Sx0G8JXFORyEGq)jE4i z|AGxuSL~Uxd{4u~MHN#v_ci6pNJ#h^s4Urdbj9{F>-Jt+zwhGOy_eSQJ->4InRTmH z%~-m3)y{KEx13+P?aG>cSC{X)x^mamjR&u+Th^x|Bas{HJ7wkG1sjjA+kI}$u8XU8 zUEFx!(#rKa`ntN>n%aQC|AGcD(07a_L4Lsu4$p3+fjCLt?k)@+tg;?J&J0f%$B>F! z$q5ITBxcTtjJSE@riH~qrkFc6duskL)im`KFe)b2)z#Sv@~voCA)&t9f~E1N!ZHhc z2}hoXBI3f&rwBZM(*8;Eh^66H4=+aEsS~C(N@{7VuRpMU#S$In?P0E=y{)aS%xVkP zEnK;D?c&wT^BF`FOihf;3{8!<Z)o8vh={y><JL`U3#)^BpTBveb?)2=wZ5~j8R}>A zHs`!MBLj4!dx>jANpOBzNqJ&XDuaWDvZiNlVtT4?VtQtBwt}gip`L+)fq}k(ArL79 zT3IM07iAWgR668V7MElu>!lX!rIZ%r=auLs=jXOX1I=b&&;lEonVy$eQVKLPIW5UB z$=t-y)X?0-!XPc#B+)3@BFV_aBsJA2#n{x+!*JGepe|03E|=7t#7YK31A`dJ7Ji^0 NgQu&X%Q~loCIF$_{c8XK literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder.png new file mode 100644 index 0000000000000000000000000000000000000000..c7aea046765fcde24ab19e1a35af482b9868d217 GIT binary patch literal 270 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPF<Nq6*hWMJ6X&;2Kn708ze@CkAK z|NlRbdHC?*1q&85H2jZ<hyaQ-G&JmZs1ps8U@Qsp3wAKGn)waHN%D4gVd!9$^#F1> z3p^r=85p<)L71^VC4M4MkiEpy*OmPOw-ko~*K)ai20)>BPZ!6KiaEMx5Aq&R;Al;} zvA|{aJ;gEx>qbuIiVLhhxBj|obj948{-5bU<pHalqpkVcF2eCytHcU>mPGNI7r##x zOFOrb=~kBx$MfUeCk~}19#Y{uu)$FD<o{M)2dlc(QT#GrT!nRkRxx<G`njxgN@xNA D4Nh6h literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_change.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_change.png new file mode 100644 index 0000000000000000000000000000000000000000..c7aea046765fcde24ab19e1a35af482b9868d217 GIT binary patch literal 270 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPF<Nq6*hWMJ6X&;2Kn708ze@CkAK z|NlRbdHC?*1q&85H2jZ<hyaQ-G&JmZs1ps8U@Qsp3wAKGn)waHN%D4gVd!9$^#F1> z3p^r=85p<)L71^VC4M4MkiEpy*OmPOw-ko~*K)ai20)>BPZ!6KiaEMx5Aq&R;Al;} zvA|{aJ;gEx>qbuIiVLhhxBj|obj948{-5bU<pHalqpkVcF2eCytHcU>mPGNI7r##x zOFOrb=~kBx$MfUeCk~}19#Y{uu)$FD<o{M)2dlc(QT#GrT!nRkRxx<G`njxgN@xNA D4Nh6h literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_new.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_new.png new file mode 100644 index 0000000000000000000000000000000000000000..ba7b6c961c000a6df0a6e19b1b51a09723d6e2b7 GIT binary patch literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPF<Nq6*hWMJ6X&;2Kn706c!@Ck8^ zjg18|4<A0fV8Md_{}25C&v56?o&R@M95}%6e?>$?L&N|7{|(p{UH~d$ED7=pb}+M= z`3=NL@^*J&=wOxg0CG4BJR*x37`TB}atko7Ro+_)6l5>)^mS#wz$wFE#<zT8!)l;V zhNp{TNX4Aw1O>4U2E)Y*7#25cEM{&_`RU?#@md%g+s99*W*W!XH1s$*PP}k;og&X8 z;mendVr+OMj~tycW!koFTm~LpnwhzAyDl_38hD;Ok+D^gdBVaqYjSu}Iv81ddRZHk d5)=+FFhmrJ1nY{ZX94YG@O1TaS?83{1OVbDV_N_K literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_open.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_folder_open.png new file mode 100644 index 0000000000000000000000000000000000000000..d838b76c340d36743b7e78feb78e3f4dd1bd7a1a GIT binary patch literal 299 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPF<Nq6*hWMJ6X&;2Kn706c%@CkAK z|NlRb+0gL6p`qdM;ll?G{9mwOfq{VmQ2frFI}s5P2V}KlfGQYEg8YIV%&ca9196hP z-CY<uSY<tc9L@rd$YKTtZb1-ctWSxb2oz*5@$_|NzrZcUp>MKUbuGxcVow*xkcv6U z2?+us2@MR2&KlktCj?Y9G!#Unq*k3cpfGKpho*^%M}wn<ZltHC$%zS#wz_8{JULG! zn0Oa5Z{m@ZICUo`rpJ*dQGB}QWe1)zZ}IcjTpie&E1vcAsR%SX-dU{7b%tTnEJYp# f?o$Z@`Ya4Ld__MTN>W}Aw4TA!)z4*}Q$iB}Aq!mc literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1a5c363871a8523488fd645c4210cd4ad9a4cff5 GIT binary patch literal 658 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU&&g0G|-o z|NsA+7?`N2sDygj__|u;c-w^qx%zs#h6cLYSXk87)}|_`xXQ>JTUEDiSszf-huhnJ zKi=~H<CRy(7JWFo^2_D5zn-1SRZy`J5qWWBcBq2Pqy1Cgo>}tw>bh??R)4;@^7n%s z|DW!T3Jr*rk@<aZ$L|N5e%;*g_u-!ZZ%@mMi+{Yb{_n$$f9`Gn^I*4*hQ{A#d;h;Y z{{PjH-;cL0n^xJ^lq(}4;cKAMm+HH$Eb7p*sux>YKAxWO|Hb<M|F4`mcBInBZbxC% zy*WAecC>sv*8BhM-qVMc>Bvar#`>=BEqrld+1|Z-Gcz-@bCYKPoz7Si<QL4~@a#q! zh?C^)?!wT)D(eB{EcA4745_%4oN$0iV&;s<h?_SoEp{$ox?{7a=1&b%lT!}|V_jmM zV4$JjiiRC6D)#pKJ31tMT6at_+0SDyZ*OlM;}GT-=NLFKo-?g&Q`f3lyOj2~sl~KT z+t#NS&@boX5b1sYzy%Kv5B|KhhVwbOxw+MS4qQ2N=g_57w~k%o(@J>%;Kh@i<i|;` zxkMk76n`(+@@dP)uTI|<np-Qko13j?W_au*P&(~0?>C@h-Ah~}N`mv#O3D+9QW+dH zlr=qb6Vp?D6Vo%3vlUGB4D}2Y3=H%Q41q`?(8@v~xhS)^q|za`vbZEOSueF%FQv2~ zKd(eDIX|~8`s{0<ky>CQGt=`DOG<%erY2e>rI@D}7^Nnf85^6Y8W@>dCK;O~CL5$B qrX-rDM%Ej119fqNbh)JFBvvvQ8W_Y#w(tW589ZJ6T-G@yGywpzXBbcb literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon_locked.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_lexicon_locked.png new file mode 100644 index 0000000000000000000000000000000000000000..00626db2e9ea44d641cac4dcef65342f096c4525 GIT binary patch literal 604 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU&&*0G|-o z|NsA+7?`N2sDygj__|u;c-w^qx%zs#h6cLYSXk87)}|_`xXQ>JTUEDiSszf-huhnJ zKi=~H<CRy(7JWFo^2_D5zn-1SRZy`J5m~Zqeo9ix$1CgqKHT`{-u6EacI#+p#LCG0 zeYW@i%j5rF9r^uu>#}K;eNDMC5)!@!Dt)QG%gUk-EvtI5rRC%48UJ6b|NsBWnPW#P zee8A=M%|l}b8kn>$78+!-|jtqXqk?TL~g9_`rg797nbeayEij4bBEW`D4>HFOM?7@ z862M7NCR<_yxm<GI#^{rfSjqGE{-7;w~`YMFiFgu5gBpwhNZ>M1x$Br_SF2TVQO;f z;b5#wtP>10^jp!eqh-kw5thcE3d^Q+ED^Dva$Z4GRZ&%w$xVP!)6+-ylF_E3KQ(_o z890kB5uG|Ew58?A!)vQPt=za_L%|`IE2bt}x0IHA{ldF|sm<+}+On#uv|rBx82z}t zwUcGDZEK}d<Zo><F1nHQ*@|IK5Z~05Qx*OJ9q3--8c`CQpH@<ySd_}(prNeknVXoN z>YJFJnVhX)s%NNYpkQF2Z(s;S3V~J@3du#8#U+&vxs}BwnaO&o#d;~F1^Ia;ddc~@ zZP9061C7)I8=0A&msnB?G}Fw|+|1Y_F)1-A)gUn?)zre&$iytk%pldk%qTI@!o;EG j?i8RdPLM8_)SSdh215gb7|9lXpdf>%tDnm{r-UW|pW*U| literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_search.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_search.png new file mode 100644 index 0000000000000000000000000000000000000000..fb43c802b0ef86e80e37aa04b4e441e60bbaac6d GIT binary patch literal 650 zcmV;50(Jd~P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00004XF*Lt006O% z3;baP00006VoOIv0RI600RN!9r;`8x010qNS#tmY3kv`M3kv~l1cbK$000McNliru z(E|bu5*(fI0*L?s0tZP%K~#90rP4cZ(_j<^;McjS3LZ$?ASECuC`%lXYzPKRMlg0@ z0MR58L|y0)V4+AjF!U!>j4*d%f-w;zO{GXI7|5kq#wHF8u48|`eIH{h2!zW!o#i}w zk90U3MG{3(4uU|+X0w<~CU6|5)#-E|188ARq}$as_TuF$rkEz{YC7B147T^-BfGb; z!2n2em*4h!%pg7+Iv#s%TI^X*V^5WRwmY`io%Qu!A~8`E<@((QPUX)anTUb12qC2i z!9lZK>>b#+-+Y2fr6SJ+9LJFg7t3%d!#B@|9Z(#G6iyT&pbYP=Lzu}lGMUWm2Kjs* zG@ig`;$!Ie=s6yALNM}t9C$uP#DgA%5Cmc7{RzV`5cod!ePBd<xRk*p9xUR)Bm@ho z6qXYSD2g%@h*3&gBUMF=<1ls!KG{=zv8OQXDSXevS)NDws{vitTeE<;rfEYi3>vG~ zufd9^;6@Zy6d@VoaA9!~H%>2MyZHz-44?P={hyFHfI+w0ZBKNqak+3FR|+dwPA}ln z(n$!Og>CsE-tj!>t(%g%v(pAJI1X^fW~p2*%RJ9ZrBVrsqF_88w{p2$`^~u(d6l>j zgc3G4A6&&BeCCgl1VLc6T8(XOZO#46-y+rO+W#TNVv*JBM@`~?2@FirY)27o0D!8h k!+&W308%=Aq6q-s0sVLrzrl4QxBvhE07*qoM6N<$g0?RRGynhq literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_tile.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..b466f5b75b38f5710e509d0fd571f4146dd9d2de GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgo$$GjthE&{2{?X4Sv4P`?GNTMrwF83_UmhdVK2`>I zwsTjtuBAT)Ds(S#jVKAuPb(=;EJ|f?&`{R&%uP&B^-WCAOwLv?)icyHP%tpiH!uVu zg+MC{h2)~l;*v^-+{)sT%w)aPV!f2og8aM^z2yAdw&=63fktY9jm%8XODrh`nrUg7 zlxksWl$K&>Zk%LblA4^BY;IwkY-V9%W|U@{W_)^euL)2WCrFn|YEEJ$gQ0;zjARQx PP>{jX)z4*}Q$iB}yzEf= literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_tile_auto.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..80eafdd31d14fd0a84fa8291ab235147d69e87c1 GIT binary patch literal 324 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCik>N`m}? z8U9C4RN4ySC3(BMFzl6&eZvgoIeNM{hE&{Y?cd4EV8Fwa|Jgud_tU_x8<iqlUBX6f zyE?fw9QhwCe96tB+R(+xP{Xv#Qnr_KwfdB(8&T)%m42+r^;A3bcv{&`SD<0;C9V-A z!TD(=<%vb93=SH~nx46d>8ZYn>6yvd3Z{C7dIkyx2KokuK%@|8WucH<lv!L->5yAl zT#}irms+fsQd*FoSE84kpW7CF_BGH*EwGW9>3NAIr9d+cOjFIw4H6BElMPLi(-M=C z5-knWl9CKljgu^llFXA8bpCe(b#a1pxuoVKRx%hG7{o}n@B;-IJYD@<);T3K0RU&F BVebF{ literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-action-bt_verseref.png b/bibletime/pics/lowcolor/16x16/lo16-action-bt_verseref.png new file mode 100644 index 0000000000000000000000000000000000000000..8e05bd87ddc3966fd81792edb9cdf6fd983c20db GIT binary patch literal 811 zcmV+`1JwM9P)<h;3K|Lk000e1NJLTq000gE000mO0{{R35lX%Y00004XF*Lt006O% z3;baP0003XP)t-s000061_o$oXeTBm2L%HG0RRI718h<?$C*{)v}T85E`Mk~L^vV{ z2L!HtIJ|Ecyl@!BfGXLfRJfH_C?65Zh%~!w6uN2>y>J-OpjJgWBI2@Sz;++HYZAS2 z8P%LicwRI;G9I~-QpbZXx@!}|kV=hrQYj)7YECA{f-TdSMxcmYIypFqa75LkSH5x@ z$%Znzmst!723<@p)1z3!d?vqj9kYQuPeCW(uVBP|C%$tV*`iXId`fa&IntzB#eXT- zp-^>TISva4Tud#~rd-E^Exd3S!FVBzb42LBa?X%E%!@bNs8_vm8o_uX+^JdVz;x%m zaOS#h)}Bq>s#=C_LZ5+6&W}9Ys99f5E(Zn!W>hlfxonPfMGy@LUe#Yq0001BbW%=J z000650RR94Wvww60s>y@`t9LS4bA-g`(g}-^ZfhH83KCt{P$r3AKuqu9vG$k*+~Ev zpZEKX6qo$_!X^-s_Q)*&3Xk;s*fDPElv(`vp-O8Oy{#E9^t2xU4tOB|oK~EA00001 zVoOIvUvtq>EdT%jpGibPRCwBBV1NKdCT12^1~_12=iubx=7Di}`S=9{g@j>T5m7O5 zaS2H%PfA)wR#r}40m4&MQdW_bQ&m%ka5Xe#WhJz<bs#)lJ$+eO14AP)$H>^kR94o^ z9IDd7(n?m=+Qt^bv$J=Q71wukat8BUT;1GdWj#D0JO(dsA74NJ0GM+EgMve>Lc?HO zXXo&U$f#(9XJTUG;$dt6OnVhMoB=Jv0000-bVXQnQ*UN;cVTj606-`sDM@W%XJt)c zXK7<=AT=&AE-)Z4FfTAMFEBA6Q93vvV{&P8ba_B+d2@7WV=iTLE@X9ZZ*FuhV{dJS zTg~eL001g<MObuGX=iR>bairN05>pYIAk|CW-&E0W@KS9WMVjFGGk&lF*G$XW@9mB pIj*u0!2kdN33NqRbVOxrVR-;CFfd#hgbx4!002ovPDHLkV1jO@H5~u| literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/16x16/lo16-app-bibletime.png b/bibletime/pics/lowcolor/16x16/lo16-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..08f046e233e05b57c9742d985b86af2837af5618 GIT binary patch literal 806 zcmV+>1KIqEP)<h;3K|Lk000e1NJLTq000mG000mO0{{R3C@l|D00004XF*Lt006O% z3;baP0005$P)t-s|Ns9jEiDNN2_hdHAQ}!TBpXUdLQhRaPE1EPGb|7g5GNoYIu{o| zFC>n8T9AHWlY3*6hHsLFaF~pDTvkjcCnr1`8)_pXT|hCurhCAebi`s)#;b<Tx|Y?! zo~4<EFE1`}ad9&f6KNtMTRt+oopZg0W5h*2#(-(clzY>*n5LVFBO@X@Iyyld99ls% z#eiqUS4_o0JjG&D$AD|nvzDcsiAYFDMIs_=BO_=^Jj}C>%c+LOUQx%biOjZ?*u|x! znS(w(JUBQwK^+}zBO_-?J=DFJ&$W=pU{lesk=DYX-OH+=m4YoTEJPn4W=K5Nz?#&% zn8#L3)vS@-%BtbduAY;B4h;=I7Z+?KBw|K8)V`S4zn#o|Yt^=w+{vin&#$JNh94gu zKNc2kB_&=&INi&v)WM_Dz@XH^q}Rx=hk<k!78W233_uqbD<2wUS4e4HPF7ArU{FGE zTStLySa4=lO-)D+3JG94E{tGAu7X;*lWEAQf6%dn*T9kC)v4#;yxG;dFfA-$K{l0S zO0$e*!JKc=vV+*akJ`nR;nSt);k)YQ#&mRaE-Wl9CL}>SG+ab9fnP+5a#ogtW3r%r z)z7)b#JyKnS2Hs+R#jATaBo#rR4ptjBqAO>JUd!iS|qmRB>(^b0d!JMQvg8b*k%9# z00Cl4M??UK1szBL000SaNLh0L01FZT01FZU(%pXi00007bV*G`2hjov6&yLS;mr;J z005>*L_t(|oMT|X0(f}&_yq)oghilyF>wh=DQOv5IeDmnlCp}bn!1LjmNryCPg&o< z(8$=t)C?+MVQFP;V{2#c;0P6PadmU|@bvQb@r4Tby9NXX1&4%&g+m1*qoQMC<Khz% zlb`}AscCZQ8JStxIZ%PT{DQ)w;*!#`a;QLMRdr2mU427i6I7t3wXMCQv#YzO7w(yf klO|7@I&Jz4Y#zk~02Li5D98;#wEzGB07*qoM6N<$f@=gxjQ{`u literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/22x22/Makefile.am b/bibletime/pics/lowcolor/22x22/Makefile.am new file mode 100644 index 0000000..a24a189 --- /dev/null +++ b/bibletime/pics/lowcolor/22x22/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +lo22-action-bt_cascade.png lo22-action-bt_cascade_auto.png lo22-action-bt_tile.png lo22-action-bt_tile_auto.png diff --git a/bibletime/pics/lowcolor/22x22/Makefile.in b/bibletime/pics/lowcolor/22x22/Makefile.in new file mode 100644 index 0000000..adac6eb --- /dev/null +++ b/bibletime/pics/lowcolor/22x22/Makefile.in @@ -0,0 +1,383 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = lo22-action-bt_cascade.png lo22-action-bt_cascade_auto.png lo22-action-bt_tile.png lo22-action-bt_tile_auto.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/22x22/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/22x22/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/22x22/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/lowcolor/22x22 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/lowcolor/22x22/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 13 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/locolor/22x22/actions + $(INSTALL_DATA) $(srcdir)/lo22-action-bt_cascade.png $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_cascade.png + $(INSTALL_DATA) $(srcdir)/lo22-action-bt_cascade_auto.png $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_cascade_auto.png + $(INSTALL_DATA) $(srcdir)/lo22-action-bt_tile.png $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/lo22-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_tile_auto.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_cascade.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_cascade_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/22x22/actions/bt_tile_auto.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/22x22/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/22x22/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade.png b/bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade.png new file mode 100644 index 0000000000000000000000000000000000000000..b837d36780498de4aa453d2e2834210b0988e04f GIT binary patch literal 727 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6-x0(?ST zfwY5zgTKGOp`jrwE33S`d`@a<h0Fe$oXHj5+pAM&S9t6e7Z<NdpIH^UwkB&@rT^xt zh?UhTbEZw3W@l$tkkVLN*jtk^y(VjFZT^Is%xU!{y)E@UD^{#<cXzLfTu~LXv?^p> zV^#Nr2@@typ1gSR;_A4?mBH(43;OFS+G>lts}mMf$1UpW>S}FmEyydWE9<B&?y1R~ zUY|d0=FFLWeSOu53o3)xRe0{KNuN;}uxa7Kg?skwnLBrGXJ@CZtZZ9b+mtC&nwy)G zlasBjtt%@lCrz5f&d%P)a7YH|H;<AazhEHEz-`Cy?;nuX2NHjQ%vuHz&mPRFt*ia_ zPwL;_clZAO{rm6TzOP{FACL`ZFueQs?pWF5fBeTjmVh)dCV9KNxF_sASq<c@_H=O! zskk-u;&r|z2Z7dyqLGfNqTw#Cf`V`Miof~#_x_0%*)y{iaQ=T<UZ|HQ@GIQsLAS9; zq0=N)jhSBDJ))CNt`azT(I$EA0&(vtp=Mg4lMBxpy)s*JoA)?t-ma|GvN@-N*mq=q z)mfp>-=;i&>c<wJ#93#){7iaj9Jlr*+pTviBn$36DYAd_b|;_x&kC-m#$5-dXKUPl zm-y$xjmVFe9~X)IIKy49y6D7S#;qy(n)6LWjDXH|FL8}13C>R|DNig)WpL0?*7VFx zOi%SqOwUZtRxs5w)H6^pFwi$J1R{k%D+`6>qRirwN{8Ia;*!i{z0_j8l+uFyyb`_S z{M@$av#)_hYJrW+OwUU!DFvEolA3C6U~XuVmYQO0m}G94Y;0zkYMhv4U|?!)VVaga lz5Q}7P!}gimrH6+VkLv2fkBL93qMeh!PC{xWt~$(69AxiFH8Uc literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade_auto.png b/bibletime/pics/lowcolor/22x22/lo22-action-bt_cascade_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..db66d5457728007ec4eb1d40fef97fa9c25c49ec GIT binary patch literal 1042 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvNA9*HU#*D zxB|r;931@p{S6HbSy@@-<>hlyODkOV*W^sD@ZMgXI=jMSx45`?P5R8L(6u#L(<=Qp zS4FI>PMI@p+B7>myMmO)+QQzNjOjI5Q)}}l)MQSpFX?Tm?^&^8g}b|ZRpg4Qn59)A z>l&-NCrp?ydGh4Nix*eNEv^h+pKG}#!(@Gt-Ok#A{<?~`+T!l2qBai?4>2(@U0vM} zpZMy81=Vqjy1KerTU!hAO6tlwYKwa+lBXH#TWP3i$3>;aMWzP0$A&o;)nrbu&!0AP z=FGmnzUssUmBH(ZoHuLo`LeUK*Je+x@Z6bWyEZ+jxiVl=Mn;B`k`faWle)TkLqmhA zs_KjxGZrpfxM$BEZ*OmAX6Eed?3F858W<QzNJwnnyxGagDJCXn>C&a8rKM?UX;oEK zot>Ssva*X7E!w_)dwqR9A0J;~Vd1V_yXMZF+t$|R=H?a@6y)XQB`PW!85y}@!-nO{ zmq$fKDJv^iS66S^v}wweDb3Bz$;rvq*4CAkm6Ik-x*e=|7Z?W(B|(0{K$?Nuj^W=w zAgvE1{sNh`3?QC8m{VI<`|sahApH05-Mzmc>MxLdx9=-N3`hcbAc7yF45S1k2%<s4 zVD3Ahp<qMafknZl0ks_~d;IU!hb1S0mN6!IySvnT>@R!@WV3m?IEGZ*N=`VyE-`Zg zqp{0`)~UU7n`OBycJ7#|aL8s)%^#+K1KJuYJc43^qQcV!nixDaGbJNCHq6;GrAbMo zLsLt0wL@!YD9e>AH%(2pI;0hE$aZcmeNy`L>la=Lp57<DmOegb4;-?2Cbnl<*fq0l zWo6&^`jY(4=_MqFg_|pu^ZV=P=jY4E+bc%S*sx(uJ%e*Xz=kzB9gZuwVk~rQY?>5} zv}~-}8WqhXA}#dn6m4t_Pfk{}biHP2%Bv<bZ=ICfyoocX&Yi6Ndd_hMalW(q8X7uU zdYtZ}eEPcD;wxA1uycinDsvuoSeN6gYxdAe&||}<Ywe1Rsd5=-DmE=*5M!If$l$fb zX{o)6d@V3|+)G>|N`mv#O3D+9QW+dHlr=qb6Vp?D6Vo%3vlUGB4D}2Y3=H%Q41q`? z(8@v~xhS)^q|za`vbZEOSueF%FQv2~Kd(eDIX|~8`s{0<ky>CQGt=`DOG<%eS|q2M zTUc5c7@HYcCK{Ngq?#ldCMBDj8JHSd8m5|ANWSli0P5ld>2gWUNvvcrG%$#fY~cqA OGI+ZBxvX<aXaWGqKC&+W literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/22x22/lo22-action-bt_tile.png b/bibletime/pics/lowcolor/22x22/lo22-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..344d4a9210230da160167993adaded3ab9d6c9c9 GIT binary patch literal 418 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6;L0X`wF zK$@MMU0z<kI%Q5(#LAlVnU(&VYYX~Y>U%mHCwI0^=&YaC)!x@s-?nh!!aaNTOqw*Q zv$NAu@%m4oPN9+@zhDM_yMKTG{RJX0@%P_9hdO;Fpe$pOx4Vnrqph~PfE+(h7srr_ zTW=?Na~)9NaWT#Mvt-%Ff792htZNaw^WE^wf!lq>?G-mZtWrGEGQ;q^!ZL{iB`bSh zEV`E-xH>g+pQvE;zptys!j5ea{juv|1N-aQd<(D7pX3cR*}cRyq9iy!t)x7$D3!rM zLs`=^H!(fcH!(dkIa|S0&rr`m!N5S@zz~QO0<A0*l8Z8nODY|5D~n4qll4-I^-@X; z^7BgclJj%hqR+kt8mR>~GBZ6dv7{7erjdnFvWc;=g^8KDL1K!jg_&8JX{w2FikXGE qrFl}C`5oToR-i6UkS>?hoWx27Lj!{t$rgT~AcLo?pUXO@geCyWKAYSC literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/22x22/lo22-action-bt_tile_auto.png b/bibletime/pics/lowcolor/22x22/lo22-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..807b018849c3883845f7e57c75d37a9d98021e48 GIT binary patch literal 745 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6Ea{HEjtmSN`?>!lvI6<H1AIbU zfiyciyS%)7b;_Koh?O<zGb{Z!*B11*)c15YPVQ`-&{;pNtG%zOzHQ;cg?skwnKWtA z?%lh$Y}wM%(o$bvzi!>SMT-`BczB43iRtR<*3{H2S+c~!!a_?+D<L5vH#fJpw>Ksx zrn$L!^XAP?PEMShoU2x?nmc!Hb#=9|u`x3<vz3)qW@e^|iHV}3;_B6_y}iA&v$G8h z3?w8Z=FOW|T3VWxmNsL?jKzx=^YQT&78dT>wad-TEhs3+-rnBa++0*tG%_-B!-fsZ zmoJZsijtO=HZwEZv}sdkXXnX}AtFHUd6oqE1vBv5{rmgxFA#wV5Df=lCR7F_3sD17 z0aFZA3eoZRU(l-!#y~?Elf2zsJU%d8c?IO`^mK6yskoJ#pde^qw2;wlgMqLyx3;vj zwY0Us#*G^{85ldZSX%7dv9oeVWo09axwtxe$c%n@9u^h_6ZuUW7EIXCu|lD3!;Bp) z%}YdfZP?PYX3n0bMMA4KZ0cHNav{gGR3wqtmrXZUma#6@wpQdS8&6allad<`&oQ+X zZ5p4rJ!Tpi&6v43LNo24{sM)h%+%gjLdDY2*46Cp>LumYyLar$+>u<t-u~RMmG#Gg z1BaQNxD6h5vk5UUEI2B<tfu<+KcFYvOI#yLg7ec#$`gxH85}f}H9d0^(^GvD(=(H^ z6-@OE^$ZjY4D<~Qfk+|H%0eNzD6_bv(jm99xFj=KFSS@NrL-VFuS737KesLV>}#Nr zT3{nH)AJHbN`YpYr<$7^o0%J%BwHq%7#LclS(v7#ni&`xCncI27^PZ@m^G^cb#a1p dxuoVKRx%hG7{o}n@B;-IJYD@<);T3K0RVN8GKByD literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/32x32/Makefile.am b/bibletime/pics/lowcolor/32x32/Makefile.am new file mode 100644 index 0000000..ce312f0 --- /dev/null +++ b/bibletime/pics/lowcolor/32x32/Makefile.am @@ -0,0 +1,7 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +KDE_ICON = AUTO +EXTRA_DIST=\ +lo32-action-bt_tile.png lo32-action-bt_tile_auto.png lo32-app-bibletime.png diff --git a/bibletime/pics/lowcolor/32x32/Makefile.in b/bibletime/pics/lowcolor/32x32/Makefile.in new file mode 100644 index 0000000..263a372 --- /dev/null +++ b/bibletime/pics/lowcolor/32x32/Makefile.in @@ -0,0 +1,382 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +KDE_ICON = AUTO +EXTRA_DIST = lo32-action-bt_tile.png lo32-action-bt_tile_auto.png lo32-app-bibletime.png + +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/32x32/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/32x32/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/32x32/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/lowcolor/32x32 + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/lowcolor/32x32/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +#>- install-data-am: +#>+ 1 +install-data-am: install-kde-icons +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +#>- uninstall-am: +#>+ 1 +uninstall-am: uninstall-kde-icons +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 12 +install-kde-icons: + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/locolor/32x32/actions + $(INSTALL_DATA) $(srcdir)/lo32-action-bt_tile.png $(DESTDIR)$(kde_icondir)/locolor/32x32/actions/bt_tile.png + $(INSTALL_DATA) $(srcdir)/lo32-action-bt_tile_auto.png $(DESTDIR)$(kde_icondir)/locolor/32x32/actions/bt_tile_auto.png + $(mkinstalldirs) $(DESTDIR)$(kde_icondir)/locolor/32x32/apps + $(INSTALL_DATA) $(srcdir)/lo32-app-bibletime.png $(DESTDIR)$(kde_icondir)/locolor/32x32/apps/bibletime.png + +uninstall-kde-icons: + -rm -f $(DESTDIR)$(kde_icondir)/locolor/32x32/actions/bt_tile.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/32x32/actions/bt_tile_auto.png + -rm -f $(DESTDIR)$(kde_icondir)/locolor/32x32/apps/bibletime.png + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/32x32/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/32x32/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/lowcolor/32x32/lo32-action-bt_tile.png b/bibletime/pics/lowcolor/32x32/lo32-action-bt_tile.png new file mode 100644 index 0000000000000000000000000000000000000000..f45a24571736eab579ee8c19baa346843a766a01 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}EByV>Y zhW{YAVDIwDKoRy5PhVH|3+!UzJO*8RS9Ah}3O!vMLn`JZCrGd=%Ni`=zH<Hg|K&?t zdwY8|$~Gkgf5|PCVFrQl7fKe=Y!i;|a1x)mR8ErToWO>yTUAeOINZ)Z8OS#fTspZe z;R@qoK8ex;E12D64PG?_viDd4g(7aZ+_;tZgJI<>_k$V^Yz)^DRgT}S5y=Bu&fw|l K=d#Wzp$Pz=MoQuU literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/32x32/lo32-action-bt_tile_auto.png b/bibletime/pics/lowcolor/32x32/lo32-action-bt_tile_auto.png new file mode 100644 index 0000000000000000000000000000000000000000..767f28428e543f76171200b184b6d62d2a7948dc GIT binary patch literal 382 zcmV-^0fGLBP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800004XF*Lt006O% z3;baP00006VoOIv0RI600RN!9r;`8x00(qQO+^RL2No9=4*T&>`2YX`5J^NqRCt{2 zmN5>4FbqZAsuO1lo3FsytKeLvYp>u9pQ$SysvrX{#1u-U@~6l$`A?4H0C4Evbs7fh zx^A~Lj4}2+FILjyegy!4qPlhKBpoZN+oF7}->g7cmRXxMO|vLp>zwuFhT0v#Jc2oi z2mk=Y7`qq|K?q@c01*Kq8pTtLnYRPb=0pT-`?@fx2}J}D(FNh^0c~!TJA~k_KsEp( z_Kb4!Rslf7(WX{Rn|mN;0p68#7`Gr-0kF*G%smj<J&;VTiZHVYnbVN2TQId@8cuV0 z9|0g@&q$l=E9#MJ5Ha)Qxh@&U?orIlqj8+pUwI3X5i@u1`x4`%-JjzF!0Z9*-)&0X c{6mMdo)pB1?}^U#fB*mh07*qoM6N<$f*RzV#{d8T literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/32x32/lo32-app-bibletime.png b/bibletime/pics/lowcolor/32x32/lo32-app-bibletime.png new file mode 100644 index 0000000000000000000000000000000000000000..9c9347f1cbcc33f4a84ec11a0297e6a26a1645a3 GIT binary patch literal 555 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvI6-Y0X`wF z{~7)tK781~z+l0G1qUL4q7466L^wDw{J*o}|A7N{?%auph-d%;1_lS9R09JL9yq`N zga?4!{|EjvFdX=Q04U9~;?pdkX2y~rzhDN3XE)M7oFs2|7lsa2Sq~tGv%n*=n1O+B z4+t|(-BaWV6l5>)^mS#wz``cR$1JGuCKag1$J50zq+-t2$=*dr3^-hPJ(&LLR8LxU z=l`-y6Ya>&CzXm$O2?V{O3NRY_dojiWkJuGH{mz^d$Rvtsq5lUwV6_^_BgadKh?8S z#bXzz&&AND-%A-(S{P)#+*WZf2v6VQ@rlc5_l!?WUslCl%23>+VAN6+8x^vpp*`~7 zA=#N>4=%h++`(>fGOsAJk!>!gn8GKys}-g<Mdcp+<5g(;#IU1$3&TaHZxR~$3^o;< zo)2?dD`YPhe_+XMadczVeZ<z`o$S)w^fs_OKaoLTlCpf`o8ko=t!JCnU#i9=>~3GT z#y)O-$J9Okg_+H}OmwciT>Uj-WyP;kb9Zd*Rr?X4qAd{FJpIE;n?UWS5skMtu<k2) zvUy6<HwLE_x$8vk8oyFMu<_ajDXB9D43B^3;@~;da^UD&si&MjGXL#Pu=82j%k}n1 k^y*Ms+xGMI5BATAUmnGi6T_lW4-9GsPgg&ebxsLQ07b~*FaQ7m literal 0 HcmV?d00001 diff --git a/bibletime/pics/lowcolor/Makefile.am b/bibletime/pics/lowcolor/Makefile.am new file mode 100644 index 0000000..31bfd6f --- /dev/null +++ b/bibletime/pics/lowcolor/Makefile.am @@ -0,0 +1,5 @@ + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + +SUBDIRS = 16x16 22x22 32x32 diff --git a/bibletime/pics/lowcolor/Makefile.in b/bibletime/pics/lowcolor/Makefile.in new file mode 100644 index 0000000..500b888 --- /dev/null +++ b/bibletime/pics/lowcolor/Makefile.in @@ -0,0 +1,467 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + +# this Makefile.am was automatically generated by bibletime/pics/gen_am.sh +# please do not edit this file but rather run the script to update + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = 16x16 22x22 32x32 +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/pics/lowcolor + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/pics/lowcolor/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ + distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: install-data-recursive uninstall-data-recursive \ +install-exec-recursive uninstall-exec-recursive installdirs-recursive \ +uninstalldirs-recursive all-recursive check-recursive \ +installcheck-recursive info-recursive dvi-recursive \ +mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/pics/lowcolor/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/pics/lowcolor/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/pics/startuplogo.png b/bibletime/pics/startuplogo.png new file mode 100644 index 0000000000000000000000000000000000000000..54f16970d79f0cbae5ff6da3c19b3b082d7d9da7 GIT binary patch literal 75361 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%0Ac$tb{De{O8-KK%#; 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 Ul_ARdHUeH|MpndHf@{qG0a5c#RR910 literal 0 HcmV?d00001 diff --git a/bibletime/pics/startuplogo.xcf b/bibletime/pics/startuplogo.xcf new file mode 100644 index 0000000000000000000000000000000000000000..0a4ce3417b77a76d12e5ae551c83e612aec65346 GIT binary patch literal 453980 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ÜZZ<&+vA~kE^3*7wlP25OE?v56 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 i3By3rQlym9HIBa_?>b9|2LZG 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ξ^^!ZWoPk;;E0E-(eLg+< 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 KP=^0NIsO2Z<OL4^ literal 0 HcmV?d00001 diff --git a/bibletime/printing/Makefile.am b/bibletime/printing/Makefile.am new file mode 100644 index 0000000..719cbea --- /dev/null +++ b/bibletime/printing/Makefile.am @@ -0,0 +1,29 @@ +SUBDIRS = style-data + +INCLUDES = $(all_includes) + +libprinting_a_METASOURCES = AUTO + +noinst_LIBRARIES = libprinting.a + +libprinting_a_SOURCES = \ +cstylelist.cpp \ +cprintitemlist.cpp \ +cprintitem.cpp \ +cstyle.cpp \ +cstyleeditordialog.cpp \ +cprinter.cpp \ +cprintdialogpages.cpp + + +all_headers = \ +cstylelist.h \ +cprintitemlist.h \ +cprintitem.h \ +cstyle.h \ +cstyleeditordialog.h \ +cprinter.h \ +cprintdialogpages.h + + +EXTRA_DIST = $(libprinting_a_SOURCES) $(all_headers) diff --git a/bibletime/printing/Makefile.in b/bibletime/printing/Makefile.in new file mode 100644 index 0000000..be29687 --- /dev/null +++ b/bibletime/printing/Makefile.in @@ -0,0 +1,711 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +SUBDIRS = style-data + +INCLUDES = $(all_includes) + +#>- libprinting_a_METASOURCES = AUTO + +noinst_LIBRARIES = libprinting.a + +libprinting_a_SOURCES = cstylelist.cpp cprintitemlist.cpp cprintitem.cpp cstyle.cpp cstyleeditordialog.cpp cprinter.cpp cprintdialogpages.cpp + + +all_headers = cstylelist.h cprintitemlist.h cprintitem.h cstyle.h cstyleeditordialog.h cprinter.h cprintdialogpages.h + + +EXTRA_DIST = $(libprinting_a_SOURCES) $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../.. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libprinting_a_LIBADD = +#>- libprinting_a_OBJECTS = cstylelist.$(OBJEXT) cprintitemlist.$(OBJEXT) \ +#>- cprintitem.$(OBJEXT) cstyle.$(OBJEXT) cstyleeditordialog.$(OBJEXT) \ +#>- cprinter.$(OBJEXT) cprintdialogpages.$(OBJEXT) +#>+ 8 +libprinting_a_final_OBJECTS = libprinting_a.all_cpp.o +libprinting_a_nofinal_OBJECTS = cstylelist.$(OBJEXT) cprintitemlist.$(OBJEXT) \ +cprintitem.$(OBJEXT) cstyle.$(OBJEXT) cstyleeditordialog.$(OBJEXT) \ +cprinter.$(OBJEXT) cprintdialogpages.$(OBJEXT)\ +cstylelist.moc.o cstyleeditordialog.moc.o cprinter.moc.o cprintitemlist.moc.o cprintdialogpages.moc.o \ +libprinting_a_meta_unload.o +@KDE_USE_FINAL_FALSE@libprinting_a_OBJECTS = $(libprinting_a_nofinal_OBJECTS) +@KDE_USE_FINAL_TRUE@libprinting_a_OBJECTS = $(libprinting_a_final_OBJECTS) +AR = ar +CXXFLAGS = @CXXFLAGS@ +#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +#>+ 1 +LTCXXCOMPILE = $(LIBTOOL) --mode=compile --tag=CXX $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) +CXXLD = $(CXX) +#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ +#>+ 1 +CXXLINK = $(LIBTOOL) --mode=link --tag=CXX $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=cstyle.h cprinter.h cstylelist.h cprintdialogpages.h cstyleeditordialog.h cprintitem.h cprintitemlist.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- DEP_FILES = .deps/cprintdialogpages.P .deps/cprinter.P \ +#>- .deps/cprintitem.P .deps/cprintitemlist.P .deps/cstyle.P \ +#>- .deps/cstyleeditordialog.P .deps/cstylelist.P +#>+ 8 +@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/cstylelist.moc.P $(DEPDIR)/cstyleeditordialog.moc.P $(DEPDIR)/cprinter.moc.P $(DEPDIR)/cprintitemlist.moc.P $(DEPDIR)/cprintdialogpages.moc.P $(DEPDIR)/libprinting_a_meta_unload.P $(DEPDIR)/libprinting_a.all_cpp.P \ + .deps/cprintdialogpages.P .deps/cprinter.P \ +.deps/cprintitem.P .deps/cprintitemlist.P .deps/cstyle.P \ +.deps/cstyleeditordialog.P .deps/cstylelist.P +@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/cstylelist.moc.P $(DEPDIR)/cstyleeditordialog.moc.P $(DEPDIR)/cprinter.moc.P $(DEPDIR)/cprintitemlist.moc.P $(DEPDIR)/cprintdialogpages.moc.P $(DEPDIR)/libprinting_a_meta_unload.P .deps/cprintdialogpages.P .deps/cprinter.P \ +.deps/cprintitem.P .deps/cprintitemlist.P .deps/cstyle.P \ +.deps/cstyleeditordialog.P .deps/cstylelist.P + +SOURCES = $(libprinting_a_SOURCES) +OBJECTS = $(libprinting_a_OBJECTS) + +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +.SUFFIXES: .S .c .cpp .lo .o .obj .s +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/printing/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-noinstLIBRARIES: + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +distclean-noinstLIBRARIES: + +maintainer-clean-noinstLIBRARIES: + +# FIXME: We should only use cygpath when building on Windows, +# and only if it is available. +.c.obj: + $(COMPILE) -c `cygpath -w $<` + +.s.o: + $(COMPILE) -c $< + +.S.o: + $(COMPILE) -c $< + +mostlyclean-compile: + -rm -f *.o core *.core + -rm -f *.$(OBJEXT) + +clean-compile: + +distclean-compile: + -rm -f *.tab.c + +maintainer-clean-compile: + +.s.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +.S.lo: + $(LIBTOOL) --mode=compile $(COMPILE) -c $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + +maintainer-clean-libtool: + +libprinting.a: $(libprinting_a_OBJECTS) $(libprinting_a_DEPENDENCIES) + -rm -f libprinting.a + $(AR) cru libprinting.a $(libprinting_a_OBJECTS) $(libprinting_a_LIBADD) + $(RANLIB) libprinting.a +.cpp.o: + $(CXXCOMPILE) -c $< +.cpp.obj: + $(CXXCOMPILE) -c `cygpath -w $<` +.cpp.lo: + $(LTCXXCOMPILE) -c $< + +# 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. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + 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: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && 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) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + here=`pwd` && cd $(srcdir) \ + && mkid -f$$here/ID $$unique $(LISP) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/printing + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/printing/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + -rm -rf .deps + +maintainer-clean-depend: + +%.o: %.c + @echo '$(COMPILE) -c $<'; \ + $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.c + @echo '$(LTCOMPILE) -c $<'; \ + $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp + +%.o: %.cpp + @echo '$(CXXCOMPILE) -c $<'; \ + $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-cp .deps/$(*F).pp .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm .deps/$(*F).pp + +%.lo: %.cpp + @echo '$(LTCXXCOMPILE) -c $<'; \ + $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*F).pp > .deps/$(*F).P; \ + tr ' ' '\012' < .deps/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*F).P; \ + rm -f .deps/$(*F).pp +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: +uninstall: uninstall-recursive +all-am: Makefile $(LIBRARIES) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +#>- clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ +#>- clean-depend clean-generic mostlyclean-am +#>+ 2 +clean-am: clean-metasources clean-moc-classes clean-final clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \ + clean-depend clean-generic mostlyclean-am + +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +distclean-am: distclean-noinstLIBRARIES distclean-compile \ + distclean-libtool distclean-tags distclean-depend \ + distclean-generic clean-am + -rm -f libtool + +distclean: distclean-recursive + +maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ + maintainer-clean-compile maintainer-clean-libtool \ + maintainer-clean-tags maintainer-clean-depend \ + maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-recursive + +.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ +clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ +mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile mostlyclean-libtool distclean-libtool \ +clean-libtool maintainer-clean-libtool install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs-am installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 3 +cstylelist.moc.cpp: $(srcdir)/cstylelist.h + $(MOC) $(srcdir)/cstylelist.h -o cstylelist.moc.cpp + +#>+ 3 +cstyleeditordialog.moc.cpp: $(srcdir)/cstyleeditordialog.h + $(MOC) $(srcdir)/cstyleeditordialog.h -o cstyleeditordialog.moc.cpp + +#>+ 3 +cprinter.moc.cpp: $(srcdir)/cprinter.h + $(MOC) $(srcdir)/cprinter.h -o cprinter.moc.cpp + +#>+ 3 +cprintitemlist.moc.cpp: $(srcdir)/cprintitemlist.h + $(MOC) $(srcdir)/cprintitemlist.h -o cprintitemlist.moc.cpp + +#>+ 3 +cprintdialogpages.moc.cpp: $(srcdir)/cprintdialogpages.h + $(MOC) $(srcdir)/cprintdialogpages.h -o cprintdialogpages.moc.cpp + +#>+ 3 +clean-metasources: + -rm -f cstylelist.moc.cpp cstyleeditordialog.moc.cpp cprinter.moc.cpp cprintitemlist.moc.cpp cprintdialogpages.moc.cpp + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/printing/Makefile.in + + +#>+ 10 +libprinting_a_meta_unload.cpp: cstylelist.moc.cpp cstyleeditordialog.moc.cpp cprintitemlist.moc.cpp cprinter.moc.cpp cprintdialogpages.moc.cpp + @echo 'creating libprinting_a_meta_unload.cpp' + @-rm -f libprinting_a_meta_unload.cpp + @echo 'static const char * _metalist_libprinting_a[] = {' > libprinting_a_meta_unload.cpp + @cat cstylelist.moc.cpp cstyleeditordialog.moc.cpp cprintitemlist.moc.cpp cprinter.moc.cpp cprintdialogpages.moc.cpp | grep 'char.*className' | sed -e 's/.*[^A-Za-z0-9_:]\([A-Za-z0-9_:]*\)::className.*$$/\"\1\",/' | sort | uniq >> libprinting_a_meta_unload.cpp + @echo '0};' >> libprinting_a_meta_unload.cpp + @echo '#include <kunload.h>' >> libprinting_a_meta_unload.cpp + @echo '_UNLOAD(libprinting_a)' >> libprinting_a_meta_unload.cpp + + +#>+ 3 +clean-moc-classes: + -rm -f libprinting_a_meta_unload.cpp + +#>+ 11 +libprinting_a.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/cstylelist.cpp $(srcdir)/cprintitemlist.cpp $(srcdir)/cprintitem.cpp $(srcdir)/cstyle.cpp $(srcdir)/cstyleeditordialog.cpp $(srcdir)/cprinter.cpp $(srcdir)/cprintdialogpages.cpp libprinting_a_meta_unload.cpp cstylelist.moc.cpp cstyleeditordialog.moc.cpp cprinter.moc.cpp cprintitemlist.moc.cpp cprintdialogpages.moc.cpp + @echo 'creating libprinting_a.all_cpp.cpp ...'; \ + rm -f libprinting_a.all_cpp.files libprinting_a.all_cpp.final; \ + echo "#define KDE_USE_FINAL 1" >> libprinting_a.all_cpp.final; \ + for file in cstylelist.cpp cprintitemlist.cpp cprintitem.cpp cstyle.cpp cstyleeditordialog.cpp cprinter.cpp cprintdialogpages.cpp libprinting_a_meta_unload.cpp cstylelist.moc.cpp cstyleeditordialog.moc.cpp cprinter.moc.cpp cprintitemlist.moc.cpp cprintdialogpages.moc.cpp; do \ + echo "#include \"$$file\"" >> libprinting_a.all_cpp.files; \ + test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libprinting_a.all_cpp.final; \ + done; \ + cat libprinting_a.all_cpp.final libprinting_a.all_cpp.files > libprinting_a.all_cpp.cpp; \ + rm -f libprinting_a.all_cpp.final libprinting_a.all_cpp.files + +#>+ 3 +clean-final: + -rm -f libprinting_a.all_cpp.cpp + +#>+ 2 +final: + $(MAKE) libprinting_a_OBJECTS="$(libprinting_a_final_OBJECTS)" all-am +#>+ 2 +no-final: + $(MAKE) libprinting_a_OBJECTS="$(libprinting_a_nofinal_OBJECTS)" all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/printing/cprintdialogpages.cpp b/bibletime/printing/cprintdialogpages.cpp new file mode 100644 index 0000000..625f604 --- /dev/null +++ b/bibletime/printing/cprintdialogpages.cpp @@ -0,0 +1,289 @@ +/*************************************************************************** + cstylelistpage.cpp - description + ------------------- + begin : Fri Feb 8 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cprinter.h" +#include "cprintdialogpages.h" +#include "cprintitemlist.h" +#include "cprintitem.h" +#include "tooltipdef.h" +#include "resource.h" +#include "whatsthisdef.h" + +//QT includes +#include <qbuttongroup.h> +#include <qcombobox.h> +#include <qtoolbutton.h> +#include <qlayout.h> +#include <qlabel.h> +#include <qwhatsthis.h> +#include <qtooltip.h> +#include <qspinbox.h> +#include <qlistview.h> + +//KDE includes +#include <klocale.h> + +CStyleListPage::CStyleListPage(CPrinter* printer, QWidget *parent, const char *name ) + : KPrintDialogPage(parent,name), m_printer(printer) { + setTitle(i18n("Styles")); + +// QFrame *page = addPage( i18n("Layout"), i18n("Layout specific settings") ); + QVBoxLayout *topLayout = new QVBoxLayout( this, 5, 5 ); + + QButtonGroup *group = new QButtonGroup( i18n("Margins (in millimeter)"), this ); + QWhatsThis::add(group, WT_PD_LAYOUT_BORDER); + topLayout->addWidget( group, 0 ); + + QGridLayout *gbox = new QGridLayout( group, 4, 2, 5, 5 ); + gbox->addRowSpacing( 0, group->fontMetrics().height()-5 ); + + const QString name[4] = {i18n("&Top"),i18n("&Bottom"),i18n("&Left"), i18n("&Right") }; + for( int i=0; i<4; i++ ) { + m_marginSpin[i] = new QSpinBox( group ); + m_marginSpin[i]->setFixedHeight( m_marginSpin[i]->sizeHint().height() ); + m_marginSpin[i]->setMinimumWidth( m_marginSpin[i]->fontMetrics().width("M")*10 ); + m_marginSpin[i]->setSuffix(" mm"); + + QLabel *label = new QLabel( m_marginSpin[i], name[i], group ); + label->setFixedHeight( m_marginSpin[i]->sizeHint().height() ); + label->setFixedWidth( label->sizeHint().width() ); + + if( i < 2 ) + { + gbox->addWidget( label, i+1, 0, AlignLeft ); + gbox->addWidget( m_marginSpin[i], i+1, 1, AlignLeft ); + } + else + { + gbox->addWidget( label, i-1, 3, AlignLeft ); + gbox->addWidget( m_marginSpin[i], i-1, 4, AlignLeft ); + } + } + QWhatsThis::add(m_marginSpin[0], WT_PD_LAYOUT_BORDER_TOP); + QWhatsThis::add(m_marginSpin[1], WT_PD_LAYOUT_BORDER_BOTTOM); + QWhatsThis::add(m_marginSpin[2], WT_PD_LAYOUT_BORDER_LEFT); + QWhatsThis::add(m_marginSpin[3], WT_PD_LAYOUT_BORDER_RIGHT); + + QToolTip::add(m_marginSpin[0], TT_PD_LAYOUT_BORDER_TOP); + QToolTip::add(m_marginSpin[1], TT_PD_LAYOUT_BORDER_BOTTOM); + QToolTip::add(m_marginSpin[2], TT_PD_LAYOUT_BORDER_LEFT); + QToolTip::add(m_marginSpin[3], TT_PD_LAYOUT_BORDER_RIGHT); + + gbox->activate(); + group->setFixedHeight( group->sizeHint().height() ); + //set minimum borders + m_marginSpin[0]->setRange(0, 100); //upper margin + m_marginSpin[1]->setRange(0, 100); //lower margin + m_marginSpin[2]->setRange(0, 100); //left margin + m_marginSpin[3]->setRange(0, 100); //right margin + + QHBoxLayout *entryLayout = new QHBoxLayout( 0, 5, 5 ); + QVBoxLayout *styleLayout = new QVBoxLayout( 0, 5, 5 ); + QVBoxLayout *buttonLayout = new QVBoxLayout( 0, 5, 5 ); + + m_styleList = new CStyleList( &(m_printer->styleList()), this, "CStyleList1"); + connect(m_styleList, SIGNAL(currentChanged(QListViewItem*)), SLOT(currentStyleChanged(QListViewItem*))); + QToolTip::add(m_styleList, TT_PD_LAYOUT_STYLE_LIST); + QWhatsThis::add(m_styleList, WT_PD_LAYOUT_STYLE_LIST); + + QLabel* label = new QLabel(m_styleList, i18n("List of style items:"), this); + styleLayout->addWidget(label,0); + styleLayout->addWidget( m_styleList, 3); + + m_newStyleButton = new QToolButton( this, "newStyle Button"); + m_newStyleButton->setOnIconSet( SmallIcon(ICON_FILE_NEW)); + m_newStyleButton->setOffIconSet( SmallIcon(ICON_FILE_NEW)); + QToolTip::add(m_newStyleButton, TT_PD_LAYOUT_STYLE_NEW); + QWhatsThis::add(m_newStyleButton, WT_PD_LAYOUT_STYLE_NEW); + connect( m_newStyleButton, SIGNAL(clicked()), m_styleList, SLOT(createNewStyle())); + + m_deleteStyleButton = new QToolButton( this, "deleteStyle Button"); + m_deleteStyleButton->setOnIconSet( SmallIcon(ICON_FILE_DELETE)); + m_deleteStyleButton->setOffIconSet( SmallIcon(ICON_FILE_DELETE)); + QToolTip::add(m_deleteStyleButton, TT_PD_LAYOUT_STYLE_DELETE); + QWhatsThis::add(m_deleteStyleButton, WT_PD_LAYOUT_STYLE_DELETE); + connect( m_deleteStyleButton, SIGNAL(clicked()), m_styleList, SLOT(deleteCurrentStyle())); + + m_editStyleButton = new QToolButton( this, "editStyle"); + m_editStyleButton->setOnIconSet( SmallIcon(ICON_EDIT)); + m_editStyleButton->setOffIconSet( SmallIcon(ICON_EDIT)); + QToolTip::add(m_editStyleButton, TT_PD_LAYOUT_STYLE_EDIT); + QWhatsThis::add(m_editStyleButton, WT_PD_LAYOUT_STYLE_EDIT); + connect( m_editStyleButton, SIGNAL(clicked()), m_styleList, SLOT(editCurrentStyle())); + + buttonLayout->addWidget( m_newStyleButton ); + buttonLayout->addWidget( m_editStyleButton ); + buttonLayout->addWidget( m_deleteStyleButton ); + buttonLayout->addStretch(3); + + entryLayout->addLayout( styleLayout ); + entryLayout->addLayout( buttonLayout ); + + topLayout->addLayout(entryLayout); +} + +CStyleListPage::~CStyleListPage() { + +} + +void CStyleListPage::getOptions (QMap<QString, QString>& opts, bool incldef) { + qWarning("CStyleListPage::getOptions (const QMap<QString,QString>& opts, bool)"); + + const QString leading = "kde-bibletime-"; + opts[ leading+"upper_margin" ] = QString::number(m_marginSpin[0]->value()); + qWarning(opts[leading+"upper_margin"].latin1()); + opts[ leading+"lower_margin" ] = QString::number(m_marginSpin[1]->value()); + opts[ leading+"left_margin" ] = QString::number(m_marginSpin[2]->value()); + opts[ leading+"right_margin" ] = QString::number(m_marginSpin[3]->value()); +} + +void CStyleListPage::setOptions (const QMap<QString,QString>& opts) { + qWarning("CStyleListPage::setOptions (const QMap<QString,QString>& opts)"); + + const QString leading = "kde-bibletime-"; + QString option = opts[ leading+"upper_margin" ]; + m_marginSpin[0]->setValue( option.toInt() ); + option = opts[ leading+"lower_margin" ]; + m_marginSpin[1]->setValue( option.toInt() ); + option = opts[ leading+"left_margin" ]; + m_marginSpin[2]->setValue( option.toInt() ); + option = opts[ leading+"right_margin" ]; + m_marginSpin[3]->setValue( option.toInt() ); +} + +bool CStyleListPage::isValid (QString& errorMessage) { + return true; +} + +/** No descriptions */ +void CStyleListPage::currentStyleChanged( QListViewItem* item ){ + if (item) { + m_deleteStyleButton->setEnabled( item->text(0) != i18n("Standard") ); + m_editStyleButton->setEnabled( true ); + } + else { + m_deleteStyleButton->setEnabled( false ); + m_editStyleButton->setEnabled( false ); + } +} + + + +// ------------------ + +CPrintItemListPage::CPrintItemListPage(CPrinter* printer, QWidget *parent, const char *name ) + : KPrintDialogPage(parent,name), m_printer( printer ) +{ + setTitle(i18n("Print queue")); + + QVBoxLayout *topLayout = new QVBoxLayout( this, 5, 5 ); + QVBoxLayout *entryLayout = new QVBoxLayout( 0, 5, 5 ); + QLabel* label = 0; + + m_styleComboBox = new QComboBox( this, "styleComboBox" ); + QToolTip::add(m_styleComboBox, TT_PD_ENTRIES_STYLE_COMBO); + QWhatsThis::add(m_styleComboBox, WT_PD_ENTRIES_STYLE_COMBO); + connect(m_styleComboBox, SIGNAL(activated(const QString&)), SLOT(slotListApplyStyle(const QString&))); + + label = new QLabel( m_styleComboBox, i18n("Choose a style"), this); + QHBoxLayout* hboxLayout = new QHBoxLayout( 0, 5, 5 ); + hboxLayout->addWidget( label ); + hboxLayout->addWidget( m_styleComboBox ); + topLayout->addLayout( hboxLayout ); + + hboxLayout = new QHBoxLayout( 0, 5, 5 ); + + m_printItemList = new CPrintItemList( &(m_printer->printQueue()), this, "CPrintItemList1"); + QToolTip::add(m_printItemList, TT_PD_ENTRIES_PI_LIST); + QWhatsThis::add(m_printItemList, WT_PD_ENTRIES_PI_LIST); + + label = new QLabel(m_printItemList, i18n("Entries which should be printed:"), this); + entryLayout->addWidget(label); + entryLayout->addWidget( m_printItemList ); + hboxLayout->addLayout(entryLayout); + + QVBoxLayout *buttonLayout = new QVBoxLayout( 0, 5, 5 ); + m_moveUpButton = new QToolButton(this); + m_moveUpButton->setOnIconSet( SmallIcon("up")); + m_moveUpButton->setOffIconSet( SmallIcon("up")); + QToolTip::add(m_moveUpButton, TT_PD_ENTRIES_PI_MOVE_UP); + QWhatsThis::add(m_moveUpButton, WT_PD_ENTRIES_PI_MOVE_UP); + connect(m_moveUpButton, SIGNAL(clicked()),m_printItemList, SLOT(moveUp())); + + m_moveDownButton = new QToolButton(this); + m_moveDownButton->setOnIconSet( SmallIcon("down")); + m_moveDownButton->setOffIconSet( SmallIcon("down")); + QToolTip::add(m_moveDownButton, TT_PD_ENTRIES_PI_MOVE_DOWN); + QWhatsThis::add(m_moveDownButton, WT_PD_ENTRIES_PI_MOVE_DOWN); + connect( m_moveDownButton, SIGNAL(clicked()),m_printItemList, SLOT(moveDown())); + + m_deleteButton = new QToolButton(this); + m_deleteButton->setOnIconSet( SmallIcon("edittrash")); + m_deleteButton->setOffIconSet( SmallIcon("edittrash")); + QToolTip::add(m_deleteButton, TT_PD_ENTRIES_PI_DELETE); + QWhatsThis::add(m_deleteButton, WT_PD_ENTRIES_PI_DELETE); + connect( m_deleteButton, SIGNAL(clicked()),m_printItemList, SLOT(deleteSelectedItems())); + + buttonLayout->addWidget(m_moveUpButton); + buttonLayout->addWidget(m_moveDownButton); + buttonLayout->addWidget(m_deleteButton); + buttonLayout->addStretch(3); + + hboxLayout->addLayout( buttonLayout ); + topLayout->addLayout( hboxLayout ); + + connect(m_printer, SIGNAL(sigStylesChanged()), this, SLOT(stylesChanged())); + stylesChanged(); //fill the box for the first time +} + +CPrintItemListPage::~CPrintItemListPage() { + +} + +void CPrintItemListPage::getOptions (QMap<QString, QString>& opts, bool incldef) { + +} + +void CPrintItemListPage::setOptions (const QMap<QString,QString>& opts) { + +} + +bool CPrintItemListPage::isValid(QString& errorMessage) { + return true; +} + +/** Applies the given styles to the print item list. */ +void CPrintItemListPage::slotListApplyStyle(const QString& styleName ){ + StyleItemList& styleList = m_printer->styleList(); + for(styleList.first(); styleList.current(); styleList.next()) { + if (styleList.current()->styleName() == styleName) { + m_printItemList->applyStyleToSelected( styleList.current() ); + break; + } + } +} + +/** Is called when the CPrinter object sends a signal that the styles have changed. */ +void CPrintItemListPage::stylesChanged(){ + m_styleComboBox->clear(); + //refill the combobox + StyleItemList& styleList = m_printer->styleList(); + for(styleList.first(); styleList.current(); styleList.next()) { + m_styleComboBox->insertItem(styleList.current()->styleName()); + } +} diff --git a/bibletime/printing/cprintdialogpages.h b/bibletime/printing/cprintdialogpages.h new file mode 100644 index 0000000..bf5e483 --- /dev/null +++ b/bibletime/printing/cprintdialogpages.h @@ -0,0 +1,101 @@ +/*************************************************************************** + cstylelistpage.h - description + ------------------- + begin : Fri Feb 8 2002 + copyright : (C) 2002 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSTYLELISTPAGE_H +#define CSTYLELISTPAGE_H + +//Qt includes +#include <qwidget.h> + +//KDE includes +#include <kdeprint/kprintdialogpage.h> + + +class QComboBox; +class QSpinBox; +class QListViewItem; + +class CPrintItemList; +class CStyleList; +class CPrinter; + +/** + *@author The BibleTime team + */ + +class CStyleListPage : public KPrintDialogPage { + Q_OBJECT +public: + CStyleListPage(CPrinter* printer, QWidget *parent=0, const char *name=0); + ~CStyleListPage(); + virtual void getOptions (QMap<QString,QString>& opts, bool incldef = false); + virtual void setOptions (const QMap<QString,QString>& opts); + virtual bool isValid (QString&); + +private: + CPrinter* m_printer; + QSpinBox *m_marginSpin[4]; + CStyleList* m_styleList; + QToolButton* m_deleteStyleButton; + QToolButton* m_newStyleButton; + QToolButton* m_editStyleButton; + /** + * Is called when the style selection changed in the syle list box. + */ + +private slots: + void currentStyleChanged(QListViewItem*); +}; + +// -------------------------- + +/** + *@author The BibleTime team + */ + +class CPrintItemListPage : public KPrintDialogPage { + Q_OBJECT +public: + CPrintItemListPage(CPrinter* printer, QWidget *parent=0, const char *name=0); + ~CPrintItemListPage(); + virtual void getOptions (QMap<QString,QString>& opts, bool incldef = false); + virtual void setOptions (const QMap<QString,QString>& opts); + virtual bool isValid (QString&); + +private: + CPrinter* m_printer; + CPrintItemList* m_printItemList; + QComboBox* m_styleComboBox; + QToolButton* m_moveUpButton; + QToolButton* m_moveDownButton; + QToolButton* m_deleteButton; + +private slots: + /** + * Applies the given styles to the print item list. + */ + void slotListApplyStyle(const QString&); +protected slots: // Protected slots + /** + * Is called when the CPrinter object sends a signal + * that the styles have changed. + */ + void stylesChanged(); +}; + + +#endif diff --git a/bibletime/printing/cprinter.cpp b/bibletime/printing/cprinter.cpp new file mode 100644 index 0000000..ce465f6 --- /dev/null +++ b/bibletime/printing/cprinter.cpp @@ -0,0 +1,339 @@ +/*************************************************************************** + cprinter.cpp - description + ------------------- + begin : Sat Aug 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cprinter.h" +#include "cprintitem.h" +#include "cprintdialogpages.h" + +#include "backend/cswordbackend.h" +#include "backend/cswordversekey.h" +#include "backend/cswordldkey.h" + +//KDE includes +#include <kconfig.h> +#include <kprocess.h> +#include <kconfigbase.h> +#include <kstddirs.h> +#include <klocale.h> +#include <kapp.h> + +//Qt includes +#include <qfile.h> +#include <qdir.h> +#include <qstringlist.h> +#include <qpainter.h> +#include <qpaintdevice.h> +#include <qpaintdevicemetrics.h> + +CPrinter::CPrinter( QObject* parent ) : QObject(parent) { + m_config = new KConfig("bt-printing", false, true ); + + m_queue.setAutoDelete(true); + m_styleList.setAutoDelete(true); + m_cachedPage.initialized = false; + m_cachedPage.refresh = false; + m_addedItem = false; + + { + KConfigGroupSaver gs(m_config, "Options"); + QMap<QString, QString> map = m_config->entryMap("Options"); + setOptions(map); + } + + m_styleDir = "printing/"; + KStandardDirs stdDirs; + m_styleSaveLocation = stdDirs.saveLocation("data", "bibletime/"+m_styleDir); + + readSettings(); + setupStyles(); + setupStandardStyle(); +} + +CPrinter::~CPrinter(){ + saveSettings(); + saveStyles(); + m_config->sync(); + + delete m_config; +} + +/** Appends a new page where the next things will be painted. */ +const bool CPrinter::newPage(){ + if (aborted()) { + qWarning("CPrinter::newPage: Printing was aborted!"); + return false; + } + const bool result = KPrinter::newPage(); + if (result) { + m_pagePosition.curPage++; + m_pagePosition.rect = contentSize(); + setVerticalPos(pageMargins().top); + } + return result; +} + +/** Sets all the margins at one time. */ +void CPrinter::setAllMargins( const CPageMargin margins ) { + m_cachedPage.refresh = true; + m_pageMargin = margins; +} + +/** Returns the margins of the pages. */ +const CPrinter::CPageMargin& CPrinter::pageMargins() const { + return m_pageMargin; +} + +/** Setups the printer using CPrinterDialog. */ +void CPrinter::setup( QWidget* parent ){ + KPrinter::addDialogPage( new CPrintItemListPage(this) ); + KPrinter::addDialogPage( new CStyleListPage(this) ); + + if ( KPrinter::setup(parent) ) { + saveSettings(); + readSettings(); + print(); + } +} + +/** Starts printing the items. */ +void CPrinter::print(){ + emit printingStarted(); + QPainter p; + if (!p.begin(this)) { + p.end(); + return; + } + int lastPercent = 0; + int pos = 1; + const int count = m_queue.count(); + const int copies = numCopies(); + float copyFrac; + emit percentCompleted(0); + + for (int copy = 0; copy < copies && !aborted(); copy++) { //make numCopies() copies of the pages + copyFrac = (float(copies))/ (float)(copy+1); + for (m_queue.first(), pos = 1; m_queue.current(); m_queue.next(), ++pos) { + KApplication::kApplication()->processEvents(5); //do not lock the GUI! + if (!aborted()) { + m_queue.current()->draw(&p,this); + if ((int)((float)pos / (float)count *(float)100 * copyFrac) > lastPercent) + emit percentCompleted(++lastPercent); + } + }; + if (!aborted() && (copy+1 < copies) ) + newPage(); //new pages seperate copies + } + emit printingFinished(); + clearQueue();//delete all items +} + +/** Appends items to the printing queue. */ +void CPrinter::appendItems( ListCPrintItem& items ){ + for(items.first(); items.current(); items.next()) { + items.current()->setStyle(m_standardStyle); + m_queue.append(items.current()); + } + if (items.count() && !m_addedItem) { + m_addedItem = true; + emit addedFirstQueueItem(); + } +} + +/** */ +void CPrinter::clearQueue(){ + m_queue.clear(); + m_addedItem = false;//queue is empty + emit queueCleared(); +} + +/** Returns the print queue object. */ +ListCPrintItem& CPrinter::printQueue() { + return m_queue; +} + +/** Sets the printing queue to queue. */ +void CPrinter::setPrintQueue( ListCPrintItem& queue ){ + clearQueue(); + m_queue = queue; //copy items +} + +/** Appends the item o the queue. */ +void CPrinter::appendItem(CPrintItem* newItem){ + if (!newItem) + return; + newItem->setStyle(m_standardStyle); + m_queue.append(newItem); + + if (!m_addedItem) { + m_addedItem = true; + emit addedFirstQueueItem(); + } +} + +/** Reads the style from config. */ +void CPrinter::setupStyles(){ +//load local styles + QDir d( m_styleSaveLocation ); + QStringList files = d.entryList("*.xml"); + for ( QStringList::Iterator it = files.begin(); it != files.end(); ++it ) { + m_styleList.append( new CStyle(m_styleSaveLocation + *it) ); //automatically load from file + } + +//load systemwide styles, probably standard styles installed by BibleTime + KStandardDirs stdDirs; + QStringList globalPaths = stdDirs.findDirs("data", "bibletime/"+m_styleDir); + if (globalPaths.count()) { //try to find some new global styles + for (QStringList::Iterator path = globalPaths.begin(); path!=globalPaths.end(); ++path) { + d = QDir( *path ); + QStringList files = d.entryList("*.xml"); + for ( QStringList::Iterator it = files.begin(); it != files.end(); ++it ) { + CStyle* newStyle = new CStyle(*path + *it); + + bool found = false; + for(m_styleList.first(); m_styleList.current() && !found; m_styleList.next()) { + if (newStyle->styleName() == m_styleList.current()->styleName()) { + found = true; + } + } + + if (!found) { + m_styleList.append( newStyle ); + } + } + } + } +} + +/** Saves the styles to config file. */ +void CPrinter::saveStyles(){ + QDir d(m_styleSaveLocation); + QStringList files = d.entryList("*.xml"); + for ( QStringList::Iterator it = files.begin(); it != files.end(); ++it ) { + d.remove(*it); + } + + for (m_styleList.first(); m_styleList.current(); m_styleList.next()) { + m_styleList.current()->save( m_styleSaveLocation + QString::fromLatin1("printing-style-%1").arg(m_styleList.at()) + ".xml" ); + } +} + +/** */ +void CPrinter::readSettings(){ + KConfigGroupSaver gs(m_config, "Settings"); + const QString leading = "kde-bibletime-"; + + setFullPage(true); + m_pagePosition.curPage = 1; + m_pagePosition.rect = contentSize(); + + QPaintDeviceMetrics m(this); + const float r = static_cast<float>(m.width()) / m.widthMM(); + m_pageMargin.left = (int)(r * m_config->readNumEntry("Left margin", 15)); + setOption(leading+"left_margin", QString::number(m_config->readNumEntry("Left margin", 15))); + + m_pageMargin.right = (int)(r * m_config->readNumEntry("Right margin", 15)); + setOption(leading+"right_margin", QString::number(m_config->readNumEntry("Right margin", 15))); + + m_pageMargin.top = (int)(r * m_config->readNumEntry("Top margin", 15)); + setOption(leading+"upper_margin", QString::number(m_config->readNumEntry("Top margin", 15))); + + m_pageMargin.bottom = (int)(r * m_config->readNumEntry("Bottom margin", 15)); + setOption(leading+"lower_margin", QString::number(m_config->readNumEntry("Bottom margin", 15))); + + m_cachedPage.refresh = true; +} + +/** */ +void CPrinter::saveSettings(){ + const QString leading = "kde-bibletime-"; + KConfigGroupSaver gs(m_config, "Settings"); + m_config->writeEntry("Left margin", option(leading+"left_margin").toInt()); + m_config->writeEntry("Right margin", option(leading+"right_margin").toInt()); + m_config->writeEntry("Top margin", option(leading+"upper_margin").toInt()); + m_config->writeEntry("Bottom margin", option(leading+"lower_margin").toInt()); +} + +/** Returns the list of styles. */ +StyleItemList& CPrinter::styleList() { + return m_styleList; +} + +/** Sets the application wide style list to list. */ +void CPrinter::setStyleList( StyleItemList& list){ + m_styleList = list; //copy items +} + +/** Returns the page size without headers. */ +const QRect CPrinter::contentSize() { + if ( m_cachedPage.refresh || !m_cachedPage.initialized || (m_cachedPage.initialized && (m_cachedPage.cachedPaper != pageSize())) ) + { //refresh page size info + m_cachedPage.initialized = true; + m_cachedPage.refresh = false; + m_cachedPage.cachedPaper = pageSize(); + + QPaintDeviceMetrics metric( this ); //note that metric's width and height span the whole page + m_cachedPage.size.setLeft( m_pageMargin.left ); + m_cachedPage.size.setTop( m_pageMargin.top ); + m_cachedPage.size.setRight( metric.width() - m_pageMargin.right ); + m_cachedPage.size.setBottom( metric.height() /*- m_pageMargin.top*/ - m_pageMargin.bottom ); + } + return m_cachedPage.size; +} + +/** Returns the config used for this printer object. */ +KConfig* const CPrinter::config() const { + return m_config; +} + +/** Creates the standard style. */ +void CPrinter::setupStandardStyle(){ + //see if m_items contains standard style + bool found = false; + for (m_styleList.first(); m_styleList.current(); m_styleList.next()) { + if (m_styleList.current()->styleName() == i18n("Standard")) { //found the style + found = true; + m_standardStyle = m_styleList.current(); + break; + } + } + + if (!found) { + m_standardStyle = new CStyle(); + m_standardStyle->setStyleName(i18n("Standard")); + m_styleList.append( m_standardStyle ); + } +} + +/** returns the vertical position of the printer's painter. */ +const int CPrinter::verticalPos() const { + return m_pagePosition.rect.y(); +} + +/** Sets the vertical position of the printer's painter. */ +void CPrinter::setVerticalPos( const int yPos ){ + m_pagePosition.rect.setY(yPos); +} + +/** Emits the signal that the styles changed. */ +void CPrinter::emitStylesChanged(){ + emit sigStylesChanged(); +} + +/** Emits the signal that the styles changed. */ +CStyle* const CPrinter::standardStyle() const { + return m_standardStyle; +} diff --git a/bibletime/printing/cprinter.h b/bibletime/printing/cprinter.h new file mode 100644 index 0000000..1b8301a --- /dev/null +++ b/bibletime/printing/cprinter.h @@ -0,0 +1,219 @@ +/*************************************************************************** + cprinter.h - description + ------------------- + begin : Sat Aug 5 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPRINTER_H +#define CPRINTER_H + +//BibleTime includes +#include "frontend/cpointers.h" +#include "cprintitemlist.h" +#include "cprintitem.h" +#include "cstylelist.h" +#include "cstyle.h" + +//KDE includes +#include <kprinter.h> + +//Qt includes +#include <qobject.h> +#include <qpainter.h> + + +/** + * This is the class which prints the items (low-level). + * It uses a QPainter to do it. + * @author The BibleTime team + */ + +class CPrinterDialog; +class CPrintItem; +class CSwordBackend; + +class KConfig; +class KProcess; + +class CPrinter : public QObject, public KPrinter, public CPointers { + Q_OBJECT +public: + struct CPageSize { + unsigned int width; + unsigned int height; + }; + struct CPagePosition { + unsigned int curPage; + QRect rect; + }; + struct CPageMargin { + unsigned int top; + unsigned int right; + unsigned int bottom; + unsigned int left; + }; + + CPrinter( QObject* parent ); + virtual ~CPrinter(); + /** + * Sets the vertical position of the printer's painter. + */ + void setVerticalPos( const int yPos ); + /** + * returns the vertical position of the printer's painter. + */ + const int verticalPos() const; + /** + * Creates a new page and positions the painter at the beginning of it. + */ + const bool newPage(); + /** + * Returns the margins of the pages. + */ + const CPrinter::CPageMargin& pageMargins() const; + /** + * Sets all the margins at one time. + */ + void setAllMargins( const CPageMargin margins ); + /** + * Setups the printer using CPrinterDialog. + */ + void setup( QWidget* parent ); + /** + * Starts printing the items. + */ + void print(); + /** + * Sets the printing queue to queue. + */ + void setPrintQueue(ListCPrintItem& queue); + /** + * Returns the print queue object. + */ + ListCPrintItem& printQueue(); + /** + * Appends items to the printing queue. + */ + void appendItems( ListCPrintItem& items ); + /** + * Appends the item o the queue. + */ + void appendItem( CPrintItem* newItem ); + /** + * Sets the application wide style list to list. + */ + void setStyleList( StyleItemList& list); + /** + * Returns the list of styles. + */ + StyleItemList& styleList(); + /** + * Reimplementation. cReates a new page. + */ + const QRect contentSize(); + /** + * Returns the config used for this printer object. + */ + KConfig* const config() const; + /** + * Returns the standard stlye of the printer + */ + CStyle* const standardStyle() const; + +public slots: // Public slots + /** + * Clears the printing queue. + */ + void clearQueue(); + /** + * Emits the signal that the styles changed. + */ + void emitStylesChanged(); + +protected: + /** + * Saves the styles to config file. + */ + void saveStyles(); + /** + * Reads the style from config. + */ + void setupStyles(); + /** + * + */ + void saveSettings(); + /** + * + */ + void readSettings(); + /** + * Creates the standard style. + */ + void setupStandardStyle(); + +private: + CPageMargin m_pageMargin; + CPagePosition m_pagePosition; + ListCPrintItem m_queue; + StyleItemList m_styleList; + CStyle* m_standardStyle; + KConfig* m_config; + + struct PaperSizeCache { + bool initialized; + bool refresh; + KPrinter::PageSize cachedPaper; + QRect size; + } m_cachedPage; + + bool m_addedItem; + + QString m_styleSaveLocation; + QString m_styleDir; + +signals: // Signals + /** + * Is emitted if percent percent of the printing process are completed. + */ + void percentCompleted(const int percent); + /** + * Is emitted after all items were printed. + */ + void printingFinished(); + /** + * Is emitted when printing was interrupted by the user. + */ + void printingInterrupted(); + /** + * Is emmitted when the printing has started. + */ + void printingStarted(); + /** + * Is emmitted when the first item was added to the queue + * This signal is useful to enable the "Clear printer queue" + * icon if the queue contains items + */ + void addedFirstQueueItem(); + /** + * Is emmitted when the printing queue was cleared. + */ + void queueCleared(); + /** + * The styles changed. + */ + void sigStylesChanged(); +}; + +#endif diff --git a/bibletime/printing/cprintitem.cpp b/bibletime/printing/cprintitem.cpp new file mode 100644 index 0000000..c189c83 --- /dev/null +++ b/bibletime/printing/cprintitem.cpp @@ -0,0 +1,412 @@ +/*************************************************************************** + cprintitem.cpp - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + + +#include "cprintitem.h" +#include "cprintitemlist.h" +#include "cstyle.h" +#include "backend/cswordmoduleinfo.h" +#include "backend/cswordversekey.h" +#include "backend/cswordldkey.h" +#include "backend/chtmlentrydisplay.h" +#include "frontend/cbtconfig.h" +#include "util/scoped_resource.h" + + +//Qt includes +#include <qsimplerichtext.h> +#include <qlistview.h> +#include <qregexp.h> +#include <qstylesheet.h> + +//Sword includes +#include <swmodule.h> +#include <swkey.h> +#include <versekey.h> + + +#define PARAGRAPH_SPACE 10 // Space between different paragraphs +#define STYLE_PART_SPACE 1 //Space between the different parts (header, moduletext ...) +#define BORDER_SPACE 3 //border between text and rectangle + + +CPrintItem::ListViewItem::ListViewItem( QListView* parent, CPrintItem* printItem ) + : QListViewItem(parent), m_printItem(printItem) { + +}; + +CPrintItem* const CPrintItem::ListViewItem::printItem() const { + return m_printItem; +}; + +CStyle* const CPrintItem::ListViewItem::style() const { + return (m_printItem) ? m_printItem->style() : 0; +}; + + +CPrintItem::CPrintItem(CSwordModuleInfo* module, const QString& startKey, const QString& stopKey, const QString& description,const CSwordBackend::DisplayOptionsBool displayOptions, const CSwordBackend::FilterOptionsBool filterOptions) : + m_style(0), m_headerText(QString::null), m_description(description), m_moduleText(QString::null), + m_startKey(startKey), m_module(module), m_listViewItem(0), + m_displayOptions(displayOptions), m_filterOptions(filterOptions) +{ + m_startEmpty = startKey.isEmpty(); + m_stopKey = (!m_startEmpty && (startKey != stopKey) ) ? stopKey : QString::null; + m_stopEmpty = m_stopKey.isEmpty(); + + headerText(); + moduleText(); //cache the module text, makes printing faster (at least the user thinks this :) +} + +/** Returns the moduletext used by this item. */ +const QString& CPrintItem::moduleText() { + /** + * If a special text is set use the text. + * If the moduleText variable is empty use the CModuleInfo + * object to retrieve the text, + */ + if (!m_moduleText.isEmpty()) //cached text + return m_moduleText; + + if (m_startEmpty || !m_module) + return QString::null; + + CPointers::backend()->setDisplayOptions(m_displayOptions); + CPointers::backend()->setFilterOptions(m_filterOptions); + + if (m_stopEmpty) {//only start key + util::scoped_ptr<CSwordKey> key(CSwordKey::createInstance(m_module)); + key->key(m_startKey); + m_moduleText = key->renderedText(); + } + else if (m_module->type() == CSwordModuleInfo::Bible || m_module->type() == CSwordModuleInfo::Commentary ) { + util::scoped_ptr<CSwordVerseKey> startKey(dynamic_cast<CSwordVerseKey*>(CSwordKey::createInstance(m_module))); + util::scoped_ptr<CSwordVerseKey> stopKey(dynamic_cast<CSwordVerseKey*>(CSwordKey::createInstance(m_module))); + + startKey->key(m_startKey); + stopKey->key(m_stopKey); + + const QString format = QString::fromLatin1(" <FONT SIZE=\"-2\"><NOBR>%1</NOBR></FONT>"); + while ( (*startKey) < (*stopKey) || (*startKey) == (*stopKey) ) { + m_moduleText += (m_displayOptions.verseNumbers ? format.arg(startKey->Verse()) : QString::null) ++ startKey->renderedText() + (m_displayOptions.lineBreaks ? "<BR>\n" : QString::null); + startKey->next(CSwordVerseKey::UseVerse); + } + } + + m_moduleText.replace(QRegExp("$\n\n+"), ""); + m_moduleText.replace(QRegExp("$<BR><BR>+"), ""); + return m_moduleText; +} + +/** Sets the style for this item. */ +void CPrintItem::setStyle( CStyle* newStyle ) { + m_style = newStyle; +} + +CStyle*const CPrintItem::style() const { + return m_style; +} + +/** Returns the listview item for this printitem. */ +QListViewItem* CPrintItem::listViewItem( CPrintItemList* list ) { + deleteListViewItem(); + m_listViewItem = new ListViewItem( list, this ); + updateListViewItem(); + return m_listViewItem; +} + +/** Updates the item. */ +void CPrintItem::updateListViewItem(){ + if (m_module) + m_listViewItem->setText(0, m_module->name() ); + + if (!m_startEmpty) + m_listViewItem->setText(1,m_startKey); + + if (!m_stopEmpty) + m_listViewItem->setText(2,m_stopKey); + else if (!m_startEmpty) + m_listViewItem->setText(2,m_startKey); + + if (m_style) + m_listViewItem->setText(3, m_style->styleName() ); +} + +/** */ +QListViewItem* const CPrintItem::listViewItem() const { + return m_listViewItem; +} + +/** Deletes the list view item. */ +void CPrintItem::deleteListViewItem(){ + delete m_listViewItem; + m_listViewItem = 0; +} + +/** Draws the content of this item on the page. */ +void CPrintItem::draw(QPainter* p, CPrinter* printer){ + /** + * Print this item + * Steps to do for the printing: + * + * 1. Get the settings (font, colors, alignment etc.) and generate the correct richtext for this (correct alignment) + * 2. Apply the settings to the printer's painter object + */ + QFont font; + QColor fgColor; + QColor bgColor; + CStyle::Format* format; + CStyle::Format::Frame* frame = 0; + int frameThickness = 0; + CStyle::Format::Alignment alignment; + CStyle::StyleType type = CStyle::Unknown; + QString text; + + QColorGroup cg; + QPen pen; + QBrush brush; + + const bool isUnicode = (m_module && m_module->isUnicode()); + const int leftMargin = printer->pageMargins().left; + const int upperMargin = printer->pageMargins().top; + const QRect pageSize = printer->contentSize(); + const int pageHeight = pageSize.height(); + const int pageWidth = pageSize.width(); + +//moved out of the loop for optimization + int verticalPos = printer->verticalPos(); + int arguments = 0; + QRect boundingRect; //rectangle for the content + QRect br; + QRect view; + QPen framePen; + int movePixs; + + for (int i = 0; i < 3; ++i) { + type = static_cast<CStyle::StyleType>(i); + + if (!m_style->hasFormatTypeEnabled(type)) //jump to next part if this is not enabled + continue; + + format = m_style->formatForType( type ); + fgColor = format->color( CStyle::Format::Foreground ); + bgColor = format->color( CStyle::Format::Background ); + pen.setColor(fgColor); + font = format->font(); + if (isUnicode) { //enable unicode + font.setCharSet( QFont::Unicode ); + } + + frame = format->frame(); + frameThickness = frame ? frame->thickness() : 0; + alignment = format->alignment(); + if (type == CStyle::Header) + text = headerText(); + else if (type == CStyle::Description) + text = m_description; + else + text = moduleText(); + + p->setFont(font); + p->setPen(pen); + cg.setColor(QColorGroup::Text, fgColor); + + arguments = Qt::WordBreak; + if (alignment == CStyle::Format::Left) + arguments |= Qt::AlignLeft; + else if (alignment == CStyle::Format::Center) + arguments |= Qt::AlignHCenter; + else if (alignment == CStyle::Format::Right) + arguments |= Qt::AlignRight; + + if ((type == CStyle::Header || type == CStyle::Description) && !text.isEmpty()) { + boundingRect = p->boundingRect ( + leftMargin, //x of upper left corner + verticalPos, //y of upper left corner + pageWidth - 2*BORDER_SPACE - 2*frameThickness, //pixels to the right from the upper left corner + pageHeight - 2*BORDER_SPACE - 2*frameThickness - verticalPos + upperMargin, //pixels down from upper left corner + arguments, text + ); + + //check if the new text fits into the current page page + //WARNING: use 2* or 1* frameThickness here?? + if ( ( boundingRect.height() + 2*BORDER_SPACE + 2*frameThickness + STYLE_PART_SPACE ) + > ( pageHeight - verticalPos + upperMargin ) ) + { + //this part doesn't fit on the current page + printer->newPage(); + verticalPos = printer->verticalPos(); + boundingRect = p->boundingRect( + leftMargin, + verticalPos, + pageWidth - 2*BORDER_SPACE - 2*frameThickness, + pageHeight- 2*BORDER_SPACE - 2*frameThickness - verticalPos + upperMargin, + arguments, text + ); + } + br = boundingRect; //rectangle for the background fill + br.setLeft(leftMargin); + br.setWidth(pageWidth-frameThickness); //because we move in the next lines + br.setHeight(br.height()+BORDER_SPACE); //because we move in the next lines + br.moveBy(frameThickness, frameThickness); + p->fillRect(br, bgColor); + + br = boundingRect; // the rect for the border + /** + * we have to substract frameThickness/2, + * because QPainter paints one half outline and the other part inside the rectangle. + */ + const int halfWidth = (int)((float)frameThickness/2); + +// br.setHeight( br.height() + 2*halfWidth + BORDER_SPACE ); + br.setLeft( leftMargin + halfWidth ); + br.setTop( br.top() + halfWidth ); //boundingRect is moved by 2*halfWidth down -> use +halfWidth !! + br.setWidth( pageWidth - 2*halfWidth); + br.setHeight( br.height() + 2*halfWidth + BORDER_SPACE ); + +// boundingRect.setWidth(boundingRect.width()+5);//HACK to avoid cut letters + boundingRect.moveBy(BORDER_SPACE + frameThickness, frameThickness); +// arguments |= Qt::AlignVCenter; //WARNING: Right here? Will it change the boundingrect?? + + p->setClipRect( + upperMargin, + leftMargin, + pageWidth, + pageHeight + ); + + p->drawText(boundingRect, arguments, text); + + p->setClipping(false); + + printer->setVerticalPos(boundingRect.top() + boundingRect.height() + 2*frameThickness + STYLE_PART_SPACE); + verticalPos = printer->verticalPos(); + + if (frame) { + framePen = pen; + framePen.setWidth( frameThickness ); + framePen.setColor( frame->color() ); + framePen.setStyle( frame->lineStyle() ); + p->setPen( framePen ); + + p->drawRect( br ); + } + } + else if (type == CStyle::ModuleText) { + p->save(); + + if (isUnicode) + font = CBTConfig::get( CBTConfig::unicode ); + + if (alignment == CStyle::Format::Center) + text = QString::fromLatin1("<CENTER>%1</CENTER>").arg(text); + else if (alignment == CStyle::Format::Right) + text = QString::fromLatin1("<P ALIGN=\"RIGHT\">%1</P>").arg(text); + QSimpleRichText richText( + text, + font, + QString::null, + QStyleSheet::defaultSheet(), + QMimeSourceFactory::defaultFactory(), + pageHeight + upperMargin - verticalPos - 2*frameThickness - 2*BORDER_SPACE + ); + + richText.setWidth( p, pageWidth-2*frameThickness-2*BORDER_SPACE ); + view = QRect( //the content area of the whole page + leftMargin + frameThickness + BORDER_SPACE, + upperMargin + frameThickness + BORDER_SPACE, + pageWidth - 2*frameThickness - 2*BORDER_SPACE, + pageHeight - 2*frameThickness - 2*BORDER_SPACE + ); + + int translated = 0; + do { + if ((int)(verticalPos - upperMargin + richText.height() - translated) <= (int)(pageHeight) ) { + //text fits on current page + br = QRect ( + leftMargin + frameThickness, + verticalPos + frameThickness, + pageWidth - frameThickness, + richText.height() - translated + frameThickness + BORDER_SPACE + ); + } + else { //doesn't fit completely on current page, fill to bottom of the page + br = QRect( + leftMargin + frameThickness, + verticalPos + frameThickness, + pageWidth - frameThickness, + pageHeight - verticalPos + upperMargin - frameThickness + ); + } + br.moveBy(0,translated); //we have to move down as far as the painter moved + p->setClipRect( + upperMargin, + leftMargin, + pageWidth, + pageHeight + ); + p->fillRect(br,QBrush(bgColor)); //fill rect with background color + if (frame) { + br.moveBy( (int)(-(float)frameThickness/2), (int)(-(float)frameThickness/2) ); + + framePen = pen; + framePen.setWidth( frameThickness ); + framePen.setColor( frame->color() ); + framePen.setStyle( frame->lineStyle() ); + p->setPen( framePen ); + + p->drawRect(br); + } + p->setClipping(false); + + richText.draw(p, leftMargin+frameThickness+BORDER_SPACE, verticalPos+frameThickness+BORDER_SPACE, view, cg); + movePixs = //move down the painted area height + (((int)richText.height()-translated) > (int)(pageHeight - verticalPos + upperMargin )) + ? (pageHeight - verticalPos + upperMargin) //move to bottom of page + : richText.height() - translated + 2*frameThickness + 2*BORDER_SPACE; //only move the painted area + + printer->setVerticalPos(verticalPos + movePixs); + + view.moveBy( 0,movePixs); + p->translate( 0,-movePixs); + translated += movePixs; + if ( view.top() >= richText.height() ) //bottom or top(default) + break; + + printer->newPage(); + verticalPos = printer->verticalPos(); + } while (true); + p->restore(); + } + } + printer->setVerticalPos(printer->verticalPos() + PARAGRAPH_SPACE); +} + +/** Updates and returns the header text. */ +const QString& CPrintItem::headerText() { + if (!m_headerText.isEmpty()) // cached? + return m_headerText; + + if (m_startEmpty) + return QString::null; + if (m_stopEmpty) + m_headerText = m_startKey; + else {//start and stop key do exist and are different + m_headerText = QString::fromLatin1("%1 - %2").arg(m_startKey).arg(m_stopKey); + } + return m_headerText; +} diff --git a/bibletime/printing/cprintitem.h b/bibletime/printing/cprintitem.h new file mode 100644 index 0000000..f60572e --- /dev/null +++ b/bibletime/printing/cprintitem.h @@ -0,0 +1,103 @@ +/*************************************************************************** + cprintitem.h - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPRINTITEM_H +#define CPRINTITEM_H + +//BibleTime includes +#include "frontend/cbtconfig.h" + +//Qt includes +#include <qobject.h> +#include <qguardedptr.h> +#include <qlist.h> +#include <qlistview.h> + +class CSwordKey; +class CSwordModuleInfo; +class CStyle; +class CPrinter; +class CPrintItem; +class CPrintItemList; + +typedef QList<CPrintItem> ListCPrintItem; + +/** + * The class which implements the printable items. + * @author The BibleTime team + */ +class CPrintItem { +public: + class ListViewItem : public QListViewItem { + public: + ListViewItem( QListView* parent, CPrintItem* printItem ); + CPrintItem* const printItem() const; + CStyle* const style() const; + private: + CPrintItem* m_printItem; + }; + + CPrintItem(CSwordModuleInfo* module, const QString& startKey, const QString& stopKey, const QString& description = QString::null, const CSwordBackend::DisplayOptionsBool displayOptions = CBTConfig::getDisplayOptionDefaults(),const CSwordBackend::FilterOptionsBool filterOptions = CBTConfig::getFilterOptionDefaults() ); + /** + * Sets the style for this item. + */ + void setStyle( CStyle* ); + /** + * Sets the style for this item. + */ + CStyle* const style() const; + /** + * Returns the listview item for this printitem. + */ + QListViewItem* listViewItem( CPrintItemList* ); + /** + * Updates the item. + */ + void updateListViewItem(); + /** + * Returns the used ListView item. + */ + QListViewItem* const listViewItem() const; + /** + * Deletes the list view item. + */ + void deleteListViewItem(); + /** + * Draws the content of this item on the page. + */ + void draw(QPainter* p, CPrinter* printer); + +private: // Protected attributes + const QString& headerText(); + const QString& moduleText(); + + CStyle* m_style; + QString m_headerText; + QString m_description; + QString m_moduleText; + QString m_startKey; + QString m_stopKey; + bool m_startEmpty; + bool m_stopEmpty; + CSwordModuleInfo* m_module; + QListViewItem* m_listViewItem; + + CSwordBackend::DisplayOptionsBool m_displayOptions; + CSwordBackend::FilterOptionsBool m_filterOptions; +}; + +#endif diff --git a/bibletime/printing/cprintitemlist.cpp b/bibletime/printing/cprintitemlist.cpp new file mode 100644 index 0000000..665777f --- /dev/null +++ b/bibletime/printing/cprintitemlist.cpp @@ -0,0 +1,126 @@ +/*************************************************************************** + cprintitemlist.cpp - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//Own includes +#include "cprintitemlist.h" + +//Qt includes +#include <qstring.h> + +//KDE includes +#include <klocale.h> + +CPrintItemList::CPrintItemList( ListCPrintItem* items, QWidget *parent, const char *name ) : KListView(parent,name) { + m_items = items; + initView(); + + insertItems(m_items); +} + +CPrintItemList::~CPrintItemList(){ + for (m_items->first(); m_items->current(); m_items->next()) { + if (m_items->current()) + m_items->current()->deleteListViewItem(); + } +} + +/** Initializes the view. */ +void CPrintItemList::initView(){ + setAllColumnsShowFocus(true); + addColumn(i18n("Module"),-1); + addColumn(i18n("From"), -1); + addColumn(i18n("To"), -1); + addColumn(i18n("Style"), -1); + + setSelectionMode( QListView::Extended ); +} + +/** Inserts the items of the list into the tree. */ +void CPrintItemList::insertItems( ListCPrintItem* itemList ) { + const bool sameList = (itemList == m_items); + for(itemList->last(); itemList->current(); itemList->prev() ) { + if (!sameList) + m_items->append(itemList->current()); + itemList->current()->listViewItem(this); //insert the QListViewItem into the list + } +} + +/** Sets the tree to contain the items of the list. Other items will be removed. */ +void CPrintItemList::setItems( ListCPrintItem* itemList ){ + for (m_items->first(); m_items->current(); m_items->next()) { + if (m_items->current()) + m_items->current()->deleteListViewItem(); + } + insertItems( itemList ); +} + +/** Deletes the current item. */ +void CPrintItemList::deleteSelectedItems(){ + QList<QListViewItem> items = selectedItems(); + if (!items.count()) + return; + const bool autoDelete = items.autoDelete(); + + CPrintItem* p = 0; + for (items.first(); items.current(); items.next()) { + if ( CPrintItem::ListViewItem* item = dynamic_cast<CPrintItem::ListViewItem*>(items.current()) ) { + if (!(p = item->printItem())) + continue; + m_items->removeRef(p); + p->deleteListViewItem(); + if (!autoDelete) + delete p; + } + } +} + +/** Moves the item one item up. */ +void CPrintItemList::moveUp(){ + QList<QListViewItem> items = selectedItems(); + for (items.first(); items.current(); items.next()) { + QListViewItem* current = items.current(); + if (current && current->itemAbove() && current->itemAbove()->itemAbove()) { + current->moveItem( current->itemAbove()->itemAbove() ); + } + } +} + +/** Moves the selected entry one entry down. */ +void CPrintItemList::moveDown(){ + QList<QListViewItem> items = selectedItems(); + for (items.last(); items.current(); items.prev()) { + QListViewItem* current = items.current(); + if (current && current->itemBelow()) { + current->moveItem( current->itemBelow() ); + } + } +} + +/** Applies the style to the selected items. */ +void CPrintItemList::applyStyleToSelected( CStyle* style){ + CPrintItem* printItem; + CPrintItem::ListViewItem* item; + QList<QListViewItem> list = selectedItems(); + for ( QListViewItem* i = list.first(); i; i = list.next()) { + if ((item = dynamic_cast<CPrintItem::ListViewItem*>(i))) { + printItem = item->printItem(); + printItem->setStyle(style); + printItem->updateListViewItem(); + } + } +} + diff --git a/bibletime/printing/cprintitemlist.h b/bibletime/printing/cprintitemlist.h new file mode 100644 index 0000000..a0d7060 --- /dev/null +++ b/bibletime/printing/cprintitemlist.h @@ -0,0 +1,69 @@ +/*************************************************************************** + cListCPrintItem.h - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CPRINTITEMLIST_H +#define CPRINTITEMLIST_H + +#include <qwidget.h> +#include <qlist.h> +#include <klistview.h> + +#include "cprintitem.h" + +/**A KListView derived class which handles CPrintItem classes + *@author The BibleTime team + */ +class CPrintItemList : public KListView { + Q_OBJECT +public: + CPrintItemList(ListCPrintItem* items, QWidget *parent=0, const char *name=0); + ~CPrintItemList(); + /** + * Sets the tree to contain the items of the list. Other items will be removed. + */ + virtual void setItems( ListCPrintItem* itemList); + /** + * Inserts the items of the list into the tree. + */ + virtual void insertItems( ListCPrintItem* itemList ); + /** + * Initializes the view. + */ + virtual void initView(); + /** + * Applies the style to the selected items. + */ + void applyStyleToSelected( CStyle* ); + +public slots: // Public slots + /** + * Moves the selected entry one entry down. + */ + void moveDown(); + /** + * Moves the item one item up. + */ + void moveUp(); + /** + * Deletes the current item. + */ + void deleteSelectedItems(); + +private: + ListCPrintItem* m_items; +}; +#endif diff --git a/bibletime/printing/cstyle.cpp b/bibletime/printing/cstyle.cpp new file mode 100644 index 0000000..ac01aa6 --- /dev/null +++ b/bibletime/printing/cstyle.cpp @@ -0,0 +1,495 @@ +/*************************************************************************** + cstyle.cpp - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cstyle.h" +#include "cstylelist.h" + + +//Qt includes +#include <qapp.h> +#include <qdom.h> +#include <qfile.h> +#include <qlistview.h> +#include <qstring.h> +#include <qtextstream.h> + +//KDE includes +#include <klocale.h> + +#define CURRENT_SYNTAX_VERSION 1 + +CStyle::Format::Format(const CStyle::StyleType type) : m_frame(0), m_type(type) { + clearData(); +} + +CStyle::Format::Format(const Format& f) { + m_BGColor = f.m_BGColor; + m_FGColor = f.m_FGColor; + m_alignment = f.m_alignment; + m_font = f.m_font; + m_hasFrame = f.m_hasFrame; + m_frame = 0; + if (m_hasFrame) { + Frame* newFrame = frame();//create + *newFrame = *f.m_frame; //copy content + } + m_type = f.m_type; +}; + +CStyle::Format::~Format(){ + delete m_frame; +} + +/** Returns the font of this style. */ +const QFont& CStyle::Format::font() const { + return m_font; +} + +/** sets the font of this format. */ +void CStyle::Format::setFont( QFont newFont ) { + m_font = newFont; +} + +/** Returns the background color of this format. */ +const QColor& CStyle::Format::color( const Color type ) const { + switch (type) { + case Foreground: + return m_FGColor; + case Background: + return m_BGColor; + }; + return Qt::white; //shouldn't be executed +} + +/** Sets the foreground color of this format. */ +void CStyle::Format::setColor( const Color type, const QColor& newColor ) { + switch (type) { + case Foreground: + m_FGColor = newColor; + break; + case Background: + m_BGColor = newColor; + break; + }; +} + +/** Returns the frame if we have one. Otherwise we return 0. */ +CStyle::Format::Frame* const CStyle::Format::frame() { + if (m_hasFrame) + return !m_frame ? (m_frame = new CStyle::Format::Frame) : m_frame; + return 0; +} + +/** Sets the frame of this style. */ +void CStyle::Format::setFrameEnabled( const bool hasFrame ) { + m_hasFrame = hasFrame; + if (!m_hasFrame) { + delete m_frame; + m_frame = 0; + }; +} + +/** Returns the alignement of this style format. */ +const CStyle::Format::Alignment& CStyle::Format::alignment() const { + return m_alignment; +} + +/** Sets the alignement flags of this style format. */ +void CStyle::Format::setAlignment( const Alignment newAlignment) { + m_alignment = newAlignment; +} + +/** Resets the data variables. */ +void CStyle::Format::clearData(){ + m_BGColor = Qt::white; + m_FGColor = Qt::black; + delete m_frame; + m_frame = 0; + m_hasFrame = false; + m_font = QApplication::font(); + m_alignment = Format::Left; +} + +const CStyle::StyleType CStyle::Format::type() const { + return m_type; +} + +CStyle::Format::Frame::Frame() { + m_thickness = 1; + m_color = Qt::black; + m_lineStyle = Qt::SolidLine; +} + +CStyle::Format::Frame::Frame(const Frame& f) { + m_thickness = f.m_thickness; + m_color = f.m_color; + m_lineStyle = f.m_lineStyle; +} + +/** Returns the thickness of this frame. */ +const int& CStyle::Format::Frame::thickness() const { + return m_thickness; +} + +/** Sets te thickness of this frame. */ +void CStyle::Format::Frame::setThickness( const int newThickness ) { + m_thickness = newThickness; +} + +/** Returns the style how to paint the lines of this frame. */ +const Qt::PenStyle& CStyle::Format::Frame::lineStyle() const { + return m_lineStyle; +} + +/** Sets the style how to paint the lines. */ +void CStyle::Format::Frame::setLineStyle( const Qt::PenStyle newLineStyle ){ + m_lineStyle = newLineStyle; +} + +/** Returns the color of this frame. */ +const QColor& CStyle::Format::Frame::color() const { + return m_color; +} + +/** Sets the color of this frame. */ +void CStyle::Format::Frame::setColor( const QColor& newColor ) { + m_color = newColor; +} + +CStyle::CStyle() : + m_headerFormat(new Format(CStyle::Header)), + m_descriptionFormat(new Format(CStyle::Description)), + m_moduleTextFormat(new Format(CStyle::ModuleText)) +{ + + //dummy command to translate names of standard styles + i18n("Standard"); + i18n("Colored style for larger test portions"); + i18n("Black&White for larger test portions"); + + m_listViewItem = 0; + m_isHeaderFormatEnabled = m_isDescriptionFormatEnabled = m_isModuleTextFormatEnabled = true; + + setStyleName( i18n("unknown name") ); +}; + +CStyle::CStyle( const QString filename ) : + m_headerFormat(new Format(CStyle::Header)), + m_descriptionFormat(new Format(CStyle::Description)), + m_moduleTextFormat(new Format(CStyle::ModuleText)) +{ + m_listViewItem = 0; + m_isHeaderFormatEnabled = m_isDescriptionFormatEnabled = m_isModuleTextFormatEnabled = true; + + load(filename); +} + +CStyle::~CStyle(){ +} + +/** Returns the proper CStyleFormat for the given type. */ +CStyle::Format* const CStyle::formatForType( const CStyle::StyleType type) { + switch (type) { + case Header: + return m_headerFormat; + case Description: + return m_descriptionFormat; + case ModuleText: + return m_moduleTextFormat; + default: + return 0; + } +} + +/** Set the printing of the header (true enables it). */ +const bool CStyle::hasFormatTypeEnabled( const CStyle::StyleType type) const { + switch (type) { + case Header: + return m_isHeaderFormatEnabled; + case Description: + return m_isDescriptionFormatEnabled; + case ModuleText: + return m_isModuleTextFormatEnabled; + default: + return false; + } +} + +/** Set the printing of the header (true enables it). */ +void CStyle::setFormatTypeEnabled( const CStyle::StyleType type, const bool setEnabled) { + switch (type) { + case Header: + m_isHeaderFormatEnabled = setEnabled; + break; + + case Description: + m_isDescriptionFormatEnabled = setEnabled; + break; + + case ModuleText: + m_isModuleTextFormatEnabled = setEnabled; + break; + + default: + break; + } +} + +/** Returns a QListViewItem for inserted in list. */ +QListViewItem* const CStyle::listViewItem( CStyleList* const list ){ + if (!list) { + if (!m_listViewItem) + return 0; + else + return m_listViewItem; + } + deleteListViewItem(); + m_listViewItem = new QListViewItem( list ); + updateListViewItem(); + return m_listViewItem; +} + +/** Returns the style name */ +const QString& CStyle::styleName() const{ + return m_name; +} + +/** Sets the name of the style. */ +void CStyle::setStyleName( const QString name ){ + m_name = name; +} + +/** Clears all variables and sets them back */ +void CStyle::clearData(){ +// qDebug("CStyle::clearData()"); + deleteListViewItem(); + m_name = QString::null; + m_isDescriptionFormatEnabled = m_isHeaderFormatEnabled = m_isModuleTextFormatEnabled = true; +} + +/** Updates the Listview items */ +void CStyle::updateListViewItem(){ +// qWarning("CStyle::updateListViewItem() for %s", m_name.latin1()); + m_listViewItem->setText(0, styleName() ); +} + +/** Deletes the list view item. */ +void CStyle::deleteListViewItem(){ + delete m_listViewItem; + m_listViewItem = 0; +} + +/** Loads the profile from a XML file. */ +const bool CStyle::load(const QString& filename){ +/** +* The XML file should look like this: +* + <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE DOC > + <BibleTimePrintingStyle syntaxVersion="1" name="Standard" translate="1"> + <HEADER enabled="1" alignment="center"> + <COLORS bgcolor="black" fgcolor="white"> + <FONT family="Arial" charset="2" pointsize="10" weight="1" italic="0"> + <FRAME enabled="1" color="blue" style="1" thickness="2"> + </HEADER> + </BibleTimePrintingStyle> +*/ + QFile file(filename); + if (!file.exists()) { + qWarning("file doesn't exist"); + return false; + } + + QDomDocument doc; + if (file.open(IO_ReadOnly)) { + QTextStream t(&file); + t.setEncoding(QTextStream::UnicodeUTF8); + doc.setContent( t.read() ); + file.close(); + } + else { + qWarning("CStyle::load: unable to open file %s", filename.latin1()); + return false; + }; + + QDomElement document = doc.documentElement(); + if(document.tagName() != "BibleTimePrintingStyle") { + qWarning("CProfile::load: Missing BibleTime doc"); + return false; + } + if (document.hasAttribute("name")) { //name of the printing style + m_name = document.attribute("name"); + if (document.hasAttribute("translate") && document.attribute("translate").toInt()) { + m_name = i18n(m_name.local8Bit()); //standard styles should be translated + } + } + + QDomElement elem = document.firstChild().toElement(); + while (!elem.isNull()) { + StyleType type = Unknown; + if (elem.tagName() == "HEADER") { + type = Header; + } + else if (elem.tagName() == "DESCRIPTION") { + type = Description; + } + else if (elem.tagName() == "MODULETEXT") { + type = ModuleText; + } + Format* p = formatForType(type); + + if (!p || type == Unknown) + continue; + + if (elem.hasAttribute("enabled")) { + setFormatTypeEnabled(type, elem.attribute("enabled").toInt()); + } + if (elem.hasAttribute("alignment")) { + const int align = elem.attribute("alignment").toInt(); + p->setAlignment( static_cast<Format::Alignment>(align) ); + } + + QDomElement object = elem.namedItem("COLORS").toElement(); + if (!object.isNull()) { + if (object.hasAttribute("bgcolor")) + p->setColor(Format::Background, QColor(object.attribute("bgcolor"))); + if (object.hasAttribute("fgcolor")) + p->setColor(Format::Foreground, QColor(object.attribute("fgcolor"))); + } + + object = elem.namedItem("FONT").toElement(); + if (!object.isNull()) { + QString family = object.hasAttribute("family") ? object.attribute("family") : QApplication::font().family(); + unsigned int size = object.hasAttribute("pointsize") ? object.attribute("pointsize").toInt() : QApplication::font().pointSize(); + const int weight = object.hasAttribute("weight") ? object.attribute("weight").toInt() : QFont::Normal; + const bool italic = object.hasAttribute("italic") ? static_cast<bool>(object.attribute("italic").toInt()) : false; + const QFont::CharSet charset = object.hasAttribute("charset") ? static_cast<QFont::CharSet>(object.attribute("charset").toInt()) : QApplication::font().charSet(); + + if (family.isEmpty()) + family = QApplication::font().family(); + if (!size) + size = QApplication::font().pointSize(); + + p->setFont( QFont(family, size, weight, italic, charset) ); + } + + object = elem.namedItem("FRAME").toElement(); + if (!object.isNull()) { //frame-section exists + const bool enabled = object.hasAttribute("enabled") ? object.attribute("enabled").toInt() : false; + p->setFrameEnabled(enabled); + if (Format::Frame* frame = p->frame()) { + const QColor color = object.hasAttribute("color") ? QColor(object.attribute("color")) : Qt::white; + Qt::PenStyle style = object.hasAttribute("style") ? static_cast<Qt::PenStyle>(object.attribute("style").toInt()) : Qt::SolidLine; + const int thickness = object.hasAttribute("thickness") ? object.attribute("thickness").toInt() : 1; + + frame->setColor(color); + frame->setLineStyle(style); + frame->setThickness(thickness); + } + } + elem = elem.nextSibling().toElement(); + } + return true; +} + +const bool CStyle::save( const QString& filename ){ +/* Saved file should look like this: + + <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE DOC > + <BibleTimePrintingStyle syntaxVersion="1" name="Standard" translate="1"> + <HEADER enabled="1" alignment="center"> + <COLORS bgcolor="black" fgcolor="white"> + <FONT family="Arial" charset="2" pointsize="10" weight="1" italic="0"> + <FRAME enabled="1" color="blue" style="1" thickness="2"> + </HEADER> + // same for DESCRIPTION and MODULETEXT + + </BibleTimePrintingStyle> +*/ + bool ret = false; + + QDomDocument doc("DOC"); + doc.appendChild( doc.createProcessingInstruction( "xml", "version=\"1.0\" encoding=\"UTF-8\"" ) ); + + QDomElement content = doc.createElement("BibleTimePrintingStyle"); + content.setAttribute("syntaxVersion", CURRENT_SYNTAX_VERSION); + content.setAttribute("name", m_name); + content.setAttribute("translate", 0); //don't trabslate styles except of prinstalled ones + doc.appendChild(content); + + for (unsigned int i = Header; i <= ModuleText; ++i) { + QDomElement elem; + + const StyleType type = static_cast<StyleType>(i); + switch (type) { + case Header: + elem = doc.createElement("HEADER"); + break; + case Description: + elem = doc.createElement("DESCRIPTION"); + break; + case ModuleText: + elem = doc.createElement("MODULETEXT"); + break; + default: + break; + }; + if (elem.isNull()) //shouldn't happen + continue; + content.appendChild(elem); + + Format* format = formatForType(type); + + elem.setAttribute("enabled", hasFormatTypeEnabled(type)); + elem.setAttribute("alignment", static_cast<int>(format->alignment())); + + QDomElement object = doc.createElement("COLORS"); + object.setAttribute("bgcolor", format->color(Format::Background).name()); + object.setAttribute("fgcolor", format->color(Format::Foreground).name()); + elem.appendChild(object); + + QFont font = format->font(); + object = doc.createElement("FONT"); + object.setAttribute("family", font.family()); + object.setAttribute("pointsize", font.pointSize()); + object.setAttribute("weight", font.weight()); + object.setAttribute("italic", font.italic()); + object.setAttribute("charset", static_cast<int>(font.charSet())); + elem.appendChild(object); + + object = doc.createElement("FRAME"); + Format::Frame* frame = format->frame(); + object.setAttribute("enabled", static_cast<bool>(frame) ); + if (frame) { + object.setAttribute("color", frame->color().name()); + object.setAttribute("thickness", frame->thickness()); + object.setAttribute("style", static_cast<int>(frame->lineStyle()) ); + } + elem.appendChild(object); + }; + ret = false; + + + QFile file(filename); + if (file.open(IO_WriteOnly)) { + ret = true; + QTextStream t( &file ); // use a text stream + t.setEncoding(QTextStream::UnicodeUTF8); + t << doc.toString(); + file.close(); + } + return ret; +} diff --git a/bibletime/printing/cstyle.h b/bibletime/printing/cstyle.h new file mode 100644 index 0000000..a642e90 --- /dev/null +++ b/bibletime/printing/cstyle.h @@ -0,0 +1,211 @@ +/*************************************************************************** + cstyle.h - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//BibleTime includes +#include "cprinter.h" + +//Qt includes +#include <qlistview.h> +#include <qlist.h> + + +#ifndef CSTYLE_H +#define CSTYLE_H + +//forward class decalarations +class CStyleList; +class CStyle; + +class QListViewItem; +class QListView; + +typedef QList<CStyle> StyleItemList; + +/** The class containing the properties requiredfor prinitng styles. + * @author The BibleTime team + */ +class CStyle { +public: + + enum StyleType { + Header = 0, /** The header displayed over each printed item */ + Description = 1 /** The description, used in bookmarks for example */, + ModuleText = 2 /** The real text of the entry or the range of verses */, + Unknown /** Unknown for us, should not be used */ + }; + + /** + * A class which contains methods to support a format for the CStyle class. + * @author The BibleTime team + * @version $Id: cstyle.h,v 1.12 2002/04/07 13:44:11 joachim Exp $ + */ + class Format { + public: + class Frame { + public: + Frame(); + Frame(const Frame& f); + /** + * Sets the color of this frame. + */ + void setColor( const QColor& ); + /** + * Returns the color of this frame. + */ + const QColor& color() const; + /** + * Sets the style how to paint the lines. + */ + void setLineStyle( const Qt::PenStyle ); + /** + * Returns the style how to paint the lines of this frame. + */ + const Qt::PenStyle& lineStyle() const; + /** + * Sets te thickness of this frame. + */ + void setThickness( const int ); + /** + * Returns the thickness of this frame. + */ + const int& thickness() const; + + private: + QColor m_color; + Qt::PenStyle m_lineStyle; + int m_thickness; + }; + + enum Alignment { Left, Center, Right, Justification}; + enum Color { Background, Foreground }; + + Format(const CStyle::StyleType type = CStyle::Unknown); + Format(const Format& f); + ~Format(); + const CStyle::StyleType type() const; + /** + * Returns the foreground color of this format. + */ + const QColor& color( const Color type ) const; + /** + * Sets the background color of this format. + */ + void setColor( const Color type, const QColor& ); + /** + * sets the font of this format. + */ + void setFont( QFont ); + /** + * Returns the font of this style. + */ + const QFont& font() const; + /** + * Sets the alignement flags of this style format. + */ + void setAlignment( const CStyle::Format::Alignment ); + /** + * Returns the alignement of this style format. + */ + const CStyle::Format::Alignment& alignment() const; + /** + * Sets the frame of this style. + */ + void setFrameEnabled( const bool hasFrame ); + /** + * Returns the frame if we have one. Otherwise we return 0. + */ + Frame* const frame(); + + private: + void clearData(); + + QFont m_font; + QColor m_FGColor; + QColor m_BGColor; + bool m_hasFrame; + Frame* m_frame; + Alignment m_alignment; + CStyle::StyleType m_type; + }; + + CStyle(); //standard constructor, doesn't load from file + virtual ~CStyle(); + /** + * Returns the proper CStyleFormat for the given type. + */ + CStyle::Format* const formatForType( const CStyle::StyleType ); + /** + * Set the printing of the header (true enables it). + */ + void setFormatTypeEnabled( const CStyle::StyleType, const bool ); + /** + * Returns true if we have the given type enabled. + */ + const bool hasFormatTypeEnabled( const CStyle::StyleType ) const; + /** + * Returns a QListViewItem for inserted in list. + */ + QListViewItem* const listViewItem( CStyleList* const list = 0 ); + /** + * Sets the name of the style. + */ + void setStyleName( const QString name ); + /** + * Returns the style name + */ + const QString& styleName() const; + /** + * Updates the Listview items + */ + void updateListViewItem(); + /** + * Deletes the list view item. + */ + void deleteListViewItem(); + /** + * Loads the profile from a XML file. + */ + const bool load(const QString& file); + /** + * Saves the style to the XML file. + */ + const bool save( const QString& file ); + +protected: + friend class CPrinter; + CStyle( const QString filename ); + +private: + /** + * Clears all variables and sets them back + */ + void clearData(); + + QString m_name; + + Format* m_headerFormat; + Format* m_descriptionFormat; + Format* m_moduleTextFormat; + + bool m_isHeaderFormatEnabled; + bool m_isModuleTextFormatEnabled; + bool m_isDescriptionFormatEnabled; + + QListViewItem* m_listViewItem; +}; + +#endif diff --git a/bibletime/printing/cstyleeditordialog.cpp b/bibletime/printing/cstyleeditordialog.cpp new file mode 100644 index 0000000..be19ccd --- /dev/null +++ b/bibletime/printing/cstyleeditordialog.cpp @@ -0,0 +1,344 @@ +/*************************************************************************** + cstyleeditordialog.cpp - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cstyleeditordialog.h" + +//KDE includes +#include <kcombobox.h> +#include <klocale.h> +#include <kcolorbutton.h> +#include <kfontdialog.h> + +//Qt includes +#include <qlineedit.h> +#include <qlayout.h> +#include <qlabel.h> +#include <qgroupbox.h> +#include <qcheckbox.h> +#include <qwidget.h> +#include <qbuttongroup.h> +#include <qvbuttongroup.h> +#include <qhbuttongroup.h> +#include <qradiobutton.h> +#include <qspinbox.h> + +CStyleEditorDialog::CStyleEditorDialog(CStyle* style, QWidget *parent, const char *name ) + : KDialogBase(parent,name, true, i18n("style editor")) { + m_style = style; + m_formatEnabled = false; + + initView(); + readSettings(); + styleTypeChanged("Header"); +} + +CStyleEditorDialog::~CStyleEditorDialog(){ + saveSettings(); +} + +/** Initializes te view. */ +void CStyleEditorDialog::initView(){ + enableButtonSeparator( true ); + QFrame *mainWidget = makeMainWidget(); + QLabel* label = 0; + + QVBoxLayout *topLayout = new QVBoxLayout( mainWidget, 5, 5 ); + + QHBoxLayout *hboxLayout = new QHBoxLayout(0, 5, 5); + m_styleNameEdit = new QLineEdit( mainWidget ); + label = new QLabel(m_styleNameEdit, i18n("Name of style:"), this); + hboxLayout->addWidget(label); + hboxLayout->addWidget(m_styleNameEdit); + + topLayout->addLayout(hboxLayout); + + hboxLayout = new QHBoxLayout(0, 5, 5); + m_styleTypeChooser = new KComboBox( mainWidget, "styleTypeChooser" ); + label = new QLabel( m_styleTypeChooser, i18n("Choose the part of the style:"), mainWidget ); + hboxLayout->addWidget(label); + m_styleTypeChooser->insertItem( i18n("Header") ); + m_styleTypeChooser->insertItem( i18n("Description") ); + m_styleTypeChooser->insertItem( i18n("Module text") ); + connect(m_styleTypeChooser, SIGNAL(activated(const QString&)), SLOT(styleTypeChanged(const QString&))); + m_currentFormat = m_style->formatForType( CStyle::Header ); + hboxLayout->addWidget( m_styleTypeChooser ); + + m_setEnabledBox = new QCheckBox( mainWidget ); + m_setEnabledBox->setText( i18n("Enable this part")); + connect( m_setEnabledBox, SIGNAL(clicked()), SLOT(enableBoxClicked())); + hboxLayout->addWidget( m_setEnabledBox ); + + topLayout->addLayout( hboxLayout ); + + + hboxLayout = new QHBoxLayout(0, 5, 5); + topLayout->addLayout(hboxLayout); + + m_alignRadios.buttongroup = new QVButtonGroup( mainWidget ); + m_alignRadios.leftRB = new QRadioButton( i18n("Left"), m_alignRadios.buttongroup); + m_alignRadios.centerRB = new QRadioButton( i18n("Center"), m_alignRadios.buttongroup); + m_alignRadios.rightRB = new QRadioButton(i18n("Right"),m_alignRadios.buttongroup); + m_alignRadios.buttongroup->setFixedHeight( m_alignRadios.buttongroup->sizeHint().height()); + hboxLayout->addWidget( m_alignRadios.buttongroup ); + + QButtonGroup* box = new QButtonGroup( mainWidget ); + QVBoxLayout* boxLayout = new QVBoxLayout( box, 5, 5 ); + + QHBoxLayout* layout1 = new QHBoxLayout(0, 1, 1); + m_colors.foregroundChooser = new KColorButton( box ); + label = new QLabel(m_colors.foregroundChooser, "label", box); + label->setText(i18n("Foreground:")); + layout1->addWidget(label); + layout1->addStretch(2); + layout1->addWidget(m_colors.foregroundChooser); + + boxLayout->addLayout(layout1); + boxLayout->addStretch(3); + + layout1 = new QHBoxLayout(0, 1, 1); + m_colors.backgroundChooser = new KColorButton(box); + label = new QLabel(m_colors.backgroundChooser, "label", box); + label->setText(i18n("Background:")); + layout1->addWidget(label); + layout1->addStretch(2); + layout1->addWidget(m_colors.backgroundChooser); + + boxLayout->addLayout(layout1); + boxLayout->addStretch(3); + hboxLayout->addWidget(box); + + hboxLayout = new QHBoxLayout(); + m_font.fontButton = new QPushButton(mainWidget); + m_font.fontButton->setText(i18n("Choose font")); + connect(m_font.fontButton, SIGNAL(clicked()), SLOT(showFontChooser())); + m_font.fontDisplay = new QLabel(m_font.fontButton, "", mainWidget); + m_font.fontDisplay->setText(i18n("Font preview")); + hboxLayout->addWidget(m_font.fontDisplay); + hboxLayout->addWidget(m_font.fontButton); + +// m_font.identation = new QSpinBox(mainWidget); +// label = new QLabel(m_font.identation, "identation", mainWidget); +// label->setText(i18n("Identation (in mm):")); +// hboxLayout->addStretch(2); +// hboxLayout->addWidget(label); +// hboxLayout->addWidget(m_font.identation); + + topLayout->addLayout(hboxLayout); + + m_frame.useFrame = new QCheckBox(mainWidget); + m_frame.useFrame->setText( i18n("Use frame") ); + topLayout->addWidget(m_frame.useFrame); + connect(m_frame.useFrame, SIGNAL(clicked()), SLOT(useFrameClicked())); + + m_frame.groupbox = new QGroupBox(mainWidget); + boxLayout = new QVBoxLayout(m_frame.groupbox); + + hboxLayout = new QHBoxLayout(); + m_frame.lineThicknessChooser = new QSpinBox( m_frame.groupbox ); + m_frame.lineThicknessChooser->setMinValue(1); + label = new QLabel(m_frame.lineThicknessChooser, "label", m_frame.groupbox); + label->setText( i18n("Line thickness (in point):") ); + hboxLayout->addWidget(label); + hboxLayout->addWidget(m_frame.lineThicknessChooser); + boxLayout->addLayout(hboxLayout); + + hboxLayout = new QHBoxLayout(); + m_frame.colorChooser = new KColorButton(m_frame.groupbox); + label = new QLabel(m_frame.colorChooser, "", m_frame.groupbox); + label->setText(i18n("Frame color:")); + hboxLayout->addWidget(label); + hboxLayout->addWidget(m_frame.colorChooser); + boxLayout->addLayout(hboxLayout); + + hboxLayout = new QHBoxLayout(); + m_frame.lineStyleChooser = new QComboBox(m_frame.groupbox); + label = new QLabel(m_frame.lineStyleChooser, "", m_frame.groupbox); + label->setText(i18n("Line style:")); + hboxLayout->addWidget(label); + hboxLayout->addWidget(m_frame.lineStyleChooser); + boxLayout->addLayout(hboxLayout); + + topLayout->addWidget(m_frame.groupbox); + topLayout->addStretch(3); + + QPainter p; + QPen pen(Qt::black, 2, Qt::SolidLine); + QBrush brush(Qt::white); + for (int i=1; i <= 5; i++) { // from Qt::SolidLine to Qt::DashDotDotLine + QPixmap* pix = new QPixmap(/*m_frame.lineStyleChooser->width()*/150,15); + pen.setStyle((Qt::PenStyle)i); + p.begin(pix); + p.setPen(pen); + p.fillRect(0,0, pix->width(), pix->height(), brush); + p.drawLine(0,(int)((float)pix->height()/2),pix->width(),(int)((float)pix->height()/2)); + p.end(); + m_frame.lineStyleChooser->insertItem(*pix); + } + + m_currentFormat = m_style->formatForType( CStyle::Header ); + setupWithFormat( m_currentFormat ); + enableBoxClicked(); +} + +/** Reads settings from config file */ +void CStyleEditorDialog::readSettings(){ + m_styleNameEdit->setText( m_style->styleName() ); + if (m_styleNameEdit->text() == i18n("Standard")) + m_styleNameEdit->setEnabled(false); //you can't change the name of the standard style +} + +/** Saves settings to config file. */ +void CStyleEditorDialog::saveSettings(){ + applySettingsToFormat( m_currentFormat ); +// m_style->setFormatForType(m_currentFormat.type(), m_currentFormat ); + m_style->setStyleName( m_styleNameEdit->text() ); +} + +/** Opens the font chooser dialog. */ +void CStyleEditorDialog::showFontChooser(){ + int result = KFontDialog::getFont( m_font.font ); + if ( result == KFontDialog::Accepted ) { + setupFontWidgets( m_font.font ); + } +} + +/** */ +void CStyleEditorDialog::useFrameClicked(){ + m_frame.groupbox->setEnabled( m_frame.useFrame->isChecked() ); +} + +/** Sets up the states of the child widgets using the styl format given as parameter. */ +void CStyleEditorDialog::setupWithFormat( CStyle::Format* const format ){ + const CStyle::StyleType type = format->type(); + if (type == CStyle::Unknown) + return; + m_formatEnabled = m_style->hasFormatTypeEnabled(type); + + m_styleNameEdit->setText( m_style->styleName()); + //setup alignement + switch(format->alignment()) { + case CStyle::Format::Left: + m_alignRadios.leftRB->setChecked(true); + break; + case CStyle::Format::Center: + m_alignRadios.centerRB->setChecked(true); + break; + case CStyle::Format::Right: + m_alignRadios.rightRB->setChecked(true); + break; + default: + m_alignRadios.leftRB->setChecked(true); + break; + } + m_alignRadios.buttongroup->setEnabled(m_formatEnabled); + m_setEnabledBox->setChecked(m_formatEnabled); + + //setup colors + m_colors.backgroundChooser->setColor( format->color( CStyle::Format::Background ) ); + m_colors.backgroundChooser->setEnabled(m_formatEnabled); + + m_colors.foregroundChooser->setColor( format->color( CStyle::Format::Foreground ) ); + m_colors.foregroundChooser->setEnabled(m_formatEnabled); + + //setup fonts + m_font.font = format->font(); + setupFontWidgets( m_font.font ); + + //setup frame part + CStyle::Format::Frame* frame = format->frame(); + m_frame.useFrame->setChecked(frame); + m_frame.useFrame->setEnabled(m_formatEnabled); + useFrameClicked(); + + if (frame) { + m_frame.colorChooser->setColor( frame->color() ); + m_frame.lineThicknessChooser->setValue( frame->thickness() ); + m_frame.lineStyleChooser->setCurrentItem((int)(frame->lineStyle())-1); + } + + m_frame.groupbox->setEnabled(m_formatEnabled); +} + +/** Setups the font widgets using the parameter. */ +void CStyleEditorDialog::setupFontWidgets( QFont& font ){ + QFont dummy(font); + dummy.setPointSize(12); + m_font.fontDisplay->setFont( dummy ); + m_font.fontDisplay->setText( QString::fromLatin1("%1 - %2").arg(m_font.font.family()).arg(m_font.font.pointSize()) ); + m_font.fontDisplay->setEnabled(m_formatEnabled); + m_font.fontButton->setEnabled(m_formatEnabled); +} + +/** Called when the type was changed in the combobox. */ +void CStyleEditorDialog::styleTypeChanged( const QString& name ){ + applySettingsToFormat( m_currentFormat ); + if (name == i18n("Header")) { + m_currentFormat = m_style->formatForType(CStyle::Header ); + m_formatEnabled = m_style->hasFormatTypeEnabled( CStyle::Header ); + } + else if (name == i18n("Description")) { + m_currentFormat = m_style->formatForType( CStyle::Description ); + m_formatEnabled = m_style->hasFormatTypeEnabled( CStyle::Description ); + } + else if (name == i18n("Module text")) { + m_currentFormat = m_style->formatForType(CStyle::ModuleText ); + m_formatEnabled = m_style->hasFormatTypeEnabled( CStyle::ModuleText ); + } + setupWithFormat( m_currentFormat ); +} + +/** Sets the properties of the cuzrrent format which are changed in the editor. */ +void CStyleEditorDialog::applySettingsToFormat( CStyle::Format* const format ){ + m_style->setStyleName(m_styleNameEdit->text()); + + //apply alignement settings + if (m_alignRadios.buttongroup->selected() == m_alignRadios.leftRB ) { + format->setAlignment( CStyle::Format::Left); + } + else if (m_alignRadios.buttongroup->selected() == m_alignRadios.centerRB) { + format->setAlignment( CStyle::Format::Center ); + } + else if (m_alignRadios.buttongroup->selected() == m_alignRadios.rightRB ) { + format->setAlignment( CStyle::Format::Right ); + } + + //apply color settings + format->setColor( CStyle::Format::Background, m_colors.backgroundChooser->color() ); + format->setColor( CStyle::Format::Foreground, m_colors.foregroundChooser->color() ); + + //apply font settings + format->setFont( m_font.font ); + + //apply frame settings + format->setFrameEnabled( m_frame.useFrame->isChecked() ); + if (CStyle::Format::Frame* frame = format->frame()){ + frame->setColor( m_frame.colorChooser->color() ); + frame->setThickness( m_frame.lineThicknessChooser->value() ); + + //the position in the list equal to the position in Qt::PenStyle+1 + frame->setLineStyle(static_cast<Qt::PenStyle>(m_frame.lineStyleChooser->currentItem()+1)); + } +} + +/** Is called when the enablePart box was clicked. */ +void CStyleEditorDialog::enableBoxClicked() { + const CStyle::StyleType styleType = m_currentFormat->type(); + m_style->setFormatTypeEnabled(styleType, m_setEnabledBox->isChecked()); + + applySettingsToFormat(m_style->formatForType(styleType)); + setupWithFormat( m_currentFormat ); +} diff --git a/bibletime/printing/cstyleeditordialog.h b/bibletime/printing/cstyleeditordialog.h new file mode 100644 index 0000000..1bc124d --- /dev/null +++ b/bibletime/printing/cstyleeditordialog.h @@ -0,0 +1,135 @@ +/*************************************************************************** + cstyleeditordialog.h - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSTYLEEDITORDIALOG_H +#define CSTYLEEDITORDIALOG_H + +//BibleTime includes +#include "cstyle.h" + +//QT includes +#include <qwidget.h> + +//KDE inludes +#include <kdialogbase.h> +#include "cstyle.h" + + +/**The editor for the printing styles. + *@author The BibleTime team + */ +class QLineEdit; +class KComboBox; +class QRadioButton; +class QSpinBox; +class KFontDialog; +class KColorButton; +class QVButtonGroup; +class QHButtonGroup; +class QCheckBox; +class QComboBox; +class QGroupBox; + +class CStyleEditorDialog : public KDialogBase { + Q_OBJECT +public: + CStyleEditorDialog(CStyle* style, QWidget *parent=0, const char *name=0); + ~CStyleEditorDialog(); + +protected: // Protected methods + /** + * Saves settings to config file. + */ + void saveSettings(); + /** + * Reads settings from config file + */ + void readSettings(); + /** + * Initializes te view. + */ + void initView(); + +protected slots: + /** + * Opens the font chooser dialog. + */ + void showFontChooser(); + /** + * + */ + void useFrameClicked(); + /** + * Setups the font widgets using the parameter. + */ + void setupFontWidgets( QFont& font ); + /** + * Sets up the states of the child widgets using the styl format given as parameter. + */ + void applySettingsToFormat( CStyle::Format* const format ); + /** + * Sets the properties of the cuzrrent format which are changed in the editor. + */ + void setupWithFormat( CStyle::Format* const format ); + /** + * Is called when the enablePart box was clicked. + */ + void enableBoxClicked(); + /** + * Called when the type was changed in the combobox. + */ + void styleTypeChanged( const QString& ); + +private: + struct alignementRadios { + QRadioButton* leftRB; + QRadioButton* centerRB; + QRadioButton* rightRB; + QVButtonGroup* buttongroup; + } m_alignRadios; + + struct colorButtons { + KColorButton* foregroundChooser; + KColorButton* backgroundChooser; + } m_colors; + + struct frameWidgets { + QCheckBox* useFrame; + KColorButton* colorChooser; + QSpinBox* lineThicknessChooser; + QComboBox* lineStyleChooser; + QGroupBox* groupbox; + } m_frame; + + struct fontWidgets { + QFont font; + QPushButton* fontButton; + QLabel* fontDisplay; + } m_font; + + + QLineEdit* m_styleNameEdit; + KComboBox* m_styleTypeChooser; + CStyle* m_style; + CStyle::Format* m_currentFormat; + QCheckBox* m_setEnabledBox; + + + bool m_formatEnabled; +}; + +#endif diff --git a/bibletime/printing/cstylelist.cpp b/bibletime/printing/cstylelist.cpp new file mode 100644 index 0000000..70951a1 --- /dev/null +++ b/bibletime/printing/cstylelist.cpp @@ -0,0 +1,156 @@ +/*************************************************************************** + cstylelist.cpp - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "cstylelist.h" +#include "cstyleeditordialog.h" + +#include <qheader.h> +#include <qlistview.h> +#include <qcombobox.h> + +#include <klocale.h> +#include <kaction.h> +#include <kiconloader.h> + +CStyleList::CStyleList(StyleItemList* items, QWidget *parent, const char *name ) + : KListView(parent,name), m_items(items) +{ + initView(); + setItems(m_items); +} + +CStyleList::~CStyleList(){ + for (m_items->first(); m_items->current(); m_items->next()) { + m_items->current()->deleteListViewItem(); + } +} + +/** Initilizes the view. */ +void CStyleList::initView(){ + addColumn(i18n("Name:")); + header()->hide(); +} + +/** Sets the content to itemList */ +void CStyleList::insertItems( StyleItemList* itemList ){ + for(itemList->first(); itemList->current(); itemList->next() ) { + if (itemList != m_items) //check if we do not insert our own m_items list + m_items->append( itemList->current() ); + itemList->current()->listViewItem(this); + } + printer()->emitStylesChanged(); +} + +/** Appends the items of itemList */ +void CStyleList::setItems( StyleItemList* itemList ){ + for (m_items->first(); m_items->current(); m_items->next()) { + if (m_items->current()) + m_items->current()->deleteListViewItem(); + } + + if (m_items != itemList) + m_items->clear(); + insertItems(m_items); + + QListViewItemIterator it( this ); + if (it.current()) + setCurrentItem(it.current()); + emit currentChanged(it.current()); +} + +/** Appends the item to the list and m_items. */ +void CStyleList::insertItem( CStyle* item ){ + m_items->append( item ); + item->listViewItem(this); +} + +/** Opens the style editor dialog for he selected style. */ +void CStyleList::editCurrentStyle(){ + QListViewItem* item = currentItem(); + if (!item) + return; + + //go through style items and find the right one + CStyle* currentStyle = 0; + for (m_items->first(); m_items->current();m_items->next()) { + if (m_items->current()->listViewItem() == item) { + currentStyle = m_items->current(); + break; + } + } + if (currentStyle) { + openStyleEditor( currentStyle ); + currentStyle->updateListViewItem(); + } +} + +/** Creates a new style item. */ +void CStyleList::createNewStyle(){ + CStyle* style = new CStyle(); + insertItem( style ); + + openStyleEditor( style ); + + style->updateListViewItem(); +} + +/** */ +void CStyleList::openStyleEditor( CStyle* const style ){ + CStyleEditorDialog dlg(style, this); + dlg.exec(); + printer()->emitStylesChanged(); +} + +/** Deletes the current style item. */ +void CStyleList::deleteCurrentStyle(){ + QListViewItem* item = currentItem(); + if (!item) + return; + if (item == printer()->standardStyle()->listViewItem()) { + qWarning("Deleting the standardstyle is not possible"); + return; + } + + //go through style items and find the right one + CStyle* currentStyle = 0; + for (m_items->first(); m_items->current();m_items->next()) { + if (m_items->current()->listViewItem() == item) { + currentStyle = m_items->current(); + m_items->remove(currentStyle); + currentStyle->deleteListViewItem(); + if (!m_items->autoDelete() && currentStyle) { + delete currentStyle; + currentStyle = 0; + } + if (printer()) + printer()->emitStylesChanged(); + return; + } + } +} + +///** Updates the style combo box. */ +//void CStyleList::updateStyleCombo(){ +// if (m_printer) +// m_printer->emitStylesChanged(); +//} + +/** Returns a pointer to our list */ +StyleItemList* const CStyleList::styleList() const { + return m_items; +} + diff --git a/bibletime/printing/cstylelist.h b/bibletime/printing/cstylelist.h new file mode 100644 index 0000000..7d7e5be --- /dev/null +++ b/bibletime/printing/cstylelist.h @@ -0,0 +1,92 @@ +/*************************************************************************** + cstylelist.h - description + ------------------- + begin : Sun Aug 20 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#ifndef CSTYLELIST_H +#define CSTYLELIST_H + +//BibleTime includes +#include "frontend/cpointers.h" +#include "cstyle.h" + + +//Qt includes +#include <qwidget.h> +#include <qlist.h> + +//KDE includes +#include <klistview.h> +#include <kpopupmenu.h> + +class KAction; +class QComboBox; + +typedef QList<CStyle> styleList; + + /** A KListView derived class which handles CStyle items. + * @author The BibleTime team + */ +class CStyleList : public KListView, public CPointers { + Q_OBJECT +public: + CStyleList(StyleItemList* items, QWidget *parent=0, const char *name=0); + ~CStyleList(); + /** + * Initilizes the view. + */ + void initView(); + /** + * Appends the items of itemList + */ + void insertItems( StyleItemList* itemList ); + /** + * Sets the content to itemList + */ + void setItems( StyleItemList* itemList ); + /** + * + */ + void openStyleEditor( CStyle* const style ); + /** + * Appends the item to the list and m_items. + */ + void insertItem( CStyle* item); + /** + * + */ + StyleItemList* const styleList() const; + +public slots: // Public slots + /** + * Deletes the current style item. + */ + void deleteCurrentStyle(); + /** + * Creates a new style item. + */ + void createNewStyle(); + /** + * Opens the style editor dialog for he selected style. + */ + void editCurrentStyle(); + +private: + StyleItemList* m_items; + QGuardedPtr<KAction> editStyle_action; + QGuardedPtr<KAction> deleteStyle_action; +}; + +#endif diff --git a/bibletime/printing/style-data/Makefile.am b/bibletime/printing/style-data/Makefile.am new file mode 100644 index 0000000..31faba2 --- /dev/null +++ b/bibletime/printing/style-data/Makefile.am @@ -0,0 +1,4 @@ +EXTRA_DIST = bw_muchtext.xml color_muchtext.xml standard.xml +rcdir = $(kde_datadir)/bibletime/printing/ +rc_DATA = bw_muchtext.xml color_muchtext.xml standard.xml + diff --git a/bibletime/printing/style-data/Makefile.in b/bibletime/printing/style-data/Makefile.in new file mode 100644 index 0000000..f7968ee --- /dev/null +++ b/bibletime/printing/style-data/Makefile.in @@ -0,0 +1,384 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = bw_muchtext.xml color_muchtext.xml standard.xml +rcdir = $(kde_datadir)/bibletime/printing/ +rc_DATA = bw_muchtext.xml color_muchtext.xml standard.xml +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../../config.h +CONFIG_CLEAN_FILES = +DATA = $(rc_DATA) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/style-data/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/style-data/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/printing/style-data/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +install-rcDATA: $(rc_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rcdir) + @list='$(rc_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p; \ + fi; fi; \ + done + +uninstall-rcDATA: + @$(NORMAL_UNINSTALL) + list='$(rc_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rcdir)/$$p; \ + done +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/printing/style-data + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/printing/style-data/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-rcDATA +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-rcDATA +uninstall: uninstall-am +all-am: Makefile $(DATA) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(rcdir) + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: uninstall-rcDATA install-rcDATA tags distdir info-am info dvi-am \ +dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs \ +mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/printing/style-data/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/printing/style-data/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/printing/style-data/bw_muchtext.xml b/bibletime/printing/style-data/bw_muchtext.xml new file mode 100644 index 0000000..12b7783 --- /dev/null +++ b/bibletime/printing/style-data/bw_muchtext.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE DOC ><BibleTimePrintingStyle syntaxVersion="1" name="Black&White for larger test portions" translate="1" > + <HEADER alignment="1" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="75" charset="15" pointsize="12" italic="0" /> + <FRAME thickness="1" style="1" color="#000000" enabled="1" /> + </HEADER> + <DESCRIPTION alignment="1" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="1" /> + <FRAME enabled="0" /> + </DESCRIPTION> + <MODULETEXT alignment="0" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="0" /> + <FRAME thickness="1" style="1" color="#000000" enabled="1" /> + </MODULETEXT> +</BibleTimePrintingStyle> diff --git a/bibletime/printing/style-data/color_muchtext.xml b/bibletime/printing/style-data/color_muchtext.xml new file mode 100644 index 0000000..9c8d502 --- /dev/null +++ b/bibletime/printing/style-data/color_muchtext.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE DOC ><BibleTimePrintingStyle syntaxVersion="1" name="Colored style for larger test portions" translate="1" > + <HEADER alignment="1" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="75" charset="15" pointsize="12" italic="0" /> + <FRAME thickness="1" style="1" color="#000000" enabled="1" /> + </HEADER> + <DESCRIPTION alignment="1" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="1" /> + <FRAME enabled="0" /> + </DESCRIPTION> + <MODULETEXT alignment="0" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="0" /> + <FRAME thickness="1" style="1" color="#000000" enabled="1" /> + </MODULETEXT> +</BibleTimePrintingStyle> diff --git a/bibletime/printing/style-data/standard.xml b/bibletime/printing/style-data/standard.xml new file mode 100644 index 0000000..183f030 --- /dev/null +++ b/bibletime/printing/style-data/standard.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE DOC ><BibleTimePrintingStyle syntaxVersion="1" name="Standard" translate="1" > + <HEADER alignment="0" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="75" charset="15" pointsize="12" italic="0" /> + <FRAME enabled="0" /> + </HEADER> + <DESCRIPTION alignment="0" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="0" /> + <FRAME enabled="0" /> + </DESCRIPTION> + <MODULETEXT alignment="0" enabled="1" > + <COLORS bgcolor="#ffffff" fgcolor="#000000" /> + <FONT family="" weight="50" charset="15" pointsize="10" italic="0" /> + <FRAME enabled="0" /> + </MODULETEXT> +</BibleTimePrintingStyle> diff --git a/bibletime/resource.h b/bibletime/resource.h new file mode 100644 index 0000000..d3e5a6a --- /dev/null +++ b/bibletime/resource.h @@ -0,0 +1,219 @@ +/*************************************************************************** + resource.h - description + ------------------- + begin : Wed Jan 19 2000 + copyright : (C) 2000 by The BibleTime Team + email : Info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include <kglobal.h> +#include <kiconloader.h> + +//Groupmanager +#define ID_GM_PRESENTER_CREATE 1001 +#define ID_GM_BOOKMARK_CREATE 1002 +#define ID_GM_GROUP_CREATE 1003 +#define ID_GM_ITEMS_DELETE 1004 +#define ID_GM_BOOKMARK_CHANGE 1005 +#define ID_GM_MODULES_SEARCH 1006 +#define ID_GM_MODULE_UNLOCK 1007 +#define ID_GM_MODULE_ABOUT 1008 +#define ID_GM_BOOKMARKS_EXPORT 1009 +#define ID_GM_BOOKMARKS_IMPORT 1010 +#define ID_GM_GROUP_CHANGE 1011 +#define ID_GM_RESET 1012 +#define ID_GM_BOOKMARK_PRINT 1013 + +#define ID_PRESENTER_SELECT_ALL 1016 +#define ID_PRESENTER_LOOKUP 1018 + +#define ID_PRESENTER_COPY_ONLY_KEY 1019 +#define ID_PRESENTER_COPY_KEY_TEXT 1020 +#define ID_PRESENTER_COPY_KEY 1021 +#define ID_PRESENTER_COPY_CHAPTER 1022 +#define ID_PRESENTER_COPY_SELECTED 1023 + +#define ID_PRESENTER_PRINT_KEY 1030 +#define ID_PRESENTER_PRINT_CHAPTER 1031 + +#define ID_PRESENTER_SAVE_ONLY_KEY 1032 +#define ID_PRESENTER_SAVE_KEY_TEXT 1033 +#define ID_PRESENTER_SAVE_KEY 1034 +#define ID_PRESENTER_SAVE_CHAPTER 1035 +#define ID_PRESENTER_SAVE_CHAPTER_HTML 1036 + +#define ID_PRESENTER_COPY_POPUP 1050 +#define ID_PRESENTER_PRINT_POPUP 1051 +#define ID_PRESENTER_SAVE_POPUP 1052 + +//Key bindings of BibleTime +#define IDK_GM_RESET CTRL+ALT+Key_R +#define IDK_GM_ITEMS_DELETE CTRL+ALT+Key_D +#define IDK_GM_MODULES_SEARCH CTRL+ALT+Key_M + +#define IDK_VIEW_FOOTNOTES CTRL+ALT+Key_F +#define IDK_VIEW_STRONGS CTRL+ALT+Key_S +#define IDK_VIEW_HEADINGS 0 +#define IDK_VIEW_MORPH_TAGS 0 +#define IDK_VIEW_TOOLBAR CTRL+Key_T +#define IDK_VIEW_GROUPMANAGER 0 + +#define IDK_PRESENTER_NEXT_VERSE CTRL+Key_V +#define IDK_PRESENTER_PREVIOUS_VERSE CTRL+SHIFT+Key_R +#define IDK_PRESENTER_NEXT_CHAPTER CTRL+Key_H +#define IDK_PRESENTER_PREVIOUS_CHAPTER CTRL+SHIFT+Key_H +#define IDK_PRESENTER_EDIT CTRL+SHIFT+Key_E +#define IDK_PRESENTER_EDIT_DELETE CTRL+Key_D +#define IDK_PRESENTER_EDIT_BOLD CTRL+Key_B +#define IDK_PRESENTER_EDIT_ITALIC CTRL+Key_I +#define IDK_PRESENTER_EDIT_UNDERLINE CTRL+Key_U + +#define IDK_PRESENTER_TOGGLE_TREE CTRL+Key_T + +#define IDK_WINDOW_CASCADE CTRL+Key_A +#define IDK_WINDOW_TILE CTRL+Key_T +#define IDK_WINDOW_AUTO_CASCADE CTRL+ALT+Key_A +#define IDK_WINDOW_AUTO_TILE CTRL+ALT+Key_T +#define IDK_WINDOW_CLOSE_ALL CTRL+Key_K +#define IDK_WINDOW_LOAD_PROFILE 0 +#define IDK_WINDOW_SAVE_PROFILE 0 +#define IDK_WINDOW_EDIT_PROFILES 0 +#define IDK_WINDOW_FULLSCREEN 0 + +#define IDK_HELP_DAILY_TIP 0 + +/* The Bibletime Sub-Mimetypes */ +/* e.g. bible/reference is expanded to text/bible/reference, + like text/plain or text/html */ + +#define REFERENCE "bt_reference" // text/bt_reference +#define STRONGNUMBER "bt_strongnumber" // text/bt_strongnumber +#define BOOKMARK "bt_bookmark" // text/bt_bookmark (fake) +#define MODULE "bt_module" // text/bt_module +#define GROUP "bt_group" // text/bt_group +#define TEXT "plain" // text/plain + + +#define LOAD_SMALL_ICON(name) SmallIcon(name, 16) +#define LOAD_MC_ICON(name) BarIcon(name, 22) //MC == module chooser +#define LOAD_OD_ICON(name) KGlobal::instance()->iconLoader()->loadIcon(name, KIcon::NoGroup, KIcon::SizeMedium) + +//ICONS +#define ICON_FILE_CLEAR_QUEUE "queue" +#define ICON_FILE_NEW "filenew" +#define ICON_FILE_PRINT "fileprint" +#define ICON_FILE_SAVE "filesave" +#define ICON_FILE_DELETE "editdelete" + +#define ICON_EDIT "pencil" +#define ICON_EDIT_COPY "editcopy" +#define ICON_EDIT_BOLD "text_bold" +#define ICON_EDIT_ITALIC "text_italic" +#define ICON_EDIT_UNDER "text_under" +#define ICON_EDIT_LEFT "text_left" +#define ICON_EDIT_CENTER "text_center" +#define ICON_EDIT_RIGHT "text_right" +#define ICON_EDIT_JUST "text_block" + +#define ICON_VIEW_BOOKTREE "view_sidetree" + +#define ICON_MAININDEX_RESET "start" +#define ICON_MAININDEX_SEARCH "find" +#define ICON_MAININDEX_DELETE_ITEMS ICON_FILE_DELETE + +//#define ICON_VIEW_MAININDEX "bt_mainindex" +#define ICON_VIEW_MAININDEX "view_sidetree" + +#define ICON_WINDOW_TILE "bt_tile" +#define ICON_WINDOW_CASCADE "bt_cascade" +#define ICON_WINDOW_TILE_AUTO "bt_tile_auto" +#define ICON_WINDOW_CASCADE_AUTO "bt_cascade_auto" + +#define ICON_WINDOW_CLOSE_ALL "fileclose" +#define ICON_WINDOW_SAVE_PROFILE "view_sidetree" +#define ICON_WINDOW_LOAD_PROFILE "view_sidetree" +#define ICON_WINDOW_EDIT_PROFILES "view_sidetree" +#define ICON_WINDOW_FULLSCREEN "window_fullscreen" + +#define ICON_HELP_DAILY_TIP "idea" +#define ICON_HELP_CONTENTS "contents" +#define ICON_BUG_REPORT "configure" + +#define ICON_SYNC "bt_sync" + +//CGroupManager icons +#define GROUP_ICON_SMALL LOAD_SMALL_ICON("folder") +#define GROUP_OPEN_ICON_SMALL LOAD_SMALL_ICON("folder_open") +#define GROUP_NEW_ICON_SMALL LOAD_SMALL_ICON("folder_new") +#define GROUP_CHANGE_ICON_SMALL LOAD_SMALL_ICON("folder") // maybe find a better one + +#define BIBLE_ICON_SMALL LOAD_SMALL_ICON("bt_bible") +#define BIBLE_LOCKED_ICON_SMALL LOAD_SMALL_ICON("bt_bible_locked") +#define BIBLE_ICON_MC "bt_bible" +#define BIBLE_ADD_ICON_MC "bt_bible_add" + +#define BOOK_ICON_SMALL LOAD_SMALL_ICON("bt_book") +#define BOOK_LOCKED_ICON_SMALL LOAD_SMALL_ICON("bt_book_locked") +#define BOOK_ICON_MC "bt_book" +#define BOOK_ADD_ICON_MC "bt_book_add" + +#define COMMENTARY_ICON_SMALL LOAD_SMALL_ICON("bt_commentary") +#define COMMENTARY_LOCKED_ICON_SMALL LOAD_SMALL_ICON("bt_commentary_locked") +#define COMMENTARY_ICON_MC "bt_commentary" +#define COMMENTARY_ADD_ICON_MC "bt_commentary_add" + +#define LEXICON_ICON_SMALL LOAD_SMALL_ICON("bt_lexicon") +#define LEXICON_LOCKED_ICON_SMALL LOAD_SMALL_ICON("bt_lexicon_locked") +#define LEXICON_ICON_MC "bt_lexicon" +#define LEXICON_ADD_ICON_MC "bt_lexicon_add" + +#define DSB_ICON "bt_displayconfig" + +//UNUSED +#define PARALLEL_ICON_MC LOAD_SMALL_ICON("bt_parallel") + +#define SYNC_ICON_SMALL LOAD_SMALL_ICON(ICON_SYNC) +#define ITEMS_DELETE_ICON_SMALL LOAD_SMALL_ICON(ICON_MAININDEX_DELETE_ITEMS) + +#define BOOKMARK_ICON_SMALL LOAD_SMALL_ICON("bookmark") +#define BOOKMARK_CHANGE_ICON_SMALL LOAD_SMALL_ICON("bookmark") +#define BOOKMARK_NEW_ICON_SMALL LOAD_SMALL_ICON("bookmark_new") +#define BOOKMARK_IMPORT_ICON_SMALL LOAD_SMALL_ICON("bookmark") +#define BOOKMARK_EXPORT_ICON_SMALL LOAD_SMALL_ICON("bookmark") +#define BOOKMARK_PRINT_ICON_SMALL LOAD_SMALL_ICON(ICON_FILE_PRINT) + +#define SHOW_GM_ICON_SMALL LOAD_SMALL_ICON( ICON_MAININDEX ) +#define RESET_GM_ICON_SMALL LOAD_SMALL_ICON( ICON_MAININDEX_RESET ) + +#define MODULE_SEARCH_ICON_SMALL LOAD_SMALL_ICON( ICON_MAININDEX_SEARCH ) +#define MODULE_UNLOCK_ICON_SMALL LOAD_SMALL_ICON("unlock") +#define MODULE_ABOUT_ICON_SMALL LOAD_SMALL_ICON("info") + +//used for Drag&Drop +#define REFERENCE_ICON_SMALL LOAD_SMALL_ICON("bookmark") + +//Icons for the optionsdialog; OD == OptionsDialog +#define OD_ICON_GENERAL LOAD_OD_ICON("bt_startconfig") +#define OD_ICON_KEY_BINDINGS LOAD_OD_ICON("key_bindings") +#define OD_ICON_FONTS LOAD_OD_ICON("fonts") +#define OD_ICON_COLORS LOAD_OD_ICON("bt_displayconfig") +#define OD_ICON_PROFILES LOAD_OD_ICON("view_sidetree") +#define OD_ICON_SWORD LOAD_OD_ICON("bt_swordconfig") + +//define HelpDialog aliases for defines +#define HELPDIALOG_MODULE_LOCKED "bibletime/helpdialog/help-module-encrypted.html" +#define HELPDIALOG_FIRST_START "bibletime/helpdialog/help-first-startup.html" +#define HELPDIALOG_NO_SWORD_MODULES "bibletime/helpdialog/help-no-modules.html" +#define HELPDIALOG_NO_SWORD_MODULE_CONFIG_DIR "bibletime/helpdialog/help-no-mods-d.html" +#define HELPDIALOG_INITBACKEND_FAILED "bibletime/helpdialog/help-initbackend-failed.html" +#define HELPDIALOG_FIRSTTIME_SEARCH "bibletime/helpdialog/help-first-time-search.html" + diff --git a/bibletime/tooltipdef.h b/bibletime/tooltipdef.h new file mode 100644 index 0000000..0d77cb3 --- /dev/null +++ b/bibletime/tooltipdef.h @@ -0,0 +1,181 @@ +/*************************************************************************** + tooltipdef.h - description + ------------------- + begin : Sat Jul 29 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +//ToolTip entries for Mainwindow actions +#define TT_FILE_CLEAR_QUEUE i18n("Clear the printing queue") +#define TT_FILE_PRINT i18n("Open the printerdialog") +#define TT_FILE_QUIT i18n("Close BibleTime") + +#define TT_GM_SEARCH_MODULES i18n("Search in modules") +#define TT_GM_DELETE_ITEMS i18n("Remove selected items") +#define TT_GM_RESET i18n("Reset main index") + +#define TT_VIEW_GROUPMANAGER i18n("Show main index") +#define TT_VIEW_TOOLBAR i18n("Show tooolbar") +#define TT_VIEW_FOOTNOTES i18n("Show footnotes") +#define TT_VIEW_STRONGS i18n("Show Strong's numbers") + +#define TT_WINDOW_TILE i18n("Tile windows") +#define TT_WINDOW_AUTO_TILE i18n("Automatically tile windows") +#define TT_WINDOW_CASCADE i18n("Cascade windows") +#define TT_WINDOW_AUTO_CASCADE i18n("Automatically cascade windows") +#define TT_WINDOW_CLOSE_ALL i18n("Close all windows") +#define TT_WINDOW_SAVE_PROFILE i18n("Save current profile") +#define TT_WINDOW_EDIT_PROFILES i18n("Edit profiles") +#define TT_WINDOW_LOAD_PROFILE i18n("Load a new profile") +#define TT_WINDOW_FULLSCREEN i18n("Toggle fullscreen mode") + +#define TT_SETTINGS_EDIT_TOOLBAR i18n("Edit toolbar") +#define TT_SETTINGS_OPTIONS i18n("Options") + +#define TT_HELP_HANDBOOK i18n("BibleTime's handbook") +#define TT_HELP_INSTALLATION i18n("BibleTime's installation documentation") +#define TT_HELP_BIBLESTUDY i18n("BibleTime's Bible study HowTo") +#define TT_HELP_WHATSTHIS i18n("Enter \"What's this?\" mode") +#define TT_HELP_BUGREPORT i18n("Send bugreport") +#define TT_HELP_DAILY_TIP i18n("Show daily tips at startup") +#define TT_HELP_ABOUT i18n("About BibleTime") +#define TT_HELP_ABOUT_KDE i18n("About KDE") + + +//QWhatsThis defines for the groupmanager +#define TT_GM_WIDGET i18n("The main index") +#define TT_GM_NEW_GROUP i18n("Create a new folder") +#define TT_GM_CHANGE_GROUP i18n("Change this folder") +#define TT_GM_CHANGE_BOOKMARK i18n("Change this bookmark") +#define TT_GM_IMPORT_BOOKMARKS i18n("Import bookmarks") +#define TT_GM_EXPORT_BOOKMARKS i18n("Export bookmarks") +#define TT_GM_PRINT_BOOKMARK i18n("Add bookmark to printing queue") +#define TT_GM_UNLOCK_MODULE i18n("Unlock this module") +#define TT_GM_ABOUT_MODULE i18n("About this module") + +//QWhatsThis defines for the presenters +#define TT_MDI_AREA_WIDGET i18n("The working area") + +#define TT_PRESENTER_NEXT_ENTRY i18n("Show the next entry") +#define TT_PRESENTER_PREVIOUS_ENTRY i18n("Show the previous entry") +#define TT_PRESENTER_NEXT_VERSE i18n("Jump to the next verse") +#define TT_PRESENTER_PREVIOUS_VERSE i18n("Jump to the previous verse") +#define TT_PRESENTER_NEXT_CHAPTER i18n("Show the next chapter") +#define TT_PRESENTER_PREVIOUS_CHAPTER i18n("Show the previous chapter") +#define TT_PRESENTER_NEXT_BOOK i18n("Show the next book") +#define TT_PRESENTER_PREVIOUS_BOOK i18n("Show the previous book") +#define TT_PRESENTER_BOOK_COMBO i18n("List of books") +#define TT_PRESENTER_CHAPTER_COMBO i18n("List of chapters") +#define TT_PRESENTER_VERSE_COMBO i18n("List of verses") +#define TT_PRESENTER_ENTRY_COMBO i18n("List of entries") +#define TT_PRESENTER_SCROLL_BUTTON i18n("Scroll through the list") +#define TT_PRESENTER_EDIT i18n("Edit this entry") +#define TT_PRESENTER_EDIT_SAVE i18n("Save this comment") +#define TT_PRESENTER_EDIT_DELETE i18n("Delete this comment") +#define TT_PRESENTER_EDIT_COMMENT_UP_TO i18n("Comment up to") +#define TT_PRESENTER_EDIT_SET_BOLD i18n("Set bold") +#define TT_PRESENTER_EDIT_SET_ITALIC i18n("Set italic") +#define TT_PRESENTER_EDIT_SET_UNDERLINED i18n("Set underlined") +#define TT_PRESENTER_EDIT_SET_FONT i18n("Set font") +#define TT_PRESENTER_EDIT_COLOR_CHOOSER i18n("Set the color") +#define TT_PRESENTER_EDIT_FONTSIZE_CHOOSER i18n("Set the fontsize") + +#define TT_PRESENTER_SYNC i18n("Synchronize with Bible windows") + +//HTML widget related #defines +#define TT_HTML_SAVE_AS i18n("Save as HTML") +#define TT_HTML_SELECT_ALL i18n("Select all") +#define TT_HTML_COPY i18n("Copy to clipboard") + +//searchdialog related #defines, SD means searchdialog; mc==Module chooser +#define TT_SD_MODULECHOOSER i18n("Choose the modules to search in") +#define TT_SD_MC_ADD_MODULE i18n("Add the selected module to the list") +#define TT_SD_MC_REMOVE_MODULE i18n("Remove the selected module from the list") +#define TT_SD_MC_MODULELIST i18n("List of modules used for the search") + +#define TT_SD_SEARCH_TEXT_EDIT i18n("Search for this text") +#define TT_SD_SEARCH_MULTIPLE_WORDS i18n("Search multiple words") +#define TT_SD_SEARCH_EXACT_MATCH i18n("Exact match") +#define TT_SD_SEARCH_REGEXP i18n("Search with GNU regular expressions") +#define TT_SD_SEARCH_CASE_SENSITIVE i18n("Search case sensitive") + +#define TT_SD_SCOPE_NO_SCOPE i18n("No scope") +#define TT_SD_SCOPE_LAST_RESULT i18n("Last search result") +#define TT_SD_SCOPE_OWN_SCOPE i18n("Use custom scope") +#define TT_SD_SCOPE_NEW_SCOPE i18n("Add a new scope") +#define TT_SD_SCOPE_DELETE_SCOPE i18n("Delete this search scope") +#define TT_SD_SCOPE_EDIT_SCOPE_BUTTON i18n("Edit and define your search scopes") +#define TT_SD_SCOPE_CHOOSER i18n("Choose a search scope from the list") +#define TT_SD_SCOPE_EDIT_LINE i18n("Enter your own search scope") +#define TT_SD_SCOPE_PARSED_LIST i18n("Parsed result") +#define TT_SD_SCOPE_CLOSE i18n("Close this dialog") + +#define TT_SD_RESULT_MODULE_VIEW i18n("Used modules") +#define TT_SD_RESULT_RESULT_VIEW i18n("Items found") +#define TT_SD_RESULT_PREVIEW i18n("Preview") + +#define TT_SD_ANALYSIS_VIEW i18n("Graphical Search Analysis") + + +//#defines for the settings dialog, OD means Optionsdialog +#define TT_OD_GENERAL_DAILY_TIP i18n("Show daily tip") +#define TT_OD_GENERAL_INTERNATIONAL_BOOKNAMES i18n("List of languages") +#define TT_OD_GENERAL_SHOW_STARTUPLOGO i18n("Show start-up logo") +#define TT_OD_GENERAL_SCROLL_PREVIOUS i18n("Use down arrow to scroll to next verse") +#define TT_OD_GENERAL_RESTORE_WORKSPACE i18n("Restore the windows in the workspace on startup") + +#define TT_OD_SWORD_USE_LEXICON_CACHE i18n("Use cache files for the lexicon entries") +#define TT_OD_SWORD_STANDARD_BIBLE i18n("The default bible used in the workspace area") +#define TT_OD_SWORD_STANDARD_COMMENTARY i18n("The default commentary used in the workspace area") +#define TT_OD_SWORD_STANDARD_LEXICON i18n("The default lexicon used in the workspace area") +#define TT_OD_SWORD_STANDARD_HEBREW_STRONG i18n("The default Hebrew lexicon used in the workspace are") +#define TT_OD_SWORD_STANDARD_GREEK_STRONG i18n("The default Greek lexicon used in the workspace area") +#define TT_OD_SWORD_STANDARD_HEBREW_MORPH i18n("The default Morphological lexicon for Hebrew texts used in the workspace area") +#define TT_OD_SWORD_STANDARD_GREEK_MORPH i18n("The default Morphological lexicon for Greek texts used in the workspace area") + + +#define TT_OD_KEYS_CHOOSER i18n("Set keyboard accelerators") + +#define TT_OD_FONTS_TYPE_CHOOSER i18n("Choose the area of application") +#define TT_OD_FONTS_CHOOSER i18n("Choose a font") + +#define TT_OD_COLORS_BACKGROUND i18n("Color of the background") +#define TT_OD_COLORS_CURRENT_VERSE i18n("Color of the highlighted verse") + +#define TT_OD_DISPLAY_WINDOW_KEYS_GENERAL i18n("Keyboard accelerators used by all display windows") +#define TT_OD_DISPLAY_WINDOW_KEYS_BIBLE i18n("Keyboard accelerators used by Bible windows") +#define TT_OD_DISPLAY_WINDOW_KEYS_COMMENTARY i18n("Keyboard accelerators used by commentary windows") +#define TT_OD_DISPLAY_WINDOW_KEYS_LEXICON i18n("Keyboard accelerators used by lexicon windows") + +//defines for the printing dialog; PI == Print Item; PD=Printer Dialog +#define TT_PD_PRINT i18n("Start printing") +#define TT_PD_PREVIEW i18n("Preview print job") +#define TT_PD_CANCEL i18n("Cancel") +#define TT_PD_HELP i18n("Open help") + +#define TT_PD_ENTRIES_STYLE_COMBO i18n("Styles") +#define TT_PD_ENTRIES_PI_LIST i18n("List of print items") +#define TT_PD_ENTRIES_PI_MOVE_UP i18n("Move item up") +#define TT_PD_ENTRIES_PI_MOVE_DOWN i18n("Move item down") +#define TT_PD_ENTRIES_PI_DELETE i18n("Delete items") +#define TT_PD_ENTRIES_PI_PAGE_BREAK i18n("Insert a page break") + +#define TT_PD_LAYOUT_BORDER i18n("Page borders") +#define TT_PD_LAYOUT_BORDER_LEFT i18n("Left border") +#define TT_PD_LAYOUT_BORDER_RIGHT i18n("Right border") +#define TT_PD_LAYOUT_BORDER_TOP i18n("Upper border") +#define TT_PD_LAYOUT_BORDER_BOTTOM i18n("Lower border") +#define TT_PD_LAYOUT_STYLE_LIST i18n("List of print styles") +#define TT_PD_LAYOUT_STYLE_DELETE i18n("Delete the selected style") +#define TT_PD_LAYOUT_STYLE_EDIT i18n("Edit the selected style") +#define TT_PD_LAYOUT_STYLE_NEW i18n("Create a new printing style") diff --git a/bibletime/util/Makefile.am b/bibletime/util/Makefile.am new file mode 100644 index 0000000..5de8a1d --- /dev/null +++ b/bibletime/util/Makefile.am @@ -0,0 +1,6 @@ +INCLUDES = $(all_includes) +all_headers = scoped_resource.h +EXTRA_DIST = $(all_headers) + + + diff --git a/bibletime/util/Makefile.in b/bibletime/util/Makefile.in new file mode 100644 index 0000000..b6ad92a --- /dev/null +++ b/bibletime/util/Makefile.in @@ -0,0 +1,367 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +INCLUDES = $(all_includes) +all_headers = scoped_resource.h +EXTRA_DIST = $(all_headers) +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +#>- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +#>+ 4 +KDE_DIST=scoped_resource.h + +DISTFILES= $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) + + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/util/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/util/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/util/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/util + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/util/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: +uninstall: uninstall-am +all-am: Makefile +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/util/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/util/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/util/scoped_resource.h b/bibletime/util/scoped_resource.h new file mode 100644 index 0000000..351667c --- /dev/null +++ b/bibletime/util/scoped_resource.h @@ -0,0 +1,160 @@ +#ifndef SCOPED_RESOURCE_H_INCLUDED +#define SCOPED_RESOURCE_H_INCLUDED + +/** +* The util namespace should take all classes which are of a generic type, +* used to perform common tasks which are not BibleTime-specific. See +* @ref scoped_resource for an example. +*/ +namespace util +{ +/** +* A class template, scoped_resource, designed to +* implement the Resource Acquisition Is Initialization (RAII) approach +* to resource management. scoped_resource is designed to be used when +* a resource is initialized at the beginning or middle of a scope, +* and released at the end of the scope. The template argument +* ReleasePolicy is a functor which takes an argument of the +* type of the resource, and releases it. +* +* Usage example, for working with files: +* +* @code +* struct close_file { void operator(int fd) const {close(fd);} }; +* ... +* { +* const scoped_resource<int,close_file> file(open("file.txt",O_RDONLY)); +* read(file, buf, 1000); +* } // file is automatically closed here +* @endcode +* +* Note that scoped_resource has an explicit constructor, and prohibits +* copy-construction, and thus the initialization syntax, rather than +* the assignment syntax must be used when initializing. +* +* i.e. using scoped_resource<int,close_file> file = open("file.txt",O_RDONLY); +* in the above example is illegal. +* +*/ +template<typename T,typename ReleasePolicy> +class scoped_resource +{ + T resource; + ReleasePolicy release; + + //prohibited operations + scoped_resource(const scoped_resource&); + scoped_resource& operator=(const scoped_resource&); +public: + typedef T resource_type; + typedef ReleasePolicy release_type; + + /** + * Constructor + * + * @ param res This is the resource to be managed + * @ param rel This is the functor to release the object + */ + explicit scoped_resource(resource_type res,release_type rel=release_type()) + : resource(res), release(rel) {} + + /** + * The destructor is the main point in this class. It takes care of proper + * deletion of the resource, using the provided release policy. + */ + ~scoped_resource() + { + release(resource); + } + + /** + * This operator makes sure you can access and use the scoped_resource + * just like you were using the resource itself. + * + * @ret the underlying resource + */ + operator resource_type() const { return resource; } + + /** + * This function provides explicit access to the resource. Its behaviour + * is identical to operator resource_type() + * + * @ret the underlying resource + */ + resource_type get() const { return resource; } + + /** + * This function provides convenient direct access to the -> operator + * if the underlying resource is a pointer. Only call this function + * if resource_type is a pointer type. + */ + resource_type operator->() const { return resource; } + +}; + +/** +* A helper policy for scoped_ptr. +* It will call the delete operator on a pointer, and assign the pointer to 0 +*/ +struct delete_item { + template<typename T> + void operator()(T*& p) const { delete p; p = 0; } +}; +/** +* A helper policy for scoped_array. +* It will call the delete[] operator on a pointer, and assign the pointer to 0 +*/ +struct delete_array { + template<typename T> + void operator()(T*& p) const { delete [] p; p = 0; } +}; + +/** +* A class which implements an approximation of +* template<typename T> +* typedef scoped_resource<T*,delete_item> scoped_ptr<T>; +* +* It is a convenient synonym for a common usage of @ref scoped_resource. +* See scoped_resource for more details on how this class behaves. +* +* Usage example: +* @code +* { +* const scoped_ptr<Object> ptr(new Object); +* ...use ptr as you would a normal Object*... +* } // ptr is automatically deleted here +* @endcode +* +* NOTE: use this class only to manage a single object, *never* an array. +* Use scoped_array to manage arrays. This distinction is because you +* may call delete only on objects allocated with new, delete[] only +* on objects allocated with new[]. +*/ +template<typename T> +struct scoped_ptr : public scoped_resource<T*,delete_item> +{ + explicit scoped_ptr(T* p) : scoped_resource<T*,delete_item>(p) {} +}; + +/** +* This class has identical behaviour to @ref scoped_ptr, except it manages +* heap-allocated arrays instead of heap-allocated single objects +* +* Usage example: +* @code +* { +* const scoped_array<char> ptr(new char[n]); +* ...use ptr as you would a normal char*... +* } // ptr is automatically deleted here +* @endcode +* +*/ +template<typename T> +struct scoped_array : public scoped_resource<T*,delete_array> +{ + explicit scoped_array(T* p) : scoped_resource<T*,delete_array>(p) {} +}; + +} + +#endif diff --git a/bibletime/whatsthisdef.h b/bibletime/whatsthisdef.h new file mode 100644 index 0000000..9839e14 --- /dev/null +++ b/bibletime/whatsthisdef.h @@ -0,0 +1,191 @@ +/*************************************************************************** + whatsthisdef.h - Contains QWhatThis descriptions + of widget + ------------------- + begin : Sat Jul 29 2000 + copyright : (C) 2000 by The BibleTime team + email : info@bibletime.de + ***************************************************************************/ + +/*************************************************************************** + * * + * 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. * + * * + ***************************************************************************/ + +#include "tooltipdef.h" + +#ifndef WHATSTHISDEF_H +#define WHATSTHISDEF_H + +//the general format of QWhatsThis help texts +#define WT(title, description) QString::fromLatin1("<center><B>%1</B></center><HR>%2").arg(title).arg(description) + +//QWhatsThis entries for Mainwindow actions +#define WT_FILE_CLEAR_QUEUE WT( TT_FILE_CLEAR_QUEUE, i18n("Clear the print queue of BibleTime. All items will be removed from the list and the print button will be disabled.")) +#define WT_FILE_PRINT WT( TT_FILE_PRINT, i18n("Open the printer dialog of BibleTime. Here you can edit the print queue and assign styles to the items.")) +#define WT_FILE_QUIT WT( TT_FILE_QUIT, i18n("Close BibleTime and save the settings.")) + +#define WT_GM_SEARCH_MODULES WT(TT_GM_SEARCH_MODULES, i18n("Open the search dialog to search for text in one or more modules.")) +#define WT_GM_DELETE_ITEMS WT(TT_GM_DELETE_ITEMS, i18n("Remove the selected items from the main index.<BR>If you remove a folder, the subitems of it will be removed too.")) +#define WT_GM_RESET WT(TT_GM_RESET, i18n("Reset the main index.<BR>All bookmarks and folders will be deleted and the default folders will be restored.")) + +#define WT_VIEW_GROUPMANAGER WT(TT_VIEW_GROUPMANAGER, i18n("Toggle the main index view.")) +#define WT_VIEW_TOOLBAR WT(TT_VIEW_TOOLBAR, i18n("Toggle the main toolbar view.")) +#define WT_VIEW_FOOTNOTES WT(TT_VIEW_FOOTNOTES, i18n("Toggle footnotes in the modules.")) +#define WT_VIEW_STRONGS WT(TT_VIEW_STRONGS, i18n("Toggle Strong's numbers in the modules.")) + +#define WT_WINDOW_TILE WT(TT_WINDOW_TILE, i18n("Tile the open display windows.")) +#define WT_WINDOW_AUTO_TILE WT( TT_WINDOW_AUTO_TILE, i18n("Automatically tile the display windows.")) +#define WT_WINDOW_CASCADE WT( TT_WINDOW_CASCADE, i18n("Cascade the open display windows.")) +#define WT_WINDOW_AUTO_CASCADE WT( TT_WINDOW_AUTO_CASCADE, i18n("Automatically cascade the opened display windows.")) +#define WT_WINDOW_CLOSE_ALL WT( TT_WINDOW_CLOSE_ALL, i18n("Close all open display windows.")) +#define WT_WINDOW_SAVE_PROFILE WT(TT_WINDOW_SAVE_PROFILE, i18n("Save current profile")) +#define WT_WINDOW_EDIT_PROFILES WT(TT_WINDOW_EDIT_PROFILES, i18n("Edit profiles...")) +#define WT_WINDOW_LOAD_PROFILE WT(TT_WINDOW_LOAD_PROFILE, i18n("Load a new profile")) +#define WT_WINDOW_FULLSCREEN WT(TT_WINDOW_FULLSCREEN, i18n("Toggle fullscreen mode")) + + +#define WT_SETTINGS_EDIT_TOOLBAR WT(TT_SETTINGS_EDIT_TOOLBAR, i18n("Open the BibleTime tool bar editor.")) +#define WT_SETTINGS_OPTIONS WT(TT_SETTINGS_OPTIONS, i18n("Open BibleTime's optionsdialog where you can set most of the preferences.")) + +#define WT_HELP_HANDBOOK WT(TT_HELP_HANDBOOK, i18n("Open KDE's helpbrowser with BibleTime's handbook.<BR>The handbook explains how to use BibleTime in the best way.")) +#define WT_HELP_INSTALLATION WT(TT_HELP_INSTALLATION, i18n("Open KDE's helpbrowser with BibleTime's installation instructions.<BR>The installation instructions explain how to set up BibleTime and the text modules.")) +#define WT_HELP_BIBLESTUDY WT(TT_HELP_BIBLESTUDY, i18n("Open KDE's helpbrowser with the Bible study HowTo included with BibleTime.<BR>This HowTo is an introduction how to study the Bible in an efficient way.")) +#define WT_HELP_WHATSTHIS WT(TT_HELP_WHATSTHIS, i18n("Switch into the <B>\"What's this?\"</B> mode.<BR>All important elements of BibleTime's GUI offer a \"What's this?\" help message.")) +#define WT_HELP_BUGREPORT WT(TT_HELP_BUGREPORT, i18n("Send a bugreport to the developers of BibleTime!")) +#define WT_HELP_DAILY_TIP WT(TT_HELP_DAILY_TIP, i18n("Show a daily tip.<BR>The tips contain important Bible quotations and helpful usage tips for BibleTime.")) +#define WT_HELP_ABOUT WT(TT_HELP_ABOUT, i18n("Show detailed information about BibleTime.")) +#define WT_HELP_ABOUT_KDE WT(TT_HELP_ABOUT_KDE, i18n("Show the \"about\" dialog of KDE 2.")) + + +//QWhatsThis defines for the groupmanager +#define WT_GM_WIDGET WT(TT_GM_WIDGET, i18n("This is the main index of BibleTime.<BR>Use it to manage the installed modules, to work with bookmarks, to open display windows etc..")) +#define WT_GM_NEW_GROUP WT(TT_GM_NEW_GROUP, i18n("Create a new folder in the main index.<BR>If you press the right mouse button on a folder, the new folder will become a sub-folder of it.<BR>Otherwise you will create a toplevel folder.")) +#define WT_GM_CHANGE_GROUP WT(TT_GM_CHANGE_GROUP, i18n("Change the properties of the selected folder.")) +#define WT_GM_CHANGE_BOOKMARK WT(TT_GM_CHANGE_BOOKMARK, i18n("Change the properties of the selected bookmark.")) +#define WT_GM_IMPORT_BOOKMARKS WT(TT_GM_IMPORT_BOOKMARKS, i18n("Import bookmarks from a file.")) +#define WT_GM_EXPORT_BOOKMARKS WT(TT_GM_EXPORT_BOOKMARKS, i18n("Export bookmarks to a file so you or other<BR>users can import them later.")) +#define WT_GM_PRINT_BOOKMARK WT(TT_GM_PRINT_BOOKMARK, i18n("Use this to add this bookmark to BibleTime's print queue. The key, the description, and the text of the key will be used for printing.")) +#define WT_GM_UNLOCK_MODULE WT(TT_GM_UNLOCK_MODULE, i18n("Open a small dialog where you can unlock the selected module.")) +#define WT_GM_ABOUT_MODULE WT(TT_GM_ABOUT_MODULE, i18n("Open a dialog to show information about the selected module.")) + +//QWhatsThis defines for the presenters +#define WT_MDI_AREA_WIDGET WT(TT_MDI_AREA_WIDGET, i18n("This area is the main workspace of Bibletime.<BR>All display windows are opened in this window.")) + +#define WT_PRESENTER_NEXT_ENTRY WT(TT_PRESENTER_NEXT_ENTRY, i18n("The next entry of the module will be shown.")) +#define WT_PRESENTER_PREVIOUS_ENTRY WT(TT_PRESENTER_PREVIOUS_ENTRY, i18n("The previous entry of the module will be shown.")) +#define WT_PRESENTER_NEXT_VERSE WT(TT_PRESENTER_NEXT_VERSE, i18n("For Bible texts, the next verse will be highlighted.<BR>In commentaries, the next entry will be shown.")) +#define WT_PRESENTER_PREVIOUS_VERSE WT(TT_PRESENTER_PREVIOUS_VERSE, i18n("For Bible texts, the previous verse will be highlighted. In commentaries, the previous entry will be shown.")) +#define WT_PRESENTER_NEXT_CHAPTER WT(TT_PRESENTER_NEXT_CHAPTER, i18n("Show the next chapter of the module. The verse will be set to \"1\".")) +#define WT_PRESENTER_PREVIOUS_CHAPTER WT(TT_PRESENTER_PREVIOUS_CHAPTER, i18n("Show the previous chapter of the module. The verse will be set to \"1\"")) +#define WT_PRESENTER_NEXT_BOOK WT(TT_PRESENTER_NEXT_BOOK, i18n("Show the next book of this module. The chapter and the verse will be set to \"1\".")) +#define WT_PRESENTER_PREVIOUS_BOOK WT(TT_PRESENTER_PREVIOUS_BOOK, i18n("Show the previous book of this module. The chapter and the verse will be set to \"1\".")) +#define WT_PRESENTER_BOOK_COMBO WT(TT_PRESENTER_BOOK_COMBO, i18n("This list contains the books which are available in this module.")) +#define WT_PRESENTER_CHAPTER_COMBO WT(TT_PRESENTER_CHAPTER_COMBO, i18n("This list contains the chapters which are available in the current book.")) +#define WT_PRESENTER_VERSE_COMBO WT(TT_PRESENTER_VERSE_COMBO, i18n("This list contains the verses which are available in the current chapter.")) +#define WT_PRESENTER_ENTRY_COMBO WT(TT_PRESENTER_ENTRY_COMBO, i18n("This list contains the entries of the current module.")) +#define WT_PRESENTER_SCROLL_BUTTON WT(TT_PRESENTER_SCROLL_BUTTON, i18n("This button is useful to scroll through the entries of the list. Press the button and move the mouse to increase or decrease the item.")) +#define WT_PRESENTER_EDIT WT(TT_PRESENTER_EDIT, i18n("Toggle between read-write and read-only mode of writeable modules.")) +#define WT_PRESENTER_EDIT_SAVE WT(TT_PRESENTER_EDIT_SAVE, i18n("Save new personal comments.")) +#define WT_PRESENTER_EDIT_DELETE WT(TT_PRESENTER_EDIT_DELETE, i18n("Clear the text and delete the entry from the module.")) +#define WT_PRESENTER_EDIT_SET_BOLD WT(TT_PRESENTER_EDIT_SET_BOLD, i18n("Toggle bold formatting of the selected text.")) +#define WT_PRESENTER_EDIT_SET_ITALIC WT(TT_PRESENTER_EDIT_SET_ITALIC, i18n("Toggle italic formatting of the selected text.")) +#define WT_PRESENTER_EDIT_SET_UNDERLINED WT(TT_PRESENTER_EDIT_SET_UNDERLINED, i18n("Toggle underlined formatting of the selected text.")) +#define WT_PRESENTER_EDIT_SET_FONT WT(TT_PRESENTER_EDIT_SET_FONT, i18n("Choose a new font for the selected text.")) +#define WT_PRESENTER_EDIT_COLOR_CHOOSER WT(TT_PRESENTER_EDIT_COLOR_CHOOSER, i18n("Choose a new color for the selected text.")) +#define WT_PRESENTER_EDIT_FONTSIZE_CHOOSER WT(TT_PRESENTER_EDIT_FONTSIZE_CHOOSER, i18n("Choose a new fontsize for the selected text.")) + +#define WT_PRESENTER_SYNC WT(TT_PRESENTER_SYNC, i18n("Synchronize the displayed verse of this module with the active Bible window.")) + +//HTML widget related #defines +#define WT_HTML_SAVE_AS WT(TT_HTML_SAVE_AS, i18n("Save the displayed chapter as an HTML file.")) +#define WT_HTML_SELECT_ALL WT(TT_HTML_SELECT_ALL, i18n("Select all text.")) +#define WT_HTML_COPY WT(TT_HTML_COPY, i18n("Copy the displayed text to the clipboard.")) + +//searchdialog related #defines, SD means searchdialog +#define WT_SD_MODULECHOOSER WT(TT_SD_MODULECHOOSER, i18n("Choose the modules which will be used for the search.<BR>Use the two buttons on the right side to add or delete the modules to/from the list of used ones.")) +#define WT_SD_MC_ADD_MODULE WT(TT_SD_MC_ADD_MODULE, i18n("Add the selected module to the list on the right.")) +#define WT_SD_MC_REMOVE_MODULE WT(TT_SD_MC_REMOVE_MODULE, i18n("Remove the selected module from the list on the right side.")) +#define WT_SD_MC_MODULELIST WT(TT_SD_MC_MODULELIST, i18n("The list of modules used for the search.")) + +#define WT_SD_SEARCH_TEXT_EDIT WT(TT_SD_SEARCH_TEXT_EDIT, i18n("The text entered in this edit box will be searched for in all selected modules.")) +#define WT_SD_SEARCH_MULTIPLE_WORDS WT(TT_SD_SEARCH_MULTIPLE_WORDS, i18n("Select this to search for multiple words.<BR>Each word in the edit box above is searched as a single word.")) +#define WT_SD_SEARCH_EXACT_MATCH WT(TT_SD_SEARCH_EXACT_MATCH, i18n("Select this to search for exactly the same text you entered in the edit box.")) +#define WT_SD_SEARCH_REGEXP WT(TT_SD_SEARCH_REGEXP, i18n("Select this to search using standard GNU regular expressions.<BR>Read the handbook for a explanation how to use them.")) +#define WT_SD_SEARCH_CASE_SENSITIVE WT(TT_SD_SEARCH_CASE_SENSITIVE, i18n("Activate this to use a case sensitive search.")) + +#define WT_SD_SCOPE_NO_SCOPE WT(TT_SD_SCOPE_NO_SCOPE, i18n("Select this if you want to search through all parts of the module(s).")) +#define WT_SD_SCOPE_LAST_RESULT WT(TT_SD_SCOPE_LAST_RESULT, i18n("Select this if you want to use the last search result as the search scope.")) +#define WT_SD_SCOPE_NEW_SCOPE WT(TT_SD_SCOPE_NEW_SCOPE, i18n("Create a new search scope.")) +#define WT_SD_SCOPE_OWN_SCOPE WT(TT_SD_SCOPE_OWN_SCOPE, i18n("Use a custom scope for the search.<BR>A standard set of search scopes exists.")) +#define WT_SD_SCOPE_DELETE_SCOPE WT(TT_SD_SCOPE_DELETE_SCOPE, i18n("Use this button to delete the chosen search scope.")) +#define WT_SD_SCOPE_EDIT_SCOPE_BUTTON WT(TT_SD_SCOPE_EDIT_SCOPE_BUTTON, i18n("Edit and define your search scopes")) +#define WT_SD_SCOPE_CHOOSER WT(TT_SD_SCOPE_CHOOSER,i18n("Choose a search scope from the combo box")) +#define WT_SD_SCOPE_EDIT_LINE WT(TT_SD_SCOPE_EDIT_LINE, i18n("Enter your own search scope.<BR>To define a range use \"-\" (e.g. Genesis-Exodus),<BR>to seperate different ranges or keys use the semicolon (e.g. Genesis;Matthew).")) +#define WT_SD_SCOPE_PARSED_LIST WT(TT_SD_SCOPE_PARSED_LIST, i18n("This list contains the parsed result of your entered scope. This result will be used for the search.")) +#define WT_SD_SCOPE_CLOSE WT(TT_SD_SCOPE_CLOSE, i18n("Close this dialog and save the changes.")) + +#define WT_SD_RESULT_MODULE_VIEW WT(TT_SD_RESULT_MODULE_VIEW, i18n("List of modules used for the search.<BR>Click on a module to see the search result on the right side.")) +#define WT_SD_RESULT_RESULT_VIEW WT(TT_SD_RESULT_RESULT_VIEW, i18n("This contains the items found in the selected module.")) +#define WT_SD_RESULT_PREVIEW WT(TT_SD_RESULT_PREVIEW, i18n("This text box shows a preview of the chosen item.")) + +#define WT_SD_ANALYSIS_VIEW WT(TT_SD_ANALYSIS_VIEW, i18n("Graphical analysis of your search result.<BR>The bars show the number of items found in each book of the Bible or commentary.")) + +//#defines for the settings dialog, OD means Optionsdialog +#define WT_OD_GENERAL_DAILY_TIP WT(TT_OD_GENERAL_DAILY_TIP, i18n("Activate this box to see a daily tip on startup.")) +#define WT_OD_GENERAL_INTERNATIONAL_BOOKNAMES WT(TT_OD_GENERAL_INTERNATIONAL_BOOKNAMES, i18n("Contains the languages which can be used for the international booknames.")) +#define WT_OD_GENERAL_SHOW_STARTUPLOGO WT(TT_OD_GENERAL_SHOW_STARTUPLOGO, i18n("Activate this to see the BibleTime logo on startup.")) +#define WT_OD_GENERAL_SCROLL_PREVIOUS WT(TT_OD_GENERAL_SCROLL_PREVIOUS, i18n("Check this to use the down arrow to scroll to the next verse.")) +#define WT_OD_GENERAL_RESTORE_WORKSPACE WT(TT_OD_GENERAL_RESTORE_WORKSPACE, i18n("Save the windows in the workspace if BibleTime is closed<BR>and restore them on the next startup. ")) + +#define WT_OD_SWORD_USE_LEXICON_CACHE WT(TT_OD_SWORD_USE_LEXICON_CACHE, i18n("Activate this to let BibleTime create index files for the lexicon entries. This will speed up opening the lexicons a lot, but consume some disk space. Recommended.")) +#define WT_OD_SWORD_STANDARD_BIBLE WT(TT_OD_SWORD_STANDARD_BIBLE, i18n("The default Bible is used when a hyperlink into a Bible was clicked")) +#define WT_OD_SWORD_STANDARD_COMMENTARY WT(TT_OD_SWORD_STANDARD_BIBLE, i18n("The default commentary is used when a hyperlink into a commentary was clicked")) +#define WT_OD_SWORD_STANDARD_LEXICON WT(TT_OD_SWORD_STANDARD_LEXICON, i18n("The default lexicon is used when a hyperlink into a lexicon was clicked")) +#define WT_OD_SWORD_STANDARD_HEBREW_STRONG WT(TT_OD_SWORD_STANDARD_HEBREW_STRONG, i18n("The default Hebrew lexicon is used when a hyperlink into a Hebrew lexicon was clicked")) +#define WT_OD_SWORD_STANDARD_GREEK_STRONG WT(TT_OD_SWORD_STANDARD_GREEK_STRONG, i18n("The default Greek lexicon is used when a hyperlink into a Greek lexicon was clicked")) +#define WT_OD_SWORD_STANDARD_HEBREW_MORPH WT(TT_OD_SWORD_STANDARD_HEBREW_MORPH, i18n("The standard morphological lexicon for Hebrew texts is used when a hyperlink of a morphological tag in a Hebrew text was clicked.")) +#define WT_OD_SWORD_STANDARD_GREEK_MORPH WT(TT_OD_SWORD_STANDARD_HEBREW_MORPH, i18n("The standard morphological lexicon for Greek texts is used when a hyperlink of a morphological tag in a Greek text was clicked.")) + +#define WT_OD_KEYS_CHOOSER WT(TT_OD_KEYS_CHOOSER, i18n("Select an action and change the key binding for the action.")) +#define WT_OD_FONTS_TYPE_CHOOSER WT(TT_OD_FONTS_TYPE_CHOOSER, i18n("Use this box to select how the font is used and change the font in the font chooser.")) +#define WT_OD_FONTS_CHOOSER WT(TT_OD_FONTS_CHOOSER, i18n("Choose a font")) + +#define WT_OD_COLORS_BACKGROUND WT(TT_OD_COLORS_BACKGROUND, i18n("This is the background color used in display windows.")) +#define WT_OD_COLORS_CURRENT_VERSE WT(TT_OD_COLORS_CURRENT_VERSE, i18n("This is the color of the highlighted verse used in display windows.")) + +#define WT_OD_DISPLAY_WINDOW_KEYS_GENERAL WT(TT_OD_DISPLAY_WINDOW_KEYS_GENERAL, i18n("Set the keyboard accelerators used in all display windows")) +#define WT_OD_DISPLAY_WINDOW_KEYS_BIBLE WT(TT_OD_DISPLAY_WINDOW_KEYS_BIBLE, i18n("Set keyboard accelerators used in Bible windows")) +#define WT_OD_DISPLAY_WINDOW_KEYS_COMMENTARY WT(TT_OD_DISPLAY_WINDOW_KEYS_COMMENTARY, i18n("Set the keyboard accelerators used in commentary windows")) +#define WT_OD_DISPLAY_WINDOW_KEYS_LEXICON WT(TT_OD_DISPLAY_WINDOW_KEYS_LEXICON, i18n("Set the keyboard accelerators used in lexicon windows")) + + +//defines for the printing dialog; PI == Print Item; PD=Printer Dialog +#define WT_PD_PRINT WT(TT_PD_PRINT, i18n("Start the printing process.<BR>The items of the list will be printed using the assigned styles.")) +#define WT_PD_PREVIEW WT(TT_PD_PREVIEW, i18n("Print into a temporary file and open a postscript viewer to preview the printing result.")) +#define WT_PD_CANCEL WT(TT_PD_CANCEL, i18n("Closes this dialog without doing anything else.")) +#define WT_PD_HELP WT(TT_PD_HELP, i18n("Open the online help of BibleTime.")) + +#define WT_PD_ENTRIES_STYLE_COMBO WT(TT_PD_ENTRIES_STYLE_COMBO, i18n("This combo box contains the available print styles.")) +#define WT_PD_ENTRIES_PI_LIST WT(TT_PD_ENTRIES_PI_LIST, i18n("This is the list which contains the available print items.")) +#define WT_PD_ENTRIES_PI_MOVE_UP WT(TT_PD_ENTRIES_PI_MOVE_UP, i18n("Move the selected item up one item.")) +#define WT_PD_ENTRIES_PI_MOVE_DOWN WT(TT_PD_ENTRIES_PI_MOVE_DOWN, i18n("Move the selected item down one item.")) +#define WT_PD_ENTRIES_PI_DELETE WT(TT_PD_ENTRIES_PI_DELETE, i18n("Delete the selected items.")) +#define WT_PD_ENTRIES_PI_PAGE_BREAK WT(TT_PD_ENTRIES_PI_PAGE_BREAK, i18n("Inserts a page break into the list.<BR>The printer will start a new page.")) + +#define WT_PD_LAYOUT_BORDER WT(TT_PD_LAYOUT_BORDER, i18n("This group contains the page borders of the page measured in millimeters.")) +#define WT_PD_LAYOUT_BORDER_LEFT WT(TT_PD_LAYOUT_BORDER_LEFT, i18n("The size of the border on the left side of the paper.")) +#define WT_PD_LAYOUT_BORDER_RIGHT WT(TT_PD_LAYOUT_BORDER_RIGHT, i18n("The size of the border on the right side of the paper.")) +#define WT_PD_LAYOUT_BORDER_TOP WT(TT_PD_LAYOUT_BORDER_TOP, i18n("The size of the border on the top of the paper.")) +#define WT_PD_LAYOUT_BORDER_BOTTOM WT(TT_PD_LAYOUT_BORDER_BOTTOM, i18n("The size of the border on the bottom of the paper.")) +#define WT_PD_LAYOUT_STYLE_LIST WT(TT_PD_LAYOUT_STYLE_LIST, i18n("This list contains the available printing styles.<BR>Create your own one using the \"New style\" button.")) +#define WT_PD_LAYOUT_STYLE_DELETE WT(TT_PD_LAYOUT_STYLE_DELETE, i18n("Remove the selected printing style from the list.")) +#define WT_PD_LAYOUT_STYLE_EDIT WT(TT_PD_LAYOUT_STYLE_EDIT, i18n("Change the properties of the selected printing style.")) +#define WT_PD_LAYOUT_STYLE_NEW WT(TT_PD_LAYOUT_STYLE_NEW, i18n("Create a new printing style.<BR>The new style will be added to the list.")) + +#endif + diff --git a/bibletime/xml/Makefile.am b/bibletime/xml/Makefile.am new file mode 100644 index 0000000..acb432e --- /dev/null +++ b/bibletime/xml/Makefile.am @@ -0,0 +1,3 @@ +EXTRA_DIST = bibletimeui.rc +rcdir = $(kde_datadir)/bibletime +rc_DATA = bibletimeui.rc diff --git a/bibletime/xml/Makefile.in b/bibletime/xml/Makefile.in new file mode 100644 index 0000000..2058c35 --- /dev/null +++ b/bibletime/xml/Makefile.in @@ -0,0 +1,384 @@ +# KDE tags expanded automatically by am_edit - $Revision: 1.7 $ +# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am + +# Copyright (C) 1994, 1995-8, 1999 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. + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +#>- +bindir = @bindir@ +#>+ 3 +DEPDIR = .deps + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +DESTDIR = + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_alias = @build_alias@ +build_triplet = @build@ +host_alias = @host_alias@ +host_triplet = @host@ +target_alias = @target_alias@ +target_triplet = @target@ +ARTSCCONFIG = @ARTSCCONFIG@ +AS = @AS@ +AUTODIRS = @AUTODIRS@ +BT_LDFLAGS = @BT_LDFLAGS@ +CC = @CC@ +CONF_FILES = @CONF_FILES@ +CPP = @CPP@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DISTRIBUTION = @DISTRIBUTION@ +DISTRIBUTION_VERSION = @DISTRIBUTION_VERSION@ +DLLTOOL = @DLLTOOL@ +DPMSINC = @DPMSINC@ +DPMSLIB = @DPMSLIB@ +EXEEXT = @EXEEXT@ +GCJ = @GCJ@ +GCJFLAGS = @GCJFLAGS@ +GLINC = @GLINC@ +GLLIB = @GLLIB@ +GMSGFMT = @GMSGFMT@ +IDL = @IDL@ +IDL_DEPENDENCIES = @IDL_DEPENDENCIES@ +JAR = @JAR@ +JAVAC = @JAVAC@ +JAVAH = @JAVAH@ +JVMLIBS = @JVMLIBS@ +KDECONFIG = @KDECONFIG@ +KDE_CXXFLAGS = @KDE_CXXFLAGS@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_INCLUDES = @KDE_INCLUDES@ +KDE_LDFLAGS = @KDE_LDFLAGS@ +KDE_PLUGIN = @KDE_PLUGIN@ +KDE_RPATH = @KDE_RPATH@ +KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@ +KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@ +KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@ +KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBCOMPAT = @LIBCOMPAT@ +LIBCRYPT = @LIBCRYPT@ +LIBDL = @LIBDL@ +LIBGEN = @LIBGEN@ +LIBJPEG = @LIBJPEG@ +LIBMICO = @LIBMICO@ +LIBOBJS = @LIBOBJS@ +LIBPNG = @LIBPNG@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPYTHON = @LIBPYTHON@ +LIBQIMGIO = @LIBQIMGIO@ +LIBRESOLV = @LIBRESOLV@ +LIBSHADOW = @LIBSHADOW@ +LIBSM = @LIBSM@ +LIBSOCKET = @LIBSOCKET@ +LIBTIFF = @LIBTIFF@ +LIBTOOL = @LIBTOOL@ +LIBUCB = @LIBUCB@ +LIBUTIL = @LIBUTIL@ +LIBXINERAMA = @LIBXINERAMA@ +LIBZ = @LIBZ@ +LIB_KAB = @LIB_KAB@ +LIB_KDECORE = @LIB_KDECORE@ +LIB_KDEUI = @LIB_KDEUI@ +LIB_KFILE = @LIB_KFILE@ +LIB_KFM = @LIB_KFM@ +LIB_KFORMULA = @LIB_KFORMULA@ +LIB_KHTML = @LIB_KHTML@ +LIB_KIMGIO = @LIB_KIMGIO@ +LIB_KIO = @LIB_KIO@ +LIB_KPARTS = @LIB_KPARTS@ +LIB_KSPELL = @LIB_KSPELL@ +LIB_KSYCOCA = @LIB_KSYCOCA@ +LIB_KWRITE = @LIB_KWRITE@ +LIB_QT = @LIB_QT@ +LIB_SMB = @LIB_SMB@ +LIB_SWORD = @LIB_SWORD@ +LIB_X11 = @LIB_X11@ +LN_S = @LN_S@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MICO_INCLUDES = @MICO_INCLUDES@ +MICO_LDFLAGS = @MICO_LDFLAGS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@ +NOREPO = @NOREPO@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PAMLIBS = @PAMLIBS@ +PASSWDLIBS = @PASSWDLIBS@ +PYTHONINC = @PYTHONINC@ +PYTHONLIB = @PYTHONLIB@ +PYTHONMODDIR = @PYTHONMODDIR@ +QT_INCLUDES = @QT_INCLUDES@ +QT_LDFLAGS = @QT_LDFLAGS@ +RANLIB = @RANLIB@ +REPO = @REPO@ +RPM_GROUP = @RPM_GROUP@ +RPM_PREFIX = @RPM_PREFIX@ +SETUIDFLAGS = @SETUIDFLAGS@ +STRIP = @STRIP@ +SWORD_INCLUDES = @SWORD_INCLUDES@ +SWORD_LIBRARY_PATH = @SWORD_LIBRARY_PATH@ +TOPSUBDIRS = @TOPSUBDIRS@ +UIC = @UIC@ +USER_INCLUDES = @USER_INCLUDES@ +USER_LDFLAGS = @USER_LDFLAGS@ +USE_EXCEPTIONS = @USE_EXCEPTIONS@ +USE_RTTI = @USE_RTTI@ +USE_THREADS = @USE_THREADS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XPMINC = @XPMINC@ +XPMLIB = @XPMLIB@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_INCLUDES = @X_INCLUDES@ +X_LDFLAGS = @X_LDFLAGS@ +X_PRE_LIBS = @X_PRE_LIBS@ +all_includes = @all_includes@ +all_libraries = @all_libraries@ +idldir = @idldir@ +jni_includes = @jni_includes@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_includes = @kde_includes@ +kde_libraries = @kde_libraries@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +micodir = @micodir@ +qt_includes = @qt_includes@ +qt_libraries = @qt_libraries@ +x_includes = @x_includes@ +x_libraries = @x_libraries@ + +EXTRA_DIST = bibletimeui.rc +rcdir = $(kde_datadir)/bibletime +rc_DATA = bibletimeui.rc +mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs +CONFIG_HEADER = ../../config.h +CONFIG_CLEAN_FILES = +DATA = $(rc_DATA) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +#>- all: all-redirect +#>+ 1 +all: docs-am all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/xml/Makefile +#>+ 2 + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/xml/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/xml/Makefile.in + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +install-rcDATA: $(rc_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rcdir) + @list='$(rc_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rcdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rcdir)/$$p; \ + fi; fi; \ + done + +uninstall-rcDATA: + @$(NORMAL_UNINSTALL) + list='$(rc_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rcdir)/$$p; \ + done +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bibletime/xml + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu bibletime/xml/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done +info-am: +info: info-am +dvi-am: +dvi: dvi-am +check-am: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-rcDATA +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-rcDATA +uninstall: uninstall-am +all-am: Makefile $(DATA) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(rcdir) + + +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + +maintainer-clean-generic: +mostlyclean-am: mostlyclean-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +#>- clean: clean-am +#>+ 1 +clean: kde-rpo-clean clean-am + +distclean-am: distclean-generic clean-am + -rm -f libtool + +distclean: distclean-am + +maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +maintainer-clean: maintainer-clean-am + +.PHONY: uninstall-rcDATA install-rcDATA tags distdir info-am info dvi-am \ +dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs \ +mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# 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: + +#>+ 2 +docs-am: + +#>+ 5 +force-reedit: + cd $(top_srcdir) && $(AUTOMAKE) --gnu bibletime/xml/Makefile + cd $(top_srcdir) && perl admin/am_edit bibletime/xml/Makefile.in + + +#>+ 2 +final: + $(MAKE) all-am +#>+ 2 +no-final: + $(MAKE) all-am +#>+ 3 +cvs-clean: + $(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo diff --git a/bibletime/xml/bibletimeui.rc b/bibletime/xml/bibletimeui.rc new file mode 100644 index 0000000..d896cf0 --- /dev/null +++ b/bibletime/xml/bibletimeui.rc @@ -0,0 +1,69 @@ +<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd"><kpartgui name="BibleTime" version="13"> +<MenuBar> + <Menu name="file" noMerge="1"><text>&File</text> + <Action name="fileClearQueue_action"/> + <Action name="file_print"/> + <Separator/> + <Action name="file_quit"/> + </Menu> + <Menu name="main index"><text>&Main index</text> + <Action name="GMsearch_action"/> + <Separator/> + <Action name="GMreset_action"/> + <Action name="GMdelete_action"/> + </Menu> + <Menu name="view" noMerge="1"><Text>&View</Text> + <Action name="options_show_toolbar"/> + <Separator/> + <Action name="viewGroupManager_action"/> + </Menu> + <Menu name="settings" noMerge="1"><Text>&Settings</Text> + <Action name="options_configure_toolbars"/> + <Action name="options_configure"/> + </Menu> + <Menu name="window"><Text>&Window</Text> + <Action name="windowSaveProfile_action"/> + <Action name="windowLoadProfile_action"/> + <Action name="windowEditProfiles_action"/> + <Separator/> + <Action name="windowFullscreen_action"/> + <Separator/> + <Action name="windowTile_action"/> + <Action name="windowCascade_action"/> + <Action name="windowAutoTile_action"/> + <Action name="windowAutoCascade_action"/> + <Separator/> + <Action name="windowCloseAll_action"/> + <Separator/> + </Menu> + <Menu name="help" noMerge="1"><Text>&Help</Text> + <Action name="help_handbook"/> + <Action name="help_install"/> + <Action name="help_howto"/> + <Separator/> + <Action name="help_whats_this"/> + <Action name="help_report_bug"/> + <Action name="helpDailyTip_action"/> + <Separator/> + <Action name="help_about_app"/> + <Action name="help_about_kde"/> + </Menu> +</MenuBar> +<ToolBar name="mainToolBar" fullWidth="true" noMerge="1" newLine="1"> + <Action name="file_quit"/> + <Action name="file_print"/> + <Action name="file_clearQueue"/> + <Separator/> + <Action name="viewStrongs_action"/> + <Action name="viewFootnotes_action"/> + <Action name="viewGroupmanager_action"/> + <Separator/> + <Action name="GMsearch_action"/> + <Separator/> + <Separator/> + <Action name="windowLoadProfile_action"/> + <Action name="windowFullscreen_action"/> + <Separator/> + <Action name="help_whats_this"/> +</ToolBar> +</kpartgui> diff --git a/config.guess b/config.guess new file mode 100755 index 0000000..378eab8 --- /dev/null +++ b/config.guess @@ -0,0 +1,1368 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file 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. + +# Written by Per Bothner <bothner@cygnus.com>. +# Please send patches to <config-patches@gnu.org>. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to <config-patches@gnu.org>." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + + +dummy=dummy-$$ +trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int dummy(){}" > $dummy.c + for c in cc gcc c89 ; do + ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 + if test $? = 0 ; then + CC_FOR_BUILD="$c"; break + fi + done + rm -f $dummy.c $dummy.o $dummy.rel + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 8/24/94.) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # Netbsd (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # Determine the machine/vendor (is the vendor relevant). + case "${UNAME_MACHINE}" in + amiga) machine=m68k-unknown ;; + arm32) machine=arm-unknown ;; + atari*) machine=m68k-atari ;; + sun3*) machine=m68k-sun ;; + mac68k) machine=m68k-apple ;; + macppc) machine=powerpc-apple ;; + hp3[0-9][05]) machine=m68k-hp ;; + ibmrt|romp-ibm) machine=romp-ibm ;; + *) machine=${UNAME_MACHINE}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE}" in + i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k) + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit 0 ;; + alpha:OSF1:*:*) + if test $UNAME_RELEASE = "V4.0"; then + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + fi + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + cat <<EOF >$dummy.s + .data +\$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text + .globl main + .align 4 + .ent main +main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) + UNAME_MACHINE="alpha" + ;; + 1-0) + UNAME_MACHINE="alphaev5" + ;; + 1-1) + UNAME_MACHINE="alphaev56" + ;; + 1-101) + UNAME_MACHINE="alphapca56" + ;; + 2-303) + UNAME_MACHINE="alphaev6" + ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; + esac + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit 0 ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit 0 ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit 0;; + amiga:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit 0 ;; + arc64:OpenBSD:*:*) + echo mips64el-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + arc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + hkmips:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + pmax:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sgi:OpenBSD:*:*) + echo mips-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + wgrisc:OpenBSD:*:*) + echo mipsel-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit 0;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit 0 ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit 0 ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + i86pc:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit 0 ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit 0 ;; + atari*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; + sun3*:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mac68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit 0 ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit 0 ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include <stdio.h> /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy \ + && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i?86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + sed 's/^ //' << EOF >$dummy.c + #include <sys/systemcfg.h> + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo rs6000-ibm-aix3.2.5 + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit 0 ;; + *:AIX:*:[45]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + case "${HPUX_REV}" in + 11.[0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + esac ;; + esac + fi ;; + esac + if [ "${HP_ARCH}" = "" ]; then + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include <stdlib.h> + #include <unistd.h> + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` + if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi + rm -f $dummy.c $dummy + fi ;; + esac + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + sed 's/^ //' << EOF >$dummy.c + #include <unistd.h> + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + *9??*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + i?86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit 0 ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit 0 ;; + hppa*:OpenBSD:*:*) + echo hppa-unknown-openbsd + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*X-MP:*:*:*) + echo xmp-cray-unicos + exit 0 ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} + exit 0 ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ + exit 0 ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3D:*:*:*) + echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY-2:*:*:*) + echo cray2-cray-unicos + exit 0 ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit 0 ;; + hp300:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + *:OpenBSD:*:*) + echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + exit 0 ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit 0 ;; + i*:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit 0 ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit 0 ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + *:GNU:*:*) + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit 0 ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux + exit 0 ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + mips:Linux:*:*) + cat >$dummy.c <<EOF +#ifdef __cplusplus +#include <stdio.h> /* for printf() prototype */ +int main (int argc, char *argv[]) { +#else +int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __MIPSEB__ + printf ("%s-unknown-linux-gnu\n", argv[1]); +#endif +#ifdef __MIPSEL__ + printf ("%sel-unknown-linux-gnu\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + ;; + ppc:Linux:*:*) + # Determine Lib Version + cat >$dummy.c <<EOF +#include <features.h> +#if defined(__GLIBC__) +extern char __libc_version[]; +extern char __libc_release[]; +#endif +main(argc, argv) + int argc; + char *argv[]; +{ +#if defined(__GLIBC__) + printf("%s %s\n", __libc_version, __libc_release); +#else + printf("unknown\n"); +#endif + return 0; +} +EOF + LIBC="" + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null + if test "$?" = 0 ; then + ./$dummy | grep 1\.99 > /dev/null + if test "$?" = 0 ; then LIBC="libc1" ; fi + fi + rm -f $dummy.c $dummy + echo powerpc-unknown-linux-gnu${LIBC} + exit 0 ;; + alpha:Linux:*:*) + cat <<EOF >$dummy.s + .data + \$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + .text + .globl main + .align 4 + .ent main + main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main +EOF + LIBC="" + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null + if test "$?" = 0 ; then + case `./$dummy` in + 0-0) UNAME_MACHINE="alpha" ;; + 1-0) UNAME_MACHINE="alphaev5" ;; + 1-1) UNAME_MACHINE="alphaev56" ;; + 1-101) UNAME_MACHINE="alphapca56" ;; + 2-303) UNAME_MACHINE="alphaev6" ;; + 2-307) UNAME_MACHINE="alphaev67" ;; + esac + objdump --private-headers $dummy | \ + grep ld.so.1 > /dev/null + if test "$?" = 0 ; then + LIBC="libc1" + fi + fi + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit 0 ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit 0 ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit 0 ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit 0 ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit 0 ;; + i?86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + ld_supported_emulations=`cd /; ld --help 2>&1 \ + | sed -ne '/supported emulations:/!d + s/[ ][ ]*/ /g + s/.*supported emulations: *// + s/ .*// + p'` + case "$ld_supported_emulations" in + i?86linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 + ;; + elf_i?86) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + i?86coff) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 + ;; + esac + # Either a pre-BFD a.out linker (linux-gnuoldld) + # or one that does not give us useful --help. + # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. + # If ld does not provide *any* "supported emulations:" + # that means it is gnuoldld. + test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0 + case "${UNAME_MACHINE}" in + i?86) + VENDOR=pc; + ;; + *) + VENDOR=unknown; + ;; + esac + # Determine whether the default compiler is a.out or elf + cat >$dummy.c <<EOF +#include <features.h> +#ifdef __cplusplus +#include <stdio.h> /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif +#ifdef __ELF__ +# ifdef __GLIBC__ +# if __GLIBC__ >= 2 + printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +# else + printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); +# endif +#else + printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); +#endif + return 0; +} +EOF + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy + test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + ;; +# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions +# are messed up and put the nodename in both sysname and nodename. + i?86:DYNIX/ptx:4*:*) + echo i386-sequent-sysv4 + exit 0 ;; + i?86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit 0 ;; + i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit 0 ;; + i?86:*:5:7*) + # Fixed at (any) Pentium or better + UNAME_MACHINE=i586 + if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then + echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + fi + exit 0 ;; + i?86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` + echo ${UNAME_MACHINE}-pc-isc$UNAME_REL + elif /bin/uname -X 2>/dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit 0 ;; + i?86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i386. + echo i386-pc-msdosdjgpp + exit 0 ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + M68*:*:R3V[567]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4.3${OS_REL} && exit 0 + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:* | i?86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit 0 ;; + PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says <Richard.M.Bartel@ccMail.Census.GOV> + echo i586-unisys-sysv4 + exit 0 ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes <hewes@openmarket.com>. + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit 0 ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit 0 ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit 0 ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit 0 ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit 0 ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit 0 ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit 0 ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit 0 ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Darwin:*:*) + echo `uname -p`-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + if test "${UNAME_MACHINE}" = "x86pc"; then + UNAME_MACHINE=pc + fi + echo `uname -p`-${UNAME_MACHINE}-nto-qnx + exit 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSR-[KW]:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit 0 ;; + i?86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit 0 ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit 0 ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit 0 ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit 0 ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit 0 ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit 0 ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit 0 ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +cat >$dummy.c <<EOF +#ifdef _SEQUENT_ +# include <sys/types.h> +# include <sys/utsname.h> +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include <sys/param.h> + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include <sys/param.h> +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0 +rm -f $dummy.c $dummy + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +cat >&2 <<EOF +$0: unable to guess system type + +This script, last modified $timestamp, has failed to recognize +the operating system you are using. It is advised that you +download the most up to date version of the config scripts from + + ftp://ftp.gnu.org/pub/gnu/config/ + +If the version you run ($0) is already up to date, please +send the following data and any information you think might be +pertinent to <config-patches@gnu.org> in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +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` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/config.h b/config.h new file mode 100644 index 0000000..4f0b89a --- /dev/null +++ b/config.h @@ -0,0 +1,54 @@ +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader 2.13. */ + +/* The number of bytes in a char. */ +#define SIZEOF_CHAR 1 + +/* The number of bytes in a char *. */ +#define SIZEOF_CHAR_P 4 + +/* The number of bytes in a int. */ +#define SIZEOF_INT 4 + +/* The number of bytes in a long. */ +#define SIZEOF_LONG 4 + +/* Define if you have the res_init function. */ +#define HAVE_RES_INIT 1 + +/* Name of package */ +#define PACKAGE "bibletime" + +/* Version number of package */ +#define VERSION "1.1" + +/* C++ compiler supports template repository */ +#define HAVE_TEMPLATE_REPOSITORY 1 + +/* Defines if your system has the crypt function */ +#define HAVE_CRYPT 1 + +/* Define the real type of socklen_t */ +/* #undef socklen_t */ + +/* Compatibility define */ +#define ksize_t socklen_t + +/* Define if you have libz */ +#define HAVE_LIBZ 1 + +/* Define if you want Xinerama support */ +/* #undef HAVE_XINERAMA */ + +/* Define if you have libpng */ +#define HAVE_LIBPNG 1 + +/* Define if you have libjpeg */ +#define HAVE_LIBJPEG 1 + +/* The type of your distribution */ +#define DISTRIBUTION Debian + +/* The version of your distribution */ +#define DISTRIBUTION_VERSION 3.0 + diff --git a/config.h.in b/config.h.in new file mode 100644 index 0000000..6cf1360 --- /dev/null +++ b/config.h.in @@ -0,0 +1,53 @@ +/* config.h.in. Generated automatically from configure.in by autoheader 2.13. */ + +/* The number of bytes in a char. */ +#undef SIZEOF_CHAR + +/* The number of bytes in a char *. */ +#undef SIZEOF_CHAR_P + +/* The number of bytes in a int. */ +#undef SIZEOF_INT + +/* The number of bytes in a long. */ +#undef SIZEOF_LONG + +/* Define if you have the res_init function. */ +#undef HAVE_RES_INIT + +/* Name of package */ +#undef PACKAGE + +/* Version number of package */ +#undef VERSION + +/* C++ compiler supports template repository */ +#undef HAVE_TEMPLATE_REPOSITORY + +/* Defines if your system has the crypt function */ +#undef HAVE_CRYPT + +/* Define the real type of socklen_t */ +#undef socklen_t + +/* Compatibility define */ +#undef ksize_t + +/* Define if you have libz */ +#undef HAVE_LIBZ + +/* Define if you want Xinerama support */ +#undef HAVE_XINERAMA + +/* Define if you have libpng */ +#undef HAVE_LIBPNG + +/* Define if you have libjpeg */ +#undef HAVE_LIBJPEG + +/* The type of your distribution */ +#undef DISTRIBUTION + +/* The version of your distribution */ +#undef DISTRIBUTION_VERSION + diff --git a/config.sub b/config.sub new file mode 100755 index 0000000..4ac0c8b --- /dev/null +++ b/config.sub @@ -0,0 +1,1360 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. + +timestamp='2001-03-30' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file 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. + +# Please send patches to <config-patches@gnu.org>. +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to <config-patches@gnu.org>." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +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." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit 0;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | storm-chaos* | os2-emx*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \ + | arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \ + | pyramid | mn10200 | mn10300 | tron | a29k \ + | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ + | hppa64 \ + | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ + | alphaev6[78] \ + | we32k | ns16k | clipper | i370 | sh | sh[34] \ + | powerpc | powerpcle \ + | 1750a | dsp16xx | pdp10 | pdp11 \ + | mips16 | mips64 | mipsel | mips64el \ + | mips64orion | mips64orionel | mipstx39 | mipstx39el \ + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \ + | pj | pjl | h8500) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65) + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i[234567]86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ + | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \ + | arm-* | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \ + | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ + | xmp-* | ymp-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa2.0n-* | hppa64-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ + | alphaev6[78]-* \ + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ + | clipper-* | orion-* \ + | sparclite-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \ + | [cjt]90-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \ + | bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | ymp) + basic_machine=ymp-cray + os=-unicos + ;; + cray2) + basic_machine=cray2-cray + os=-unicos + ;; + [cjt]90) + basic_machine=${basic_machine}-cray + os=-unicos + ;; + crds | unos) + basic_machine=m68k-crds + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppa-next) + os=-nextstep3 + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i[34567]86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i[34567]86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i[34567]86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i[34567]86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mipsel*-linux*) + basic_machine=mipsel-unknown + os=-linux-gnu + ;; + mips*-linux*) + basic_machine=mips-unknown + os=-linux-gnu + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium | p5 | k5 | k6 | nexgen) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon) + basic_machine=i686-pc + ;; + pentiumii | pentium2) + basic_machine=i686-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-*) + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-*) + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc) basic_machine=powerpc-unknown + ;; + ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle | ppc-le | powerpc-little) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=t3e-cray + os=-unicos + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + xmp) + basic_machine=xmp-cray + os=-unicos + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + mips) + if [ x$os = x-linux-gnu ]; then + basic_machine=mips-unknown + else + basic_machine=mips-mips + fi + ;; + romp) + basic_machine=romp-ibm + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp10) + # there are many clones, so DEC is not a safe bet + basic_machine=pdp10-unknown + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh3 | sh4) + basic_machine=sh-unknown + ;; + sparc | sparcv9) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -svr4*) + os=-sysv4 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -ns2 ) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; + -xenix) + os=-xenix + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-be) + os=-beos + ;; + *-ibm) + os=-aix + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next ) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxsim* | -vxworks*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os +exit 0 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/configure b/configure new file mode 100755 index 0000000..775fe7b --- /dev/null +++ b/configure @@ -0,0 +1,8133 @@ +#! /bin/sh + +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.13 +# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: +ac_default_prefix=${KDEDIR:-/usr/local/kde} +ac_help="$ac_help + --disable-fast-perl disable fast Makefile generation (needs perl)" +ac_help="$ac_help + --enable-debug enables debug symbols [default=no]" +ac_help="$ac_help + --disable-debug disables debug output and debug symbols [default=no]" +ac_help="$ac_help + --enable-strict compiles with strict compiler options (may not work!)" +ac_help="$ac_help + --enable-profile creates profiling infos [default=no]" +ac_help="$ac_help + --enable-final build size optimized apps (experimental - needs lots of memory)" +ac_help="$ac_help + --disable-closure don't delay template instantiation" +ac_help="$ac_help + --enable-shared[=PKGS] build shared libraries [default=no]" +ac_help="$ac_help + --enable-static[=PKGS] build static libraries [default=yes]" +ac_help="$ac_help + --enable-fast-install[=PKGS] optimize for fast installation [default=yes]" +ac_help="$ac_help + --with-gnu-ld assume the C compiler uses GNU ld [default=no]" +ac_help="$ac_help + --disable-libtool-lock avoid locking (might break parallel builds)" +ac_help="$ac_help + --with-pic try to use only PIC/non-PIC objects [default=use both]" +ac_help="$ac_help + --enable-objprelink prelink apps using objprelink (experimental [only tested on linux/386])" +ac_help="$ac_help + --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer" +ac_help="$ac_help + --with-xinerama enable support for Xinerama " +ac_help="$ac_help + --enable-mt link to threaded Qt (experimental)" +ac_help="$ac_help + --with-extra-includes=DIR + adds non standard include paths" +ac_help="$ac_help + --with-extra-libs=DIR adds non standard library paths" +ac_help="$ac_help + --with-qt-dir=DIR where the root of Qt is installed " +ac_help="$ac_help + --with-qt-includes=DIR where the Qt includes are. " +ac_help="$ac_help + --with-qt-libraries=DIR where the Qt library is installed." +ac_help="$ac_help + --disable-rpath do not use the rpath feature of ld" +ac_help="$ac_help + --disable-path-check don't try to find out, where to install" +ac_help="$ac_help + --enable-static-linking use static linking" +ac_help="$ac_help + --with-sword-dir=DIR Patch where Sword is being installed (default=/usr) " +ac_help="$ac_help + --enable-static-sword Link to the static Sword library" +ac_help="$ac_help + --with-distribution=TYPE The name of your *NIX distribution, e.g. SuSE [auto] " +ac_help="$ac_help + --with-distribution-version=VERSION Version of your *NIX distribution, e.g. 7.2 [auto] " +ac_help="$ac_help + --with-rpm-prefix=DIR The directory which should be used as PREFIX + in the RPM spec file [auto] " +ac_help="$ac_help + --with-rpm-group=DIR The group which will be used for the RPM system [auto] " + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE +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' + +# Initialize some other variables. +subdirs= +MFLAGS= MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} +# Maximum number of lines to put in a shell here document. +ac_max_here_lines=12 + +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 + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # 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 ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build="$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" ;; + + -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ + | --da=*) + datadir="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) 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) + # 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 << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [same as prefix] + --bindir=DIR user executables in DIR [EPREFIX/bin] + --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] + --libexecdir=DIR program executables in DIR [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data in DIR + [PREFIX/share] + --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data in DIR + [PREFIX/com] + --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] + --libdir=DIR object code libraries in DIR [EPREFIX/lib] + --includedir=DIR C header files in DIR [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] + --infodir=DIR info documentation in DIR [PREFIX/info] + --mandir=DIR man documentation in DIR [PREFIX/man] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --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 +EOF + cat << EOF +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +EOF + if test -n "$ac_help"; then + echo "--enable and --with options recognized:$ac_help" + fi + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$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) + 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 ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.13" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + 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 "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 6 checking for... messages and results +# 5 compiler messages saved in config.log +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>./config.log + +echo "\ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. +" 1>&5 + +# Strip out --no-create and --no-recursion so they do not pile up. +# Also quote any args containing shell metacharacters. +ac_configure_args= +for ac_arg +do + case "$ac_arg" in + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) ;; + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) ac_configure_args="$ac_configure_args $ac_arg" ;; + esac +done + +# NLS nuisances. +# Only set these to C if already set. These must not be set unconditionally +# because not all systems understand e.g. LANG=C (notably SCO). +# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! +# Non-C LC_CTYPE values break the ctype check. +if test "${LANG+set}" = set; then LANG=C; export LANG; fi +if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi +if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi + +# 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 + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=acinclude.m4 + +# 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_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + 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 "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# 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 "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_exeext= +ac_objext=o +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + +ac_aux_dir= +for ac_dir in admin $srcdir/admin; 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 + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in admin $srcdir/admin" 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + + +unset CDPATH + + +# Do some error checking and defaulting for the host and target type. +# The inputs are: +# configure --host=HOST --target=TARGET --build=BUILD NONOPT +# +# The rules are: +# 1. You are not allowed to specify --host, --target, and nonopt at the +# same time. +# 2. Host defaults to nonopt. +# 3. If nonopt is not specified, then host defaults to the current host, +# as determined by config.guess. +# 4. Target and build default to nonopt. +# 5. If nonopt is not specified, then target and build default to host. + +# The aliases save the names the user supplied, while $host etc. +# will get canonicalized. +case $host---$target---$nonopt in +NONE---*---* | *---NONE---* | *---*---NONE) ;; +*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; +esac + + +# Make sure we can run config.sub. +if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : +else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } +fi + +echo $ac_n "checking host system type""... $ac_c" 1>&6 +echo "configure:641: checking host system type" >&5 + +host_alias=$host +case "$host_alias" in +NONE) + case $nonopt in + NONE) + if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : + else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } + fi ;; + *) host_alias=$nonopt ;; + esac ;; +esac + +host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$host" 1>&6 + +echo $ac_n "checking target system type""... $ac_c" 1>&6 +echo "configure:662: checking target system type" >&5 + +target_alias=$target +case "$target_alias" in +NONE) + case $nonopt in + NONE) target_alias=$host_alias ;; + *) target_alias=$nonopt ;; + esac ;; +esac + +target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` +target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$target" 1>&6 + +echo $ac_n "checking build system type""... $ac_c" 1>&6 +echo "configure:680: checking build system type" >&5 + +build_alias=$build +case "$build_alias" in +NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; +esac + +build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` +build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$build" 1>&6 + +test "$host_alias" != "$target_alias" && + test "$program_prefix$program_suffix$program_transform_name" = \ + NONENONEs,x,x, && + program_prefix=${target_alias}- + +if test "$program_transform_name" = s,x,x,; then + program_transform_name= +else + # Double any \ or $. echo might interpret backslashes. + cat <<\EOF_SED > conftestsed +s,\\,\\\\,g; s,\$,$$,g +EOF_SED + program_transform_name="`echo $program_transform_name|sed -f conftestsed`" + rm -f conftestsed +fi +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" + +# sed with no file args requires a program. +test "$program_transform_name" = "" && program_transform_name="s,x,x," + + + + + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + # 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 +# 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" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:739: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/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 + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +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 "$ac_t""$INSTALL" 1>&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_PROGRAM}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + echo $ac_n "checking for -p flag to install""... $ac_c" 1>&6 +echo "configure:796: checking for -p flag to install" >&5 + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + echo "$ac_t""$ac_res" 1>&6 + fi + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi + +echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 +echo "configure:819: checking whether build environment is sane" >&5 +# Just in case +sleep 1 +echo timestamp > conftestfile +# 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 conftestfile 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "$*" != "X $srcdir/configure conftestfile" \ + && test "$*" != "X conftestfile $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 "configure: error: ls -t appears to fail. Make sure there is not a broken +alias in your environment" 1>&2; exit 1; } + fi + + test "$2" = conftestfile + ) +then + # Ok. + : +else + { echo "configure: error: newly created file is older than distributed files! +Check your system clock" 1>&2; exit 1; } +fi +rm -f conftest* +echo "$ac_t""yes" 1>&6 +echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 +echo "configure:857: checking whether ${MAKE-make} sets \${MAKE}" >&5 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftestmake <<\EOF +all: + @echo 'ac_maketemp="${MAKE}"' +EOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +eval `${MAKE-make} -f conftestmake 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 conftestmake +fi +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then + echo "$ac_t""yes" 1>&6 + SET_MAKE= +else + echo "$ac_t""no" 1>&6 + SET_MAKE="MAKE=${MAKE-make}" +fi + + +PACKAGE=bibletime + +VERSION=1.1 + +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } +fi +cat >> confdefs.h <<EOF +#define PACKAGE "$PACKAGE" +EOF + +cat >> confdefs.h <<EOF +#define VERSION "$VERSION" +EOF + + + +missing_dir=`cd $ac_aux_dir && pwd` +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:903: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:916: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:929: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:942: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:955: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi + + + + unset CDPATH + + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix $prefix" + fi + + # Check whether --enable-fast-perl or --disable-fast-perl was given. +if test "${enable_fast_perl+set}" = set; then + enableval="$enable_fast_perl" + with_fast_perl=$enableval +else + with_fast_perl=yes +fi + + + + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + + + + + + + + + # Check whether --enable-debug or --disable-debug was given. +if test "${enable_debug+set}" = set; then + enableval="$enable_debug" + + if test $enableval = "no"; then + kde_use_debug_code="no" + kde_use_debug_define=yes + else + kde_use_debug_code="yes" + kde_use_debug_define=no + fi + +else + kde_use_debug_code="no" + kde_use_debug_define=no + +fi + + + # Check whether --enable-dummyoption or --disable-dummyoption was given. +if test "${enable_dummyoption+set}" = set; then + enableval="$enable_dummyoption" + : +fi + + + # Check whether --enable-strict or --disable-strict was given. +if test "${enable_strict+set}" = set; then + enableval="$enable_strict" + + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + +else + kde_use_strict_options="no" +fi + + + # Check whether --enable-profile or --disable-profile was given. +if test "${enable_profile+set}" = set; then + enableval="$enable_profile" + kde_use_profiling=$enableval +else + kde_use_profiling="no" + +fi + + + CFLAGS=" $CFLAGS" + + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1061: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1091: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_prog_rejected=no + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + break + fi + done + IFS="$ac_save_ifs" +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 $# -gt 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 + set dummy "$ac_dir/$ac_word" "$@" + shift + ac_cv_prog_CC="$@" + fi +fi +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + if test -z "$CC"; then + case "`uname -s`" in + *win32* | *WIN32*) + # Extract the first word of "cl", so it can be a program name with args. +set dummy cl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1142: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="cl" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + fi + test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } +fi + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1174: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext << EOF + +#line 1185 "configure" +#include "confdefs.h" + +main(){return(0);} +EOF +if { (eval echo configure:1190: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1216: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:1221: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <<EOF +#ifdef __GNUC__ + yes; +#endif +EOF +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1230: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes +else + GCC= +fi + +ac_test_CFLAGS="${CFLAGS+set}" +ac_save_CFLAGS="$CFLAGS" +CFLAGS= +echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1249: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&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 + + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CFLAGS="-g -O2 $CFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + ;; + esac + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + for ac_prog in $CCC c++ g++ gcc CC cxx cc++ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1314: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CXX="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CXX="$ac_cv_prog_CXX" +if test -n "$CXX"; then + echo "$ac_t""$CXX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CXX" && break +done +test -n "$CXX" || CXX="gcc" + + +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1346: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 + + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + +cat > conftest.$ac_ext << EOF + +#line 1362 "configure" +#include "confdefs.h" + +int main(){return(0);} +EOF +if { (eval echo configure:1367: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cxx_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cxx_cross=no + else + ac_cv_prog_cxx_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cxx_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6 +if test $ac_cv_prog_cxx_works = no; then + { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1393: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 +cross_compiling=$ac_cv_prog_cxx_cross + +echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 +echo "configure:1398: checking whether we are using GNU C++" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.C <<EOF +#ifdef __GNUC__ + yes; +#endif +EOF +if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1407: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gxx=yes +else + ac_cv_prog_gxx=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gxx" 1>&6 + +if test $ac_cv_prog_gxx = yes; then + GXX=yes +else + GXX= +fi + +ac_test_CXXFLAGS="${CXXFLAGS+set}" +ac_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS= +echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 +echo "configure:1426: checking whether ${CXX-g++} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.cc +if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes +else + ac_cv_prog_cxx_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6 +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi + + + if test "$GXX" = "yes"; then + if test "$kde_use_debug_code" = "yes"; then + CXXFLAGS="-g -O2 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS" + + +echo $ac_n "checking whether $CXX supports -Wno-long-long""... $ac_c" 1>&6 +echo "configure:1464: checking whether $CXX supports -Wno-long-long" >&5 +kde_cache=`echo Wno-long-long | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -Wno-long-long -c conftest.cc 2>&1`"; then + if test -z "`$CXX -Wno-long-long -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-Wno-long-long $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -Wnon-virtual-dtor""... $ac_c" 1>&6 +echo "configure:1493: checking whether $CXX supports -Wnon-virtual-dtor" >&5 +kde_cache=`echo Wnon-virtual-dtor | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -Wnon-virtual-dtor -c conftest.cc 2>&1`"; then + if test -z "`$CXX -Wnon-virtual-dtor -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fno-builtin""... $ac_c" 1>&6 +echo "configure:1522: checking whether $CXX supports -fno-builtin" >&5 +kde_cache=`echo fno-builtin | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-builtin -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-builtin -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="-fno-builtin $CXXFLAGS" +else + echo "$ac_t""no" 1>&6 + : + +fi + + + case $host in *-*-linux-gnu) + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion $CXXFLAGS" + ;; + esac + + if test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align $CXXFLAGS" + fi + + if test "$kde_very_strict" = "yes"; then + CXXFLAGS="-Wold-style-cast -Wredundant-decls -Wconversion $CXXFLAGS" + fi + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + +echo $ac_n "checking whether $CXX supports -pg""... $ac_c" 1>&6 +echo "configure:1574: checking whether $CXX supports -pg" >&5 +kde_cache=`echo pg | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -pg -c conftest.cc 2>&1`"; then + if test -z "`$CXX -pg -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + fi + + +echo $ac_n "checking whether $CXX supports -fno-exceptions""... $ac_c" 1>&6 +echo "configure:1608: checking whether $CXX supports -fno-exceptions" >&5 +kde_cache=`echo fno-exceptions | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-exceptions -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-exceptions -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="$CXXFLAGS -fno-exceptions" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fno-check-new""... $ac_c" 1>&6 +echo "configure:1637: checking whether $CXX supports -fno-check-new" >&5 +kde_cache=`echo fno-check-new | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fno-check-new -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fno-check-new -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + CXXFLAGS="$CXXFLAGS -fno-check-new" +else + echo "$ac_t""no" 1>&6 + : + +fi + + +echo $ac_n "checking whether $CXX supports -fexceptions""... $ac_c" 1>&6 +echo "configure:1666: checking whether $CXX supports -fexceptions" >&5 +kde_cache=`echo fexceptions | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -fexceptions -c conftest.cc 2>&1`"; then + if test -z "`$CXX -fexceptions -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + USE_EXCEPTIONS="-fexceptions" +else + echo "$ac_t""no" 1>&6 + : + USE_EXCEPTIONS= +fi + + + USE_RTTI= + + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + { echo "configure: error: You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so" 1>&2; exit 1; } + fi + fi + ;; + esac + + __val=$CXX + __forbid=" -fno-rtti -rpath " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) echo "configure: warning: found forbidden $i in CXX, removing it" 1>&2 ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + CXX=$__new + fi + + __val=$CXXFLAGS + __forbid=" -fno-rtti -rpath " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) echo "configure: warning: found forbidden $i in CXXFLAGS, removing it" 1>&2 ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + CXXFLAGS=$__new + fi + + + + echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6 +echo "configure:1750: checking how to run the C++ preprocessor" >&5 +if test -z "$CXXCPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + CXXCPP="${CXX-g++} -E" + cat > conftest.$ac_ext <<EOF +#line 1766 "configure" +#include "confdefs.h" +#include <stdlib.h> +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:1771: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CXXCPP=/lib/cpp +fi +rm -f conftest* + ac_cv_prog_CXXCPP="$CXXCPP" +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross +fi +fi +CXXCPP="$ac_cv_prog_CXXCPP" +echo "$ac_t""$CXXCPP" 1>&6 + + + # the following is to allow programs, that are known to + # have problems when compiled with -O2 + if test -n "$CXXFLAGS"; then + kde_safe_IFS=$IFS + IFS=" " + NOOPT_CXXFLAGS="" + for i in $CXXFLAGS; do + case $i in + -O*) + ;; + *) + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" + ;; + esac + done + IFS=$kde_safe_IFS + fi + + + + + # Check whether --enable-final or --disable-final was given. +if test "${enable_final+set}" = set; then + enableval="$enable_final" + kde_use_final=$enableval +else + kde_use_final=no +fi + + + + REPO="" + NOREPO="" + + +echo $ac_n "checking whether $CXX supports -frepo""... $ac_c" 1>&6 +echo "configure:1832: checking whether $CXX supports -frepo" >&5 +kde_cache=`echo frepo | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -frepo -c conftest.cc 2>&1`"; then + if test -z "`$CXX -frepo -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + REPO="-frepo" + NOREPO="-fno-repo" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + + if test -z "$REPO"; then + +echo $ac_n "checking whether $CXX supports -instances=explicit""... $ac_c" 1>&6 +echo "configure:1866: checking whether $CXX supports -instances=explicit" >&5 +kde_cache=`echo instances=explicit | sed 'y%.=/+-%___p_%'` +if eval "test \"`echo '$''{'kde_cv_prog_cxx_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +echo 'int main() { return 0; }' >conftest.cc +eval "kde_cv_prog_cxx_$kde_cache=no" +if test -z "`$CXX -instances=explicit -c conftest.cc 2>&1`"; then + if test -z "`$CXX -instances=explicit -o conftest conftest.o 2>&1`"; then + eval "kde_cv_prog_cxx_$kde_cache=yes" + fi +fi +rm -f conftest* + +fi + +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : + + REPO="-instances=explicit" + NOREPO="-instances=extern" + +else + echo "$ac_t""no" 1>&6 + : + +fi + + fi + + if test -n "$REPO"; then + cat >> confdefs.h <<EOF +#define HAVE_TEMPLATE_REPOSITORY 1 +EOF + + + fi + + + + + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + + + + # Check whether --enable-closure or --disable-closure was given. +if test "${enable_closure+set}" = set; then + enableval="$enable_closure" + kde_use_closure=$enableval +else + kde_use_closure=yes +fi + + + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + fi + + + + + + + KDE_CXXFLAGS= + + +# Check whether --enable-shared or --disable-shared was given. +if test "${enable_shared+set}" = set; then + enableval="$enable_shared" + p=${PACKAGE-default} +case $enableval in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac +else + enable_shared=no +fi + +# Check whether --enable-static or --disable-static was given. +if test "${enable_static+set}" = set; then + enableval="$enable_static" + p=${PACKAGE-default} +case $enableval in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac +else + enable_static=yes +fi + +# Check whether --enable-fast-install or --disable-fast-install was given. +if test "${enable_fast_install+set}" = set; then + enableval="$enable_fast_install" + p=${PACKAGE-default} +case $enableval in +yes) enable_fast_install=yes ;; +no) enable_fast_install=no ;; +*) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac +else + enable_fast_install=yes +fi + +# Check whether --with-gnu-ld or --without-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then + withval="$with_gnu_ld" + test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 +echo "configure:2026: checking for ld used by GCC" >&5 + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | [A-Za-z]:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 +echo "configure:2056: checking for GNU ld" >&5 +else + echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 +echo "configure:2059: checking for non-GNU ld" >&5 +fi +if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi +fi + +LD="$lt_cv_path_LD" +if test -n "$LD"; then + echo "$ac_t""$LD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi +test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } +echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 +echo "configure:2094: checking if the linker ($LD) is GNU ld" >&5 +if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then + lt_cv_prog_gnu_ld=yes +else + lt_cv_prog_gnu_ld=no +fi +fi + +echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6 +with_gnu_ld=$lt_cv_prog_gnu_ld + + +echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 +echo "configure:2111: checking for $LD option to reload object files" >&5 +if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + lt_cv_ld_reload_flag='-r' +fi + +echo "$ac_t""$lt_cv_ld_reload_flag" 1>&6 +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" + +echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 +echo "configure:2123: checking for BSD-compatible nm" >&5 +if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/${ac_tool_prefix}nm + if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then + lt_cv_path_NM="$tmp_nm -B" + break + elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + lt_cv_path_NM="$tmp_nm -p" + break + else + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + fi + fi + done + IFS="$ac_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi +fi + +NM="$lt_cv_path_NM" +echo "$ac_t""$NM" 1>&6 + +echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 +echo "configure:2161: checking whether ln -s works" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftestdata +if ln -s X conftestdata 2>/dev/null +then + rm -f conftestdata + ac_cv_prog_LN_S="ln -s" +else + ac_cv_prog_LN_S=ln +fi +fi +LN_S="$ac_cv_prog_LN_S" +if test "$ac_cv_prog_LN_S" = "ln -s"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 +echo "configure:2182: checking how to recognise dependant libraries" >&5 +if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw* |pw32*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' + lt_cv_file_magic_cmd='/usr/bin/file -L' + case "$host_os" in + rhapsody* | darwin1.012) + lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' + ;; + *) # Darwin 1.3 on + lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' + ;; + esac + ;; + +freebsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20*|hpux11*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + +irix5* | irix6*) + case $host_os in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case $host_cpu in + alpha* | i*86 | powerpc* | sparc* | ia64* | s390* | m68k* | arm* | mips* | hppa* | sh* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library' + else + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' + fi + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + +openbsd* ) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case "$host_cpu" in + i*86 ) + lt_cv_deplibs_check_method='file_magic OpenBSD/i[3-9]86 demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +newsos6) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac + +fi + +echo "$ac_t""$lt_cv_deplibs_check_method" 1>&6 +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method + +if test $host != $build; then + ac_tool_prefix=${host_alias}- +else + ac_tool_prefix= +fi + +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 +echo "configure:2370: checking for ${ac_tool_prefix}file" >&5 +if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="/usr/bin:$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/${ac_tool_prefix}file; then + lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <<EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + echo "$ac_t""$MAGIC_CMD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + echo $ac_n "checking for file""... $ac_c" 1>&6 +echo "configure:2432: checking for file" >&5 +if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case $MAGIC_CMD in + /*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; + ?:/*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC_CMD="$MAGIC_CMD" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="/usr/bin:$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/file; then + lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <<EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC_CMD="$ac_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + echo "$ac_t""$MAGIC_CMD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2503: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +if test -z "$ac_cv_prog_RANLIB"; then +if test -n "$ac_tool_prefix"; then + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2535: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +else + RANLIB=":" +fi +fi + +# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2570: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +STRIP="$ac_cv_prog_STRIP" +if test -n "$STRIP"; then + echo "$ac_t""$STRIP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +if test -z "$ac_cv_prog_STRIP"; then +if test -n "$ac_tool_prefix"; then + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2602: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_STRIP="strip" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_STRIP" && ac_cv_prog_STRIP=":" +fi +fi +STRIP="$ac_cv_prog_STRIP" +if test -n "$STRIP"; then + echo "$ac_t""$STRIP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +else + STRIP=":" +fi +fi + + +# Check for any special flags to pass to ltconfig. +libtool_flags="--cache-file=$cache_file" +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" +test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" +libtool_flags="$libtool_flags --enable-dlopen" + +# Check whether --enable-libtool-lock or --disable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then + enableval="$enable_libtool_lock" + : +fi + +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" + +# Check whether --with-pic or --without-pic was given. +if test "${with_pic+set}" = set; then + withval="$with_pic" + pic_mode="$withval" +else + pic_mode=default +fi + +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +*-*-irix6*) + # Find out which ABI we are using. + echo '#line 2669 "configure"' > conftest.$ac_ext + if { (eval echo configure:2670: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 +echo "configure:2691: checking whether the C compiler needs -belf" >&5 +if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + cat > conftest.$ac_ext <<EOF +#line 2704 "configure" +#include "confdefs.h" + +int main() { + +; return 0; } +EOF +if { (eval echo configure:2711: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + lt_cv_cc_needs_belf=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + lt_cv_cc_needs_belf=no +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +fi + +echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6 + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + + +esac + + +echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 +echo "configure:2742: checking for Cygwin environment" >&5 +if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 2747 "configure" +#include "confdefs.h" + +int main() { + +#ifndef __CYGWIN__ +#define __CYGWIN__ __CYGWIN32__ +#endif +return __CYGWIN__; +; return 0; } +EOF +if { (eval echo configure:2758: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_cygwin=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_cygwin=no +fi +rm -f conftest* +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_cygwin" 1>&6 +CYGWIN= +test "$ac_cv_cygwin" = yes && CYGWIN=yes +echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 +echo "configure:2775: checking for mingw32 environment" >&5 +if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 2780 "configure" +#include "confdefs.h" + +int main() { +return __MINGW32__; +; return 0; } +EOF +if { (eval echo configure:2787: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_mingw32=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_mingw32=no +fi +rm -f conftest* +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_mingw32" 1>&6 +MINGW32= +test "$ac_cv_mingw32" = yes && MINGW32=yes + +# Save cache, so that ltconfig can load it +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + + +# Actually configure libtool. ac_aux_dir is where install-sh is found. +AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ +|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; } + +# Reload cache, that may have been modified by ltconfig +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log + + + +LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" +lt_save_CC="$CC" +lt_save_CFLAGS="$CFLAGS" +AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" \ +file_magic_cmd="$file_magic_cmd" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ +--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ +|| { echo "configure: error: libtool tag configuration failed" 1>&2; exit 1; } +CC="$lt_save_CC" +CFLAGS="$lt_save_CFLAGS" + +# Redirect the config.log output again, so that the ltconfig log is not +# clobbered by the next message. +exec 5>>./config.log + + + + + + + + + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking for object suffix""... $ac_c" 1>&6 +echo "configure:2922: checking for object suffix" >&5 +if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftest* +echo 'int i = 1;' > conftest.$ac_ext +if { (eval echo configure:2928: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + for ac_file in conftest.*; do + case $ac_file in + *.c) ;; + *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;; + esac + done +else + { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; } +fi +rm -f conftest* +fi + +echo "$ac_t""$ac_cv_objext" 1>&6 +OBJEXT=$ac_cv_objext +ac_objext=$ac_cv_objext + + + +echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 +echo "configure:2948: checking for executable suffix" >&5 +if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$CYGWIN" = yes || test "$MINGW32" = yes; then + ac_cv_exeext=.exe +else + rm -f conftest* + echo 'int main () { return 0; }' > conftest.$ac_ext + ac_cv_exeext= + if { (eval echo configure:2958: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + for file in conftest.*; do + case $file in + *.$ac_ext | *.c | *.o | *.obj) ;; + *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; + esac + done + else + { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; } + fi + rm -f conftest* + test x"${ac_cv_exeext}" = x && ac_cv_exeext=no +fi +fi + +EXEEXT="" +test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext} +echo "$ac_t""${ac_cv_exeext}" 1>&6 +ac_exeext=$EXEEXT + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + + + + + + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH)" + + +# Check whether --enable-objprelink or --disable-objprelink was given. +if test "${enable_objprelink+set}" = set; then + enableval="$enable_objprelink" + kde_use_objprelink=$enableval +else + kde_use_objprelink=no +fi + + if test "x$kde_use_objprelink" = "xyes"; then + + + echo $ac_n "checking for objprelink""... $ac_c" 1>&6 +echo "configure:3010: checking for objprelink" >&5 + if test -n "$OBJPRELINK"; then + kde_cv_path="$OBJPRELINK"; + else + kde_cache=`echo objprelink | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/objprelink"; then + if test -n "" + then + evalstr="$dir/objprelink 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/objprelink" + break + fi + else + kde_cv_path="$dir/objprelink" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + kde_use_objprelink=no + else + echo "$ac_t""$kde_cv_path" 1>&6 + OBJPRELINK=$kde_cv_path + + fi + + + if test "x$kde_use_objprelink" = "xyes"; then + echo $ac_n "checking Patching libtool to run objprelink.""... $ac_c" 1>&6 +echo "configure:3067: checking Patching libtool to run objprelink." >&5 + mv libtool libtool.orig + cat > libtool <<\EOF +#! /bin/sh +for n ; do case $n in + *.o) test -r $n && echo objprelink $n && objprelink $n ;; + *.lo) m=`basename $n .lo`".o" && test -r $m && echo objprelink $m && objprelink $m + m=".libs/$m" && test -r $m && echo objprelink $m && objprelink $m ;; +esac; done +EOF + cat >> libtool libtool.orig + rm libtool.orig + chmod a+x libtool + echo "$ac_t""done" 1>&6 + fi + fi + + +echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 +echo "configure:3086: checking whether to enable maintainer-specific portions of Makefiles" >&5 + # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then + enableval="$enable_maintainer_mode" + USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no +fi + + echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 + + +if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= +fi + MAINT=$MAINTAINER_MODE_TRUE + + + + + + # Extract the first word of "msgfmt", so it can be a program name with args. +set dummy msgfmt; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3114: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&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 -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"; 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="msgfmt" + ;; +esac +fi +MSGFMT="$ac_cv_path_MSGFMT" +if test -n "$MSGFMT"; then + echo "$ac_t""$MSGFMT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + # Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3148: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$GMSGFMT" in + /*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_GMSGFMT="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" + ;; +esac +fi +GMSGFMT="$ac_cv_path_GMSGFMT" +if test -n "$GMSGFMT"; then + echo "$ac_t""$GMSGFMT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + echo "$ac_t""found msgfmt program is not GNU msgfmt; ignore it" 1>&6 + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + + + + # Extract the first word of "xgettext", so it can be a program name with args. +set dummy xgettext; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:3193: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&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 -n "$XGETTEXT"; then + echo "$ac_t""$XGETTEXT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + + if test "$XGETTEXT" != ":"; then + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + echo "$ac_t""found xgettext programs is not GNU xgettext; ignore it" 1>&6 + XGETTEXT=":" + fi + fi + + + + +echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 +echo "configure:3238: checking how to run the C preprocessor" >&5 +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # This must be in double quotes, not single quotes, because CPP may get + # substituted into the Makefile and "${CC-cc}" will confuse make. + CPP="${CC-cc} -E" + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext <<EOF +#line 3253 "configure" +#include "confdefs.h" +#include <assert.h> +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3259: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext <<EOF +#line 3270 "configure" +#include "confdefs.h" +#include <assert.h> +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3276: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -nologo -E" + cat > conftest.$ac_ext <<EOF +#line 3287 "configure" +#include "confdefs.h" +#include <assert.h> +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:3293: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP=/lib/cpp +fi +rm -f conftest* +fi +rm -f conftest* +fi +rm -f conftest* + ac_cv_prog_CPP="$CPP" +fi + CPP="$ac_cv_prog_CPP" +else + ac_cv_prog_CPP="$CPP" +fi +echo "$ac_t""$CPP" 1>&6 + + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + echo $ac_n "checking for main in -lutil""... $ac_c" 1>&6 +echo "configure:3326: checking for main in -lutil" >&5 +ac_lib_var=`echo util'_'main | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lutil $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3334 "configure" +#include "confdefs.h" + +int main() { +main() +; return 0; } +EOF +if { (eval echo configure:3341: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBUTIL="-lutil" +else + echo "$ac_t""no" 1>&6 +fi + + echo $ac_n "checking for main in -lcompat""... $ac_c" 1>&6 +echo "configure:3362: checking for main in -lcompat" >&5 +ac_lib_var=`echo compat'_'main | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lcompat $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3370 "configure" +#include "confdefs.h" + +int main() { +main() +; return 0; } +EOF +if { (eval echo configure:3377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBCOMPAT="-lcompat" +else + echo "$ac_t""no" 1>&6 +fi + + kde_have_crypt= + echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 +echo "configure:3399: checking for crypt in -lcrypt" >&5 +ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lcrypt $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3407 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char crypt(); + +int main() { +crypt() +; return 0; } +EOF +if { (eval echo configure:3418: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBCRYPT="-lcrypt"; kde_have_crypt=yes +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for crypt in -lc""... $ac_c" 1>&6 +echo "configure:3437: checking for crypt in -lc" >&5 +ac_lib_var=`echo c'_'crypt | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lc $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3445 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char crypt(); + +int main() { +crypt() +; return 0; } +EOF +if { (eval echo configure:3456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + kde_have_crypt=yes +else + echo "$ac_t""no" 1>&6 + + echo "configure: warning: you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support" 1>&2 + kde_have_crypt=no + +fi + +fi + + + if test $kde_have_crypt = yes; then + cat >> confdefs.h <<EOF +#define HAVE_CRYPT 1 +EOF + + fi + + echo $ac_n "checking for socklen_t""... $ac_c" 1>&6 +echo "configure:3493: checking for socklen_t" >&5 + if eval "test \"`echo '$''{'ac_cv_socklen_t'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + cat > conftest.$ac_ext <<EOF +#line 3510 "configure" +#include "confdefs.h" + +#include <sys/types.h> +#include <sys/socket.h> + +int main() { + +socklen_t a=0; +getsockname(0,(struct sockaddr*)0, &a); + +; return 0; } +EOF +if { (eval echo configure:3523: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_socklen_t=socklen_t +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + cat > conftest.$ac_ext <<EOF +#line 3531 "configure" +#include "confdefs.h" + +#include <sys/types.h> +#include <sys/socket.h> + +int main() { + +int a=0; +getsockname(0,(struct sockaddr*)0, &a); + +; return 0; } +EOF +if { (eval echo configure:3544: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + ac_cv_socklen_t=int +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_socklen_t=size_t + +fi +rm -f conftest* + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + +fi + + + echo "$ac_t""$ac_cv_socklen_t" 1>&6 + if test "$ac_cv_socklen_t" != "socklen_t"; then + cat >> confdefs.h <<EOF +#define socklen_t $ac_cv_socklen_t +EOF + + fi + cat >> confdefs.h <<EOF +#define ksize_t socklen_t +EOF + + + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6 +echo "configure:3590: checking for dnet_ntoa in -ldnet" >&5 +ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldnet $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3598 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char dnet_ntoa(); + +int main() { +dnet_ntoa() +; return 0; } +EOF +if { (eval echo configure:3609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6 +echo "configure:3631: checking for dnet_ntoa in -ldnet_stub" >&5 +ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldnet_stub $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3639 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char dnet_ntoa(); + +int main() { +dnet_ntoa() +; return 0; } +EOF +if { (eval echo configure:3650: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" +else + echo "$ac_t""no" 1>&6 +fi + + fi + echo $ac_n "checking for inet_ntoa""... $ac_c" 1>&6 +echo "configure:3672: checking for inet_ntoa" >&5 +if eval "test \"`echo '$''{'ac_cv_func_inet_ntoa'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 3677 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char inet_ntoa(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char inet_ntoa(); + +int main() { + +/* 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_inet_ntoa) || defined (__stub___inet_ntoa) +choke me +#else +inet_ntoa(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3700: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_inet_ntoa=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_inet_ntoa=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'inet_ntoa`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_inet_ntoa = no; then + echo $ac_n "checking for inet_ntoa in -lnsl""... $ac_c" 1>&6 +echo "configure:3721: checking for inet_ntoa in -lnsl" >&5 +ac_lib_var=`echo nsl'_'inet_ntoa | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lnsl $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3729 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char inet_ntoa(); + +int main() { +inet_ntoa() +; return 0; } +EOF +if { (eval echo configure:3740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" +else + echo "$ac_t""no" 1>&6 +fi + + fi + echo $ac_n "checking for connect""... $ac_c" 1>&6 +echo "configure:3762: checking for connect" >&5 +if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 3767 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char connect(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char connect(); + +int main() { + +/* 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_connect) || defined (__stub___connect) +choke me +#else +connect(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_connect=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_connect=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'connect`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_connect = no; then + echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6 +echo "configure:3811: checking for connect in -lsocket" >&5 +ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lsocket $X_EXTRA_LIBS $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3819 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char connect(); + +int main() { +connect() +; return 0; } +EOF +if { (eval echo configure:3830: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" +else + echo "$ac_t""no" 1>&6 +fi + + fi + + echo $ac_n "checking for remove""... $ac_c" 1>&6 +echo "configure:3853: checking for remove" >&5 +if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 3858 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char remove(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char remove(); + +int main() { + +/* 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_remove) || defined (__stub___remove) +choke me +#else +remove(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_remove=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_remove=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'remove`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + + if test $ac_cv_func_remove = no; then + echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6 +echo "configure:3902: checking for remove in -lposix" >&5 +ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lposix $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3910 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char remove(); + +int main() { +remove() +; return 0; } +EOF +if { (eval echo configure:3921: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" +else + echo "$ac_t""no" 1>&6 +fi + + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + echo $ac_n "checking for shmat""... $ac_c" 1>&6 +echo "configure:3945: checking for shmat" >&5 +if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 3950 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char shmat(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char shmat(); + +int main() { + +/* 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_shmat) || defined (__stub___shmat) +choke me +#else +shmat(); +#endif + +; return 0; } +EOF +if { (eval echo configure:3973: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_shmat=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_shmat=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'shmat`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6 +echo "configure:3991: checking for shmat in -lipc" >&5 +ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lipc $LIBS" +cat > conftest.$ac_ext <<EOF +#line 3999 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char shmat(); + +int main() { +shmat() +; return 0; } +EOF +if { (eval echo configure:4010: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" +else + echo "$ac_t""no" 1>&6 +fi + +fi + + + # Solaris 2.6 and others need -lresolv for res_init + for ac_func in res_init +do +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +echo "configure:4037: checking for $ac_func" >&5 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 4042 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* 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(); + +int main() { + +/* 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 +$ac_func(); +#endif + +; return 0; } +EOF +if { (eval echo configure:4065: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_$ac_func=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + cat >> confdefs.h <<EOF +#define $ac_tr_func 1 +EOF + +else + echo "$ac_t""no" 1>&6 +kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + cat > conftest.$ac_ext <<EOF +#line 4089 "configure" +#include "confdefs.h" + +#include <resolv.h> + +int main() { + +res_init(); + +; return 0; } +EOF +if { (eval echo configure:4100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + LIBRESOLV="-lresolv" + X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV" + cat >> confdefs.h <<\EOF +#define HAVE_RES_INIT 1 +EOF + + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 +fi +rm -f conftest* + LIBS=$kde_libs_safe + +fi +done + + + LIBSOCKET="$X_EXTRA_LIBS" + + + + echo $ac_n "checking for killpg in -lucb""... $ac_c" 1>&6 +echo "configure:4125: checking for killpg in -lucb" >&5 +ac_lib_var=`echo ucb'_'killpg | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lucb $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4133 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char killpg(); + +int main() { +killpg() +; return 0; } +EOF +if { (eval echo configure:4144: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBUCB="-lucb" +else + echo "$ac_t""no" 1>&6 +fi + + + case $host in *-*-lynxos* ) + echo $ac_n "checking LynxOS header file wrappers""... $ac_c" 1>&6 +echo "configure:4167: checking LynxOS header file wrappers" >&5 + CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__" + echo "$ac_t""disabled" 1>&6 + echo $ac_n "checking for gethostbyname in -lbsd""... $ac_c" 1>&6 +echo "configure:4171: checking for gethostbyname in -lbsd" >&5 +ac_lib_var=`echo bsd'_'gethostbyname | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lbsd $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4179 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char gethostbyname(); + +int main() { +gethostbyname() +; return 0; } +EOF +if { (eval echo configure:4190: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBSOCKET="-lbsd" +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + + echo $ac_n "checking size of int""... $ac_c" 1>&6 +echo "configure:4213: checking size of int" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_int=4 +else + cat > conftest.$ac_ext <<EOF +#line 4221 "configure" +#include "confdefs.h" +#include <stdio.h> +#include <sys/types.h> +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(int)); + exit(0); +} +EOF +if { (eval echo configure:4233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_int=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_int=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_int" 1>&6 +cat >> confdefs.h <<EOF +#define SIZEOF_INT $ac_cv_sizeof_int +EOF + + echo $ac_n "checking size of long""... $ac_c" 1>&6 +echo "configure:4252: checking size of long" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_long=4 +else + cat > conftest.$ac_ext <<EOF +#line 4260 "configure" +#include "confdefs.h" +#include <stdio.h> +#include <sys/types.h> +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(long)); + exit(0); +} +EOF +if { (eval echo configure:4272: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_long=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_long=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_long" 1>&6 +cat >> confdefs.h <<EOF +#define SIZEOF_LONG $ac_cv_sizeof_long +EOF + + echo $ac_n "checking size of char *""... $ac_c" 1>&6 +echo "configure:4291: checking size of char *" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_char_p'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_char_p=4 +else + cat > conftest.$ac_ext <<EOF +#line 4299 "configure" +#include "confdefs.h" +#include <stdio.h> +#include <sys/types.h> +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(char *)); + exit(0); +} +EOF +if { (eval echo configure:4311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_char_p=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_char_p=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_char_p" 1>&6 +cat >> confdefs.h <<EOF +#define SIZEOF_CHAR_P $ac_cv_sizeof_char_p +EOF + + echo $ac_n "checking size of char""... $ac_c" 1>&6 +echo "configure:4330: checking size of char" >&5 +if eval "test \"`echo '$''{'ac_cv_sizeof_char'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "$cross_compiling" = yes; then + ac_cv_sizeof_char=1 +else + cat > conftest.$ac_ext <<EOF +#line 4338 "configure" +#include "confdefs.h" +#include <stdio.h> +#include <sys/types.h> +main() +{ + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); + fprintf(f, "%d\n", sizeof(char)); + exit(0); +} +EOF +if { (eval echo configure:4350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +then + ac_cv_sizeof_char=`cat conftestval` +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + ac_cv_sizeof_char=0 +fi +rm -fr conftest* +fi + +fi +echo "$ac_t""$ac_cv_sizeof_char" 1>&6 +cat >> confdefs.h <<EOF +#define SIZEOF_CHAR $ac_cv_sizeof_char +EOF + + + +echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 +echo "configure:4371: checking for dlopen in -ldl" >&5 +ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldl $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4379 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char dlopen(); + +int main() { +dlopen() +; return 0; } +EOF +if { (eval echo configure:4390: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + +LIBDL="-ldl" +ac_cv_have_dlfcn=yes + +else + echo "$ac_t""no" 1>&6 +fi + + +echo $ac_n "checking for shl_unload in -ldld""... $ac_c" 1>&6 +echo "configure:4415: checking for shl_unload in -ldld" >&5 +ac_lib_var=`echo dld'_'shl_unload | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4423 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char shl_unload(); + +int main() { +shl_unload() +; return 0; } +EOF +if { (eval echo configure:4434: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + +LIBDL="-ldld" +ac_cv_have_shload=yes + +else + echo "$ac_t""no" 1>&6 +fi + + + + + + +echo $ac_n "checking for extra includes""... $ac_c" 1>&6 +echo "configure:4463: checking for extra includes" >&5 +# Check whether --with-extra-includes or --without-extra-includes was given. +if test "${with_extra_includes+set}" = set; then + withval="$with_extra_includes" + kde_use_extra_includes="$withval" +else + kde_use_extra_includes=NONE + +fi + +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi + + +echo "$ac_t""$kde_use_extra_includes" 1>&6 + +kde_extra_libs= +echo $ac_n "checking for extra libs""... $ac_c" 1>&6 +echo "configure:4494: checking for extra libs" >&5 +# Check whether --with-extra-libs or --without-extra-libs was given. +if test "${with_extra_libs+set}" = set; then + withval="$with_extra_libs" + kde_use_extra_libs=$withval +else + kde_use_extra_libs=NONE + +fi + +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + + + +echo "$ac_t""$kde_use_extra_libs" 1>&6 + + + + +echo $ac_n "checking for libz""... $ac_c" 1>&6 +echo "configure:4528: checking for libz" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_z'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext <<EOF +#line 4545 "configure" +#include "confdefs.h" + +#include<zlib.h> + +int main() { +return (zlibVersion() == ZLIB_VERSION); +; return 0; } +EOF +if { (eval echo configure:4554: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_z='-lz'" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_z=no" +fi +rm -f conftest* +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" + +fi +if test ! "$ac_cv_lib_z" = no; then + cat >> confdefs.h <<EOF +#define HAVE_LIBZ 1 +EOF + + LIBZ="$ac_cv_lib_z" + + echo "$ac_t""$ac_cv_lib_z" 1>&6 +else + { echo "configure: error: not found. Check your installation and look into config.log" 1>&2; exit 1; } + LIBZ="" + +fi + + +echo $ac_n "checking for X""... $ac_c" 1>&6 +echo "configure:4584: checking for X" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +if eval "test \"`echo '$''{'kde_cv_have_x'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + # One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +if test "$ac_x_includes" = NO; then + # Guess where to find include files, by looking for this one X11 .h file. + test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h + + # First, try using that file with no special directory specified. +cat > conftest.$ac_ext <<EOF +#line 4618 "configure" +#include "confdefs.h" +#include <$x_direct_test_include> +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:4623: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + rm -rf conftest* + # We can compile using X headers with no special include directory. +ac_x_includes= +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + # Look for the header file in a standard set of common directories. +# Check X11 before X11Rn because it is often a symlink to the current release. + for ac_dir in \ + /usr/X11/include \ + /usr/X11R6/include \ + /usr/X11R5/include \ + /usr/X11R4/include \ + \ + /usr/include/X11 \ + /usr/include/X11R6 \ + /usr/include/X11R5 \ + /usr/include/X11R4 \ + \ + /usr/local/X11/include \ + /usr/local/X11R6/include \ + /usr/local/X11R5/include \ + /usr/local/X11R4/include \ + \ + /usr/local/include/X11 \ + /usr/local/include/X11R6 \ + /usr/local/include/X11R5 \ + /usr/local/include/X11R4 \ + \ + /usr/X386/include \ + /usr/x386/include \ + /usr/XFree86/include/X11 \ + \ + /usr/include \ + /usr/local/include \ + /usr/unsupported/include \ + /usr/athena/include \ + /usr/local/x11r5/include \ + /usr/lpp/Xamples/include \ + \ + /usr/openwin/include \ + /usr/openwin/share/include \ + ; \ + do + if test -r "$ac_dir/$x_direct_test_include"; then + ac_x_includes=$ac_dir + break + fi + done +fi +rm -f conftest* +fi # $ac_x_includes = NO + +if test "$ac_x_libraries" = NO; then + # Check for the libraries. + + test -z "$x_direct_test_library" && x_direct_test_library=Xt + test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc + + # See if we find them without any special options. + # Don't add to $LIBS permanently. + ac_save_LIBS="$LIBS" + LIBS="-l$x_direct_test_library $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4692 "configure" +#include "confdefs.h" + +int main() { +${x_direct_test_function}() +; return 0; } +EOF +if { (eval echo configure:4699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + LIBS="$ac_save_LIBS" +# We can link X programs with no special library path. +ac_x_libraries= +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + LIBS="$ac_save_LIBS" +# First see if replacing the include by lib works. +# Check X11 before X11Rn because it is often a symlink to the current release. +for ac_dir in `echo "$ac_x_includes" | sed s/include/lib/` \ + /usr/X11/lib \ + /usr/X11R6/lib \ + /usr/X11R5/lib \ + /usr/X11R4/lib \ + \ + /usr/lib/X11 \ + /usr/lib/X11R6 \ + /usr/lib/X11R5 \ + /usr/lib/X11R4 \ + \ + /usr/local/X11/lib \ + /usr/local/X11R6/lib \ + /usr/local/X11R5/lib \ + /usr/local/X11R4/lib \ + \ + /usr/local/lib/X11 \ + /usr/local/lib/X11R6 \ + /usr/local/lib/X11R5 \ + /usr/local/lib/X11R4 \ + \ + /usr/X386/lib \ + /usr/x386/lib \ + /usr/XFree86/lib/X11 \ + \ + /usr/lib \ + /usr/local/lib \ + /usr/unsupported/lib \ + /usr/athena/lib \ + /usr/local/x11r5/lib \ + /usr/lpp/Xamples/lib \ + /lib/usr/lib/X11 \ + \ + /usr/openwin/lib \ + /usr/openwin/share/lib \ + ; \ +do + for ac_extension in a so sl; do + if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then + ac_x_libraries=$ac_dir + break 2 + fi + done +done +fi +rm -f conftest* +fi # $ac_x_libraries = NO + +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + rm -fr conftestdir +if mkdir conftestdir; then + cd conftestdir + # Make sure to not put "make" in the Imakefile rules, since we grep it out. + cat > Imakefile <<'EOF' +acfindx: + @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"' +EOF + if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then + # GNU make sometimes prints "make[1]: Entering...", which would confuse us. + eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` + # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. + for ac_extension in a so sl; do + if test ! -f $ac_im_usrlibdir/libX11.$ac_extension && + test -f $ac_im_libdir/libX11.$ac_extension; then + ac_im_usrlibdir=$ac_im_libdir; break + fi + done + # Screen out bogus values from the imake configuration. They are + # bogus both because they are the default anyway, and because + # using them would break gcc on systems where it needs fixed includes. + case "$ac_im_incroot" in + /usr/include) ;; + *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes="$ac_im_incroot" ;; + esac + case "$ac_im_usrlibdir" in + /usr/lib | /lib) ;; + *) test -d "$ac_im_usrlibdir" && ac_x_libraries="$ac_im_usrlibdir" ;; + esac + fi + cd .. + rm -fr conftestdir +fi + + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + { echo "configure: error: Can't find X includes. Please check your installation and add the correct paths!" 1>&2; exit 1; } +fi + +if test "$kde_x_libraries" = NO; then + { echo "configure: error: Can't find X libraries. Please check your installation and add the correct paths!" 1>&2; exit 1; } +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" + +fi + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + echo "$ac_t""$have_x" 1>&6 + no_x=yes +else + echo "$ac_t""libraries $kde_x_libraries, headers $kde_x_includes" 1>&6 +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS" + + + + + + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6 +echo "configure:4873: checking for IceConnectionNumber in -lICE" >&5 +ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lICE $X_EXTRA_LIBS $LIBS" +cat > conftest.$ac_ext <<EOF +#line 4881 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char IceConnectionNumber(); + +int main() { +IceConnectionNumber() +; return 0; } +EOF +if { (eval echo configure:4892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBSM="-lSM -lICE" +else + echo "$ac_t""no" 1>&6 +fi + + +LDFLAGS="$ac_save_LDFLAGS" + + + +LIB_X11='-lX11 $(LIBSOCKET)' + + +echo $ac_n "checking for libXext""... $ac_c" 1>&6 +echo "configure:4921: checking for libXext" >&5 +if eval "test \"`echo '$''{'kde_cv_have_libXext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +cat > conftest.$ac_ext <<EOF +#line 4933 "configure" +#include "confdefs.h" + +#include <stdio.h> +#ifdef STDC_HEADERS +# include <stdlib.h> +#endif + +int main() { + +printf("hello Xext\n"); + +; return 0; } +EOF +if { (eval echo configure:4947: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + kde_cv_have_libXext=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + kde_cv_have_libXext=no + +fi +rm -f conftest* + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe + +fi + + +echo "$ac_t""$kde_cv_have_libXext" 1>&6 + +if test "$kde_cv_have_libXext" = "no"; then + { echo "configure: error: We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either." 1>&2; exit 1; } +fi + +echo $ac_n "checking for Xinerama""... $ac_c" 1>&6 +echo "configure:4974: checking for Xinerama" >&5 + + # Check whether --with-xinerama or --without-xinerama was given. +if test "${with_xinerama+set}" = set; then + withval="$with_xinerama" + + no_xinerama=no + +else + + no_xinerama=yes + + +fi + + +kde_save_LDFLAGS="$LDFLAGS" +kde_save_CFLAGS="$CFLAGS" +kde_save_LIBS="$LIBS" +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +CFLAGS="$CFLAGS -I$x_includes" +LIBS="-lXinerama -lXext" + +if test "x$no_xinerama" = "xno"; then + + if eval "test \"`echo '$''{'ac_cv_have_xinerama'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + cat > conftest.$ac_ext <<EOF +#line 5004 "configure" +#include "confdefs.h" +#include <X11/Xlib.h> + #include <X11/extensions/Xinerama.h> +int main() { +XineramaIsActive(NULL); +; return 0; } +EOF +if { (eval echo configure:5012: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + ac_cv_have_xinerama="yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + ac_cv_have_xinerama="no" +fi +rm -f conftest* + +fi + +else + ac_cv_have_xinerama=no; +fi + +echo "$ac_t""$ac_cv_have_xinerama" 1>&6 + +LIBXINERAMA="" + +if test "$ac_cv_have_xinerama" = "yes"; then + cat >> confdefs.h <<\EOF +#define HAVE_XINERAMA 1 +EOF + + LIBXINERAMA="-lXinerama" +fi + + + +LDFLAGS="$kde_save_LDFLAGS" +CFLAGS="$kde_save_CFLAGS" +LIBS="$kde_save_LIBS" + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + + +if test -z ""; then + kde_qtver=2 + kde_qtsubver=1 +else + kde_qtsubver=`echo "" | sed -e 's#[0-9]\+\.\([0-9]\+\).*#\1#'` + # following is the check if subversion isn´t found in passed argument + if test "$kde_qtsubver" = ""; then + kde_qtsubver=1 + fi + kde_qtver=`echo "" | sed -e 's#^\([0-9]\+\)\..*#\1#'` + if test "$kde_qtver" = "1"; then + kde_qtsubver=42 + else + # this is the version number fallback to 2.1, unless major version is 1 or 2 + if test "$kde_qtver" != "2"; then + kde_qtver=2 + kde_qtsubver=1 + fi + fi +fi + +if test -z ""; then + if test $kde_qtver = 2; then + if test $kde_qtsubver -gt 0; then + kde_qt_minversion=">= Qt 2.2.2" + else + kde_qt_minversion=">= Qt 2.0.2" + fi + else + kde_qt_minversion=">= 1.42 and < 2.0" + fi +else + kde_qt_minversion= +fi + +if test -z ""; then + if test $kde_qtver = 2; then + if test $kde_qtsubver -gt 0; then + kde_qt_verstring="QT_VERSION >= 222" + else + kde_qt_verstring="QT_VERSION >= 200" + fi + else + kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200" + fi +else + kde_qt_verstring= +fi + +if test $kde_qtver = 2; then + kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt" +else + kde_qt_dirs="$QTDIR /usr/lib/qt" +fi + + + + +echo $ac_n "checking for libpng""... $ac_c" 1>&6 +echo "configure:5117: checking for libpng" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_png'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext <<EOF +#line 5134 "configure" +#include "confdefs.h" + + #include<png.h> + +int main() { + + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + +; return 0; } +EOF +if { (eval echo configure:5147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_png='-lpng $LIBZ -lm'" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_png=no" + +fi +rm -f conftest* +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" + +fi +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + cat >> confdefs.h <<EOF +#define HAVE_LIBPNG 1 +EOF + + LIBPNG="$ac_cv_lib_png" + + echo "$ac_t""$ac_cv_lib_png" 1>&6 +else + echo "$ac_t""no" 1>&6 + LIBPNG="" + +fi + + + +echo $ac_n "checking for libjpeg6b""... $ac_c" 1>&6 +echo "configure:5179: checking for libjpeg6b" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_jpeg_6b'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg6b -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext <<EOF +#line 5196 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ + +int main() { +jpeg_CreateDecompress(0L, 0, 0); +; return 0; } +EOF +if { (eval echo configure:5217: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_jpeg_6b=-ljpeg6b" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_jpeg_6b=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" + +fi + + +if eval "test ! \"`echo $ac_cv_lib_jpeg_6b`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_6b" + echo "$ac_t""$ac_cv_lib_jpeg_6b" 1>&6 +else + echo "$ac_t""no" 1>&6 + +echo $ac_n "checking for libjpeg""... $ac_c" 1>&6 +echo "configure:5240: checking for libjpeg" >&5 +if eval "test \"`echo '$''{'ac_cv_lib_jpeg_normal'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +cat > conftest.$ac_ext <<EOF +#line 5257 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +struct jpeg_decompress_struct; +typedef struct jpeg_decompress_struct * j_decompress_ptr; +typedef int size_t; +#ifdef __cplusplus +extern "C" { +#endif + void jpeg_CreateDecompress(j_decompress_ptr cinfo, + int version, size_t structsize); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ + +int main() { +jpeg_CreateDecompress(0L, 0, 0); +; return 0; } +EOF +if { (eval echo configure:5278: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_jpeg_normal=-ljpeg" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_jpeg_normal=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" + +fi + + +if eval "test ! \"`echo $ac_cv_lib_jpeg_normal`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_normal" + echo "$ac_t""$ac_cv_lib_jpeg_normal" 1>&6 +else + echo "$ac_t""no" 1>&6 + + LIBJPEG= + + +fi + + + +fi + + + +jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" + +jpeg_incdir=NO +for i in $jpeg_incdirs; +do + for j in jpeglib.h; + do + echo "configure: 5318: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + jpeg_incdir=$i + break 2 + fi + done +done + +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + cat >> confdefs.h <<EOF +#define HAVE_LIBJPEG 1 +EOF + +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + echo "configure: warning: +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +" 1>&2 + else + echo "configure: warning: libjpeg not found. disable JPEG support." 1>&2 + fi + jpeg_incdir= + LIBJPEG= +fi + + + + + + + + + +# Check whether --enable-mt or --disable-mt was given. +if test "${enable_mt+set}" = set; then + enableval="$enable_mt" + kde_use_qt_mt=$enableval +else + kde_use_qt_mt=no + +fi + + +USING_QT_MT="" + + +if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" + X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" + else + echo "configure: warning: Compiler is not gcc. MT support disabled." 1>&2 + fi + ;; + *) + echo "configure: warning: MT not yet supported on $host - disabled." 1>&2 + ;; + esac + +fi + +kde_qt_was_given=yes + + +if test -z "$LIBQT_GLOB"; then + + LIBQT_GLOB="libqt.*" + +fi + +if test -z "$LIBQT"; then + + LIBQT="-lqt" + kde_int_qt="-lqt" + + + if test "x$kde_use_qt_mt" = "xyes"; then + + case $host in + *-*-linux-*) + if test "x$GCC" = "xyes"; then + LIBQT="-lqt-mt" + kde_int_qt="-lqt-mt" + LIBQT_GLOB="libqt-mt.*" + USING_QT_MT="using -mt" + fi + ;; + esac + fi + + kde_qt_was_given=no + +else + kde_int_qt="$LIBQT" +fi + +if test $kde_qtver = 2; then + + + + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +echo $ac_n "checking for Qt""... $ac_c" 1>&6 +echo "configure:5432: checking for Qt" >&5 + +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +# Check whether --with-qt-dir or --without-qt-dir was given. +if test "${with_qt_dir+set}" = set; then + withval="$with_qt_dir" + ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib + ac_qt_bindir="$withval"/bin + +fi + + +# Check whether --with-qt-includes or --without-qt-includes was given. +if test "${with_qt_includes+set}" = set; then + withval="$with_qt_includes" + + ac_qt_includes="$withval" + +fi + + +kde_qt_libs_given=no + +# Check whether --with-qt-libraries or --without-qt-libraries was given. +if test "${with_qt_libraries+set}" = set; then + withval="$with_qt_libraries" + ac_qt_libraries="$withval" + kde_qt_libs_given=yes + +fi + + +if eval "test \"`echo '$''{'ac_cv_have_qt'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + #try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" = "2"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + + +qt_incdir=NO +for i in $qt_incdirs; +do + for j in $kde_qt_header; + do + echo "configure: 5494: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + qt_incdir=$i + break 2 + fi + done +done + +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&5 ; fi + done +fi + +ac_qt_libraries="$qt_libdir" + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" +LIBS="$LIBS $LIBQT" + + + +cat > conftest.$ac_ext <<EOF +#include "confdefs.h" +#include <qglobal.h> +#include <qapplication.h> +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext <<EOF +#include <qevent.h> +#include <qstring.h> +#include <qstyle.h> +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext <<EOF +#include <qiconview.h> +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <<EOF +#error 1 +#endif + +int main() { +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext <<EOF + QStringList *t = new QStringList(); +EOF +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext <<EOF + QIconView iv(0); + iv.setWordWrapIconText(false); + QString s; + s.setLatin1("Elvis is alive", 14); + int magnolia = QEvent::Speech; /* new in 2.2 beta2 */ +EOF +fi +fi +cat >> conftest.$ac_ext <<EOF + return 0; +} +EOF + + +if { (eval echo configure:5593: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + ac_qt_notfound="(libraries)"; + fi + + { echo "configure: error: Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +else + have_qt="yes" +fi + +fi + + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + echo "$ac_t""$have_qt" 1>&6; +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + echo "$ac_t""libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT" 1>&6 + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes"; then + + +echo $ac_n "checking if Qt compiles without flags""... $ac_c" 1>&6 +echo "configure:5651: checking if Qt compiles without flags" >&5 +if eval "test \"`echo '$''{'kde_cv_qt_direct'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_includes" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +LIBS="$LIBQT -lXext -lX11 $LIBSOCKET" +LD_LIBRARY_PATH= +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + + + +cat > conftest.$ac_ext <<EOF +#include "confdefs.h" +#include <qglobal.h> +#include <qapplication.h> +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext <<EOF +#include <qevent.h> +#include <qstring.h> +#include <qstyle.h> +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext <<EOF +#include <qiconview.h> +EOF +fi + +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <<EOF +#error 1 +#endif + +int main() { +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext <<EOF + QStringList *t = new QStringList(); +EOF +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext <<EOF + QIconView iv(0); + iv.setWordWrapIconText(false); + QString s; + s.setLatin1("Elvis is alive", 14); + int magnolia = QEvent::Speech; /* new in 2.2 beta2 */ +EOF +fi +fi +cat >> conftest.$ac_ext <<EOF + return 0; +} +EOF + + +if { (eval echo configure:5730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + kde_cv_qt_direct="yes" +else + kde_cv_qt_direct="no" + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + +fi + + +if test "$kde_cv_qt_direct" = "yes"; then + echo "$ac_t""yes" 1>&6 + qt_libraries= +else + echo "$ac_t""no" 1>&6 + +fi + +fi + + + + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES=""; +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$all_libraries $QT_LDFLAGS" +fi + + + + + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + + echo $ac_n "checking for moc""... $ac_c" 1>&6 +echo "configure:5799: checking for moc" >&5 + if test -n "$MOC"; then + kde_cv_path="$MOC"; + else + kde_cache=`echo moc | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$qt_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/moc"; then + if test -n "" + then + evalstr="$dir/moc 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/moc" + break + fi + else + kde_cv_path="$dir/moc" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MOC=$kde_cv_path + + fi + + if test -z "$UIC_NOT_NEEDED"; then + + echo $ac_n "checking for uic""... $ac_c" 1>&6 +echo "configure:5865: checking for uic" >&5 + if test -n "$UIC"; then + kde_cv_path="$UIC"; + else + kde_cache=`echo uic | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$qt_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/uic"; then + if test -n "" + then + evalstr="$dir/uic 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/uic" + break + fi + else + kde_cv_path="$dir/uic" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + UIC="" + else + echo "$ac_t""$kde_cv_path" 1>&6 + UIC=$kde_cv_path + + fi + + if test -z "$UIC" ; then + + echo "configure: warning: No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +" 1>&2 + + exit 1 + fi + else + UIC="echo uic not available: " + fi + + + + + +LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' + + + + + + + + +echo $ac_n "checking for rpath""... $ac_c" 1>&6 +echo "configure:5950: checking for rpath" >&5 +# Check whether --enable-rpath or --disable-rpath was given. +if test "${enable_rpath+set}" = set; then + enableval="$enable_rpath" + USE_RPATH=$enableval +else + USE_RPATH=yes +fi + + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(kde_libraries)" + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + if test -n "$X_LDFLAGS"; then + KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi + + +echo "$ac_t""$USE_RPATH" 1>&6 + +echo $ac_n "checking for KDE""... $ac_c" 1>&6 +echo "configure:5979: checking for KDE" >&5 + +if test "${prefix}" != NONE; then + kde_includes=${prefix}/include + ac_kde_includes=$prefix/include + + if test "${exec_prefix}" != NONE; then + kde_libraries=${exec_prefix}/lib + ac_kde_libraries=$exec_prefix/lib + else + kde_libraries=${prefix}/lib + ac_kde_libraries=$prefix/lib + fi +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +if eval "test \"`echo '$''{'ac_cv_have_kde'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + #try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z ""; then + +kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" + +kde_incdir=NO +for i in $kde_incdirs; +do + for j in $kde_check_header; + do + echo "configure: 6023: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + kde_incdir=$i + break 2 + fi + done +done + +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + { echo "configure: error: +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!" 1>&2; exit 1; } +fi + +kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $kde_libdirs" + +kde_libdir=NO +for i in $kde_libdirs; +do + for j in $kde_check_lib; + do + echo "configure: 6049: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + kde_libdir=$i + break 2 + fi + done +done + +ac_kde_libraries="$kde_libdir" + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +{ echo "configure: error: +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!" 1>&2; exit 1; } +fi +ac_kde_libraries="$kde_libdir" + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else + ac_cv_have_kde="have_kde=no" + +fi + +fi + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + echo "$ac_t""will be installed in $ac_kde_prefix" 1>&6 + else + ac_kde_exec_prefix="$exec_prefix" + echo "$ac_t""will be installed in $ac_kde_prefix and $ac_kde_exec_prefix" 1>&6 + fi + + kde_libraries="${ac_kde_exec_prefix}/lib" + kde_includes=${ac_kde_prefix}/include + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + echo "$ac_t""libraries $ac_kde_libraries, headers $ac_kde_includes" 1>&6 + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi + + + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$all_libraries $KDE_LDFLAGS" +fi + + + + + + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" + + + + + + # Check whether --enable-path-check or --disable-path-check was given. +if test "${enable_path_check+set}" = set; then + enableval="$enable_path_check" + + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + +else + + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + + +fi + + + + + +echo $ac_n "checking for KDE paths""... $ac_c" 1>&6 +echo "configure:6159: checking for KDE paths" >&5 +kde_result="" +kde_cached_paths=yes +if eval "test \"`echo '$''{'kde_cv_all_paths'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + +if test "$ac_use_path_checking" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=defaults" + + +else + + if test $kde_qtver = 1; then + echo "$ac_t""compiling" 1>&6 + + + echo $ac_n "checking for KDE headers installed""... $ac_c" 1>&6 +echo "configure:6246: checking for KDE headers installed" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +cat > conftest.$ac_ext <<EOF +#ifdef STDC_HEADERS +# include <stdlib.h> +#endif +#include <stdio.h> +#include "confdefs.h" +#include <kapp.h> + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if { (eval echo configure:6289: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo "$ac_t""yes" 1>&6 + else + { echo "configure: error: your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } + fi + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +echo $ac_n "checking for KDE libraries installed""... $ac_c" 1>&6 +echo "configure:6326: checking for KDE libraries installed" >&5 +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if { (eval echo configure:6329: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$kde_result" + + + + else + { echo "configure: error: path checking not yet supported for KDE 2" 1>&2; exit 1; } + fi + +fi + + kde_cached_paths=no + +fi + +eval "$kde_cv_all_paths" + if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi + +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + +if test "$ac_use_path_checking" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${prefix}/share/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${prefix}/share/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${prefix}/share/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${prefix}/share/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${prefix}/share/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${prefix}/share/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${prefix}/share/config' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${prefix}/share/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${prefix}/share/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${prefix}/share/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${prefix}/share/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${prefix}/share/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${prefix}/share/servicetypes' + fi + if test -z "$kde_moduledir"; then + kde_moduledir='\${exec_prefix}/lib/kde2' + fi + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=defaults" + + +else + + if test $kde_qtver = 1; then + echo "$ac_t""compiling" 1>&6 + + + echo $ac_n "checking for KDE headers installed""... $ac_c" 1>&6 +echo "configure:6480: checking for KDE headers installed" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +cat > conftest.$ac_ext <<EOF +#ifdef STDC_HEADERS +# include <stdlib.h> +#endif +#include <stdio.h> +#include "confdefs.h" +#include <kapp.h> + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' + if { (eval echo configure:6523: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo "$ac_t""yes" 1>&6 + else + { echo "configure: error: your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } + fi + + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +echo $ac_n "checking for KDE libraries installed""... $ac_c" 1>&6 +echo "configure:6560: checking for KDE libraries installed" >&5 +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if { (eval echo configure:6563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log." 1>&2; exit 1; } +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + + + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_result=$kde_result" + + + + else + { echo "configure: error: path checking not yet supported for KDE 2" 1>&2; exit 1; } + fi + +fi + + eval "$kde_cv_all_paths" + if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test "$kde_have_all_paths" != "yes"; then + kde_have_all_paths=no + fi + + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + { echo "configure: error: configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +" 1>&2; exit 1; } +else + rm -f conftest* + echo "$ac_t""$kde_result" 1>&6 +fi + +bindir=$kde_bindir + + + + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" + + echo $ac_n "checking for dcopidl""... $ac_c" 1>&6 +echo "configure:6652: checking for dcopidl" >&5 + if test -n "$DCOPIDL"; then + kde_cv_path="$DCOPIDL"; + else + kde_cache=`echo dcopidl | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/dcopidl"; then + if test -n "" + then + evalstr="$dir/dcopidl 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/dcopidl" + break + fi + else + kde_cv_path="$dir/dcopidl" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program dcopidl was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + DCOPIDL=$kde_cv_path + + fi + + + echo $ac_n "checking for dcopidl2cpp""... $ac_c" 1>&6 +echo "configure:6712: checking for dcopidl2cpp" >&5 + if test -n "$DCOPIDL2CPP"; then + kde_cv_path="$DCOPIDL2CPP"; + else + kde_cache=`echo dcopidl2cpp | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/dcopidl2cpp"; then + if test -n "" + then + evalstr="$dir/dcopidl2cpp 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/dcopidl2cpp" + break + fi + else + kde_cv_path="$dir/dcopidl2cpp" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program dcopidl2cpp was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + DCOPIDL2CPP=$kde_cv_path + + fi + + + echo $ac_n "checking for mcopidl""... $ac_c" 1>&6 +echo "configure:6772: checking for mcopidl" >&5 + if test -n "$MCOPIDL"; then + kde_cv_path="$MCOPIDL"; + else + kde_cache=`echo mcopidl | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/mcopidl"; then + if test -n "" + then + evalstr="$dir/mcopidl 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/mcopidl" + break + fi + else + kde_cv_path="$dir/mcopidl" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program mcopidl was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MCOPIDL=$kde_cv_path + + fi + + + echo $ac_n "checking for artsc-config""... $ac_c" 1>&6 +echo "configure:6832: checking for artsc-config" >&5 + if test -n "$ARTSCCONFIG"; then + kde_cv_path="$ARTSCCONFIG"; + else + kde_cache=`echo artsc-config | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/artsc-config"; then + if test -n "" + then + evalstr="$dir/artsc-config 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/artsc-config" + break + fi + else + kde_cv_path="$dir/artsc-config" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + { echo "configure: error: The important program artsc-config was not found! +Please check whether you installed KDE correctly. +" 1>&2; exit 1; } + + else + echo "$ac_t""$kde_cv_path" 1>&6 + ARTSCCONFIG=$kde_cv_path + + fi + + + echo $ac_n "checking for kde-config""... $ac_c" 1>&6 +echo "configure:6892: checking for kde-config" >&5 + if test -n "$KDECONFIG"; then + kde_cv_path="$KDECONFIG"; + else + kde_cache=`echo kde-config | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/kde-config"; then + if test -n "" + then + evalstr="$dir/kde-config 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/kde-config" + break + fi + else + kde_cv_path="$dir/kde-config" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + else + echo "$ac_t""$kde_cv_path" 1>&6 + KDECONFIG=$kde_cv_path + + fi + + + echo $ac_n "checking for meinproc""... $ac_c" 1>&6 +echo "configure:6948: checking for meinproc" >&5 + if test -n "$MEINPROC"; then + kde_cv_path="$MEINPROC"; + else + kde_cache=`echo meinproc | sed 'y%./+-%__p_%'` + + if eval "test \"`echo '$''{'kde_cv_path_$kde_cache'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + kde_cv_path="NONE" + dirs="$kde_default_bindirs" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + dirs="$dirs $dir" + done + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/meinproc"; then + if test -n "" + then + evalstr="$dir/meinproc 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/meinproc" + break + fi + else + kde_cv_path="$dir/meinproc" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + +fi + + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + echo "$ac_t""not found" 1>&6 + + else + echo "$ac_t""$kde_cv_path" 1>&6 + MEINPROC=$kde_cv_path + + fi + + + if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde2/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + +KDE_XSL_STYLESHEET=NO +for i in $kde_sharedirs; +do + for j in apps/ksgmltools2/customization/kde-chunk.xsl; + do + echo "configure: 7012: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + KDE_XSL_STYLESHEET=$i + break 2 + fi + done +done + + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + + + + + + + + + + if test -x "$KDECONFIG"; then # it can be "compiled" + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + { echo "configure: error: $KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + " 1>&2; exit 1; } + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + else + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + fi + + + + + + + + + + + + + + + + + + + + + +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi + + + + + + +if test $kde_qtver = 2; then + LIB_KDECORE='-lkdecore' + + LIB_KDEUI='-lkdeui' + + LIB_KFORMULA='-lkformula' + + LIB_KIO='-lkio' + + LIB_KSYCOCA='-lksycoca' + + LIB_SMB='-lsmb' + + LIB_KFILE='-lkfile' + + LIB_KAB='-lkab' + + LIB_KHTML='-lkhtml' + + LIB_KSPELL='-lkspell' + + LIB_KPARTS='-lkparts' + + LIB_KWRITE='-lkwrite' + +else + LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' + + LIB_KDEUI='-lkdeui $(LIB_KDECORE)' + + LIB_KFM='-lkfm $(LIB_KDECORE)' + + LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' + + LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' + +fi + + + + +CPPFLAGS="$CPPFLAGS -DQT_NO_ASCII_CAST -DQT_NO_COMPAT -DQT_CLEAN_NAMESPACE -Wall -I\$(top_srcdir)/ -I\$(top_srcdir)/bibletime" + +ac_use_static="NO" + +echo $ac_n "checking whether to use static linking""... $ac_c" 1>&6 +echo "configure:7131: checking whether to use static linking" >&5 +# Check whether --enable-static-linking or --disable-static-linking was given. +if test "${enable_static_linking+set}" = set; then + enableval="$enable_static_linking" + USE_STATIC_LINKING=$enableval +else + USE_STATIC_LINKING="no" +fi + + +if test "$USE_STATIC_LINKING" = "yes"; then + BT_LDFLAGS="-all-static -Wl,-Bstatic"; + + CPPFLAGS="-DSTATIC_BUILD $CPPFLAGS"; + ac_use_static="YES"; +else + ac_use_static="NO"; +fi + +echo "$ac_t""$USE_STATIC_LINKING" 1>&6 + + + +# Check whether --with-sword-dir or --without-sword-dir was given. +if test "${with_sword_dir+set}" = set; then + withval="$with_sword_dir" + + ac_sword_dir=$withval + +else + ac_sword_dir=/usr + +fi + + +# Check whether --enable-static-sword or --disable-static-sword was given. +if test "${enable_static_sword+set}" = set; then + enableval="$enable_static_sword" + ac_static_sword="YES" +else + ac_static_sword="$ac_use_static" + +fi + + +echo $ac_n "checking for Sword library files""... $ac_c" 1>&6 +echo "configure:7177: checking for Sword library files" >&5 + +ac_sword_library_dirs="$ac_sword_dir/lib /usr/lib /usr/lib/sword /usr/local/lib /usr/local/lib/sword /usr/local/sword/lib" + +if test "$ac_static_sword" = "YES"; then + SEARCH_LIBS="libsword.a"; +else + SEARCH_LIBS="libsword.a libsword.so"; +fi + + +if eval "test \"`echo '$''{'ac_cv_sword_libdir'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_cv_sword_libdir=NO +for i in $ac_sword_library_dirs; +do + for j in $SEARCH_LIBS; + do + echo "configure: 7197: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + ac_cv_sword_libdir=$i + break 2 + fi + done +done + +fi + + +if test "$ac_cv_sword_libdir" = "NO"; then + { echo "configure: error: SWORD library not found. Try to use configure with --with-sword-dir=/your/SWORD/path!" 1>&2; exit 1; }; +fi + +if test "$ac_static_sword" = "YES"; then + LIB_SWORD="$ac_cv_sword_libdir/libsword.a"; +else + LIB_SWORD="-lsword"; +fi + + + +all_libraries="$all_libraries -L$ac_cv_sword_libdir" + +if test "$ac_static_sword" = "YES"; then + MESSAGE="static library $ac_cv_sword_libdir/libsword.a"; +else + MESSAGE="$ac_cv_sword_libdir"; +fi +echo "$ac_t""$MESSAGE" 1>&6 + + + +echo $ac_n "checking for Sword include files""... $ac_c" 1>&6 +echo "configure:7233: checking for Sword include files" >&5 +ac_sword_include_dirs="$ac_sword_dir/include/sword $ac_sword_dir/include /usr/include/sword /usr/include /usr/local/include/sword /usr/local/include /usr/local/sword/include /usr/local/sword/include/sword" + +if eval "test \"`echo '$''{'ac_cv_sword_incdir'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +ac_cv_sword_incdir=NO +for i in $ac_sword_include_dirs; +do + for j in swmgr.h; + do + echo "configure: 7245: $i/$j" >&5 + if test -r "$i/$j"; then + echo "taking that" >&5 + ac_cv_sword_incdir=$i + break 2 + fi + done +done + +fi + + +if test "$ac_cv_sword_incdir" = "NO"; then + { echo "configure: error: The Sword include file files were not found. +Please try to use configure with --with-sword-dir=/your/SWORD/path ! +" 1>&2; exit 1; } +fi + +SWORD_INCLUDES="-I$ac_cv_sword_incdir" + +all_includes="$all_includes -I$ac_cv_sword_incdir" + +echo "$ac_t""$ac_cv_sword_incdir" 1>&6 + + + +echo $ac_n "checking if you have Sword 1.5.3 or later""... $ac_c" 1>&6 +echo "configure:7272: checking if you have Sword 1.5.3 or later" >&5 + +if eval "test \"`echo '$''{'ac_cv_installed_sword_version'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' + + +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$" +LDFLAGS="$LDFLAGS -L$ac_cv_sword_libdir" +LIBS="$LIB_SWORD -lz" +LD_LIBRARY_PATH="$ac_cv_sword_libdir" +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + +cat > conftest.$ac_ext <<EOF +#include <iostream.h> +#include <swversion.h> + +int main(int argc, char* argv) { + if (argc != 2) { + cout << SWVersion::currentVersion << endl; + } + else if (argc == 2) + { + if (SWVersion(&argv[1]) < SWVersion::currentVersion || SWVersion(&argv[1]) == SWVersion::currentVersion) + { + cout << 0 << endl; + return 0; + } + else + { + cout << 1 << endl; + return 1; //version not recent enough + } + } + return 0; +} +EOF + +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +if { (eval echo configure:7329: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + if test -x conftest; then + eval ac_cv_installed_sword_version=`./conftest 2>&5` + eval sword_test_returncode=`./conftest 1.5.3 2>&5`; + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + +fi + + +right_version="ok"; +if test $sword_test_returncode = 1; then + right_version="wrong version"; +fi; + +echo "$ac_t""$ac_cv_installed_sword_version" 1>&6 +if test $right_version != "ok"; then + { echo "configure: error: Your Sword installation is not recent enoought! Please +upgrade to version 1.5.3!" 1>&2; exit 1; }; +fi; + + + + +echo $ac_n "checking for the used Linux distribution""... $ac_c" 1>&6 +echo "configure:7374: checking for the used Linux distribution" >&5 + +# Check whether --with-distribution or --without-distribution was given. +if test "${with_distribution+set}" = set; then + withval="$with_distribution" + + ac_distribution=$withval + +else + ac_distribution=auto + +fi + + +# Check whether --with-distribution-version or --without-distribution-version was given. +if test "${with_distribution_version+set}" = set; then + withval="$with_distribution_version" + + ac_distribution_version=$withval + +else + ac_distribution_version=auto + +fi + + +# Check whether --with-rpm-prefix or --without-rpm-prefix was given. +if test "${with_rpm_prefix+set}" = set; then + withval="$with_rpm_prefix" + + ac_rpm_prefix=$withval + +else + ac_rpm_prefix=auto + +fi + + +# Check whether --with-rpm-group or --without-rpm-group was given. +if test "${with_rpm_group+set}" = set; then + withval="$with_rpm_group" + + ac_rpm_group=$withval + +else + ac_rpm_group=auto + +fi + + +if test "$ac_distribution" != "auto"; then + DISTRIBUTION=$ac_distribution +fi + +if test "$ac_distribution" = "auto"; then +if eval "test \"`echo '$''{'DISTRIBUTION'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test -f "/etc/SuSE-release"; then + DISTRIBUTION="SuSE" +elif test -f "/etc/mandrake-release"; then + DISTRIBUTION="Mandrake" +elif test -f "/etc/redhat-release"; then + DISTRIBUTION="Red Hat" +elif test -f "/etc/debian_version"; then + DISTRIBUTION="Debian" +fi + +fi + +fi + +if test "$ac_distribution_version" != "auto"; then + DISTRIBUTION_VERSION=$ac_distribution_version +fi +if test "$ac_distribution_version" = "auto"; then +if eval "test \"`echo '$''{'DISTRIBUTION_VERSION'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test -f "/etc/SuSE-release" && test "$DISTRIBUTION" = "SuSE"; then + DISTRIBUTION_VERSION=`grep "VERSION =" /etc/SuSE-release | sed 's/VERSION = //'`; +elif test -f "/etc/mandrake-release" && test "$DISTRIBUTION" = "Mandrake"; then + DISTRIBUTION_VERSION=`grep "Mandrake" /etc/mandrake-release | sed 's/[a-zA-Z()]*//g' | awk '{print }'` +elif test -f "/etc/redhat-release" && test "$DISTRIBUTION" = "Red Hat"; then + DISTRIBUTION_VERSION=`grep "Red Hat" /etc/redhat-release | sed 's/[a-zA-Z()]*//g' | awk '{print }'` +elif test -f "/etc/debian_version" && test "$DISTRIBUTION" = "Debian"; then + DISTRIBUTION_VERSION=`cat /etc/debian_version` +fi + +fi + +fi + + +if test "$ac_rpm_prefix" != "auto"; then + RPM_PREFIX=$ac_rpm_prefix +fi +if test "$ac_rpm_prefix" = "auto"; then +if eval "test \"`echo '$''{'RPM_PREFIX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test "$DISTRIBUTION" = "SuSE"; then + RPM_PREFIX="/opt/kde2" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_PREFIX="/usr" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_PREFIX="/usr" +fi + +fi + +fi + +if test "$ac_rpm_group" != "auto"; then + RPM_GROUP=$ac_rpm_group +fi +if test "$ac_rpm_prefix" = "auto"; then +if eval "test \"`echo '$''{'RPM_GROUP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +if test "$DISTRIBUTION" = "SuSE"; then + RPM_GROUP="X11/KDE/Applications" +elif test "$DISTRIBUTION" = "Mandrake"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Red Hat"; then + RPM_GROUP="Graphical desktop/KDE" +elif test "$DISTRIBUTION" = "Debian"; then + RPM_GROUP="Graphical desktop/KDE" +fi + +fi + +fi + +if test -n "$DISTRIBUTION" && test "$DISTRIBUTION" != "unknown"; then + cat >> confdefs.h <<EOF +#define DISTRIBUTION ${DISTRIBUTION} +EOF + +fi + +if test -n "$DISTRIBUTION_VERSION" && test "$DISTRIBUTION_VERSION" != "unknown"; then + cat >> confdefs.h <<EOF +#define DISTRIBUTION_VERSION ${DISTRIBUTION_VERSION} +EOF + +fi + + + + + + +echo "$ac_t""$DISTRIBUTION $DISTRIBUTION_VERSION" 1>&6 + +echo $ac_n "checking for RPM installation prefix""... $ac_c" 1>&6 +echo "configure:7536: checking for RPM installation prefix" >&5 +echo "$ac_t""$RPM_PREFIX" 1>&6 + +echo $ac_n "checking for the correct RPM group""... $ac_c" 1>&6 +echo "configure:7540: checking for the correct RPM group" >&5 +echo "$ac_t""$RPM_GROUP" 1>&6 + + + + + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" + +if test ! -s $srcdir/subdirs; then + TOPSUBDIRS="" + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +else + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + echo $ac_n "checking if $i should be compiled""... $ac_c" 1>&6 +echo "configure:7566: checking if $i should be compiled" >&5 + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + echo "$ac_t""$install_it" 1>&6 + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + fi +done + + + +trap '' 1 2 15 +cat > confcache <<\EOF +# 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. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# 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 \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Any assignment to VPATH causes Sun make to only execute +# the first set of double-colon rules, so remove it if not needed. +# If there is a colon in the path, we need to keep it. +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' +fi + +trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 + +DEFS=-DHAVE_CONFIG_H + +# Without the "./", some shells look in PATH for config.status. +: ${CONFIG_STATUS=./config.status} + +echo creating $CONFIG_STATUS +rm -f $CONFIG_STATUS +cat > $CONFIG_STATUS <<EOF +#! /bin/sh +# Generated automatically by configure. +# Run this file to recreate the current configuration. +# This directory was configured as follows, +# on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# +# $0 $ac_configure_args +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" +for ac_option +do + case "\$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" + exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "$CONFIG_STATUS generated by autoconf version 2.13" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "\$ac_cs_usage"; exit 0 ;; + *) echo "\$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=$srcdir +ac_given_INSTALL="$INSTALL" + +trap 'rm -fr `echo "\ +./Makefile \ +admin/Makefile \ +bibletime/Makefile \ +bibletime/backend/Makefile \ +bibletime/frontend/Makefile \ +bibletime/frontend/groupmanager/Makefile \ +bibletime/frontend/keychooser/Makefile \ +bibletime/frontend/presenters/Makefile \ +bibletime/frontend/searchdialog/Makefile \ +bibletime/frontend/thirdparty/Makefile \ +bibletime/frontend/thirdparty/qt3stuff/Makefile \ +bibletime/pics/Makefile \ +bibletime/pics/highcolor/Makefile \ +bibletime/pics/highcolor/16x16/Makefile \ +bibletime/pics/highcolor/22x22/Makefile \ +bibletime/pics/highcolor/32x32/Makefile \ +bibletime/pics/highcolor/48x48/Makefile \ +bibletime/pics/lowcolor/Makefile \ +bibletime/pics/lowcolor/16x16/Makefile \ +bibletime/pics/lowcolor/22x22/Makefile \ +bibletime/pics/lowcolor/32x32/Makefile \ +bibletime/printing/Makefile \ +bibletime/printing/style-data/Makefile \ +bibletime/util/Makefile \ +bibletime/xml/Makefile \ +NEWS README INSTALL TODO bibletime.lsm bibletime.spec bibletime.desktop \ + config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +EOF +cat >> $CONFIG_STATUS <<EOF + +# Protect against being on the right side of a sed subst in config.status. +sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; + s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF +$ac_vpsub +$extrasub +s%@SHELL@%$SHELL%g +s%@CFLAGS@%$CFLAGS%g +s%@CPPFLAGS@%$CPPFLAGS%g +s%@CXXFLAGS@%$CXXFLAGS%g +s%@FFLAGS@%$FFLAGS%g +s%@DEFS@%$DEFS%g +s%@LDFLAGS@%$LDFLAGS%g +s%@LIBS@%$LIBS%g +s%@exec_prefix@%$exec_prefix%g +s%@prefix@%$prefix%g +s%@program_transform_name@%$program_transform_name%g +s%@bindir@%$bindir%g +s%@sbindir@%$sbindir%g +s%@libexecdir@%$libexecdir%g +s%@datadir@%$datadir%g +s%@sysconfdir@%$sysconfdir%g +s%@sharedstatedir@%$sharedstatedir%g +s%@localstatedir@%$localstatedir%g +s%@libdir@%$libdir%g +s%@includedir@%$includedir%g +s%@oldincludedir@%$oldincludedir%g +s%@infodir@%$infodir%g +s%@mandir@%$mandir%g +s%@host@%$host%g +s%@host_alias@%$host_alias%g +s%@host_cpu@%$host_cpu%g +s%@host_vendor@%$host_vendor%g +s%@host_os@%$host_os%g +s%@target@%$target%g +s%@target_alias@%$target_alias%g +s%@target_cpu@%$target_cpu%g +s%@target_vendor@%$target_vendor%g +s%@target_os@%$target_os%g +s%@build@%$build%g +s%@build_alias@%$build_alias%g +s%@build_cpu@%$build_cpu%g +s%@build_vendor@%$build_vendor%g +s%@build_os@%$build_os%g +s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g +s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@PACKAGE@%$PACKAGE%g +s%@VERSION@%$VERSION%g +s%@ACLOCAL@%$ACLOCAL%g +s%@AUTOCONF@%$AUTOCONF%g +s%@AUTOMAKE@%$AUTOMAKE%g +s%@AUTOHEADER@%$AUTOHEADER%g +s%@MAKEINFO@%$MAKEINFO%g +s%@SET_MAKE@%$SET_MAKE%g +s%@CONF_FILES@%$CONF_FILES%g +s%@CC@%$CC%g +s%@CXX@%$CXX%g +s%@USE_EXCEPTIONS@%$USE_EXCEPTIONS%g +s%@USE_RTTI@%$USE_RTTI%g +s%@CXXCPP@%$CXXCPP%g +s%@NOOPT_CXXFLAGS@%$NOOPT_CXXFLAGS%g +s%@REPO@%$REPO%g +s%@NOREPO@%$NOREPO%g +s%@KDE_USE_FINAL_TRUE@%$KDE_USE_FINAL_TRUE%g +s%@KDE_USE_FINAL_FALSE@%$KDE_USE_FINAL_FALSE%g +s%@KDE_USE_CLOSURE_TRUE@%$KDE_USE_CLOSURE_TRUE%g +s%@KDE_USE_CLOSURE_FALSE@%$KDE_USE_CLOSURE_FALSE%g +s%@KDE_CXXFLAGS@%$KDE_CXXFLAGS%g +s%@OBJEXT@%$OBJEXT%g +s%@EXEEXT@%$EXEEXT%g +s%@LN_S@%$LN_S%g +s%@RANLIB@%$RANLIB%g +s%@STRIP@%$STRIP%g +s%@LIBTOOL@%$LIBTOOL%g +s%@KDE_PLUGIN@%$KDE_PLUGIN%g +s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g +s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g +s%@MAINT@%$MAINT%g +s%@MSGFMT@%$MSGFMT%g +s%@GMSGFMT@%$GMSGFMT%g +s%@XGETTEXT@%$XGETTEXT%g +s%@CPP@%$CPP%g +s%@LIBUTIL@%$LIBUTIL%g +s%@LIBCOMPAT@%$LIBCOMPAT%g +s%@LIBCRYPT@%$LIBCRYPT%g +s%@LIBSOCKET@%$LIBSOCKET%g +s%@LIBRESOLV@%$LIBRESOLV%g +s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g +s%@LIBUCB@%$LIBUCB%g +s%@LIBDL@%$LIBDL%g +s%@X_INCLUDES@%$X_INCLUDES%g +s%@X_LDFLAGS@%$X_LDFLAGS%g +s%@x_libraries@%$x_libraries%g +s%@x_includes@%$x_includes%g +s%@LIBSM@%$LIBSM%g +s%@X_PRE_LIBS@%$X_PRE_LIBS%g +s%@LIB_X11@%$LIB_X11%g +s%@LIBXINERAMA@%$LIBXINERAMA%g +s%@USER_INCLUDES@%$USER_INCLUDES%g +s%@USER_LDFLAGS@%$USER_LDFLAGS%g +s%@LIBZ@%$LIBZ%g +s%@LIBPNG@%$LIBPNG%g +s%@LIBJPEG@%$LIBJPEG%g +s%@qt_libraries@%$qt_libraries%g +s%@qt_includes@%$qt_includes%g +s%@QT_INCLUDES@%$QT_INCLUDES%g +s%@QT_LDFLAGS@%$QT_LDFLAGS%g +s%@MOC@%$MOC%g +s%@UIC@%$UIC%g +s%@LIB_QT@%$LIB_QT%g +s%@KDE_EXTRA_RPATH@%$KDE_EXTRA_RPATH%g +s%@KDE_RPATH@%$KDE_RPATH%g +s%@kde_libraries@%$kde_libraries%g +s%@kde_includes@%$kde_includes%g +s%@KDE_LDFLAGS@%$KDE_LDFLAGS%g +s%@KDE_INCLUDES@%$KDE_INCLUDES%g +s%@all_includes@%$all_includes%g +s%@all_libraries@%$all_libraries%g +s%@AUTODIRS@%$AUTODIRS%g +s%@DCOPIDL@%$DCOPIDL%g +s%@DCOPIDL2CPP@%$DCOPIDL2CPP%g +s%@DCOP_DEPENDENCIES@%$DCOP_DEPENDENCIES%g +s%@MCOPIDL@%$MCOPIDL%g +s%@ARTSCCONFIG@%$ARTSCCONFIG%g +s%@KDECONFIG@%$KDECONFIG%g +s%@MEINPROC@%$MEINPROC%g +s%@KDE_XSL_STYLESHEET@%$KDE_XSL_STYLESHEET%g +s%@kde_libs_prefix@%$kde_libs_prefix%g +s%@kde_libs_htmldir@%$kde_libs_htmldir%g +s%@kde_htmldir@%$kde_htmldir%g +s%@kde_appsdir@%$kde_appsdir%g +s%@kde_icondir@%$kde_icondir%g +s%@kde_sounddir@%$kde_sounddir%g +s%@kde_datadir@%$kde_datadir%g +s%@kde_locale@%$kde_locale%g +s%@kde_confdir@%$kde_confdir%g +s%@kde_mimedir@%$kde_mimedir%g +s%@kde_wallpaperdir@%$kde_wallpaperdir%g +s%@kde_bindir@%$kde_bindir%g +s%@kde_templatesdir@%$kde_templatesdir%g +s%@kde_servicesdir@%$kde_servicesdir%g +s%@kde_servicetypesdir@%$kde_servicetypesdir%g +s%@kde_moduledir@%$kde_moduledir%g +s%@LIB_KDECORE@%$LIB_KDECORE%g +s%@LIB_KDEUI@%$LIB_KDEUI%g +s%@LIB_KFORMULA@%$LIB_KFORMULA%g +s%@LIB_KIO@%$LIB_KIO%g +s%@LIB_KSYCOCA@%$LIB_KSYCOCA%g +s%@LIB_SMB@%$LIB_SMB%g +s%@LIB_KFILE@%$LIB_KFILE%g +s%@LIB_KAB@%$LIB_KAB%g +s%@LIB_KHTML@%$LIB_KHTML%g +s%@LIB_KSPELL@%$LIB_KSPELL%g +s%@LIB_KPARTS@%$LIB_KPARTS%g +s%@LIB_KWRITE@%$LIB_KWRITE%g +s%@LIB_KFM@%$LIB_KFM%g +s%@BT_LDFLAGS@%$BT_LDFLAGS%g +s%@SWORD_LIBRARY_PATH@%$SWORD_LIBRARY_PATH%g +s%@LIB_SWORD@%$LIB_SWORD%g +s%@SWORD_INCLUDES@%$SWORD_INCLUDES%g +s%@DISTRIBUTION@%$DISTRIBUTION%g +s%@DISTRIBUTION_VERSION@%$DISTRIBUTION_VERSION%g +s%@RPM_PREFIX@%$RPM_PREFIX%g +s%@RPM_GROUP@%$RPM_GROUP%g +s%@TOPSUBDIRS@%$TOPSUBDIRS%g + +CEOF +EOF + +cat >> $CONFIG_STATUS <<\EOF + +# 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_cmds=90 # Maximum number of lines to put in a sed script. +ac_file=1 # Number of current file. +ac_beg=1 # First line for current file. +ac_end=$ac_max_sed_cmds # 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" conftest.subs > conftest.s$ac_file + else + sed "${ac_end}q" conftest.subs > conftest.s$ac_file + fi + if test ! -s conftest.s$ac_file; then + ac_more_lines=false + rm -f conftest.s$ac_file + else + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f conftest.s$ac_file" + else + ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" + fi + ac_file=`expr $ac_file + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_cmds` + fi +done +if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat +fi +EOF + +cat >> $CONFIG_STATUS <<EOF + +CONFIG_FILES=\${CONFIG_FILES-"\ +./Makefile \ +admin/Makefile \ +bibletime/Makefile \ +bibletime/backend/Makefile \ +bibletime/frontend/Makefile \ +bibletime/frontend/groupmanager/Makefile \ +bibletime/frontend/keychooser/Makefile \ +bibletime/frontend/presenters/Makefile \ +bibletime/frontend/searchdialog/Makefile \ +bibletime/frontend/thirdparty/Makefile \ +bibletime/frontend/thirdparty/qt3stuff/Makefile \ +bibletime/pics/Makefile \ +bibletime/pics/highcolor/Makefile \ +bibletime/pics/highcolor/16x16/Makefile \ +bibletime/pics/highcolor/22x22/Makefile \ +bibletime/pics/highcolor/32x32/Makefile \ +bibletime/pics/highcolor/48x48/Makefile \ +bibletime/pics/lowcolor/Makefile \ +bibletime/pics/lowcolor/16x16/Makefile \ +bibletime/pics/lowcolor/22x22/Makefile \ +bibletime/pics/lowcolor/32x32/Makefile \ +bibletime/printing/Makefile \ +bibletime/printing/style-data/Makefile \ +bibletime/util/Makefile \ +bibletime/xml/Makefile \ +NEWS README INSTALL TODO bibletime.lsm bibletime.spec bibletime.desktop \ +"} +EOF +cat >> $CONFIG_STATUS <<\EOF +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; +"") ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file +fi; done +rm -f conftest.s* + +# 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='\3' +ac_dD='%g' +# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". +ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_uB='\([ ]\)%\1#\2define\3' +ac_uC=' ' +ac_uD='\4%g' +# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". +ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_eB='$%\1#\2define\3' +ac_eC=' ' +ac_eD='%g' + +if test "${CONFIG_HEADERS+set}" != set; then +EOF +cat >> $CONFIG_STATUS <<EOF + CONFIG_HEADERS="config.h" +EOF +cat >> $CONFIG_STATUS <<\EOF +fi +for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + echo creating $ac_file + + rm -f conftest.frag conftest.in conftest.out + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + cat $ac_file_inputs > conftest.in + +EOF + +# Transform confdefs.h into a sed script conftest.vals that substitutes +# the proper values into config.h.in to produce config.h. 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.vals +cat > conftest.hdr <<\EOF +s/[\\&%]/\\&/g +s%[\\$`]%\\&%g +s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp +s%ac_d%ac_u%gp +s%ac_u%ac_e%gp +EOF +sed -n -f conftest.hdr confdefs.h > conftest.vals +rm -f conftest.hdr + +# 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.vals <<\EOF +s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */% +EOF + +# Break up conftest.vals because some shells have a limit on +# the size of here documents, and old seds have small limits too. + +rm -f conftest.tail +while : +do + ac_lines=`grep -c . conftest.vals` + # grep -c gives empty output for an empty file on some AIX systems. + if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi + # Write a limited-size here document to conftest.frag. + echo ' cat > conftest.frag <<CEOF' >> $CONFIG_STATUS + sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS + echo 'CEOF + sed -f conftest.frag conftest.in > conftest.out + rm -f conftest.in + mv conftest.out conftest.in +' >> $CONFIG_STATUS + sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail + rm -f conftest.vals + mv conftest.tail conftest.vals +done +rm -f conftest.vals + +cat >> $CONFIG_STATUS <<\EOF + rm -f conftest.frag conftest.h + echo "/* $ac_file. Generated automatically by configure. */" > conftest.h + cat conftest.in >> conftest.h + rm -f conftest.in + if cmp -s $ac_file conftest.h 2>/dev/null; then + echo "$ac_file is unchanged" + rm -f conftest.h + else + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + fi + rm -f $ac_file + mv conftest.h $ac_file + fi +fi; done + +EOF +cat >> $CONFIG_STATUS <<EOF + + +EOF +cat >> $CONFIG_STATUS <<\EOF +test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h + +exit 0 +EOF +if test "x$with_fast_perl" = "xyes" ; then + perl -i.bak $ac_aux_dir/conf.change.pl $CONFIG_STATUS || mv $CONFIG_STATUS.bak $CONFIG_STATUS; + rm -f $CONFIG_STATUS.bak; +fi +chmod +x $CONFIG_STATUS +rm -fr confdefs* $ac_clean_files +test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..e2663c4 --- /dev/null +++ b/configure.in @@ -0,0 +1,167 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(bibletime, 1.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(no) +AC_ENABLE_STATIC(yes) +KDE_PROG_LIBTOOL + +AM_MAINTAINER_MODE + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS + +AC_PATH_KDE + +dnl in this space add everything you want to check for; +dnl examples are specific headers, libraries, etc. +dnl everything to compile and run a KDE program is already checked + +CPPFLAGS="$CPPFLAGS -DQT_NO_ASCII_CAST -DQT_NO_COMPAT -DQT_CLEAN_NAMESPACE -Wall -I\$(top_srcdir)/ -I\$(top_srcdir)/bibletime" +AC_CHECK_STATIC_LINKING(ac_use_static) +AC_CHECK_SWORD(1.5.3, [$ac_use_static]) + +dnl Chek for the used distribution +AC_CHECK_DISTRIBUTION + +dnl add here all your Makefiles. They are created by configure +dnl AC_OUTPUT(NEWS README INSTALL TODO bibletime.lsm bibletime.spec bibletime.desktop) + +dnl echo "Executing perl am_edit ..." +dnl perl am_edit +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(bibletime-doc, 1.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(no) +AC_ENABLE_STATIC(yes) +KDE_PROG_LIBTOOL + +AM_MAINTAINER_MODE + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS +AC_PATH_KDE + +dnl in this space add everything you want to check for; +dnl examples are specific headers, libraries, etc. +dnl everything to compile and run a KDE program is already checked + +dnl Chek for the used distribution +AC_CHECK_DISTRIBUTION + +dnl add here all your Makefiles. They are created by configure +dnl AC_OUTPUT(README INSTALL bibletime-doc.spec) +KDE_CREATE_SUBDIRSLIST +AC_OUTPUT( \ +./Makefile \ +admin/Makefile \ +bibletime/Makefile \ +bibletime/backend/Makefile \ +bibletime/frontend/Makefile \ +bibletime/frontend/groupmanager/Makefile \ +bibletime/frontend/keychooser/Makefile \ +bibletime/frontend/presenters/Makefile \ +bibletime/frontend/searchdialog/Makefile \ +bibletime/frontend/thirdparty/Makefile \ +bibletime/frontend/thirdparty/qt3stuff/Makefile \ +bibletime/pics/Makefile \ +bibletime/pics/highcolor/Makefile \ +bibletime/pics/highcolor/16x16/Makefile \ +bibletime/pics/highcolor/22x22/Makefile \ +bibletime/pics/highcolor/32x32/Makefile \ +bibletime/pics/highcolor/48x48/Makefile \ +bibletime/pics/lowcolor/Makefile \ +bibletime/pics/lowcolor/16x16/Makefile \ +bibletime/pics/lowcolor/22x22/Makefile \ +bibletime/pics/lowcolor/32x32/Makefile \ +bibletime/printing/Makefile \ +bibletime/printing/style-data/Makefile \ +bibletime/util/Makefile \ +bibletime/xml/Makefile \ +NEWS README INSTALL TODO bibletime.lsm bibletime.spec bibletime.desktop \ +README INSTALL bibletime-doc.spec \ +) diff --git a/configure.in.in b/configure.in.in new file mode 100644 index 0000000..22e3839 --- /dev/null +++ b/configure.in.in @@ -0,0 +1,74 @@ +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public Licensednl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +dnl Boston, MA 02111-1307, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(bibletime, 1.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(no) +AC_ENABLE_STATIC(yes) +KDE_PROG_LIBTOOL + +AM_MAINTAINER_MODE + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS + +AC_PATH_KDE + +dnl in this space add everything you want to check for; +dnl examples are specific headers, libraries, etc. +dnl everything to compile and run a KDE program is already checked + +CPPFLAGS="$CPPFLAGS -DQT_NO_ASCII_CAST -DQT_NO_COMPAT -DQT_CLEAN_NAMESPACE -Wall -I\$(top_srcdir)/ -I\$(top_srcdir)/bibletime" +AC_CHECK_STATIC_LINKING(ac_use_static) +AC_CHECK_SWORD(1.5.3, [$ac_use_static]) + +dnl Chek for the used distribution +AC_CHECK_DISTRIBUTION + +dnl add here all your Makefiles. They are created by configure +dnl AC_OUTPUT(NEWS README INSTALL TODO bibletime.lsm bibletime.spec bibletime.desktop) + +dnl echo "Executing perl am_edit ..." +dnl perl am_edit diff --git a/debian/bibletime.xpm b/debian/bibletime.xpm new file mode 100644 index 0000000..6d7b951 --- /dev/null +++ b/debian/bibletime.xpm @@ -0,0 +1,59 @@ +/* XPM */ +static char * bibletime_xpm[] = { +"32 32 24 1", +" c None", +". c #C3C3C3", +"+ c #303030", +"@ c #A0A0A0", +"# c #C05800", +"$ c #000000", +"% c #FFA858", +"& c #404000", +"* c #FFDCA8", +"= c #FFC0C0", +"- c #DCDCDC", +"; c #585858", +"> c #808080", +", c #800000", +"' c #400000", +") c #FF8000", +"! c #800080", +"~ c #C0C000", +"{ c #C000C0", +"] c #C00000", +"^ c #FFFFC0", +"/ c #FF0000", +"( c #C0FFC0", +"_ c #808000", +" ", +" ; ; ", +" +$$+++$+++&+++++$$ ", +" '&,'@@@.%.%..===.*+; ", +" +!&+@%%.@#@%~...=-&$ ", +" +,!&@%%@###@@..%*.&& ", +" &!,+@@@%@{#@.%..=*&+ ", +" ,;&,@%)>##{###)@.=;$ ", +" ;+,!+@%##{##]{##)=.;$ ", +" &,!&@%)@###%%@=.=-&+ ", +" ;&,,+.@%@%##.%.%..*+& ", +" ,&&,@..%%##.%.=.*-+& ", +" +,,&@%..%>#=...=.=+& ", +" +,!&@=...@#@...*-.++ ", +" &!,+~....)#).*.-*-+$ ", +" &!,+@..=.##)*..**-&$ ", +" +,,&@=.*.##@.=*..*&$ ", +" +,,&@==..%%..*.**.++ ", +" &,!+@..*...*=..-*-+$ ", +" ,&+&_.*..*...**-=.++ ", +" &!!&>%..@>&++'++$+$$ ", +" $'$$++'$++;>)>@)=..@ ", +" $$+&#>)>@%%@@%..*-- ", +" $;>#)@@%%..==..--** ", +" $##;>@@@%@.~...*-** ", +" +$;;#>>%%@~....**-^ ", +" @+'$&#>@)>@~.~..--^ ", +" >++$$$+$'++&>.-. ", +" @>;&'+$+$; ", +" ", +" ", +" "}; diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..df0ebe4 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,133 @@ +bibletime (1.1-4) unstable; urgency=high + + * build depend on sword 1.5.3-3 + + -- Daniel Glassey <wdg@debian.org> Thu, 18 Apr 2002 09:35:13 +0100 + +bibletime (1.1-3) unstable; urgency=low + + * fixes to compile with gcc3, Closes: #143212 + * fixes to get rid of some compiler warnings too + + -- Daniel Glassey <wdg@debian.org> Wed, 17 Apr 2002 23:48:16 +0100 + +bibletime (1.1-2) unstable; urgency=high + + * integrate docs into this package since there isn't time to + get a new package in + * fonts seem ok in optionsdialog now, Closes: #139703 + * verses wrap ok now, tested WEB 1Tim5:18, Closes: #140108 + + -- Daniel Glassey <wdg@debian.org> Mon, 15 Apr 2002 09:20:13 +0100 + +bibletime (1.1-1) unstable; urgency=low + + * New upstream release + + -- Daniel Glassey <wdg@debian.org> Mon, 8 Apr 2002 20:36:07 +0100 + +bibletime (1.0.99b-2) unstable; urgency=low + + * Depend on bibletime-doc, required documentation + + -- Daniel Glassey <wdg@debian.org> Sat, 6 Apr 2002 18:45:50 +0100 + +bibletime (1.0.99b-1) unstable; urgency=low + + * New upstream beta release + + -- Daniel Glassey <wdg@debian.org> Tue, 2 Apr 2002 21:33:55 +0100 + +bibletime (1.0.3-1) unstable; urgency=low + + * New upstream release + * build against autotooled sword + * correct spelling error, Closes: #124449 + * not uploading til sword 1.5.2-8 is in + * bulid depend on sword >=1.5.2-9 + + -- Daniel Glassey <wdg@debian.org> Fri, 1 Feb 2002 23:01:55 +0000 + +bibletime (1.0.2-2) unstable; urgency=low + + * Remove debian/controly which shouldn't be there + * stop configure from being run twice to fix alpha build, Closes: #121674 + * build-depend on kdelibs-dev >= 2.2.2-8 to catch libfam-dev dependency, see bug 124264 + * Update description for bibletime 1.0.2 + * Update to policy version 3.5.6.0, no necessary changes noticed yet + * modify clean target in debian/rules to use clean instead of distclean + and remove */Makefile and */*.moc.cpp + + -- Daniel Glassey <wdg@debian.org> Sat, 15 Dec 2001 21:40:18 +0000 + +bibletime (1.0.2-1) unstable; urgency=low + + * New upstream release - see www.bibletime.de for changes + * Using latest config.sub and config.guess, Closes #105779 + * may compile on ia64 now (cswordbackendmanager.* does not exist now), Closes #110187 + * Change maintainer to wdg@debian.org + * Depend on sword >= 1.5.2-4 (new libsword1 shlibs) + * use AM_MAINTAINER_MODE in configure.in - try to stop automake etc + from running while building + so don't build depend on automake, autoconf + * fixes for alpha compilation in debian/rules, Closes: #121674 + * .xvpics has been removed from source, Closes: #112706 + * in debian/rules use dh_compress -X to stop tipsdatabase from being installed compressed, Closes #110847 + + -- Daniel Glassey <wdg@debian.org> Fri, 30 Nov 2001 19:41:44 +0000 + +bibletime (1.0.1-1) unstable; urgency=low + + * New upstream release - see www.bibletime.de for changes + * patched bibletime/pics/Makefile.am to allow install to $DESTDIR + * removed AUTHORS from debian/docs + + -- Daniel Glassey <wdg@debian.org> Sat, 25 Aug 2001 13:47:36 +0000 + +bibletime (1.0-1) unstable; urgency=low + + * New upstream release - see www.bibletime.de for changes + + -- Daniel Glassey <wdg@debian.org> Mon, 25 Jun 2001 22:22:30 +0000 + +bibletime (0.31-3.1) unstable; urgency=low + + * Non-maintainer upload (Ben Burton <benb@acm.org>). + * Rebuilt with new Qt libs (closes: #89789). + * Build-Depends: Replaced kdebase-dev with kdelibs-dev; removed + autoconf (redundant); added libtool. + * Replaced admin/debianrules with a newer version and modified + debian/rules to use admin/debianrules; this way everything gets + installed into the correct directory; this also required modifying + $(localedir) in po/Makefile.am. + * Added debian menu item, lintian overrides file and doc-base registration. + * In debian/rules, using configure-stamp instead of configure.stamp + (this stops ./configure being run again and again and again). + * In debian/rules, deletes Makefile.ins on "make clean" and recreates + them during "make configure"; this removes some unnecessary junk + from the debian diff.gz file. + + -- Ben Burton <benb@acm.org> Thu, 17 May 2001 13:02:11 -0500 + +bibletime (0.31-3) unstable; urgency=low + + * Standards version now 3.2.1 + * Added build-depends + + -- Daniel Glassey <danglassey@yahoo.com> Mon, 22 Jan 2001 22:19:43 +0000 + +bibletime (0.31-2) unstable; urgency=low + + * Add dependencies on modules. + + -- Daniel Glassey <danglassey@yahoo.com> Mon, 4 Dec 2000 22:34:34 +0000 + +bibletime (0.31-1) unstable; urgency=low + + * Initial Release. + + -- Daniel Glassey <danglassey@yahoo.com> Thu, 23 Nov 2000 20:57:31 +0000 + +Local variables: +mode: debian-changelog +End: diff --git a/debian/conffiles b/debian/conffiles new file mode 100644 index 0000000..5e390cd --- /dev/null +++ b/debian/conffiles @@ -0,0 +1 @@ +/etc/kde2/bt-printing diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..f2ecea7 --- /dev/null +++ b/debian/control @@ -0,0 +1,20 @@ +Source: bibletime +Section: x11 +Build-Depends: debhelper, kdelibs-dev (>= 2.2.2-8), libsword-dev (>=1.5.3-3) +Priority: optional +Maintainer: Daniel Glassey <wdg@debian.org> +Standards-Version: 3.5.6.0 + +Package: bibletime +Architecture: any +Section: x11 +Depends: ${shlibs:Depends} +Recommends: sword-text, sword-dict, sword-comm +Provides: sword-frontend +Conflicts: bibletime-doc +Description: A bible study tool for KDE + BibleTime 1.1 is a free and easy to use bible study tool for UNIX systems. + It requires a working KDE2 environment and SWORD 1.5.3 or later. + BibleTime provides easy handling of digitized texts (Bibles, commentaries + and lexicons) and powerful features to work with these texts (search in + texts, write own notes, save, print etc.). diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..7642d5b --- /dev/null +++ b/debian/copyright @@ -0,0 +1,10 @@ +This package was debianized by Daniel Glassey <danglassey@yahoo.com> on +Thu, 23 Nov 2000 20:57:31 +0000. + +It was downloaded from www.bibletime.de + +Upstream Author(s): Bibletime team <bt-devel@crosswire.org> + +Copyright: + GNU GPL .. see /usr/share/common-licenses/GPL + diff --git a/debian/dirs b/debian/dirs new file mode 100644 index 0000000..98d1583 --- /dev/null +++ b/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..5502ed8 --- /dev/null +++ b/debian/docs @@ -0,0 +1,3 @@ +NEWS +README +TODO diff --git a/debian/menu b/debian/menu new file mode 100644 index 0000000..8977bdb --- /dev/null +++ b/debian/menu @@ -0,0 +1,8 @@ +?package(bibletime):\ + needs=X11\ + hints="KDE"\ + kderemove="1"\ + section=Apps/Text\ + title="BibleTime"\ + icon="/usr/share/pixmaps/bibletime.xpm"\ + command=/usr/bin/bibletime diff --git a/debian/override b/debian/override new file mode 100644 index 0000000..817f074 --- /dev/null +++ b/debian/override @@ -0,0 +1,2 @@ +# This tag is required for apps already in the KDE menu. +bibletime: menu-item-contains-unknown-tag kderemove /usr/lib/menu/bibletime:8 diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..3f83528 --- /dev/null +++ b/debian/rules @@ -0,0 +1,123 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This is the debhelper compatability version to use. +#export DH_COMPAT=1 + +ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH) +ifeq ($(ARCH),alpha) + COMPILER_FLAGS=CFLAGS="-O0 -mieee" CXXFLAGS="-O0 -mieee" +endif + +-include debian/debiandirs + +debian/debiandirs: admin/debianrules + perl -w admin/debianrules echodirs > debian/debiandirs + +configure: configure-stamp +configure-stamp: + dh_testdir + #automake + #perl am_edit + $(COMPILER_FLAGS) ./configure $(configkde) --disable-maintainer-mode + cd bibletime-doc && ./configure $(configkde) --disable-maintainer-mode + touch configure-stamp + +build: configure build-stamp +build-stamp: + dh_testdir + + # Add here commands to compile the package. + $(COMPILER_FLAGS) $(MAKE) + cd bibletime-doc && $(MAKE) + + touch build-stamp + +clean: + dh_testdir + dh_testroot + #perl am_edit + rm -f build-stamp configure-stamp + -rm -f debian/debiandirs + + # Add here commands to clean up after the build process. + #-$(MAKE) distclean + -$(MAKE) clean + -cd bibletime-doc && $(MAKE) clean + + #-rm -f `find . -name Makefile.in` + -rm -f `find . -name Makefile` + -rm -f `find . -name *.moc.cpp` + -rm -f `find . -name *_meta_unload.cpp` + -rm subdirs configure.files config.cache config.log config.status + -cd bibletime-doc && rm subdirs configure.files config.cache config.log config.status + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/tmp. + #$(MAKE) install DESTDIR=`pwd`/debian/tmp kde_htmldir=`pwd`/debian/tmp/usr/share/doc/kde/HTML + $(MAKE) install DESTDIR=`pwd`/debian/tmp + cd bibletime-doc && $(MAKE) install DESTDIR=`pwd`/../debian/tmp + + # Install the pixmap for the debian menu item. + install -p -d -o root -g root -m 755 \ + `pwd`/debian/tmp/usr/share/pixmaps + install -p -o root -g root -m 644 debian/bibletime.xpm \ + `pwd`/debian/tmp/usr/share/pixmaps + + # Install the lintian overrides file. + install -p -d -o root -g root -m 755 \ + `pwd`/debian/tmp/usr/share/lintian/overrides + install -p -o root -g root -m 644 debian/override \ + `pwd`/debian/tmp/usr/share/lintian/overrides/bibletime + + #temporary fix to stop things from being executable that shouldn't be? + chmod 644 debian/tmp/usr/share/apps/bibletime/pics/* + chmod 644 debian/tmp/usr/share/apps/bibletime/printing/* + chmod 644 debian/tmp/usr/share/apps/bibletime/bibletimeui.rc + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install +# dh_testversion + dh_testdir + dh_testroot +# dh_installdebconf + dh_installdocs + dh_installexamples + dh_installmenu +# dh_installemacsen +# dh_installpam +# dh_installinit + dh_installcron +# dh_installmanpages +# dh_installinfo + dh_undocumented + dh_installchangelogs ChangeLog + dh_link + dh_strip + dh_compress -Xtipdatabase + dh_fixperms +# dh_makeshlibs + dh_installdeb + dh_perl + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install diff --git a/debian/undocumented b/debian/undocumented new file mode 100644 index 0000000..5d2691d --- /dev/null +++ b/debian/undocumented @@ -0,0 +1 @@ +bibletime.1 diff --git a/extractrc b/extractrc new file mode 100755 index 0000000..368849d --- /dev/null +++ b/extractrc @@ -0,0 +1,74 @@ +#! /usr/bin/perl + +# NOTE: this script is part of the KDE SDK and added to KDevelop to support KDE 2 application development. +# The original is located in the KDE CVS module kdesdk/scripts. It gets installed in the same directory as +# the KDevelop binary to be in your PATH. +# +# What it does is extract the strings in an application´s .rc file, e.g. testappui.rc, and writes into the pot file +# where the translations are build with (po-files) +# +# Added to KDevelop 2000-10-29, Ralf Nolden (nolden@kde.org) + +$linenr = 0; +$filename = ""; +@filenames = (); + +sub writeoutstring($) +{ + print STDOUT "i18n(\"@_[0]\");\n"; +} + +while (defined ($ARGV[0])) +{ + $_ = shift; + $filename = $_; # maybe check for options + +if (! $filename) { + print STDERR "no file to open\n"; + exit 1; +} + +$string = ""; +$intext = 0; + +open(FILE, $filename); +while ( <FILE> ) { + $linenr++; + + $string .= $_; + chomp($string); + + $textstring = '([tT][eE][xX][tT]|string)>'; + + if ($intext == 0) { + if ($string =~ /<$textstring/) { + $string =~ s/^.*<$textstring//; + $intext = 1; + $starting_linenr = $linenr; + } else { + $string = ""; + } + } + + if (($intext == 1) && ($string =~ /<\/$textstring/)) { + my $text = $string; + $text =~ s/<\/$textstring.*$//; + $text =~ s/</</g; + $text =~ s/>/>/g; + $text =~ s/&/&/g; + writeoutstring($text); + $string =~ s/^.*<\/$textstring//; + $intext = 0; + if ($linenr != $starting_linenr) { + print STDERR "there is <text> floating\n"; + } + } + +} + +if ($intext == 1) { + print STDERR "parsing error in $filename $linenr\n"; + exit 1; +} + +} diff --git a/libtool b/libtool new file mode 100755 index 0000000..1f56911 --- /dev/null +++ b/libtool @@ -0,0 +1,6005 @@ +#! /bin/sh + +# libtool - Provide generalized library-building support services. +# Generated automatically by ltconfig (GNU libtool 1.4a (1.641.2.206mm 2001/04/03 21:47:47)) +# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. +# +# Copyright (C) 1996-2000 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 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 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. + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="sed -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags=" CXX" + +### BEGIN LIBTOOL CONFIG +# Libtool was configured as follows, on host ekonomikrisis: +# +# AR="" AR_FLAGS="" LTCC="gcc" CC="gcc" \ +# CFLAGS="-DNDEBUG -O2 " CPPFLAGS="" \ +# MAGIC_CMD="" LD="/usr/bin/ld" LDFLAGS="" LIBS="" \ +# LN_S="ln -s" NM="/usr/bin/nm -B" RANLIB="ranlib" STRIP="strip" \ +# AS="" DLLTOOL="" OBJDUMP="" \ +# objext="" exeext="" reload_flag=" -r" \ +# deplibs_check_method="pass_all" \ +# file_magic_cmd="\$MAGIC_CMD" \ +# admin/ltconfig --cache-file=./config.cache --disable-shared --with-gcc --with-gnu-ld --enable-dlopen --no-verify --build=i686-pc-linux-gnu admin/ltmain.sh i686-pc-linux-gnu +# +# Compiler and other test output produced by ltconfig, useful for +# debugging ltconfig, is in ./config.log if it exists. + +# The version of ltconfig that generated this script. +LTCONFIG_VERSION="1.4a" + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=yes + +# Whether or not to build static libraries. +build_old_libs=yes + +# Whether or not to optimize for fast installation. +fast_install=needless + +# The host system. +host_alias=i686-pc-linux-gnu +host=i686-pc-linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# A language-specific compiler. +CC="gcc" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +# The linker used to build libraries. +LD="/usr/bin/ld" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP=strip + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=73729 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation ? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=yes + +# Whether dlopen of programs is supported. +dlopen_self=yes + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=no + +# Compiler flag to prevent dynamic linking. +link_static_flag="-static" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}.so\$versuffix \${libname}\${release}.so\$major \$libname.so" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}.so\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects="" + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path="" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGISTW]\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern char \\1;/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib /usr/lib" + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | sed 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + +# Symbols that must always be exported. +include_expsyms="" + +### END LIBTOOL CONFIG + +# ltmain.sh - Provide generalized library-building support services. +# NOTE: Changing this file will not affect anything until you rerun ltconfig. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 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 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. + +# Check that we have a working $echo. +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell, and then maybe $echo will work. + exec $SHELL "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat <<EOF +$* +EOF + exit 0 +fi + +# The name of this program. +progname=`$echo "$0" | sed 's%^.*/%%'` +modename="$progname" + +# Constants. +PROGRAM=ltmain.sh +PACKAGE=libtool +VERSION=1.4a +TIMESTAMP=" (1.641.2.206mm 2001/04/03 21:47:47)" + +default_mode= +help="Try \`$progname --help' for more information." +magic="%%%MAGIC variable%%%" +mkdir="mkdir" +mv="mv -f" +rm="rm -f" + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' +SP2NL='tr \040 \012' +NL2SP='tr \015\012 \040\040' + +# NLS nuisances. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +# We save the old values to restore during execute mode. +if test "${LC_ALL+set}" = set; then + save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL +fi +if test "${LANG+set}" = set; then + save_LANG="$LANG"; LANG=C; export LANG +fi + +if test "$LTCONFIG_VERSION" != "$VERSION"; then + echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then + echo "$modename: not configured to build any kind of library" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 +fi + +# Global variables. +mode=$default_mode +nonopt= +prev= +prevopt= +run= +show="$echo" +show_help= +execute_dlfiles= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" + +# Parse our command line options once, thoroughly. +while test $# -gt 0 +do + arg="$1" + shift + + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + execute_dlfiles) + execute_dlfiles="$execute_dlfiles $arg" + ;; + tag) + tagname="$arg" + + # Check whether tagname contains only valid characters + case $tagname in + *[!-_A-Za-z0-9,/]*) + echo "$progname: invalid tag name: $tagname" 1>&2 + exit 1 + ;; + esac + + if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then + taglist="$taglist $tagname" + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" + else + echo "$progname: ignoring unknown tag $tagname" 1>&2 + fi + ;; + *) + eval "$prev=\$arg" + ;; + esac + + prev= + prevopt= + continue + fi + + # Have we seen a non-optional argument yet? + case $arg in + --help) + show_help=yes + ;; + + --version) + echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" + exit 0 + ;; + + --config) + sed -n -e '/^### BEGIN LIBTOOL CONFIG/,/^### END LIBTOOL CONFIG/p' < "$0" + # Now print the configurations for the tags. + for tagname in $taglist; do + sed -n -e "/^### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" + done + exit 0 + ;; + + --debug) + echo "$progname: enabling shell trace mode" + set -x + ;; + + --dry-run | -n) + run=: + ;; + + --features) + echo "host: $host" + if test "$build_libtool_libs" = yes; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + exit 0 + ;; + + --finish) mode="finish" ;; + + --mode) prevopt="--mode" prev=mode ;; + --mode=*) mode="$optarg" ;; + + --quiet | --silent) + show=: + ;; + + --tag) prevopt="--tag" prev=tag ;; + --tag=*) + set tag "$optarg" ${1+"$@"} + shift + prev=tag + ;; + + -dlopen) + prevopt="-dlopen" + prev=execute_dlfiles + ;; + + -*) + $echo "$modename: unrecognized option \`$arg'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + + *) + nonopt="$arg" + break + ;; + esac +done + +if test -n "$prevopt"; then + $echo "$modename: option \`$prevopt' requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 +fi + +if test -z "$show_help"; then + + # Infer the operation mode. + if test -z "$mode"; then + case $nonopt in + *cc | *++ | gcc* | *-gcc*) + mode=link + for arg + do + case $arg in + -c) + mode=compile + break + ;; + esac + done + ;; + *db | *dbx | *strace | *truss) + mode=execute + ;; + *install*|cp|mv) + mode=install + ;; + *rm) + mode=uninstall + ;; + *) + # If we have no mode, but dlfiles were specified, then do execute mode. + test -n "$execute_dlfiles" && mode=execute + + # Just use the default operation mode. + if test -z "$mode"; then + if test -n "$nonopt"; then + $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 + else + $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 + fi + fi + ;; + esac + fi + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$execute_dlfiles" && test "$mode" != execute; then + $echo "$modename: unrecognized option \`-dlopen'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$modename --help --mode=$mode' for more information." + + # These modes are in order of execution frequency so that they run quickly. + case $mode in + # libtool compile mode + compile) + modename="$modename: compile" + # Get the compilation command and the source file. + base_compile= + prev= + lastarg= + srcfile="$nonopt" + suppress_output= + + user_target=no + for arg + do + case $prev in + "") ;; + xcompiler) + # Aesthetically quote the previous argument. + prev= + lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + + case $arg in + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + # Accept any command-line options. + case $arg in + -o) + if test "$user_target" != "no"; then + $echo "$modename: you cannot specify \`-o' more than once" 1>&2 + exit 1 + fi + user_target=next + ;; + + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` + lastarg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + lastarg="$lastarg $arg" + done + IFS="$save_ifs" + lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` + + # Add the arguments to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + continue + ;; + esac + + case $user_target in + next) + # The next one is the -o target name + user_target=yes + continue + ;; + yes) + # We got the output file + user_target=set + libobj="$arg" + continue + ;; + esac + + # Accept the current argument as the source file. + lastarg="$srcfile" + srcfile="$arg" + + # Aesthetically quote the previous argument. + + # Backslashify any backslashes, double quotes, and dollar signs. + # These are the only characters that are still specially + # interpreted inside of double-quoted scrings. + lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $lastarg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + lastarg="\"$lastarg\"" + ;; + esac + + # Add the previous argument to base_compile. + if test -z "$base_compile"; then + base_compile="$lastarg" + else + base_compile="$base_compile $lastarg" + fi + done + + case $user_target in + set) + ;; + no) + # Get the name of the library object. + libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` + ;; + *) + $echo "$modename: you must specify a target with \`-o'" 1>&2 + exit 1 + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + xform='[cCFSfmso]' + case $libobj in + *.ada) xform=ada ;; + *.adb) xform=adb ;; + *.ads) xform=ads ;; + *.asm) xform=asm ;; + *.c++) xform=c++ ;; + *.cc) xform=cc ;; + *.class) xform=class ;; + *.cpp) xform=cpp ;; + *.cxx) xform=cxx ;; + *.f90) xform=f90 ;; + *.for) xform=for ;; + *.java) xform=java ;; + esac + + libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` + + case $libobj in + *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; + *) + $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 + exit 1 + ;; + esac + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base compile + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir= + else + xdir=$xdir/ + fi + lobj=${xdir}$objdir/$objname + + if test -z "$base_compile"; then + $echo "$modename: you must specify a compilation command" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + $run $rm $removelist + trap "$run $rm $removelist; exit 1" 1 2 15 + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2*) + pic_mode=default + ;; + esac + if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + removelist="$removelist $output_obj $lockfile" + trap "$run $rm $removelist; exit 1" 1 2 15 + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $run ln "$0" "$lockfile" 2>/dev/null; do + $show "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + echo "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + echo $srcfile > "$lockfile" + fi + + if test -n "$fix_srcfile_path"; then + eval srcfile=\"$fix_srcfile_path\" + fi + + $run $rm "$libobj" "${libobj}T" + + # Create a libtool object file (analogous to a ".la" file), + # but don't create it if we're doing a dry run. + test -z "$run" && cat > ${libobj}T <<EOF +# $libobj - a libtool object file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +EOF + + # Only build a PIC object if we are building libtool libraries. + if test "$build_libtool_libs" = yes; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test "$pic_mode" != no; then + command="$base_compile $srcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $srcfile" + fi + + if test ! -d ${xdir}$objdir; then + $show "$mkdir ${xdir}$objdir" + $run $mkdir ${xdir}$objdir + status=$? + if test $status -ne 0 && test ! -d ${xdir}$objdir; then + exit $status + fi + fi + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + command="$command -o $lobj" + fi + + $run $rm "$lobj" "$output_obj" + + $show "$command" + if $run eval "$command"; then : + else + test -n "$output_obj" && $run $rm $removelist + exit 1 + fi + + if test "$need_locks" = warn && + test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "x$output_obj" != "x$lobj"; then + $show "$mv $output_obj $lobj" + if $run $mv $output_obj $lobj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the PIC object to the libtool object file. + test -z "$run" && cat >> ${libobj}T <<EOF +pic_object='$objdir/$objname' + +EOF + + # Allow error messages only from the first compilation. + suppress_output=' >/dev/null 2>&1' + else + # No PIC object so indicate it doesn't exist in the libtool + # object file. + test -z "$run" && cat >> ${libobj}T <<EOF +pic_object=none + +EOF + fi + + # Only build a position-dependent object if we build old libraries. + if test "$build_old_libs" = yes; then + if test "$pic_mode" != yes; then + # Don't build PIC code + command="$base_compile $srcfile" + else + command="$base_compile $srcfile $pic_flag" + fi + if test "$compiler_c_o" = yes; then + command="$command -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + command="$command$suppress_output" + $run $rm "$obj" "$output_obj" + $show "$command" + if $run eval "$command"; then : + else + $run $rm $removelist + exit 1 + fi + + if test "$need_locks" = warn && + test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then + echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit 1 + fi + + # Just move the object if needed + if test -n "$output_obj" && test "x$output_obj" != "x$obj"; then + $show "$mv $output_obj $obj" + if $run $mv $output_obj $obj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <<EOF +# Name of the non-PIC object. +non_pic_object='$objname' + +EOF + else + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <<EOF +# Name of the non-PIC object. +non_pic_object=none + +EOF + fi + + $run $mv "${libobj}T" "${libobj}" + + # Unlock the critical section if it was locked + if test "$need_locks" != no; then + $run $rm "$lockfile" + fi + + exit 0 + ;; + + # libtool link mode + link | relink) + modename="$modename: link" + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # which system we are compiling for in order to pass an extra + # flag for every libtool invokation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll which has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args="$nonopt" + base_compile="$nonopt" + compile_command="$nonopt" + finalize_command="$nonopt" + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + + avoid_version=no + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + non_pic_objects= + prefer_static_libs=no + preload=no + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -all-static | -static) + if test "X$arg" = "X-all-static"; then + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + fi + build_libtool_libs=no + build_old_libs=yes + prefer_static_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test $# -gt 0; do + arg="$1" + base_compile="$base_compile $arg" + shift + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test + ;; + *) qarg=$arg ;; + esac + libtool_args="$libtool_args $qarg" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command="$compile_command @OUTPUT@" + finalize_command="$finalize_command @OUTPUT@" + ;; + esac + + case $prev in + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command="$compile_command @SYMFILE@" + finalize_command="$finalize_command @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + if test ! -f "$arg"; then + $echo "$modename: symbol file \`$arg' does not exist" + exit 1 + fi + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat $save_arg` + do +# moreargs="$moreargs $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + done + else + $echo "$modename: link input file \`$save_arg' does not exist" + exit 1 + fi + arg=$save_arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi + prev= + continue + ;; + xcompiler) + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + xlinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $wl$qarg" + prev= + compile_command="$compile_command $wl$qarg" + finalize_command="$finalize_command $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 + continue + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: not more than one -exported-symbols argument allowed" + exit 1 + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix*) + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + ;; + esac + continue + ;; + + -L*) + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 + exit 1 + fi + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "*) ;; + *) + deplibs="$deplibs -L$dir" + lib_search_path="$lib_search_path $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$dir:"*) ;; + *) dllsearchpath="$dllsearchpath:$dir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "$arg" = "-lc"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # These systems don't actually have c library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + elif test "$arg" = "-lm"; then + case $host in + *-*-cygwin* | *-*-pw32* | *-*-beos*) + # These systems don't actually have math library (as such) + continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody math library is in the System framework + deplibs="$deplibs -framework System" + continue + ;; + esac + fi + deplibs="$deplibs $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # The PATH hackery in wrapper scripts is required on Windows + # in order for the loader to find any dlls it needs. + $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 + $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 + fast_install=no + ;; + *) + no_install=yes + ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + continue + ;; + + -static) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Wl,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` + arg= + IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $wl$flag" + linker_flags="$linker_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + # Some other compiler flag. + -* | +*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + + *.$objext) + # A standard object. + objs="$objs $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit 1 + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit 1 + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs="$deplibs $arg" + old_deplibs="$old_deplibs $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles="$dlfiles $arg" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles="$dlprefiles $arg" + prev= + else + deplibs="$deplibs $arg" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + esac + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + done + + if test -n "$prev"; then + $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base link + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + "$CC "*) ;; + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when ltconfig was run. + "`$echo $CC` "*) ;; + *) + for z in $available_tags; do + if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "*) + # The compiler in $compile_command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + "`$echo $CC` "*) + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + echo "$modename: unable to infer tagged configuration" + echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 +# else +# echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` + if test "X$output_objdir" = "X$output"; then + output_objdir="$objdir" + else + output_objdir="$output_objdir/$objdir" + fi + # Create the object directory. + if test ! -d $output_objdir; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + status=$? + if test $status -ne 0 && test ! -d $output_objdir; then + exit $status + fi + fi + + # Determine the type of output + case $output in + "") + $echo "$modename: you must specify an output file" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + case "$libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + libs="$libs $deplib" + done + + if test $linkmode = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + uninst_deplibs= # uninstalled libtool libraries + uninst_path= # paths that contain uninstalled libtool libraries + case $linkmode in + lib) + passes="conv link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 + exit 1 + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + for pass in $passes; do + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test $linkmode = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test $pass = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + for deplib in $libs; do + lib= + found=no + case $deplib in + -l*) + if test $linkmode != lib && test $linkmode != prog; then + $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 + continue + fi + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` + for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do + # Search the libtool library + lib="$searchdir/lib${name}.la" + if test -f "$lib"; then + found=yes + break + fi + done + if test "$found" != yes; then + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test $pass = conv && continue + newdependency_libs="$deplib $newdependency_libs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + prog) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test $pass = scan; then + deplibs="$deplib $deplibs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + ;; + *) + $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 + ;; + esac + continue + ;; + -R*) + if test $pass = link; then + dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) lib="$deplib" ;; + *.$libext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + if test "$deplibs_check_method" != pass_all; then + echo + echo "*** Warning: This library needs some functionality provided by $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + echo + echo "*** Warning: Linking the shared library $output against the" + echo "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + continue + ;; + prog) + if test $pass != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac + ;; + *.lo | *.$objext) + if test $pass = conv; then + deplibs="$deplib $deplibs" + elif test $linkmode = prog; then + if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles="$newdlprefiles $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles="$newdlfiles $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac + if test $found = yes || test -f "$lib"; then : + else + $echo "$modename: cannot find the library \`$lib'" 1>&2 + exit 1 + fi + + # Check to see that this really is a libtool archive. + if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + # If the library was installed with an old release of libtool, + # it will not redefine variable installed. + installed=yes + + # Read the .la file + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test $linkmode != prog && test $linkmode != lib; }; then + test -n "$dlopen" && dlfiles="$dlfiles $dlopen" + test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" + fi + + if test $pass = conv; then + # only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + # It is a libtool convenience library, so add in its objects. + convenience="$convenience $ladir/$objdir/$old_library" + old_convenience="$old_convenience $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + elif test $linkmode != prog && test $linkmode != lib; then + $echo "$modename: \`$lib' is not a convenience library" 1>&2 + exit 1 + fi + continue + fi + + # Get the name of the library we link against. + linklib= + for l in $old_library $library_names; do + linklib="$l" + done + if test -z "$linklib"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit 1 + fi + + # This library was specified with -dlopen. + if test $pass = dlopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles="$dlprefiles $lib $dependency_libs" + else + newdlfiles="$newdlfiles $lib" + fi + continue + fi + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + abs_ladir="$ladir" + fi + ;; + esac + laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + $echo "$modename: warning: library \`$lib' was moved." 1>&2 + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$libdir" + absdir="$libdir" + fi + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + uninst_path="$uninst_path $abs_ladir" + fi + name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + + # This library was specified with -dlpreopen. + if test $pass = dlpreopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 + exit 1 + fi + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles="$newdlprefiles $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles="$newdlprefiles $dir/$dlname" + else + newdlprefiles="$newdlprefiles $dir/$linklib" + fi + fi + + if test -z "$libdir"; then + # link the convenience library + if test $linkmode = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + if test $linkmode = prog && test $pass != link; then + newlib_search_path="$newlib_search_path $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test + esac + # Need to link against all dependency_libs? + if test $linkalldeplibs = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + continue + fi + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var"; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath " in + *" $dir "*) ;; + *" $absdir "*) ;; + *) temp_rpath="$temp_rpath $dir" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + uninst_deplibs="$uninst_deplibs $lib" + need_relink=yes + fi + # This is a shared library + if test $linkmode = lib && test "$hardcode_into_libs" = all; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + realname="$2" + shift; shift + libname=`eval \\$echo \"$libname_spec\"` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin*) + major=`expr $current - $age` + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + soname=`echo $soroot | sed -e 's/^.*\///'` + newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + $show "extracting exported symbol list from \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$extract_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + $show "generating import library for \`$soname'" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + eval cmds=\"$old_archive_from_expsyms_cmds\" + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi + + if test $linkmode = prog || test "$mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + $echo "$modename: configuration error: unsupported hardcode properties" + exit 1 + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; + esac + fi + if test $linkmode = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && \ + test "$hardcode_minus_L" != yes && \ + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + fi + fi + fi + + if test $linkmode = prog || test "$mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + add="-l$name" + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + add="-l$name" + fi + + if test $linkmode = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test $linkmode = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + echo "*** Warning: This library needs some functionality provided by $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + else + convenience="$convenience $dir/$old_library" + old_convenience="$old_convenience $dir/$old_library" + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi + + if test $linkmode = lib; then + if test -n "$dependency_libs" && + { test $hardcode_into_libs != yes || test $build_old_libs = yes || + test $link_static = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath="$xrpath $temp_xrpath";; + esac;; + *) temp_deplibs="$temp_deplibs $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path="$newlib_search_path $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + tmp_libs="$tmp_libs $deplib" + done + + if test $link_all_deplibs != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + case $deplib in + -L*) path="$deplib" ;; + *.la) + dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$deplib" && dir="." + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + fi + ;; + esac + if grep "^installed=no" $deplib > /dev/null; then + path="-L$absdir/$objdir" + else + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + if test "$absdir" != "$libdir"; then + $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 + fi + path="-L$absdir" + fi + ;; + *) continue ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi + fi + done + dependency_libs="$newdependency_libs" + if test $pass = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test $pass != dlopen; then + if test $pass != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path="$lib_search_path $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Make sure that $var contains only unique libraries + # and add them in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + case "$deplib" in + -L*) new_libs="$deplib $new_libs" ;; + *) + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done + fi + done + if test $linkmode = prog; then + dlfiles="$newdlfiles" + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 + fi + + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 + fi + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs="$objs$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + eval libname=\"$libname_spec\" + ;; + *) + if test "$module" = no; then + $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + eval libname=\"$libname_spec\" + else + libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 + exit 1 + else + echo + echo "*** Warning: Linking the shared library $output against the non-libtool" + echo "*** objects $objs is not portable!" + libobjs="$libobjs $objs" + fi + fi + + if test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 + fi + + set dummy $rpath + if test $# -gt 2; then + $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + fi + install_libdir="$2" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 + fi + else + + # Parse the version information argument. + IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + IFS="$save_ifs" + + if test -n "$8"; then + $echo "$modename: too many parameters to \`-version-info'" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + current="$2" + revision="$3" + age="$4" + + # Check that each of the things are valid numbers. + case $current in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $revision in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + case $age in + 0 | [1-9] | [1-9][0-9]*) ;; + *) + $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + ;; + esac + + if test $age -gt $current; then + $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit 1 + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + minor_current=`expr $current + 1` + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current"; + ;; + + irix) + major=`expr $current - $age + 1` + verstring="sgi$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test $loop != 0; do + iface=`expr $revision - $loop` + loop=`expr $loop - 1` + verstring="sgi$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + ;; + + osf) + major=`expr $current - $age` + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test $loop != 0; do + iface=`expr $current - $loop` + loop=`expr $loop - 1` + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring="$verstring:${current}.0" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + major=`expr $current - $age` + versuffix="-$major" + ;; + + *) + $echo "$modename: unknown library version type \`$version_type'" 1>&2 + echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit 1 + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + verstring="0.0" + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + fi + + if test "$mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`echo "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + removelist="$removelist $p" + ;; + *) ;; + esac + done + if test -n "$removelist"; then + $show "${rm}r $removelist" + $run ${rm}r $removelist + fi + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs="$oldlibs $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + for path in $uninst_path; do + lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` + deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` + dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` + done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + temp_xrpath="$temp_xrpath -R$libdir" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + if test $hardcode_into_libs != yes || test $build_old_libs = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles="$dlfiles $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles="$dlprefiles $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test $build_libtool_need_lc = "yes"; then + deplibs="$deplibs -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behaviour. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $rm conftest.c + cat > conftest.c <<EOF + int main() { return 0; } +EOF + $rm conftest + $LTCC -o conftest conftest.c $deplibs + if test $? -eq 0 ; then + ldd_output=`ldd conftest` + for i in $deplibs; do + name="`expr $i : '-l\(.*\)'`" + # If $name is empty we are operating on a -L argument. + if test "$name" != "" -a "$name" != "0"; then + libname=`eval \\$echo \"$libname_spec\"` + deplib_matches=`eval \\$echo \"$library_names_spec\"` + set dummy $deplib_matches + deplib_match=$2 + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + newdeplibs="$newdeplibs $i" + else + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $i." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + newdeplibs="$newdeplibs $i" + fi + done + else + # Error occured in the first compile. Let's try to salvage the situation: + # Compile a seperate program for each library. + for i in $deplibs; do + name="`expr $i : '-l\(.*\)'`" + # If $name is empty we are operating on a -L argument. + if test "$name" != "" -a "$name" != "0"; then + $rm conftest + $LTCC -o conftest conftest.c $i + # Did it work? + if test $? -eq 0 ; then + ldd_output=`ldd conftest` + libname=`eval \\$echo \"$libname_spec\"` + deplib_matches=`eval \\$echo \"$library_names_spec\"` + set dummy $deplib_matches + deplib_match=$2 + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + newdeplibs="$newdeplibs $i" + else + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $i." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + droppeddeps=yes + echo + echo "*** Warning! Library $i is needed by this library but I was not able to" + echo "*** make it link in! You will probably need to install it or some" + echo "*** library that it depends on before this library will be fully" + echo "*** functional. Installing it before continuing would be even better." + fi + else + newdeplibs="$newdeplibs $i" + fi + done + fi + ;; + file_magic*) + set dummy $deplibs_check_method + file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` + for a_deplib in $deplibs; do + name="`expr $a_deplib : '-l\(.*\)'`" + # If $name is empty we are operating on a -L argument. + if test "$name" != "" -a "$name" != "0"; then + libname=`eval \\$echo \"$libname_spec\"` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null \ + | grep " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | sed 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ + | sed 10q \ + | egrep "$file_magic_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + if test -n "$a_deplib" ; then + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ + -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | + grep . >/dev/null; then + echo + if test "X$deplibs_check_method" = "Xnone"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + fi + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + echo "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test $allow_undefined = no; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + if test $hardcode_into_libs = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath="$dep_rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval dep_rpath=\"$hardcode_libdir_flag_spec\" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval library_names=\"$library_names_spec\" + set dummy $library_names + realname="$2" + shift; shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test x$dlname = x; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + for link + do + linknames="$linknames $link" + done + +# # Ensure that we have .o objects for linkers which dislike .lo +# # (e.g. aix) in case we are running --disable-static +# for obj in $libobjs; do +# xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$obj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# if test ! -f $xdir/$oldobj && test "$baseobj" != "$oldobj"; then +# $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" +# $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? +# fi +# done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + eval cmds=\"$export_symbols_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + if test -n "$export_symbols_regex"; then + $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" + $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + $show "$mv \"${export_symbols}T\" \"$export_symbols\"" + $run eval '$mv "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' + fi + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags="$linker_flags $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # The command line is too long to link in one step, link piecewise. + $echo "creating reloadable object files..." + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + delfiles= + last_robj= + k=1 + output=$output_objdir/$save_output-${k}.$objext + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + eval test_cmds=\"$reload_cmds $objlist $last_robj\" + if test "X$objlist" = X || + { len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; }; then + objlist="$objlist $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test $k -eq 1 ; then + # The first file doesn't have a previous command to add. + eval concat_cmds=\"$reload_cmds $objlist $last_robj\" + else + # All subsequent reloadable object files will link in + # the last one created. + eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" + fi + last_robj=$output_objdir/$save_output-${k}.$objext + k=`expr $k + 1` + output=$output_objdir/$save_output-${k}.$objext + objlist=$obj + len=1 + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" + + # Set up a command to remove the reloadale object files + # after they are used. + i=0 + while test $i -lt $k + do + i=`expr $i + 1` + delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" + done + + $echo "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval cmds=\"$archive_expsym_cmds\" + else + eval cmds=\"$archive_cmds\" + fi + + # Append the command to remove the reloadable object files + # to the just-reset $cmds. + eval cmds=\"\$cmds~$rm $delfiles\" + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$mode" = relink && test "$hardcode_into_libs" = all; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? + exit 0 + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 + fi + + case $output in + *.lo) + if test -n "$objs$old_deplibs"; then + $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 + exit 1 + fi + libobj="$output" + obj=`$echo "X$output" | $Xsed -e "$lo2o"` + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $run $rm $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${obj}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $run eval "echo timestamp > $libobj" || exit $? + exit 0 + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + eval cmds=\"$reload_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" +# else +# # Just create a symlink. +# $show $rm $libobj +# $run $rm $libobj +# xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$libobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` +# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` +# $show "(cd $xdir && $LN_S $oldobj $baseobj)" +# $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + ;; + + prog) + case $host in + *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; + esac + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 + fi + + if test "$preload" = yes; then + if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && + test "$dlopen_self_static" = unknown; then + $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." + fi + fi + + compile_command="$compile_command $compile_deplibs" + finalize_command="$finalize_command $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + case :$dllsearchpath: in + *":$libdir:"*) ;; + *) dllsearchpath="$dllsearchpath:$libdir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + dlsyms= + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + dlsyms="${outputname}S.c" + else + $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 + fi + fi + + if test -n "$dlsyms"; then + case $dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${outputname}.nm" + + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" + + # Parse the name list into a source file. + $show "creating $output_objdir/$dlsyms" + + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ +/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ +/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* Prevent the only kind of declaration conflicts we can make. */ +#define lt_preloaded_symbols some_other_symbol + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + $show "generating symbol list for \`$output'" + + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles="$objs$old_deplibs" + for arg in $progfiles; do + $show "extracting global C symbols from \`$arg'" + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + if test -n "$export_symbols_regex"; then + $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$output.exp" + $run $rm $export_symbols + $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + else + $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' + $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' + $run eval 'mv "$nlist"T "$nlist"' + fi + fi + + for arg in $dlprefiles; do + $show "extracting global C symbols from \`$arg'" + name=`echo "$arg" | sed -e 's%^.*/%%'` + $run eval 'echo ": $name " >> "$nlist"' + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -z "$run"; then + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $mv "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then + : + else + grep -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$dlsyms" + fi + + $echo >> "$output_objdir/$dlsyms" "\ + +#undef lt_preloaded_symbols + +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{\ +" + + sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ + -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ + < "$nlist" >> "$output_objdir/$dlsyms" + + $echo >> "$output_objdir/$dlsyms" "\ + {0, (lt_ptr_t) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + fi + + pic_flag_for_symtable= + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag";; + esac + esac + + # Now compile the dynamic symbol file. + $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" + + # Transform the symbol file into the correct name. + compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + ;; + *) + $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 + exit 1 + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` + fi + + # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G + # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. + # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. + # This does not apply on AIX for ia64, which uses a SysV linker. + case "$host" in + ia64-*-aix5*) ;; + *-*-aix4* | *-*-aix5*) + compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` + finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; + esac + + if test $need_relink = no || test "$build_libtool_libs" != yes; then + # Replace the output file specification. + compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + $show "$link_command" + $run eval "$link_command" + status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $status + fi + + if test -n "$shlibpath_var"; then + # We should set the shlibpath_var + rpath= + for dir in $temp_rpath; do + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) + # Absolute path. + rpath="$rpath$dir:" + ;; + *) + # Relative path: add a thisdir entry. + rpath="$rpath\$thisdir/$dir:" + ;; + esac + done + temp_rpath="$rpath" + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath="$rpath$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $run $rm $output + # Link the executable and exit + $show "$link_command" + $run eval "$link_command" || exit $? + exit 0 + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 + $echo "$modename: \`$output' will be relinked during installation" 1>&2 + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname + + $show "$link_command" + $run eval "$link_command" || exit $? + + # Now create the wrapper script. + $show "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + relink_command="cd `pwd`; $relink_command" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + fi + + # Quote $echo for shipping. + if test "X$echo" = "X$SHELL $0 --fallback-echo"; then + case $0 in + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; + *) qecho="$SHELL `pwd`/$0 --fallback-echo";; + esac + qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` + else + qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` + fi + + # Only actually do things if our run command is non-null. + if test -z "$run"; then + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) output=`echo $output|sed 's,.exe$,,'` ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) exeext=.exe ;; + *) exeext= ;; + esac + $rm $output + trap "$rm $output; exit 1" 1 2 15 + + $echo > $output "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variable: + uninst_deplibs='$uninst_deplibs' +else + # When we are sourced in execute mode, \$file and \$echo are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + echo=\"$qecho\" + file=\"\$0\" + # Make sure echo works. + if test \"X\$1\" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift + elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then + # Yippee, \$echo works! + : + else + # Restart under the correct shell, and then maybe \$echo will work. + exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} + fi + fi\ +" + $echo >> $output "\ + + # Find the directory that this script lives in. + thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` + done + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + echo >> $output "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $mkdir \"\$progdir\" + else + $rm \"\$progdir/\$file\" + fi" + + echo >> $output "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if (eval \$relink_command); then : + else + $rm \"\$progdir/\$file\" + exit 1 + fi + fi + + $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $rm \"\$progdir/\$program\"; + $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $rm \"\$progdir/\$file\" + fi" + else + echo >> $output "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + echo >> $output "\ + + if test -f \"\$progdir/\$program\"; then" + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $echo >> $output "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + + export $shlibpath_var +" + fi + + # fixup the dll searchpath if we need to. + if test -n "$dllsearchpath"; then + $echo >> $output "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + $echo >> $output "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. +" + case $host in + # win32 systems need to use the prog path for dll + # lookup to work + *-*-cygwin* | *-*-pw32*) + $echo >> $output "\ + exec \$progdir/\$program \${1+\"\$@\"} +" + ;; + + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) + $echo >> $output "\ + exec \$progdir\\\\\$program \${1+\"\$@\"} +" + ;; + + *) + $echo >> $output "\ + # Export the path to the program. + PATH=\"\$progdir:\$PATH\" + export PATH + + exec \$program \${1+\"\$@\"} +" + ;; + esac + $echo >> $output "\ + \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" + exit 1 + fi + else + # The program doesn't exist. + \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 + \$echo \"This script is just a wrapper for \$program.\" 1>&2 + echo \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" + chmod +x $output + fi + exit 0 + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$objs$old_deplibs $non_pic_objects" + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + # Add in members from convenience archives. + for xlib in $addlibs; do + # Extract the objects. + case $xlib in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "$mkdir $xdir" + $run $mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print | $NL2SP` + done + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + eval cmds=\"$old_archive_from_new_cmds\" + else +# # Ensure that we have .o objects in place in case we decided +# # not to build a shared library, and have fallen back to building +# # static libs even though --disable-static was passed! +# for oldobj in $oldobjs; do +# if test ! -f $oldobj; then +# xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` +# if test "X$xdir" = "X$oldobj"; then +# xdir="." +# else +# xdir="$xdir" +# fi +# baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` +# obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` +# $show "(cd $xdir && ${LN_S} $obj $baseobj)" +# $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? +# fi +# done + + eval cmds=\"$old_archive_cmds\" + + if len=`expr "X$cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the command line is too long to link in one step, link in parts + $echo "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + for obj in $save_oldobjs + do + oldobjs="$objlist $obj" + objlist="$objlist $obj" + eval test_cmds=\"$old_archive_cmds\" + if len=`expr "X$test_cmds" : ".*"` && + test $len -le $max_cmd_len; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + eval cmds=\"\$concat_cmds~$old_archive_cmds\" + fi + fi + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$generated"; then + $show "${rm}r$generated" + $run ${rm}r$generated + fi + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + $show "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" + relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` + + # Only create the output if not a dry run. + if test -z "$run"; then + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdependency_libs="$newdependency_libs $libdir/$name" + ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + for lib in $dlfiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlfiles="$newdlfiles $libdir/$name" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit 1 + fi + newdlprefiles="$newdlprefiles $libdir/$name" + done + dlprefiles="$newdlprefiles" + fi + $rm $output + # place dlname in correct position for cygwin + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; + esac + $echo > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test $hardcode_into_libs = all && + test "$installed" = no && test $need_relink = yes; then + $echo >> $output "\ +relink_command=\"$relink_command\"" + fi + done + fi + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" + $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? + ;; + esac + exit 0 + ;; + + # libtool install mode + install) + modename="$modename: install" + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then + # Aesthetically quote it. + arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$arg " + arg="$1" + shift + else + install_prog= + arg="$nonopt" + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog$arg" + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + for arg + do + if test -n "$dest"; then + files="$files $dest" + dest="$arg" + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) prev="-f" ;; + -g) prev="-g" ;; + -m) prev="-m" ;; + -o) prev="-o" ;; + -s) + stripme=" -s" + continue + ;; + -*) ;; + + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + prev= + else + dest="$arg" + continue + fi + ;; + esac + + # Aesthetically quote the argument. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog $arg" + done + + if test -z "$install_prog"; then + $echo "$modename: you must specify an install program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -n "$prev"; then + $echo "$modename: the \`$prev' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + if test -z "$files"; then + if test -z "$dest"; then + $echo "$modename: no file or destination specified" 1>&2 + else + $echo "$modename: you must specify a destination" 1>&2 + fi + $echo "$help" 1>&2 + exit 1 + fi + + # Strip any trailing slash from the destination. + dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` + test "X$destdir" = "X$dest" && destdir=. + destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` + + # Not a directory, so check to see that there is only one file specified. + set dummy $files + if test $# -gt 2; then + $echo "$modename: \`$dest' is not a directory" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs="$staticlibs $file" + ;; + + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + library_names= + old_library= + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs="$current_libdirs $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs="$future_libdirs $libdir" ;; + esac + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ + test "X$dir" = "X$file/" && dir= + dir="$dir$objdir" + + if test "$hardcode_into_libs" = all && test -n "$relink_command"; then + $echo "$modename: warning: relinking \`$file'" 1>&2 + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + continue + fi + fi + + # See the names of the shared library. + set dummy $library_names + if test -n "$2"; then + realname="$2" + shift + shift + + srcname="$realname" + test "$hardcode_into_libs" = all && test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + $show "$install_prog $dir/$srcname $destdir/$realname" + $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? + if test -n "$stripme" && test -n "$striplib"; then + $show "$striplib $destdir/$realname" + $run eval "$striplib $destdir/$realname" || exit $? + fi + + if test $# -gt 0; then + # Delete the old symlinks, and create new ones. + for linkname + do + if test "$linkname" != "$realname"; then + $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" + fi + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + eval cmds=\"$postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Install the pseudo-library for information purposes. + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + instname="$dir/$name"i + $show "$install_prog $instname $destdir/$name" + $run eval "$install_prog $instname $destdir/$name" || exit $? + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; + esac + + # Install the libtool object if requested. + if test -n "$destfile"; then + $show "$install_prog $file $destfile" + $run eval "$install_prog $file $destfile" || exit $? + fi + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` + + $show "$install_prog $staticobj $staticdest" + $run eval "$install_prog \$staticobj \$staticdest" || exit $? + fi + exit 0 + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + uninst_deplibs= + relink_command= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Check the variables that should have been set. + if test -z "$uninst_deplibs"; then + $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 + exit 1 + fi + + finalize=yes + for lib in $uninst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + # If there is no directory component, then add one. + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + fi + libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 + finalize=no + fi + done + + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + if test "$finalize" = yes && test -z "$run"; then + tmpdir="/tmp" + test -n "$TMPDIR" && tmpdir="$TMPDIR" + tmpdir="$tmpdir/libtool-$$" + if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : + else + $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 + continue + fi + file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` + + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" + continue + fi + file="$outputname" + else + $echo "$modename: warning: cannot relink \`$file'" 1>&2 + fi + else + # Install the binary that we compiled earlier. + file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + + # remove .exe since cygwin /usr/bin/install will append another + # one anyways + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + destfile=`echo $destfile | sed -e 's,.exe$,,'` + ;; + esac + ;; + esac + + $show "$install_prog$stripme $file $destfile" + $run eval "$install_prog\$stripme \$file \$destfile" || exit $? + test -n "$outputname" && ${rm}r "$tmpdir" + ;; + esac + done + + for file in $staticlibs; do + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + + $show "$install_prog $file $oldlib" + $run eval "$install_prog \$file \$oldlib" || exit $? + + if test -n "$stripme" && test -n "$striplib"; then + $show "$old_striplib $oldlib" + $run eval "$old_striplib $oldlib" || exit $? + fi + + # Do each command in the postinstall commands. + eval cmds=\"$old_postinstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$future_libdirs"; then + $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 + fi + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + test -n "$run" && current_libdirs=" -n$current_libdirs" + exec $SHELL $0 --finish$current_libdirs + exit 1 + fi + + exit 0 + ;; + + # libtool finish mode + finish) + modename="$modename: finish" + libdirs="$nonopt" + admincmds= + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for dir + do + libdirs="$libdirs $dir" + done + + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + eval cmds=\"$finish_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || admincmds="$admincmds + $cmd" + done + IFS="$save_ifs" + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $run eval "$cmds" || admincmds="$admincmds + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + exit 0 + + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + echo " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use \`-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + echo " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + echo " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + echo + echo "See any operating system documentation about shared libraries for" + echo "more information, such as the ld(1) and ld.so(8) manual pages." + echo "----------------------------------------------------------------------" + exit 0 + ;; + + # libtool execute mode + execute) + modename="$modename: execute" + + # The first argument is the command name. + cmd="$nonopt" + if test -z "$cmd"; then + $echo "$modename: you must specify a COMMAND" 1>&2 + $echo "$help" + exit 1 + fi + + # Handle -dlopen flags immediately. + for file in $execute_dlfiles; do + if test ! -f "$file"; then + $echo "$modename: \`$file' is not a file" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + dir= + case $file in + *.la) + # Check to see that this really is a libtool archive. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + # Read the libtool library. + dlname= + library_names= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" + continue + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + + if test -f "$dir/$objdir/$dlname"; then + dir="$dir/$objdir" + else + $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 + exit 1 + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + ;; + + *) + $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -*) ;; + *) + # Do a test to see if this is really a libtool program. + if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` + args="$args \"$file\"" + done + + if test -z "$run"; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved enviroment variables + if test "${save_LC_ALL+set}" = set; then + LC_ALL="$save_LC_ALL"; export LC_ALL + fi + if test "${save_LANG+set}" = set; then + LANG="$save_LANG"; export LANG + fi + + # Now actually exec the command. + eval "exec \$cmd$args" + + $echo "$modename: cannot exec \$cmd$args" + exit 1 + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi + $echo "$cmd$args" + exit 0 + fi + ;; + + # libtool clean and uninstall mode + clean | uninstall) + modename="$modename: $mode" + rm="$nonopt" + files= + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -*) rm="$rm $arg" ;; + *) files="$files $arg" ;; + esac + done + + if test -z "$rm"; then + $echo "$modename: you must specify an RM program" 1>&2 + $echo "$help" 1>&2 + exit 1 + fi + + rmdirs= + + for file in $files; do + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + if test "X$dir" = "X$file"; then + dir=. + objdir="$objdir" + else + objdir="$dir/$objdir" + fi + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + test $mode = uninstall && objdir="$dir" + + # Remember objdir for removal later, being careful to avoid duplicates + if test $mode = clean; then + case " $rmdirs " in + *" $objdir "*) ;; + *) rmdirs="$rmdirs $objdir" ;; + esac + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + . $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles="$rmfiles $objdir/$n" + done + test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" + test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" + + if test $mode = uninstall; then + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + eval cmds=\"$postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + eval cmds=\"$old_postuninstall_cmds\" + IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" + done + IFS="$save_ifs" + fi + # FIXME: should reinstall the best remaining shared library. + fi + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + + # Read the .lo file + . $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" \ + && test "$pic_object" != none; then + rmfiles="$rmfiles $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" \ + && test "$non_pic_object" != none; then + rmfiles="$rmfiles $dir/$non_pic_object" + fi + fi + ;; + + *) + # Do a test to see if this is a libtool program. + if test $mode = clean && + (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + relink_command= + . $dir/$file + + rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles="$rmfiles $objdir/lt-$name" + fi + fi + ;; + esac + $show "$rm $rmfiles" + $run $rm $rmfiles + done + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + $show "rmdir $dir" + $run rmdir $dir >/dev/null 2>&1 + fi + done + + exit 0 + ;; + + "") + $echo "$modename: you must specify a MODE" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 + ;; + esac + + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$generic_help" 1>&2 + exit 1 +fi # test -z "$show_help" + +# We need to display help for each of the modes. +case $mode in +"") $echo \ +"Usage: $modename [OPTION]... [MODE-ARG]... + +Provide generalized library-building support services. + + --config show all configuration variables + --debug enable verbose shell tracing +-n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --finish same as \`--mode=finish' + --help display this help message and exit + --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] + --quiet same as \`--silent' + --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + --version print version information + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for +a more detailed description of MODE." + exit 0 + ;; + +clean) + $echo \ +"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + +compile) + $echo \ +"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -static always build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + +execute) + $echo \ +"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + +finish) + $echo \ +"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + +install) + $echo \ +"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + +link) + $echo \ +"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -static do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + +uninstall) + $echo \ +"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + +*) + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$help" 1>&2 + exit 1 + ;; +esac + +echo +$echo "Try \`$modename --help' for more information about other modes." + +exit 0 + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +### END LIBTOOL TAG CONFIG: disable-shared + +### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: +### BEGIN LIBTOOL TAG CONFIG: CXX +# Libtool was configured as follows, on host ekonomikrisis: +# +# AR="" AR_FLAGS="" LTCC="gcc" CC="c++" \ +# CFLAGS="-DNDEBUG -O2 -fno-exceptions -fno-check-new" CPPFLAGS="" \ +# MAGIC_CMD="" LD="/usr/bin/ld" LDFLAGS="" LIBS="" \ +# LN_S="ln -s" NM="/usr/bin/nm -B" RANLIB="ranlib" STRIP="strip" \ +# AS="" DLLTOOL="" OBJDUMP="" \ +# objext="" exeext="" reload_flag=" -r" \ +# deplibs_check_method="pass_all" \ +# file_magic_cmd="\$MAGIC_CMD" \ +# admin/ltconfig -o libtool --cache-file=./config.cache --disable-shared --with-gcc --with-gnu-ld --enable-dlopen --build=i686-pc-linux-gnu --add-tag=CXX admin/ltcf-cxx.sh i686-pc-linux-gnu +# +# Compiler and other test output produced by ltconfig, useful for +# debugging ltconfig, is in ./config.log if it exists. + +# The version of ltconfig that generated this script. +LTCONFIG_VERSION="1.4a" + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to build static libraries. +build_old_libs=yes + +# Whether or not to optimize for fast installation. +fast_install=needless + +# The host system. +host_alias=i686-pc-linux-gnu +host=i686-pc-linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# A language-specific compiler. +CC="c++" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +# The linker used to build libraries. +LD="/usr/bin/ld" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP=strip + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=73729 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation ? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=yes + +# Whether dlopen of programs is supported. +dlopen_self=yes + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=no + +# Compiler flag to prevent dynamic linking. +link_static_flag="-static" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}.so\$versuffix \${libname}\${release}.so\$major \$libname.so" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}.so\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects="/usr/lib/crti.o /usr/lib/gcc-lib/i386-linux/2.95.4/crtbeginS.o" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects="/usr/lib/gcc-lib/i386-linux/2.95.4/crtendS.o /usr/lib/crtn.o" + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="-lstdc++ -lm -lgcc -lc -lgcc" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path="-L/usr/lib/gcc-lib/i386-linux/2.95.4" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGISTW]\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern char \\1;/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib /usr/lib" + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | sed 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + +# Symbols that must always be exported. +include_expsyms="" + +### END LIBTOOL TAG CONFIG: CXX + diff --git a/make-messages.sh b/make-messages.sh new file mode 100755 index 0000000..880085b --- /dev/null +++ b/make-messages.sh @@ -0,0 +1,18 @@ +#!/bin/sh +myDir=/opt/kde2/include/ +target=../bibletime-doc + +current=$PWD + +perl ./extractrc bibletime/xml/*.rc > bibletime/rc-dummy.cpp && \ +sed "s/#define//" bibletime/tooltipdef.h > bibletime/dummy.h && \ +sed "s/#define//" bibletime/whatsthisdef.h >> bibletime/dummy.h && \ +perl ./preparetips $target/docs/en/tips > bibletime/tips-dummy.cpp && \ +xgettext -C -x $myDir/kde.pot -ki18n -kI18N_NOOP -o $target/po/bibletime.pot `find ./ -name \*.cpp` `find . -name \*.h` && \ +cd $target/po && make merge && rm $current/bibletime/dummy.h && rm $current/bibletime/rc-dummy.cpp && rm $current/bibletime/tips-dummy.cpp + + +cd $current + + + diff --git a/packaging-howto.txt b/packaging-howto.txt new file mode 100644 index 0000000..66d7e18 --- /dev/null +++ b/packaging-howto.txt @@ -0,0 +1,43 @@ +This is a small explanation how to create packages of BibleTime +--------------------------------------------------------------- + +-Source packages of BibleTime: +------------------------------ + To build source packages like bibletime-1.1.tar.gz execute these +commands and procedures: + 1. Change in configure.in.in the version number to the right one + 2. "make -f Makefile.cvs && ./configure && make distclean && rm +bibletime-*.tar*" to cleanup the source directory + 3. "make dist" to create the package bibletime-1.1.tar.gz + 4. "gunzip bibletime-1.1.tar.gz && bzip2 bibletime-1.1.tar" to +create the source archive packed with bzip2, the source package is now +called "bibletime-1.1.tar.bz2" + 5. Test the package. Execute "bzcat bibletime-1.1.tar.bz | tar -xf -" +somewhere, then "cd bibletime-1.1" and then "./configure && make && make +install". Start BibleTime to test if the installation had success and if all +icons etc. are there. + 6. Upload the bibletime-1.1.tar.bz2 file. + +-Binary RPM of BibleTime +------------------------ + 1. Locate where your RPM base directory is. On SuSE this is +/usr/src/packages. We continue with this dir. + 2. "cp bibletime-1.1.tar.bz2 /usr/src/packages/SOURCES/" + 3. "cp bibletime/bibletime.spec /usr/src/packages/SPECS/" + 4. "cd /usr/src/packages/" + 5. "rpm -ba SPECS/bibletime.spec". If this works you're on the good +side, otherwise it's not so good ;) Before you exec the rpm command make +sure you have a standard configuration, for example special graphic card +drivers will lead to wrong dependencies (e.g. NVidia drivers). Deinstall +them first if there are some, then build and then reinstall them. + 6. Test the binary RPM. The binary package is normally located in +/usr/src/packages/RPMS/<arch>/, source RPMs are in /usr/src/packages/SRPMS/. +Often <arch> is "i586". Try to install the binary package by "rpm -U +bibletime-1.1-1.rpm" and check dependencies by executing "rpm -q --requires +bibletime". + 7. Rename the RPM to have the right name, including the distribution +it was built on, e.g. "bibletime-1.1-1.i586.rpm" should be renamed to +"bibletime-1.1-suse7.3-1.i586.rpm" so users know on which distribution the +packages was built. + 8. Release the binary and source package. The source package should +have it's original name because it's distribution independant. \ No newline at end of file diff --git a/preparetips b/preparetips new file mode 100755 index 0000000..1e5c35a --- /dev/null +++ b/preparetips @@ -0,0 +1,45 @@ +# !/usr/bin/perl +# little script to extract the text from the tips file +# and output it, so xgettext can add the tips to the po file +# +# 2000 by Matthias Kiefer <matthias.kiefer@gmx.de> +# Command line option added by Joachim Ansorg + +open(FILE,"<$ARGV[0]") || die "unable to open tips file"; + +$inTip=0; + +while(<FILE>) +{ + chomp; + + # tip starts with <html> + if(/^\s*<html>/i) + { + $inTip=1; + print "\ni18n(\n"; + next; + } + + if($inTip!=0) + { + # tip ends with </html> + if(/^\s*<\/html>/i) + { + print ");\n"; + $inTip=0; + } + else + { + # replace \ with \\ + s/\\/\\\\/g; + + # replace " with \" + s/"/\\"/g; + + print "\"$_\\n\"\n"; + } + } +} + +close(FILE); diff --git a/stamp-h b/stamp-h new file mode 100644 index 0000000..9788f70 --- /dev/null +++ b/stamp-h @@ -0,0 +1 @@ +timestamp diff --git a/stamp-h.in b/stamp-h.in new file mode 100644 index 0000000..9788f70 --- /dev/null +++ b/stamp-h.in @@ -0,0 +1 @@ +timestamp diff --git a/sword.m4 b/sword.m4 new file mode 100644 index 0000000..44e28a0 --- /dev/null +++ b/sword.m4 @@ -0,0 +1,165 @@ +## -*- autoconf -*- +dnl This file was created by Joachim Ansorg <jansorg@gmx.de> +dnl It provides macord for the autoconf package to find the Sword library on your system. + +dnl ---------------------------------------------------------------------- +dnl Check wheter to use static linking +dnl first parameter is the required version +dnl second is whether to use static sword library +dnl ---------------------------------------------------------------------- +AC_DEFUN(AC_CHECK_SWORD, +[ +dnl AC_MSG_CHECKING([for a Sword installation]) + +dnl The option for the configure script +AC_ARG_WITH(sword-dir, +[ --with-sword-dir=DIR Patch where Sword is being installed (default=/usr) ], +[ + ac_sword_dir=$withval +],ac_sword_dir=/usr +) + +AC_ARG_ENABLE(static-sword, +[ --enable-static-sword Link to the static Sword library], + ac_static_sword="YES", + [ ac_static_sword="$2" ] +) + +dnl try to find Sword library files +AC_MSG_CHECKING([for Sword library files]) +AC_REQUIRE([AC_FIND_ZLIB]) +ac_sword_library_dirs="$ac_sword_dir/lib /usr/lib /usr/lib/sword /usr/local/lib /usr/local/lib/sword /usr/local/sword/lib" + +if test "$ac_static_sword" = "YES"; then + SEARCH_LIBS="libsword.a"; +else + SEARCH_LIBS="libsword.a libsword.so"; +fi + + +AC_CACHE_VAL(ac_cv_sword_libdir, AC_FIND_FILE($SEARCH_LIBS, $ac_sword_library_dirs, ac_cv_sword_libdir)) + +if test "$ac_cv_sword_libdir" = "NO"; then + AC_MSG_ERROR(SWORD library not found. Try to use configure with --with-sword-dir=/your/SWORD/path!); +fi + +if test "$ac_static_sword" = "YES"; then + LIB_SWORD="$ac_cv_sword_libdir/libsword.a"; +else + LIB_SWORD="-lsword"; +fi + +AC_SUBST(SWORD_LIBRARY_PATH) +AC_SUBST(LIB_SWORD) +all_libraries="$all_libraries -L$ac_cv_sword_libdir" + +if test "$ac_static_sword" = "YES"; then + MESSAGE="static library $ac_cv_sword_libdir/libsword.a"; +else + MESSAGE="$ac_cv_sword_libdir"; +fi +AC_MSG_RESULT([$MESSAGE]) + + + +dnl -- try to find Swords include files -- +AC_MSG_CHECKING([for Sword include files]) +ac_sword_include_dirs="$ac_sword_dir/include/sword $ac_sword_dir/include /usr/include/sword /usr/include /usr/local/include/sword /usr/local/include /usr/local/sword/include /usr/local/sword/include/sword" + +AC_CACHE_VAL(ac_cv_sword_incdir, AC_FIND_FILE(swmgr.h, $ac_sword_include_dirs, ac_cv_sword_incdir)) + +if test "$ac_cv_sword_incdir" = "NO"; then + AC_MSG_ERROR([The Sword include file files were not found. +Please try to use configure with --with-sword-dir=/your/SWORD/path ! +]) +fi + +SWORD_INCLUDES="-I$ac_cv_sword_incdir" +AC_SUBST(SWORD_INCLUDES) +all_includes="$all_includes -I$ac_cv_sword_incdir" + +AC_MSG_RESULT([$ac_cv_sword_incdir]) + + + +dnl -- check if Sword matches the minimum version -- +AC_MSG_CHECKING([if you have Sword $1 or later]) + +AC_CACHE_VAL(ac_cv_installed_sword_version, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$" +LDFLAGS="$LDFLAGS -L$ac_cv_sword_libdir" +LIBS="$LIB_SWORD -lz" +LD_LIBRARY_PATH="$ac_cv_sword_libdir" +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + +cat > conftest.$ac_ext <<EOF +#include <iostream.h> +#include <swversion.h> + +int main(int argc, char* argv[]) { + if (argc != 2) { + cout << SWVersion::currentVersion << endl; + } + else if (argc == 2) + { + if (SWVersion(&argv[[1]]) < SWVersion::currentVersion || SWVersion(&argv[[1]]) == SWVersion::currentVersion) + { + cout << 0 << endl; + return 0; + } + else + { + cout << 1 << endl; + return 1; //version not recent enough + } + } + return 0; +} +EOF + +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +if AC_TRY_EVAL(ac_link) && test -s conftest; then + if test -x conftest; then + eval ac_cv_installed_sword_version=`./conftest 2>&5` + eval sword_test_returncode=`./conftest $1 2>&5`; + fi +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +right_version="ok"; +if test $sword_test_returncode = 1; then + right_version="wrong version"; +fi; + +AC_MSG_RESULT([$ac_cv_installed_sword_version]) +if test $right_version != "ok"; then + AC_MSG_ERROR([Your Sword installation is not recent enoought! Please +upgrade to version $1!]); +fi; + +]) -- 2.30.2
  • Elemente des BibleTime Fensters

    Jetzt öffnet sich das BibleTime Fenster. Die Bedienung wird im nächsten Kapitel erklärt.

    Das BibleTime Anwendungsfenster

    In Dokumenten suchen

    Teile der Anweisungen zur Benutzung von GCC Regulären Ausdrücken in Dokumente Durchsuchen ist übernommen aus den Hilfedateien der Microsoft Windows® Version von Sword

    Zugriff auf Suchfunktionen

    Sie können in einem Dokument suchen indem Sie mit der rechten Maustaste auf den Dokumentennamen innerhalb der Hauptgruppe klicken und dann Durchsuche gewählte Module auswählen. Durch drücken von Umschalt- oder Strg währende dem klicken auf andere Modulenamen können Sie mehr als eines auswählen. Gehen Sie in der selben Art und Weise vor, um in allen gewählten Modulen zu suchen.

    Benutzung des Suchdialoges

    Das Modul Auswählen Tab benutzen

    Auf der linken Seite der Modulauswahl sehen Sie eine Liste aller auf Ihrem System installerten Module, die für BibleTime.verfügbar sind. Auf der rechten Seite befindet sich eine Liste mit allen Modulen, die in der aktuellen Suche durchsucht werden sollen. Um ein Modul von der linken zur rechten Seite zu bewegen, left mouse button darauf um es auszuwählen, dann left mouse button auf einem der Pfeil-Buttons.

    Das "Text" Tab benutzen

    Suche Text - In diesem Teil geben Sie den zu suchenden Text ein und Sie setzen Sucheinstellungen. "Reguläre Ausdrücke" benutzen RegExp Syntax um die Suche zu verfeinern.

    Sucheinstellungen

    Die Textbox in dem Feld Sucheinstellungen ist der Ort, wo Sie den zu suchenden Text eingeben können. Er kann aus einem oder mehreren Worten bestehen, oder auch aus Wortteilen(trennen Sie Wörter und Wortteile mit Leerzeichen) oder Regulären Ausdrücken bestehen. Sie können die Radio Buttons verwenden, um die Suche im "Mehrere Wörter", "Exakte Suche" oder "Reguläre Ausdrücke" Modus auszuführen. Mit einer Checkbox können Sie die Unterscheidung zwischen Groß- und Kleinbuchstaben an- und ausschalten.

    Tip

    Hier funktioniert Drag&Drop, Sie können Verse und Lesezeichen in die Text-Eingabebox ziehen. Sie können Text in die Zwischenablage kopieren und in die Eingabezeile einfügen.

    Benutzung des Knopfes für GROSS/klein Unterscheidung

    Klicken Sie auf die GROß/klein Box, um die Unterscheidung an oder aus zu schalten. Wenn die Box angeschaltet ist, wird die Suche nur Verse finden, in denen der Text genauso wie in der Texteingabezeile auftaucht. Falls die Box ausgeschaltet ist, wird die Suche Treffer finden, sie sich auch in der Groß- und Kleinschreibung unterscheiden. Um "HERR" jedoch nicht "Herr" oder "herr" zu finden, wählen Sie die Option aus. Um mit "HERR" und "Herr" "herr" zu finden, lassen Sie die Option ausgeschaltet.

    Benutzung des "Mehrere Wörter" Button

    Wenn "Mehrere Wörter" ausgewählt ist, wird die Suche alle Verse finden, die alle Worte (oder Wortteile) enthalten. Die Position und Reihenfolge der The position Worte spielt keine Rolle. Wenn alle Worte in einem Vers enthalten sind, wird er in der Liste der gefundenen Verse angezeigt. Eine Suche nach "prove cause" wird 1 Mose 21:25 finden, "And Abraham reproved Abimelech be cause of a well of water..." Es reicht also sogar, wenn die gesuchten Worte in den Worten des Verses enthalten sind.

    Benutzung der Genauen Suche

    Wenn Genaue Suche ausgewählt wurde, wird die Suche alle Zeilen (oder Verse) finden, die genau den in der Eingabezeile eingegebenen Text unter Einbezug aller Leerzeichen enthalten. Der gesuchte Satz muss nicht an einer Wortgrenze starten. Eine Suche nach "amt begehrt" wird 1. Thimotheus 3:1 finden: "Das ist gewißlich wahr: So jemand ein Bischofsamt begehrt, der begehrt ein köstlich Werk."

    Benutzung des Knopfes Text Suchen

    Klicken Sie den Knopf Suchen um die Suche zu starten.

    Suchbereich-Einstellung

    Definieren Sie den Bereich Ihrer Suche im Panel Suchbereich

    • Kein Suchbereich schaltet den Suchbereich Tab aus. Das ganze Dokument wird durchsucht.

    • Letztes Suchergebnis Die neue Suche wird nur innerhalb der Verse suchen, die in der letzten Suche gefunden wurden.

    • Suchbereich benutzen Die neue Suche wird innerhalb des angegebenen Suchbereiches ausgeführt.

    Wenn Kein Suchbereich ausgewählt ist, und die KJV Bible nach "Jesus" durchsucht wird, werden 939 Verse gefunden. Wenn dann Letztes Ergebnis ausgewählt ist, und eine weitere Suche nach "Christ", durchgeführt wird, werden 257 Verse der 939 Treffer der letzten Suche übrigbleiben. Wenn dann noch (Letztes Suchergebnis bleibt ausgewählt) nach "Lord" gesucht wird, bleiben von den 257 Versen noch 106 übrig. Alle diese 106 Verse enthalten "Jesus", "Christ" und "Lord". Alle diese Verse enthalten "Jesus", "Christ" und "Lord".

    Bereiche bearbeiten

    Bereiche bearbeiten - Sie können obere und untere Grenzen für die Suche eingeben mit left mouse button Bereiche beabeiten Button.

    Bereich verändern Box

    Die voreingestellten Einträge zeigen Beispiele der verlangten Syntax.

    Wenn der HInzufügen Button geclickt wurde, wird eine Textbox angezeigt, in der der Name für den Bereich eingegeben wird. Geben sie jetzt den gewünschten Bereich ein und clicken Sie Schließen. Ihr Bereich wird nun zur Bereichsliste hinzugefügt.

    Eine Anzahl von angepassten Bereichen wurde zur Verfügung gestellt.

    Wenn Kein Suchbereich ausgewählt ist, und die KJV Bible nach "Jesus" durchsucht wird, werden 939 Verse gefunden. Wenn dann Letztes Ergebnis ausgewählt ist, und eine weitere Suche nach "Christ", durchgeführt wird, werden 257 Verse der 939 Treffer der letzten Suche übrigbleiben. Wenn dann noch (Letztes Suchergebnis bleibt ausgewählt) nach "Lord" gesucht wird, bleiben von den 257 Versen noch 106 übrig. Alle diese 106 Verse enthalten "Jesus", "Christ" und "Lord". Alle diese Verse enthalten "Jesus", "Christ" und "Lord".

    Tip

    Drag & Drop funktioniert hier; Sie können Versreferenzen und Lesezeichen in die Bereichsbox fallen lassen, ebenso können Sie normalen Text einfügen.

    Benutzung des Tabs Suchergebnis

    Suchergebnis - Dies zeigt Ihnen - nach Modulen geordnet - wie viele Treffer des gesuchten Textes gefunden wurden. Klicken auf das Dokument wird die Liste der Referenzen öffnen. Das Klicken auf eine Referenz öffnet diese im Fenster darunter. Ziehen Sie die Referenz und lassen Sie diese auf einem Dokument in der Hauptgruppe fallen, um dieses Modul an der gewünschten Stelle zu öffnen.

    Tip

    Hier funktioniert Drag&Drop

    Tip

    Wählen Sie eine Versnummer und ziehen Sie diese in die Hauptgruppe um Lesezeichen anzulegen,

    Tip

    Wählen Sie einen Vers aus und ziehen Sie ihn auf ein ungeöffnetes Modul, um dieses zu öffnen und damit dieses die gewünschte Stelle anzeigt (Nur für Bibeln und Kommentare).

    Tip

    Wählen Sie einen Vers aus und ziehen Sie diesen auf ein geöffnetes Dokument, um das Anzeigefenster an diese Stelle springen zu lassen (Nur in Bibeln und Kommentaren).

    Benutzung des Suchanalyse Teils

    Suchanalyse - Dies zeigt eine grafische Analyse der Anzahl der Treffer in jedem Buch. Sie kann das Ergebnis aller Dokumente anzeigen. Sie können den Graphen auch als Bild auf Festplatte abspeichern.

    Syntax der Suche bei Benutzung von GCC regulären Ausdrücken

    Eine Suche mit regulären Ausdrücken stellt eine Möglichkeit dar, einfache oder komplexe Suchen nach Zeichenketten durchzuführen, die einem Muster oder einer Menge von Mustern (Bereiche) entsprechen. Die einzelnen Muster einer Menge werden durch den horizontalen Strich "|" getrennt. Während es möglich ist, ein Muster zu bauen, dass nach einem Wort oder einem Satz sucht, sucht ein einfaches aus einem einzelnen Wort bestehendes Muster nicht nur nach diesem einen Wort, sondern auch nach jeder Zeichenkette die das gesuchte Wort enthält. Eine Suche nach "gerecht" wird Verse liefern, die das Wort "gerecht" enthalten. Es werden jedoch auch Verse zurückgeliefert, die "Gerechtigkeit", "Ungerechtigkeit" oder "gerechter" enthalten. Eine Suche nach "hall not" ist nicht eine Suche nach "hall" UND "not", sondern nach der Zeichenkette "hall not" mit einem Leerzeichen zwischen dem zweiten "l" und dem "n". Die Suche nach "hall not" wird Textstellen mit "shall not" finden.

    Die Mächtigkeit der regulären Ausdrücke liegt in den Mustern (oder Vorlagen) die benutzt werden, um die Suche zu definieren. Ein Muster besteht aus normalen Zeichen und einigen besonderen Zeichen, die von einer bestimmten Menge von Regeln interpretiert und benutzt werden. Die besonderen Zeichen enthalten .\[^*$?+. Normale (oder einfache) Zeichen, sind alle die, die keine besonderen Zeichen sind. Der Backslash, "\", wird benutzt um die besonderen Zeichen in normale und normale in besondere Zeichen umzuwandeln.

    Beispiel: das Muster "i. love\." wird Sätze finden, die mit "his love" oder "in love" oder "is love" enden, gefolgt von einem Punkt. Der erste Punkt in "i. love\." ist ein spezielles Zeichen, das ein Platzhalter für ein beliebiges Zeichen an dieser Stelle ist.Der Backslash in "i. love\." markiert den folgenden Punkt als normales Zeichen (der sonst ein Sonderzeichen ist).

    Regeln für Suchabfragen mit GCC regulären Ausdrücken

    • . Der Punkt passt auf jedes Zeichen. Siehe auch Einzelheiten

    • * Der Stern findet 0 oder mehr Zeichen des vorhergehenden Sets, des vorhergehenden Zeichens oder des vorhergehenden besonderern Zeichens. Siehe auch Einzelheiten

    • + Das Pluszeichen findet 1 oder mehr Zeichen des vorhergehenden Sets, des vorhergehenden Zeichens oder des vorhergehenden besonderern Zeichens. Siehe auch Einzelheiten.

    • ? Das Fragezeichen passt auf 0 oder 1 Zeichen des vorhergehenden Sets, Zeichens oder besonderern Zeichens. Siehe auch Einzelheiten

    • [ ] Eckige Klammern finden ein Zeichens innerhalb der eckigen Klammern [ ]. Siehe auch Einzelheiten

    • ^ Ein Hochzeichen als erstes Zeichen innerhalb von [ ] heißt NICHT. Siehe auch Einzelheiten

    • ^ Ein Hochzeichen als Beginn eines Musters verankert an den Beginn der Zeile. Siehe auch Einzelheiten

    • $ Ein Dollarzeichen am Beginn eines Musters verankert an das Ende einer Zeile. Siehe auch Einzelheiten

    • | Ein vertikaler Strich hat die Bedeutung des logischen ODER. Siehe auch Einzelheiten

    • ( ) Runde Klammern gruppieren Ausdrücke. Wird nicht unterstützt!

    • \ Ein Backslash kann vor jedem besonderem Zeichen benutzt werden, um dieses Zeichen zu finden. Siehe auch Einzelheiten

    • \ Ein Backslash kann vor jedem normalen Zeichen benutzt werden um es zu einem besonderen Zeichen zu machen. Siehe auch Einzelheiten

    Der Punkt .

    Der Punkt "." steht für jedes einzelne Zeichen, sogar für ein Leerzeichen oder für ein Zeichen, dass nicht im Alphabet vorkommt. s.t findet sit, set, sot, usw., welche in folgenden Zeichenketten vorkommen können sitting, compasseth and sottish b..t findet boot, boat und beat foot.tool findet footstool und foot tool

    Das Sternchen *

    Das Sternchen findet null oder mehr Zeichen des vorhergehenden Sets, Zeichens oder besonderen Zeichens. Die Benutzung einer Punkt Sternchen Kombination ".*" nach einem häufig gefundenem Muster kann die Suche sehr lange dauern lassen und das Programm eingefroren wirken lassen. be*n findet beeen, been, ben, und bn was z.B. "Reuben" und "Shebna" finden könnte.

    Das Pluszeichen +

    Das Pluszeichen findet ein oder mehr Zeichen des vorhergehenden Sets, Zeichens oder besonderen Zeichens. Die Benutzung einer Pluszeichen Sternchen Kombination "+*" nach einem häufig gefundenem Muster kann die Suche sehr lange dauern lassen und das Programm eingefroren wirken lassen. "be+n" findet "beeen, been" und "ben", jedoch nicht "bn".

    Das Fragezeichen ?

    Das Fragezeichen findet 0 oder mehr Zeichen des vorhergehenden Sets, Zeichens oder besonderen Zeichens. be?n findet ben und bn jedoch nicht been. trees? findet trees oder tree.

    Die eckigen Klammern [ ]

    Die eckigen Klammern schließen eine Menge von Zeichen ein, die Treffer erzielen können. Die Zeichen Punkt, Sternchen, Pluszeichen und Fragezeichen werden innerhalb der Klammern nicht als besondere Zeichen behandelt. Ein Minuszeichen kann benutzt werden, um einen Bereich anzugeben. Falls Sie möchten, dass ein Hochzeichen "^" Teil des Bereiches wird plazieren Sie es nicht direkt hinter die linke Klammer, oder es wird als besonderes Zeichen behandelt. Um den vertikalen Strich "|" in die Menge aufzunehmen, machen Sie ihn zum ersten Zeichen nach der linken eckigen Klammer (oder zweites nach dem besonderen Zeichen "^"). Um ein Minuszeichen in die Menge aufzunehmen machen Sie es zum ersten Zeichen nach der linken Klammer (oder zweites nach dem besonderen Zeichen "^") oder auch zum letzten Zeichen der Menge. s[eia]t findet set, sit, und sat, jedoch nicht sot. s[eia]+t findet so wie oben undseat, seet, siet, usw. [a-d] findet a, b, c, oder d. [A-Z] findet jeden Großbuchstaben. [.;:?!] findet ., ;, :, ?, oder ! jedoch kein Komma. [ ]^-] findet ] oder ^ oder -

    Das Hochzeichen zu Beginn in den eckigen Klammern [^xxx

    Wenn das Hochzeichen das erste Zeichen nach der linken Klammer ist, hat es die Bedeutung von NICHT. s[^io]t findet set, sat, usw., jedoch nicht sit und sot.

    Das Hochzeichen als Zeilenbeginn Anker ^xxx

    Wenn das Hochzeichen das erste Zeichen in einem Muster ist, verankert es diese an den Beginn der Zeile. Jeder Treffer muss am Beginn der Zeile liegen. Wegen ungefilterten Formatierungszeichen in einigen Texten funktioniert diese Funktion nicht immer. Sie könnte es jedoch, wenn einige Punkte nach dem Hochzeichen gesetzt werden, um die Formatierungszeichen zu umgehen. ^Am Anfang findet Zeilen, die mit "Amfang". beginnen (Vielleicht müssen Sie "^.....Am Anfang" benutzen).

    Das Dollarzeichen als Zeilenende Anker xxx$

    Wenn das Dollarzeichen das letzte des Musters ist, verankert es das Muster an das Ende der Zeile. Jeder Treffer muss am Ende der Zeile stattfinden. Wegen ungefilterten Formatierungszeichen in einigen Texten funktioniert diese Funktion nicht immer. Sie könnte es jedoch, wenn einige Punkte vor das Dollarzeichen gesetzt werden, um die Formatierungszeichen zu umgehen. Amen\.$ findet Zeilen, die mit "Amen." enden (Vielleicht müssen Sie "Amen\....", "Amen\..........$", oder sogar "Amen\....................$" benutzen)

    Der senkrechte Strich |

    Der vertikale Strich zwischen Mustern bedeutet ODER. John|Peter findet John. Peter. John .*Peter|Peter .*John matches John ... Peter oder Peter ... John. (.* slows a search) pain|suffering|sorrow findetpain, oder suffering, oder sorrow.

    Die runden Klammern ( )

    Die Benutzung der runden Klammern () wird nicht unterstützt.

    Der Backslash vor einem besonderen Zeichen \*

    Der Backslash vor einem besonderen Zeichen bedeutet, dass das Zeichen nicht in seiner besonderen Bedeutung behandelt werden soll, sondern dass es das Zeichen selbst sein soll. "amen\." findet "amen.", jedoch nicht "ament" und es wird nicht "firmament".

    Der Backslash vor einem normalen Zeichen \s

    Der Backslash vor einem normalen Zeichen bedeutet, dass dieses statt der normalen Bedeutung eine besondere haben soll.

    • \b ausßerhalb von [ ] benutzt, bedeutet es Wortgrenze. Innerhalb von [ ] hat die es die Bedeutung des Backspace. \brighteous\b findet righteous, aber nicht unrighteous oder righteousness

    • \B steht für keine Wortgrenze. \Brighteous\B findet unrighteousness und unrighteously, jedoch nicht righteous, unrighteous oder righteousness.

    • \d steht für Zahlen; das Gleiche wie [0-9].

    • \D steht für nicht-Zahlen; das Gleiche wie [^0-9].

    • \s bedeutet Leerzeichen.

    • \S steht für nicht-Leerzeichen.

    • \w bedeutet alphanumerisch; das Gleiche wie [a-zA-Z0-9_].

    • \W bedeutet nicht-alphanumerisch; das Gleiche wie [^a-zA-Z0-9_].