Mercurial > mplayer.hg
view DOCS/xml/configure @ 30811:50e0f6942e43
Implement Win32 mutexes.
Implement Win32 mutexes; they used to just be mapped on top of events, which
is not the same thing at all.
The implementation is pretty much the obvious one, similar to the
current critical section implementation and the semaphore implementation;
a single lock count protected by a pthread mutex, and an event lockers can
sleep on to know when the mutex is available.
Also make CreateMutexA and ReleaseMutex available even if QuickTime codecs
support is not configured.
author | sesse |
---|---|
date | Sat, 06 Mar 2010 10:13:37 +0000 |
parents | 4e0ff9be2b1e |
children | 0ad2da052b2e |
line wrap: on
line source
#!/bin/sh # Script to check for catalogs, stylesheets, XSL processors and all # the other stuff necessary to convert the XML documentation. _xsltwrapper="xsltproc.sh" _xmllintwrapper="xmllint.sh" echo "Searching for XML catalogs..." for _try_catalog in \ /etc/sgml/catalog \ /usr/share/xml/docbook/*/catalog.xml \ /opt/local/share/xml/docbook-xml/*/catalog.xml \ /usr/share/sgml/docbook/*/*catalog \ /usr/share/apps/ksgmltools2/customization/en/catalog \ /usr/share/sgml/catalog \ /usr/local/share/sgml/catalog \ /usr/lib/sgml/catalog \ /usr/local/lib/sgml/catalog \ /usr/share/docbook-xml42/catalog.xml \ /usr/share/sgml/docbook/xmlcatalog do if test -f "$_try_catalog" then _catalog=$_try_catalog break fi done if test -n "$_catalog" then echo "Found SGML catalog at $_catalog" _sgmlcatalog="export SGML_CATALOG_FILES=$_catalog" else echo "No SGML catalog found." fi echo "Searching for stylesheets..." echo "Searching for html/chunk.xsl..." for _try_chunk_xsl in \ /usr/share/xml/docbook/*/html/chunk.xsl \ /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/chunk.xsl \ /usr/share/sgml/docbook/yelp/docbook/html/chunk.xsl \ /usr/local/share/sgml/docbook/stylesheet/xsl/nwalsh/html/chunk.xsl \ /usr/local/share/sgml/docbook/yelp/docbook/html/chunk.xsl \ /usr/share/docbook-xsl/html/chunk.xsl \ /usr/share/sgml/docbook/xsl-stylesheets*/html/chunk.xsl \ /usr/share/xml/docbook/stylesheet/nwalsh/current/html/chunk.xsl \ /opt/local/share/xsl/docbook-xsl/html/chunk.xsl \ do if test -f "$_try_chunk_xsl" then _chunk_xsl=$_try_chunk_xsl break fi done if test -z "$_chunk_xsl" then _chunk_xsl=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/chunk.xsl echo "Not found. Using default ($_chunk_xsl)" _fake_chunk_xsl=yes else echo "Found chunk.xsl at $_chunk_xsl" fi echo "Searching for html/docbook.xsl..." for _try_docbook_xsl in \ /usr/share/xml/docbook/*/html/docbook.xsl \ /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/docbook.xsl \ /usr/share/sgml/docbook/yelp/docbook/html/docbook.xsl \ /usr/local/share/sgml/docbook/stylesheet/xsl/nwalsh/html/docbook.xsl \ /usr/local/share/sgml/docbook/yelp/docbook/html/docbook.xsl \ /usr/share/docbook-xsl/html/docbook.xsl \ /usr/share/sgml/docbook/xsl-stylesheets*/html/docbook.xsl \ /usr/share/xml/docbook/stylesheet/nwalsh/current/html/docbook.xsl \ /opt/local/share/xsl/docbook-xsl/html/docbook.xsl \ do if test -f "$_try_docbook_xsl" then _docbook_xsl=$_try_docbook_xsl break fi done if test -z "$_docbook_xsl" then _docbook_xsl=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/docbook.xsl echo "Not found. Using default ($_docbook_xsl)" _fake_docbook_xsl=yes else echo "Found docbook.xsl at $_docbook_xsl" fi cat > html-chunk.xsl << EOF <?xml version="1.0" encoding="utf-8"?> <!-- ************************************************** This file is generated automatically. DO NOT EDIT. ************************************************** --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="$_chunk_xsl"/> <xsl:include href="html-common.xsl"/> </xsl:stylesheet> EOF cat > html-single.xsl << EOF <?xml version="1.0" encoding="utf-8"?> <!-- ************************************************** This file is generated automatically. DO NOT EDIT. ************************************************** --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="$_docbook_xsl"/> <xsl:include href="html-common.xsl"/> </xsl:stylesheet> EOF echo "Searching for DTD..." #FIXME: This should prefer higher version numbers, not the other way around .. for _try_dtd in \ /usr/share/xml/docbook/*/dtd/4*/docbookx.dtd \ /usr/share/xml/docbook/*/docbookx.dtd \ /usr/share/sgml/docbook/*/docbookx.dtd \ /usr/share/sgml/docbook/dtd/*/docbookx.dtd \ /usr/share/sgml/docbook/dtd/xml/*/docbookx.dtd \ /usr/share/docbook-xml*/docbookx.dtd \ /opt/local/share/xml/docbook*/*/docbookx.dtd \ /usr/share/apps/ksgmltools2/docbook/*/docbookx.dtd do if test -f "$_try_dtd" then _dtd=$_try_dtd break fi done if test -z "$_dtd" then _dtd=/usr/share/sgml/docbook/dtd/xml/4.1.2/docbookx.dtd echo "Not found. Using default ($_dtd)." else echo "Found docbookx.dtd at $_dtd" fi for lang in `grep 'DOC_LANGS =' ../../config.mak|cut -d= -f2`; do cat > $lang/main.xml << EOF <?xml version="1.0" encoding="utf-8" standalone="no"?> <!-- ************************************************** This file is generated automatically. DO NOT EDIT. ************************************************** --> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "$_dtd" [ EOF for file in `find $lang en -name \*.xml -exec basename \{\} \; | sort -u`; do echo '<!ENTITY '$file' SYSTEM "'$file'">' >> $lang/main.xml done cat >> $lang/main.xml << EOF ]> <book id="index" lang="$lang"> &documentation.xml; </book> EOF done echo "Looking for a valid XSLT processor..." # Checks for xsltproc, then checks for the Saxon processor (it needs Java). # Also checks for Jade/OpenJade. #FIXME: Add support for the xalan/xalan2 XSLT processors. if xsltproc --version > /dev/null 2>&1 then if test -z "$_fake_chunk_xsl" then echo "Found xsltproc. If it works, it's probably the best choice." # HACK: xslt always need a target file if a doctype is set _xsltcommand="OUTPUT=\"\$1\"; if test -d \"\$OUTPUT\" ; then OUTPUT=\"\$OUTPUT/dummy.html\" ; fi;" if test -n "$_catalog" then _xsltcommand="$_xsltcommand xsltproc --catalogs -o \$OUTPUT \$2 \$3" else _xsltcommand="$_xsltcommand xsltproc -o \$OUTPUT \$2 \$3" fi else echo "Found xsltproc but no stylesheets on your system." echo "xsltproc is unusable without stylesheets." fi fi # xsltproc not found. # Now try to find a good Java virtual machine. # FIXME: We need more checks for Java virtual machines. if test -z "$_xsltcommand" then #FIXME: Add more suitable machines!!! for _try_java in java gij-3.3 gij-3.2 gij-3.1 gij-3.0 gij do if $_try_java --version > /dev/null 2>&1 || $_try_java -version > /dev/null 2>&1 then _java=$_try_java break fi done if test -z "$_java" then echo "Java VM not found." else # Try to find the right jar files for classpath. # This must not trigger on something like saxon-fop-6.4.4.jar. for _try_saxon_jar in \ /usr/share/java/saxon-[0-9]*.jar \ /usr/local/share/java/saxon-[0-9]*.jar \ /usr/share/java/saxon.jar \ /usr/local/share/java/saxon.jar do if test -f "$_try_saxon_jar" then _saxon_jar=$_try_saxon_jar #Don't break to find the _latest_ saxon.jar. fi done if test -n "$_saxon_jar" then if test -z "$_fake_chunk_xsl" then # _xsltcommand="cd \$1 && if test \"\`dirname \$2 | head -c 1\`\" = \".\" ; then $_java -classpath $_saxon_jar com.icl.saxon.StyleSheet \$_IN_DIR/\$3 \$_IN_DIR/\$2 ; else $_java -classpath $_saxon_jar com.icl.saxon.StyleSheet \$_IN_DIR/\$3 \$2 ;fi" _xsltcommand=" if test \"\`dirname \$2 | head -c 1\`\" = \".\" then _STYLESHEET=\$_IN_DIR/\$2 else _STYLESHEET=\$2 fi if test -d \$1 then _DIRNAME=\"\$1\" _OUTPUT=\"\" else _DIRNAME=\"\`dirname \$1\`\" _OUTPUT=\"-o \`basename \$1\`\" fi cd \$_DIRNAME && java -classpath /usr/share/java/saxon.jar com.icl.saxon.StyleSheet \$_OUTPUT \$_IN_DIR/\$3 \$_STYLESHEET " echo "Found the Saxon XSLT Processor ($_saxon_jar), using Java VM '$_java'." else echo "Found the Saxon XSLT processor but no stylesheets on your system." echo "Saxon is unusable without stylesheets." fi fi fi fi if test -z "$_xsltcommand" then # Java not found. # now try openjade/jade. for _try_jade in jade openjade do if command -v $_try_jade > /dev/null then _jade=$_try_jade break fi done if test -n "$_jade" then echo "xsltproc and Saxon XSLT processors not found." echo "I will try to use OpenJade or Jade (using '$_jade')." echo "They aren't (currently) fully supported, however." for _try_docbook_dsl in \ /usr/share/sgml/docbook/stylesheet/dsssl/modular/html/docbook.dsl \ /usr/local/share/sgml/docbook/stylesheet/dsssl/modular/html/docbook.dsl do if test -f "$_try_docbook_dsl" then _docbook_dsl=$_try_docbook_dsl break fi done for _try_xml_dcl in \ /usr/share/sgml/declaration/xml.dcl \ /usr/local/share/sgml/declaration/xml.dcl do if test -f "$_try_xml_dcl" then _xml_dcl=$_try_xml_dcl break fi done if test "x$_docbook_dsl" = "x" -o "x$_xml_dcl" = "x" then echo "One of the files docbook.dsl and xml.dcl or both of them weren't found." echo "Bailing out." exit 1 fi _xsltcommand="cd \$1 && $_jade -t xml -d $_docbook_dsl $_xml_dcl \$_IN_DIR/\$3" else echo "No valid XSLT processor found." echo "Bailing out." exit 1 fi fi cat > $_xsltwrapper << EOF #!/bin/sh # ************************************************** # This file is generated automatically. DO NOT EDIT. # ************************************************** # This is a small wrapper script around many ways to call the XSLT processor. # It accepts 3 arguments: <output_dir> <stylesheet_name> <main XML file name> _IN_DIR=\`pwd\` $_sgmlcatalog $_xsltcommand EOF chmod +x $_xsltwrapper echo "Searching for XML checker..." for _try_xmllint in xmllint do if command -v $_try_xmllint > /dev/null 2>&1 then echo "Found $_try_xmllint" if test -n "$_catalog" then _xmllint_command="$_try_xmllint --noout --noent --postvalid --catalogs \$*" else _xmllint_command="$_try_xmllint --noout --noent --postvalid \$*" fi break fi done if test -z "$_xmllint_command" then echo "Not found" _xmllint_command=true fi cat > $_xmllintwrapper << EOF #!/bin/sh # ************************************************** # This file is generated automatically. DO NOT EDIT. # ************************************************** # This is a small wrapper for XML lintian programs. $_sgmlcatalog $_xmllint_command EOF chmod +x $_xmllintwrapper