[34184] trunk/doc-new
simon at macports.org
simon at macports.org
Sat Feb 16 12:17:02 PST 2008
Revision: 34184
http://trac.macosforge.org/projects/macports/changeset/34184
Author: simon at macports.org
Date: 2008-02-16 12:17:01 -0800 (Sat, 16 Feb 2008)
Log Message:
-----------
doc-new: Separated PortGroups in own files and moved them to guide/xml so they get better integrated in the guide. No content change, just moved them.
Modified Paths:
--------------
trunk/doc-new/Makefile
trunk/doc-new/man/xml/portgroup.7.xml
Added Paths:
-----------
trunk/doc-new/guide/xml/portgroup-gnustep.xml
trunk/doc-new/guide/xml/portgroup-perl.xml
trunk/doc-new/guide/xml/portgroup-python.xml
trunk/doc-new/guide/xml/portgroup-ruby.xml
trunk/doc-new/guide/xml/portgroup-xcode.xml
Modified: trunk/doc-new/Makefile
===================================================================
--- trunk/doc-new/Makefile 2008-02-16 20:12:06 UTC (rev 34183)
+++ trunk/doc-new/Makefile 2008-02-16 20:17:01 UTC (rev 34184)
@@ -67,6 +67,7 @@
$(MKDIR) -p $(MAN-RESULT)
$(MKDIR) -p $(MAN-TMP)
$(CP) $(GUIDE-SRC)/portfile-*.xml $(MAN-TMP)
+ $(CP) $(GUIDE-SRC)/portgroup-*.xml $(MAN-TMP)
$(SED) -i "" 's|<section|<refsection|g' $(MAN-TMP)/*
$(SED) -i "" 's|</section>|</refsection>|g' $(MAN-TMP)/*
$(XSLTPROC) --xinclude --output $(MAN-RESULT) $(MAN-XSL) \
Added: trunk/doc-new/guide/xml/portgroup-gnustep.xml
===================================================================
--- trunk/doc-new/guide/xml/portgroup-gnustep.xml (rev 0)
+++ trunk/doc-new/guide/xml/portgroup-gnustep.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<section id="reference.portgroup.gnustep">
+
+ <title>PortGroup gnustep</title>
+
+ <para>PortGroup gnustep allows for efficient porting of GNUstep-based open
+ source software using the GNU objective-C runtime that defines options for
+ the configuration, build, and destroot phases, and also defines some
+ values for GNUstep-based software. A minimum Portfile using the gnustep
+ PortGroup class need only define the fetch and the checksum phases.</para>
+
+ <section>
+ <title>gnustep PortGroup Specific Keywords</title>
+
+ <para>Portfiles using the gnustep PortGroup allow for port authors to
+ set the following keywords in addition to the general Portfile
+ keywords.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>gnustep.post_flags</term>
+
+ <listitem>
+ <para>An associative array which specifies the sub-directories
+ relative to ${worksrcpath} and the SHARED_LD_POSTFLAGS variables
+ to be added to GNUmakefile.preamble in those sub-directories. This
+ helps making the patching process easier on Darwin.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Default: none</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>platform darwin {
+ array set gnustep.post_flags {
+ BundleSubDir "-lfoo -lbar"
+ }
+}</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>gnustep.cc</term>
+
+ <listitem>
+ <para>Define the gcc compiler to use when compiling a port.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Default: gcc-mp-4.2</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>gnustep.cc gcc-mp-4.3</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>variant with_docs</term>
+
+ <listitem>
+ <para>Many GNUstep packages include a Documentation sub-directory
+ that is not built by default. Enabling this variant builds and
+ installs the included documentation.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting><prompt>%%</prompt> <userinput>port install gnustep-gui +with_docs</userinput></programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>gnustep FilesystemLayout Keywords</title>
+
+ <para>PortGroup gnustep supports both the traditional gnustep file
+ layout and the new fhs file layout. However, a given ported application
+ does not necessarily support both. The Portfiles have access to many
+ procedures to handle these two layouts:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>set_gnustep_make</term>
+
+ <listitem>
+ <para>Sets GNUSTEP_MAKEFILES according to the
+ FilesystemLayout</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>set_gnustep_env</term>
+
+ <listitem>
+ <para>Sets DYLD_LIBRARY_PATH and PATH for the gnustep
+ FilesystemLayout</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>gnustep_layout</term>
+
+ <listitem>
+ <para>Returns true (1) if current file layout is gnustep</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>set_system_library</term>
+
+ <listitem>
+ <para>Sets GNUSTEP_SYSTEM_LIBRARY according to the
+ FilesystemLayout</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>set_local_library</term>
+
+ <listitem>
+ <para>Sets GNUSTEP_LOCAL_LIBRARY according to the
+ FilesystemLayout</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>gnustep PortGroup Sugar</title>
+
+ <para>Portfiles using PortGroup gnustep do not need to define the
+ following variables:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>categories</term>
+
+ <listitem>
+ <para>Default: gnustep</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>homepage</term>
+
+ <listitem>
+ <para>Default: http://www.gnustep.org/</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>master_sites</term>
+
+ <listitem>
+ <para>Default: gnustep:core</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>depends_lib</term>
+
+ <listitem>
+ <para>Default: gnustep-core</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>use_configure</term>
+
+ <listitem>
+ <para>Default: no</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>configure.env</term>
+
+ <listitem>
+ <para>Default: DYLD_LIBRARY_PATH PATH</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>configure.pre_args-append</term>
+
+ <listitem>
+ <para>Default: CC=gcc-mp-4.2 GNUSTEP_MAKEFILES</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>build.type</term>
+
+ <listitem>
+ <para>Default: gnu</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>build.env</term>
+
+ <listitem>
+ <para>Default: DYLD_LIBRARY_PATH PATH</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>build.pre_args-append</term>
+
+ <listitem>
+ <para>Default: messages=yes</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>destroot.env</term>
+
+ <listitem>
+ <para>Default: DYLD_LIBRARY_PATH PATH</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>destroot.pre_args-append</term>
+
+ <listitem>
+ <para>Default: messages=yes</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+</section>
Added: trunk/doc-new/guide/xml/portgroup-perl.xml
===================================================================
--- trunk/doc-new/guide/xml/portgroup-perl.xml (rev 0)
+++ trunk/doc-new/guide/xml/portgroup-perl.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<section id="reference.portgroup.perl">
+
+ <title>PortGroup perl5</title>
+
+ <para>PortGroup perl5 allows for efficient porting of perl modules and
+ other perl open source software.</para>
+
+ <section>
+ <title>perl5 PortGroup Specific Keywords</title>
+
+ <para>Portfiles using the perl5 PortGroup allow for port authors to set
+ the following keywords in addition to the general Portfile
+ keywords.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>perl5.setup</term>
+
+ <listitem>
+ <para>This keyword sets the ${distfile} and ${version}.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: required</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>perl5.setup Net-Telnet 3.03</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>perl5 PortGroup Sugar</title>
+
+ <para>Portfiles using PortGroup perl5 do not need to define the
+ following variables:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>categories</term>
+
+ <listitem>
+ <para>Default: perl</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>master_sites</term>
+
+ <listitem>
+ <para>Default: http://search.cpan.org/dist/${distname}</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>depends_lib</term>
+
+ <listitem>
+ <para>Default: perl5.8</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>use_configure</term>
+
+ <listitem>
+ <para>Default: no</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>perl5 PortGroup Specific Variables</title>
+
+ <para>When the perl5 PortGroup is declared within a Portfile, the
+ following variables are provided during port install.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>perl5.version</term>
+
+ <listitem>
+ <para>The MacPorts Perl version.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>perl5.bin</term>
+
+ <listitem>
+ <para>The Perl binary path (ie,
+ <filename>${prefix}/bin/perl</filename>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>perl5.lib</term>
+
+ <listitem>
+ <para>Path to the Perl vendor directory.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>perl5.archlib</term>
+
+ <listitem>
+ <para>Path to the Perl architecture-dependent modules
+ directory.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+</section>
Added: trunk/doc-new/guide/xml/portgroup-python.xml
===================================================================
--- trunk/doc-new/guide/xml/portgroup-python.xml (rev 0)
+++ trunk/doc-new/guide/xml/portgroup-python.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<section id="reference.portgroup.python">
+
+ <title>PortGroup python & python2x</title>
+
+ <para>PortGroup python allows for efficient porting of python-based open
+ source software.</para>
+
+ <section>
+ <title>python PortGroup Specific Variables</title>
+
+ <para>When the python PortGroup is declared within a Portfile, the
+ following variables are provided during port install.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>python.bin</term>
+
+ <listitem>
+ <para>The MacPorts Python binary location.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>python.lib</term>
+
+ <listitem>
+ <para>The Python dynamic library and path (ie,
+ <filename>${prefix}/lib/libpython2.x.dylib</filename>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>python.include</term>
+
+ <listitem>
+ <para>Path to the Python include directory.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>python.pkgd</term>
+
+ <listitem>
+ <para>Path to the Python site-packages directory. (ie,
+ <filename>${prefix}/lib/python2.4/site-packages</filename>).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+</section>
Added: trunk/doc-new/guide/xml/portgroup-ruby.xml
===================================================================
--- trunk/doc-new/guide/xml/portgroup-ruby.xml (rev 0)
+++ trunk/doc-new/guide/xml/portgroup-ruby.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<section id="reference.portgroup.ruby">
+
+ <title>PortGroup ruby</title>
+
+ <para>PortGroup ruby allows for efficient porting of ruby-based open
+ source software.</para>
+
+ <section>
+ <title>ruby PortGroup Specific Variables</title>
+
+ <para>When the ruby PortGroup is declared within a Portfile, the
+ following variables are provided during port install.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>ruby.version</term>
+
+ <listitem>
+ <para>The MacPorts Ruby version.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ruby.bin</term>
+
+ <listitem>
+ <para>The Ruby binary location.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ruby.lib</term>
+
+ <listitem>
+ <para>Path to the Ruby vendorlibdir directory (ie,
+ <filename>${prefix}/lib/ruby/vendor_ruby/${ruby.version}</filename>)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ruby.arch</term>
+
+ <listitem>
+ <para>The name for the Ruby architecture-dependent directory name
+ (ie, <literal>i686-darwin8.10.1</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>ruby.archlib</term>
+
+ <listitem>
+ <para>Path to the Ruby vendor archdir (ie,
+ <filename>${ruby.lib}/${ruby.arch}</filename>).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+</section>
Added: trunk/doc-new/guide/xml/portgroup-xcode.xml
===================================================================
--- trunk/doc-new/guide/xml/portgroup-xcode.xml (rev 0)
+++ trunk/doc-new/guide/xml/portgroup-xcode.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -0,0 +1,275 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<section id="reference.portgroup.xcode">
+
+ <title>PortGroup xcode</title>
+
+ <para>PortGroup xcode allows for efficient porting of Xcode-based
+ opensource software. It handles configuration, build, and destroot phases.
+ It also defines some values for Xcode-based software. A minimum Portfile
+ using the xcode PortGroup class only defines the fetch and the checksum
+ phases.</para>
+
+ <para>Using PortGroup xcode is a way to make your port able to tolerate
+ Xcode version updates because the PortGroup is tested against all
+ supported Mac OS X and Xcode versions.</para>
+
+ <section>
+ <title>xcode PortGroup Specific Keywords</title>
+
+ <para>Portfiles using the xcode PortGroup allow for port authors to set
+ the following keywords in addition to the general Portfile
+ keywords.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>xcode.project</term>
+
+ <listitem>
+ <para>The path relative to ${build.dir} and ${destroot.dir} of the
+ Xcode project. If unset, let xcode tool figure it out. It usually
+ succeeds if there is a single project in the directory.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.project ${name}.xcode</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.configuration</term>
+
+ <listitem>
+ <para>Project configuration/buildstyle to use.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Default: Deployment</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.configuration Main</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.target</term>
+
+ <listitem>
+ <para>If present, it overrides build.target and
+ destroot.target.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.target ${name}</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.build.settings</term>
+
+ <listitem>
+ <para>Additional settings passed to the xcode build tool during
+ the build phase. These settings should be in the X=Y form.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.build.settings FRAMEWORK_SEARCH_PATHS=${prefix}/Library/Frameworks</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.destroot.type</term>
+
+ <listitem>
+ <para>Type of project that will be installed. This tells the xcode
+ PortGroup how to destroot the project. Correct values are
+ application and framework.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Default: application</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.destroot.type framework</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.destroot.path</term>
+
+ <listitem>
+ <para>Where to install the build product.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Default: <filename>/Library/Frameworks</filename> or
+ <filename>/Applications/MacPorts</filename> depending on
+ xcode.destroot.type.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>xcode.destroot.settings</term>
+
+ <listitem>
+ <para>Additional settings passed to the xcode build tool during
+ the destroot phase. These settings should be in the X=Y
+ form.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Type: optional</para>
+ </listitem>
+
+ <listitem>
+ <para>Example:</para>
+
+ <programlisting>xcode.destroot.settings SKIP_INSTALL=NO</programlisting>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>xcode PortGroup Sugar</title>
+
+ <para>Portfiles using the xcode PortGroup do not need to define the
+ following variables:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term>categories</term>
+
+ <listitem>
+ <para>Default: aqua</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>platforms</term>
+
+ <listitem>
+ <para>Default: macosx</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>use_configure</term>
+
+ <listitem>
+ <para>Default: no</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+ <section>
+ <title>Portfile-Phase Keywords Affecting the xcode PortGroup</title>
+
+ <para>The following Portfile phase keywords affect the xcode PortGroup
+ in a unique way. In most cases, you will not need to set any of these
+ keywords in the Portfile. See <citerefentry>
+ <refentrytitle>portfile-phase</refentrytitle>
+
+ <manvolnum>7</manvolnum>
+ </citerefentry></para>
+
+ <variablelist>
+ <varlistentry>
+ <term>build.cmd</term>
+
+ <listitem>
+ <para>Default: <varname>${xcodebuildcmd}</varname>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>build.target</term>
+
+ <listitem>
+ <para>Default: ""</para>
+
+ <para>This variable will be ignored if xcode.target is set.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>build.args</term>
+
+ <listitem>
+ <para>Default: <code>build</code></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>destroot.cmd</term>
+
+ <listitem>
+ <para>Default: <varname>${xcodebuildcmd}</varname></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>destroot.target</term>
+
+ <listitem>
+ <para>Default: ""</para>
+
+ <para>This variable will be ignored if xcode.target is set.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
+
+</section>
Modified: trunk/doc-new/man/xml/portgroup.7.xml
===================================================================
--- trunk/doc-new/man/xml/portgroup.7.xml 2008-02-16 20:12:06 UTC (rev 34183)
+++ trunk/doc-new/man/xml/portgroup.7.xml 2008-02-16 20:17:01 UTC (rev 34184)
@@ -43,765 +43,22 @@
</citerefentry></para>
</refsection>
- <refsection>
- <title>PortGroup gnustep</title>
+ <xi:include href="../tmp/portgroup-gnustep.xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
- <para>PortGroup gnustep allows for efficient porting of GNUstep-based open
- source software using the GNU objective-C runtime that defines options for
- the configuration, build, and destroot phases, and also defines some
- values for GNUstep-based software. A minimum Portfile using the gnustep
- PortGroup class need only define the fetch and the checksum phases.</para>
+ <xi:include href="../tmp/portgroup-perl.xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
- <refsection>
- <title>gnustep PortGroup Specific Keywords</title>
+ <xi:include href="../tmp/portgroup-python.xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
- <para>Portfiles using the gnustep PortGroup allow for port authors to
- set the following keywords in addition to the general Portfile
- keywords.</para>
+ <xi:include href="../tmp/portgroup-ruby.xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
- <variablelist>
- <varlistentry>
- <term>gnustep.post_flags</term>
+ <xi:include href="../tmp/portgroup-xcode.xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
- <listitem>
- <para>An associative array which specifies the sub-directories
- relative to ${worksrcpath} and the SHARED_LD_POSTFLAGS variables
- to be added to GNUmakefile.preamble in those sub-directories. This
- helps making the patching process easier on Darwin.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Default: none</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>platform darwin {
- array set gnustep.post_flags {
- BundleSubDir "-lfoo -lbar"
- }
- }</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>gnustep.cc</term>
-
- <listitem>
- <para>Define the gcc compiler to use when compiling a port.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Default: gcc-mp-4.2</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>gnustep.cc gcc-mp-4.3</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>variant with_docs</term>
-
- <listitem>
- <para>Many GNUstep packages include a Documentation sub-directory
- that is not built by default. Enabling this variant builds and
- installs the included documentation.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting><prompt>%%</prompt> <userinput>port install gnustep-gui +with_docs</userinput></programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>gnustep FilesystemLayout Keywords</title>
-
- <para>PortGroup gnustep supports both the traditional gnustep file
- layout and the new fhs file layout. However, a given ported application
- does not necessarily support both. The Portfiles have access to many
- procedures to handle these two layouts:</para>
-
- <variablelist>
- <varlistentry>
- <term>set_gnustep_make</term>
-
- <listitem>
- <para>Sets GNUSTEP_MAKEFILES according to the
- FilesystemLayout</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>set_gnustep_env</term>
-
- <listitem>
- <para>Sets DYLD_LIBRARY_PATH and PATH for the gnustep
- FilesystemLayout</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>gnustep_layout</term>
-
- <listitem>
- <para>Returns true (1) if current file layout is gnustep</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>set_system_library</term>
-
- <listitem>
- <para>Sets GNUSTEP_SYSTEM_LIBRARY according to the
- FilesystemLayout</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>set_local_library</term>
-
- <listitem>
- <para>Sets GNUSTEP_LOCAL_LIBRARY according to the
- FilesystemLayout</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>gnustep PortGroup Sugar</title>
-
- <para>Portfiles using PortGroup gnustep do not need to define the
- following variables:</para>
-
- <variablelist>
- <varlistentry>
- <term>categories</term>
-
- <listitem>
- <para>Default: gnustep</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>homepage</term>
-
- <listitem>
- <para>Default: http://www.gnustep.org/</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>master_sites</term>
-
- <listitem>
- <para>Default: gnustep:core</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>depends_lib</term>
-
- <listitem>
- <para>Default: gnustep-core</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>use_configure</term>
-
- <listitem>
- <para>Default: no</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>configure.env</term>
-
- <listitem>
- <para>Default: DYLD_LIBRARY_PATH PATH</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>configure.pre_args-append</term>
-
- <listitem>
- <para>Default: CC=gcc-mp-4.2 GNUSTEP_MAKEFILES</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>build.type</term>
-
- <listitem>
- <para>Default: gnu</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>build.env</term>
-
- <listitem>
- <para>Default: DYLD_LIBRARY_PATH PATH</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>build.pre_args-append</term>
-
- <listitem>
- <para>Default: messages=yes</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>destroot.env</term>
-
- <listitem>
- <para>Default: DYLD_LIBRARY_PATH PATH</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>destroot.pre_args-append</term>
-
- <listitem>
- <para>Default: messages=yes</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
- </refsection>
-
<refsection>
- <title>PortGroup perl5</title>
-
- <para>PortGroup perl5 allows for efficient porting of perl modules and
- other perl open source software.</para>
-
- <refsection>
- <title>perl5 PortGroup Specific Keywords</title>
-
- <para>Portfiles using the perl5 PortGroup allow for port authors to set
- the following keywords in addition to the general Portfile
- keywords.</para>
-
- <variablelist>
- <varlistentry>
- <term>perl5.setup</term>
-
- <listitem>
- <para>This keyword sets the ${distfile} and ${version}.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: required</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>perl5.setup Net-Telnet 3.03</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>perl5 PortGroup Sugar</title>
-
- <para>Portfiles using PortGroup perl5 do not need to define the
- following variables:</para>
-
- <variablelist>
- <varlistentry>
- <term>categories</term>
-
- <listitem>
- <para>Default: perl</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>master_sites</term>
-
- <listitem>
- <para>Default: http://search.cpan.org/dist/${distname}</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>depends_lib</term>
-
- <listitem>
- <para>Default: perl5.8</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>use_configure</term>
-
- <listitem>
- <para>Default: no</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>perl5 PortGroup Specific Variables</title>
-
- <para>When the perl5 PortGroup is declared within a Portfile, the
- following variables are provided during port install.</para>
-
- <variablelist>
- <varlistentry>
- <term>perl5.version</term>
-
- <listitem>
- <para>The MacPorts Perl version.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>perl5.bin</term>
-
- <listitem>
- <para>The Perl binary path (ie,
- <filename>${prefix}/bin/perl</filename>).</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>perl5.lib</term>
-
- <listitem>
- <para>Path to the Perl vendor directory.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>perl5.archlib</term>
-
- <listitem>
- <para>Path to the Perl architecture-dependent modules
- directory.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
- </refsection>
-
- <refsection>
- <title>PortGroup python & python2x</title>
-
- <para>PortGroup python allows for efficient porting of python-based open
- source software.</para>
-
- <refsection>
- <title>python PortGroup Specific Variables</title>
-
- <para>When the python PortGroup is declared within a Portfile, the
- following variables are provided during port install.</para>
-
- <variablelist>
- <varlistentry>
- <term>python.bin</term>
-
- <listitem>
- <para>The MacPorts Python binary location.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>python.lib</term>
-
- <listitem>
- <para>The Python dynamic library and path (ie,
- <filename>${prefix}/lib/libpython2.x.dylib</filename>).</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>python.include</term>
-
- <listitem>
- <para>Path to the Python include directory.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>python.pkgd</term>
-
- <listitem>
- <para>Path to the Python site-packages directory. (ie,
- <filename>${prefix}/lib/python2.4/site-packages</filename>).</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
- </refsection>
-
- <refsection>
- <title>PortGroup ruby</title>
-
- <para>PortGroup ruby allows for efficient porting of ruby-based open
- source software.</para>
-
- <refsection>
- <title>ruby PortGroup Specific Variables</title>
-
- <para>When the ruby PortGroup is declared within a Portfile, the
- following variables are provided during port install.</para>
-
- <variablelist>
- <varlistentry>
- <term>ruby.version</term>
-
- <listitem>
- <para>The MacPorts Ruby version.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ruby.bin</term>
-
- <listitem>
- <para>The Ruby binary location.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ruby.lib</term>
-
- <listitem>
- <para>Path to the Ruby vendorlibdir directory (ie,
- <filename>${prefix}/lib/ruby/vendor_ruby/${ruby.version}</filename>)</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ruby.arch</term>
-
- <listitem>
- <para>The name for the Ruby architecture-dependent directory name
- (ie, <literal>i686-darwin8.10.1</literal>).</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ruby.archlib</term>
-
- <listitem>
- <para>Path to the Ruby vendor archdir (ie,
- <filename>${ruby.lib}/${ruby.arch}</filename>).</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
- </refsection>
-
- <refsection>
- <title>PortGroup xcode</title>
-
- <para>PortGroup xcode allows for efficient porting of Xcode-based
- opensource software. It handles configuration, build, and destroot phases.
- It also defines some values for Xcode-based software. A minimum Portfile
- using the xcode PortGroup class only defines the fetch and the checksum
- phases.</para>
-
- <para>Using PortGroup xcode is a way to make your port able to tolerate
- Xcode version updates because the PortGroup is tested against all
- supported Mac OS X and Xcode versions.</para>
-
- <refsection>
- <title>xcode PortGroup Specific Keywords</title>
-
- <para>Portfiles using the xcode PortGroup allow for port authors to set
- the following keywords in addition to the general Portfile
- keywords.</para>
-
- <variablelist>
- <varlistentry>
- <term>xcode.project</term>
-
- <listitem>
- <para>The path relative to ${build.dir} and ${destroot.dir} of the
- Xcode project. If unset, let xcode tool figure it out. It usually
- succeeds if there is a single project in the directory.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.project ${name}.xcode</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.configuration</term>
-
- <listitem>
- <para>Project configuration/buildstyle to use.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Default: Deployment</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.configuration Main</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.target</term>
-
- <listitem>
- <para>If present, it overrides build.target and
- destroot.target.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.target ${name}</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.build.settings</term>
-
- <listitem>
- <para>Additional settings passed to the xcode build tool during
- the build phase. These settings should be in the X=Y form.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.build.settings FRAMEWORK_SEARCH_PATHS=${prefix}/Library/Frameworks</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.destroot.type</term>
-
- <listitem>
- <para>Type of project that will be installed. This tells the xcode
- PortGroup how to destroot the project. Correct values are
- application and framework.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Default: application</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.destroot.type framework</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.destroot.path</term>
-
- <listitem>
- <para>Where to install the build product.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Default: <filename>/Library/Frameworks</filename> or
- <filename>/Applications/MacPorts</filename> depending on
- xcode.destroot.type.</para>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>xcode.destroot.settings</term>
-
- <listitem>
- <para>Additional settings passed to the xcode build tool during
- the destroot phase. These settings should be in the X=Y
- form.</para>
-
- <itemizedlist>
- <listitem>
- <para>Type: optional</para>
- </listitem>
-
- <listitem>
- <para>Example:</para>
-
- <programlisting>xcode.destroot.settings SKIP_INSTALL=NO</programlisting>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>xcode PortGroup Sugar</title>
-
- <para>Portfiles using the xcode PortGroup do not need to define the
- following variables:</para>
-
- <variablelist>
- <varlistentry>
- <term>categories</term>
-
- <listitem>
- <para>Default: aqua</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>platforms</term>
-
- <listitem>
- <para>Default: macosx</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>use_configure</term>
-
- <listitem>
- <para>Default: no</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
-
- <refsection>
- <title>Portfile-Phase Keywords Affecting the xcode PortGroup</title>
-
- <para>The following Portfile phase keywords affect the xcode PortGroup
- in a unique way. In most cases, you will not need to set any of these
- keywords in the Portfile. See <citerefentry>
- <refentrytitle>portfile-phase</refentrytitle>
-
- <manvolnum>7</manvolnum>
- </citerefentry></para>
-
- <variablelist>
- <varlistentry>
- <term>build.cmd</term>
-
- <listitem>
- <para>Default: <varname>${xcodebuildcmd}</varname>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>build.target</term>
-
- <listitem>
- <para>Default: ""</para>
-
- <para>This variable will be ignored if xcode.target is set.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>build.args</term>
-
- <listitem>
- <para>Default: <code>build</code></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>destroot.cmd</term>
-
- <listitem>
- <para>Default: <varname>${xcodebuildcmd}</varname></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>destroot.target</term>
-
- <listitem>
- <para>Default: ""</para>
-
- <para>This variable will be ignored if xcode.target is set.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsection>
- </refsection>
-
- <refsection>
<title>SEE ALSO</title>
<para>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080216/cc45d012/attachment-0001.html
More information about the macports-changes
mailing list