From patchwork Thu Aug 4 23:20:19 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Kosnik X-Patchwork-Id: 108586 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id D7FA6B6F18 for ; Fri, 5 Aug 2011 09:20:48 +1000 (EST) Received: (qmail 13335 invoked by alias); 4 Aug 2011 23:20:44 -0000 Received: (qmail 13322 invoked by uid 22791); 4 Aug 2011 23:20:39 -0000 X-SWARE-Spam-Status: No, hits=-6.3 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, SPF_HELO_PASS, TW_LW, TW_TD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 04 Aug 2011 23:20:22 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p74NKMBd002343 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 4 Aug 2011 19:20:22 -0400 Received: from shotwell (ovpn-113-169.phx2.redhat.com [10.3.113.169]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p74NKK6v023231 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Thu, 4 Aug 2011 19:20:21 -0400 Date: Thu, 4 Aug 2011 16:20:19 -0700 From: Benjamin Kosnik To: gcc-patches@gcc.gnu.org, libstdc++@gcc.gnu.org Subject: [v3] docbook vs. images Message-ID: <20110804162019.2a0e4267@shotwell> Mime-Version: 1.0 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org This fixes the docbook html output with respect to images. Now, filerefs for PNG data are relative to the html install directory, and an images directory is copied and populated so that the links match PNG files. tested x86/linux -benjamin 2011-08-04 Benjamin Kosnik * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG imagedata. * doc/xml/manual/test_policy_data_structures.xml: Same. * doc/xml/manual/policy_data_structures.xml: Same. * doc/Makefile.am (stamp-html-docbook-images) (stamp-html-docbook-lwg, stamp-html-docbook-data): New. (xml_extra): Add lwg html file dependencies. (xml_images): Add image html file dependencies. * doc/Makefile.in: Regenerate. (stamp-html): Change to stamp-html-docbook-data. (stamp-html-copy): Remove. Index: doc/xml/manual/build_hacking.xml =================================================================== --- doc/xml/manual/build_hacking.xml (revision 177416) +++ doc/xml/manual/build_hacking.xml (working copy) @@ -45,10 +45,10 @@ Configure and Build File Dependencies - + - + Dependency Graph for Configure and Build Files Index: doc/xml/manual/test_policy_data_structures.xml =================================================================== --- doc/xml/manual/test_policy_data_structures.xml (revision 177416) +++ doc/xml/manual/test_policy_data_structures.xml (working copy) @@ -106,7 +106,7 @@ + fileref="../images/pbds_text_find_timing_test_hash_local.png"/> @@ -433,7 +433,7 @@ + fileref="../images/pbds_cc_hash_random_int_find_timing_test_local.png"/> @@ -694,7 +694,7 @@ + fileref="../images/pbds_gp_hash_random_int_find_timing_test_local.png"/> @@ -953,7 +953,7 @@ + fileref="../images/pbds_cc_hash_random_int_subscript_timing_test_find_local.png"/> @@ -1212,7 +1212,7 @@ + fileref="../images/pbds_gp_hash_random_int_subscript_timing_test_find_local.png"/> @@ -1452,7 +1452,7 @@ + fileref="../images/pbds_cc_hash_random_int_subscript_timing_test_insert_local.png"/> @@ -1711,7 +1711,7 @@ + fileref="../images/pbds_gp_hash_random_int_subscript_timing_test_insert_local.png"/> @@ -1983,7 +1983,7 @@ + fileref="../images/pbds_hash_zlob_random_int_find_timing_test_local.png"/> @@ -2282,7 +2282,7 @@ + fileref="../images/pbds_hash_random_int_erase_mem_usage_test_local.png"/> @@ -2568,7 +2568,7 @@ + fileref="../images/pbds_tree_text_insert_timing_test_node_tree_local.png"/> @@ -2687,7 +2687,7 @@ + fileref="../images/pbds_tree_text_insert_timing_test_vector_tree_local.png"/> @@ -2779,7 +2779,7 @@ + fileref="../images/pbds_tree_text_insert_timing_test_pat_trie_local.png"/> @@ -2941,7 +2941,7 @@ + fileref="../images/pbds_text_find_timing_test_tree_like_local.png"/> @@ -3213,7 +3213,7 @@ + fileref="../images/pbds_tree_text_lor_find_timing_test_local.png"/> @@ -3456,7 +3456,7 @@ + fileref="../images/pbds_tree_split_join_timing_test_local.png"/> @@ -3716,7 +3716,7 @@ + fileref="../images/pbds_tree_order_statistics_timing_test_local.png"/> @@ -3909,7 +3909,7 @@ + fileref="../images/pbds_multimap_text_find_timing_test_small_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_small_s2p_hash_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_large_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_large_s2p_hash_local.png"/> + fileref="../images/pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_small_s2p_hash_local.png"/> + fileref="../images/pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_large_s2p_hash_local.png"/> + fileref="../images/pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_large_s2p_hash_local.png"/> + fileref="../images/pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png"/> + fileref="../images/pbds_multimap_text_find_timing_test_large_s2p_hash_local.png"/> + fileref="../images/pbds_priority_queue_text_push_timing_test_local.png"/> @@ -6898,7 +6898,7 @@ + fileref="../images/pbds_pairing_priority_queue_text_push_timing_test_local.png"/> @@ -7097,7 +7097,7 @@ + fileref="../images/pbds_priority_queue_text_push_pop_timing_test_local.png"/> @@ -7285,7 +7285,7 @@ + fileref="../images/pbds_pairing_priority_queue_text_push_pop_timing_test_local.png"/> @@ -7464,7 +7464,7 @@ + fileref="../images/pbds_priority_queue_random_int_push_timing_test_local.png"/> @@ -7652,7 +7652,7 @@ + fileref="../images/pbds_binary_priority_queue_random_int_push_timing_test_local.png"/> @@ -7816,7 +7816,7 @@ + fileref="../images/pbds_priority_queue_random_int_push_pop_timing_test_local.png"/> @@ -8081,7 +8081,7 @@ + fileref="../images/pbds_priority_queue_text_pop_mem_usage_test_local.png"/> @@ -8333,7 +8333,7 @@ + fileref="../images/pbds_priority_queue_text_join_timing_test_local.png"/> @@ -8592,7 +8592,7 @@ + fileref="../images/pbds_priority_queue_text_modify_up_timing_test_local.png"/> @@ -8780,7 +8780,7 @@ + fileref="../images/pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png"/> @@ -8954,7 +8954,7 @@ + fileref="../images/pbds_priority_queue_text_modify_down_timing_test_local.png"/> @@ -9142,7 +9142,7 @@ + fileref="../images/pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png"/> Index: doc/xml/manual/policy_data_structures.xml =================================================================== --- doc/xml/manual/policy_data_structures.xml (revision 177416) +++ doc/xml/manual/policy_data_structures.xml (working copy) @@ -304,7 +304,7 @@ + fileref="../images/pbds_node_invariants.png"/> Node Invariants @@ -333,7 +333,7 @@ + fileref="../images/pbds_different_underlying_dss_1.png"/> Underlying Associative Data Structures @@ -516,7 +516,7 @@ + fileref="../images/pbds_point_iterators_range_ops_1.png"/> Node Invariants @@ -597,7 +597,7 @@ + fileref="../images/pbds_point_iterators_range_ops_2.png"/> Point Iteration in Hash Data Structures @@ -638,7 +638,7 @@ + fileref="../images/pbds_invalidation_guarantee_erase.png"/> Effect of erase in different underlying data structures @@ -1028,7 +1028,7 @@ + fileref="../images/pbds_different_underlying_dss_2.png"/> Underlying Priority Queue Data Structures @@ -1326,7 +1326,7 @@ + fileref="../images/pbds_exception_hierarchy.png"/> Exception Hierarchy @@ -2359,7 +2359,7 @@ + fileref="../images/pbds_embedded_lists_1.png"/> Non-unique Mapping Standard Containers @@ -2385,7 +2385,7 @@ + fileref="../images/pbds_embedded_lists_2.png"/> @@ -2513,7 +2513,7 @@ + fileref="../images/pbds_embedded_lists_3.png"/> Non-unique Mapping Containers @@ -2612,7 +2612,7 @@ + fileref="../images/pbds_point_iterator_hierarchy.png"/> Point Iterator Hierarchy @@ -2684,7 +2684,7 @@ + fileref="../images/pbds_invalidation_tag_hierarchy.png"/> Invalidation Guarantee Tags Hierarchy @@ -2843,7 +2843,7 @@ + fileref="../images/pbds_container_tag_hierarchy.png"/> Container Tag Hierarchy @@ -3016,7 +3016,7 @@ + fileref="../images/pbds_hash_ranged_hash_range_hashing_fns.png"/> Hash functions, ranged-hash functions, and @@ -3292,7 +3292,7 @@ + fileref="../images/pbds_hash_range_hashing_seq_diagram.png"/> Insert hash sequence diagram @@ -3312,7 +3312,7 @@ + fileref="../images/pbds_hash_range_hashing_seq_diagram2.png"/> Insert hash sequence diagram with a null policy @@ -3368,7 +3368,7 @@ + fileref="../images/pbds_hash_policy_cd.png"/> Hash policy class diagram @@ -3458,7 +3458,7 @@ + fileref="../images/pbds_balls_and_bins.png"/> Balls and bins @@ -3579,7 +3579,7 @@ + fileref="../images/pbds_insert_resize_sequence_diagram1.png"/> Insert resize sequence diagram @@ -3607,7 +3607,7 @@ + fileref="../images/pbds_insert_resize_sequence_diagram2.png"/> Standard resize policy trigger sequence @@ -3622,7 +3622,7 @@ + fileref="../images/pbds_insert_resize_sequence_diagram3.png"/> Standard resize policy size sequence @@ -3929,7 +3929,7 @@ + fileref="../images/pbds_tree_node_invariants.png"/> Tree node invariants @@ -3968,7 +3968,7 @@ + fileref="../images/pbds_tree_node_invalidations.png"/> Tree node invalidation @@ -4027,7 +4027,7 @@ + fileref="../images/pbds_tree_node_updator_policy_cd.png"/> A tree and its update policy @@ -4067,7 +4067,7 @@ + fileref="../images/pbds_restoring_node_invariants.png"/> Restoring node invariants @@ -4090,7 +4090,7 @@ + fileref="../images/pbds_update_seq_diagram.png"/> Insert update sequence @@ -4176,7 +4176,7 @@ + fileref="../images/pbds_rationale_null_node_updator.png"/> Useless update path @@ -4375,7 +4375,7 @@ + fileref="../images/pbds_pat_trie.png"/> A PATRICIA trie @@ -4413,7 +4413,7 @@ + fileref="../images/pbds_trie_node_updator_policy_cd.png"/> A trie and its update policy @@ -4548,7 +4548,7 @@ + fileref="../images/pbds_simple_list.png"/> A simple list @@ -4575,7 +4575,7 @@ + fileref="../images/pbds_list_update.png"/> The counter algorithm @@ -4873,7 +4873,7 @@ + fileref="../images/pbds_priority_queue_different_underlying_dss.png"/> Underlying Priority-Queue Data-Structures. @@ -4997,7 +4997,7 @@ + fileref="../images/pbds_priority_queue_tag_hierarchy.png"/> Priority-Queue Data-Structure Tags. Index: doc/Makefile.am =================================================================== --- doc/Makefile.am (revision 177416) +++ doc/Makefile.am (working copy) @@ -136,16 +136,9 @@ # HTML htmldir="$(DESTDIR)@docdir@" -stamp-html: stamp-html-copy stamp-html-doxygen +stamp-html: stamp-html-docbook-data stamp-html-doxygen $(STAMP) stamp-html -copydir=${docbook_outdir}/html/manual/ext/ -stamp-html-copy: stamp-html-docbook - cp -r ${top_srcdir}/doc/html/ext ${docbook_outdir}/html/manual/ext - cd ${docbook_outdir}/html/manual/ext - rm -rf ${docbook_outdir}/html/manual/ext/.svn - $(STAMP) stamp-html-copy - doc-html: stamp-html doc-install-html: doc-html @@ -367,13 +360,97 @@ ${xml_sources_manual} \ ${xml_sources_extra} +image_dir = ${xml_dir}/images +xml_images = \ + ${image_dir}/confdeps.png \ + ${image_dir}/pbds_balls_and_bins.png \ + ${image_dir}/pbds_binary_priority_queue_random_int_push_timing_test_local.png \ + ${image_dir}/pbds_cc_hash_random_int_find_timing_test_local.png \ + ${image_dir}/pbds_cc_hash_random_int_subscript_timing_test_find_local.png \ + ${image_dir}/pbds_cc_hash_random_int_subscript_timing_test_insert_local.png \ + ${image_dir}/pbds_container_tag_hierarchy.png \ + ${image_dir}/pbds_different_underlying_dss_1.png \ + ${image_dir}/pbds_different_underlying_dss_2.png \ + ${image_dir}/pbds_embedded_lists_1.png \ + ${image_dir}/pbds_embedded_lists_2.png \ + ${image_dir}/pbds_embedded_lists_3.png \ + ${image_dir}/pbds_exception_hierarchy.png \ + ${image_dir}/pbds_gp_hash_random_int_find_timing_test_local.png \ + ${image_dir}/pbds_gp_hash_random_int_subscript_timing_test_find_local.png \ + ${image_dir}/pbds_gp_hash_random_int_subscript_timing_test_insert_local.png \ + ${image_dir}/pbds_hash_policy_cd.png \ + ${image_dir}/pbds_hash_random_int_erase_mem_usage_test_local.png \ + ${image_dir}/pbds_hash_ranged_hash_range_hashing_fns.png \ + ${image_dir}/pbds_hash_range_hashing_seq_diagram2.png \ + ${image_dir}/pbds_hash_range_hashing_seq_diagram.png \ + ${image_dir}/pbds_hash_zlob_random_int_find_timing_test_local.png \ + ${image_dir}/pbds_insert_resize_sequence_diagram1.png \ + ${image_dir}/pbds_insert_resize_sequence_diagram2.png \ + ${image_dir}/pbds_insert_resize_sequence_diagram3.png \ + ${image_dir}/pbds_invalidation_guarantee_erase.png \ + ${image_dir}/pbds_invalidation_tag_hierarchy.png \ + ${image_dir}/pbds_list_update.png \ + ${image_dir}/pbds_multimap_text_find_timing_test_large_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_find_timing_test_large_s2p_tree_local.png \ + ${image_dir}/pbds_multimap_text_find_timing_test_small_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_find_timing_test_small_s2p_tree_local.png \ + ${image_dir}/pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png \ + ${image_dir}/pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png \ + ${image_dir}/pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png \ + ${image_dir}/pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png \ + ${image_dir}/pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png \ + ${image_dir}/pbds_node_invariants.png \ + ${image_dir}/pbds_pairing_priority_queue_text_push_pop_timing_test_local.png \ + ${image_dir}/pbds_pairing_priority_queue_text_push_timing_test_local.png \ + ${image_dir}/pbds_pat_trie.png \ + ${image_dir}/pbds_point_iterator_hierarchy.png \ + ${image_dir}/pbds_point_iterators_range_ops_1.png \ + ${image_dir}/pbds_point_iterators_range_ops_2.png \ + ${image_dir}/pbds_priority_queue_different_underlying_dss.png \ + ${image_dir}/pbds_priority_queue_random_int_push_pop_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_random_int_push_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_tag_hierarchy.png \ + ${image_dir}/pbds_priority_queue_text_join_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_text_modify_down_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png \ + ${image_dir}/pbds_priority_queue_text_modify_up_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png \ + ${image_dir}/pbds_priority_queue_text_pop_mem_usage_test_local.png \ + ${image_dir}/pbds_priority_queue_text_push_pop_timing_test_local.png \ + ${image_dir}/pbds_priority_queue_text_push_timing_test_local.png \ + ${image_dir}/pbds_rationale_null_node_updator.png \ + ${image_dir}/pbds_resize_policy_cd.png \ + ${image_dir}/pbds_restoring_node_invariants.png \ + ${image_dir}/pbds_simple_list.png \ + ${image_dir}/pbds_text_find_timing_test_hash_local.png \ + ${image_dir}/pbds_text_find_timing_test_tree_like_local.png \ + ${image_dir}/pbds_tree_node_invalidations.png \ + ${image_dir}/pbds_tree_node_invariants.png \ + ${image_dir}/pbds_tree_node_updator_policy_cd.png \ + ${image_dir}/pbds_tree_order_statistics_timing_test_local.png \ + ${image_dir}/pbds_tree_split_join_timing_test_local.png \ + ${image_dir}/pbds_tree_text_insert_timing_test_node_tree_local.png \ + ${image_dir}/pbds_tree_text_insert_timing_test_pat_trie_local.png \ + ${image_dir}/pbds_tree_text_insert_timing_test_vector_tree_local.png \ + ${image_dir}/pbds_tree_text_lor_find_timing_test_local.png \ + ${image_dir}/pbds_trie_node_updator_policy_cd.png \ + ${image_dir}/pbds_update_seq_diagram.png + +xml_extradir = ${glibcxx_srcdir}/doc/html/ext +xml_extra = \ + ${xml_extradir}/lwg-active.html \ + ${xml_extradir}/lwg-closed.html \ + ${xml_extradir}/lwg-defects.html + xml_noinst = \ ${xml_dir}/book.txml \ ${xml_dir}/chapter.txml \ ${xml_dir}/class.txml \ - ${xml_dir}/images/confdeps.dot \ - ${xml_dir}/images/confdeps.png \ - ${xml_dir}/images/confdeps.pdf + ${image_dir}/confdeps.dot \ + ${image_dir}/confdeps.pdf XSLTPROC = xsltproc XSLT_FLAGS = --nonet --xinclude @@ -393,6 +470,8 @@ ${docbook_outdir}/html: mkdir -p ${docbook_outdir}/html + mkdir -p ${docbook_outdir}/html/images + mkdir -p ${docbook_outdir}/html/manual/ext ${docbook_outdir}/pdf: mkdir -p ${docbook_outdir}/pdf @@ -410,7 +489,7 @@ #SCHEMA_FLAGS = --nonet /usr/share/xml/docbook5/schema/dtd/5.0/docbook.dtd XMLLINT_VALID_FLAGS = $(LINT_FLAGS) --dtdvalid $(SCHEMA_FLAGS) XMLLINT_FLAGS = --xinclude --nsclean --c14n --noent --noblanks --nocdata -doc-xml-validate-docbook: $(xml_sources) +doc-xml-validate-docbook: $(xml_sources) $(xml_images) @echo "Generating XML validation log..." $(XMLLINT) $(XMLLINT_VALID_FLAGS) ${top_srcdir}/doc/xml/spine.xml @@ -432,6 +511,18 @@ doc-xml-single-docbook: stamp-xml-single-docbook +# HTML support files +stamp-html-docbook-images: stamp-html-docbook $(xml_images) + $(INSTALL_DATA) $(xml_images) ${docbook_outdir}/html/images + $(STAMP) stamp-html-docbook-images + +stamp-html-docbook-lwg: stamp-html-docbook $(xml_extra) + $(INSTALL_DATA) $(xml_extra) ${docbook_outdir}/html/manual/ext + $(STAMP) stamp-html-docbook-lwg + +stamp-html-docbook-data: stamp-html-docbook-images stamp-html-docbook-lwg + $(STAMP) stamp-html-docbook-data + # HTML, index plus chapters stamp-html-docbook: $(xml_sources) ${docbook_outdir}/html @echo "Generating html files..." @@ -439,7 +530,7 @@ $(XSL_HTML_STYLE) ${top_srcdir}/doc/xml/spine.xml $(STAMP) stamp-html-docbook -doc-html-docbook: stamp-html-docbook +doc-html-docbook: stamp-html-docbook-data # HTML, all one page manual_html = ${docbook_outdir}/html/libstdc++-manual-single.html @@ -462,10 +553,11 @@ # PDF, via dblatex manual_pdf = ${docbook_outdir}/pdf/libstdc++-manual.pdf -DBLATEX_FLAGS = --dump --verbose --pdf -o ${manual_pdf} +DBLATEX_FLAGS = --dump --verbose --pdf stamp-pdf-docbook: $(xml_sources) ${docbook_outdir}/pdf @echo "Generating pdf dblatex files..." - dblatex $(DBLATEX_FLAGS) ${top_srcdir}/doc/xml/spine.xml + dblatex $(DBLATEX_FLAGS) \ + -o ${manual_pdf} ${top_srcdir}/doc/xml/spine.xml $(STAMP) stamp-pdf-docbook doc-pdf-docbook: stamp-pdf-docbook