require 'package' class Docbook_xml45 < Package description 'A widely used XML scheme for writing documentation and help' homepage 'https://www.oasis-open.org/docbook/' @_ver = '4.5' version "#{@_ver}-2" license 'MIT' compatibility 'all' source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip" source_sha256 '4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4' binary_compression 'tar.xz' binary_sha256({ aarch64: 'b44a8b0e4ba631b8d96fcd43e6260f4fc13974a0b548a6922aff1ebb94b6a11f', armv7l: 'b44a8b0e4ba631b8d96fcd43e6260f4fc13974a0b548a6922aff1ebb94b6a11f', i686: 'd7c4736695b20569bfaf6f4366d2dd43c15997ccc086a5df3b5cb0b1ad3be73b', x86_64: '9f9bdfcf4ae7d21182ab4056a4a27d6689ce1b5baf117505a9fdc2a4eda2a6e1' }) depends_on 'docbook_xml' depends_on 'xmlcatmgr' depends_on 'libxml2' no_upstream_update def self.install FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver}" system "cp -dr docbook.cat *.dtd ent/ *.mod #{CREW_DEST_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver}" FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/xml" end def self.preinstall # Docbook common preinstall block FileUtils.mkdir_p "#{CREW_PREFIX}/etc/xml" if File.exist?("#{CREW_PREFIX}/etc/xml/catalog") && !File.empty?("#{CREW_PREFIX}/etc/xml/catalog") puts "#{CREW_PREFIX}/etc/xml/catalog exists" if @opt_verbose else puts "Creating #{CREW_PREFIX}/etc/xml/catalog" if @opt_verbose FileUtils.rm_f "#{CREW_PREFIX}/etc/xml/catalog" system "xmlcatalog --noout --create #{CREW_PREFIX}/etc/xml/catalog" end if File.exist?("#{CREW_PREFIX}/etc/xml/docbook-xml") && !File.empty?("#{CREW_PREFIX}/etc/xml/docbook-xml") puts "#{CREW_PREFIX}/etc/xml/docbook-xml not empty" if @opt_verbose else puts "Creating #{CREW_PREFIX}/etc/xml/docbook-xml" if @opt_verbose FileUtils.rm_f "#{CREW_PREFIX}/etc/xml/docbook-xml" system "xmlcatalog --noout --create #{CREW_PREFIX}/etc/xml/docbook-xml" end # End Docbook common preinstall block end def self.postinstall system "xmlcatalog --noout --add 'public' \ '-//OASIS//ELEMENTS DocBook XML HTML Tables V#{@_ver}//EN' \ 'http://www.oasis-open.org/docbook/xml/#{@_ver}/htmltblx.mod' \ '#{CREW_PREFIX}/etc/xml/docbook-xml'" system "xmlcatalog --noout --add rewriteSystem \ http://www.oasis-open.org/docbook/xml/#{@_ver} \ #{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \ #{CREW_PREFIX}/etc/xml/docbook-xml" system "xmlcatalog --noout --add rewriteURI \ http://www.oasis-open.org/docbook/xml/#{@_ver} \ #{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \ #{CREW_PREFIX}/etc/xml/docbook-xml" system "xmlcatalog --noout --add 'public' \ '-//OASIS//DTD DocBook XML V#{@_ver}//EN' \ 'http://www.oasis-open.org/docbook/xml/#{@_ver}/docbookx.dtd' \ '#{CREW_PREFIX}/etc/xml/docbook-xml'" system "xmlcatalog --noout --add \"delegatePublic\" \ \"-//OASIS//ENTITIES DocBook XML\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add \"delegatePublic\" \ \"-//OASIS//DTD DocBook XML\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add \"delegateSystem\" \ \"http://www.oasis-open.org/docbook/\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ '#{CREW_PREFIX}/etc/xml/catalog'" system "xmlcatalog --noout --add \"delegateURI\" \ \"http://www.oasis-open.org/docbook/\" \ \"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \ '#{CREW_PREFIX}/etc/xml/catalog'" end end