diff --git a/en_US.ISO8859-1/articles/Makefile b/en_US.ISO8859-1/articles/Makefile index 6a17fcfa38..68cf2b6bbc 100644 --- a/en_US.ISO8859-1/articles/Makefile +++ b/en_US.ISO8859-1/articles/Makefile @@ -9,7 +9,6 @@ SUBDIR+= contributing SUBDIR+= contributing-ports SUBDIR+= contributors SUBDIR+= cups -SUBDIR+= custom-gcc SUBDIR+= explaining-bsd SUBDIR+= filtering-bridges SUBDIR+= fonts diff --git a/en_US.ISO8859-1/articles/custom-gcc/Makefile b/en_US.ISO8859-1/articles/custom-gcc/Makefile deleted file mode 100644 index c6b3eb4a60..0000000000 --- a/en_US.ISO8859-1/articles/custom-gcc/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# -# $FreeBSD$ -# - -DOC?= article - -FORMATS?= html -WITH_ARTICLE_TOC?= YES - -INSTALL_COMPRESSED?= gz -INSTALL_ONLY_COMPRESSED?= - -SRCS= article.xml - -URL_RELPREFIX?= ../../../.. -DOC_PREFIX?= ${.CURDIR}/../../.. - -.include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/en_US.ISO8859-1/articles/custom-gcc/article.xml b/en_US.ISO8859-1/articles/custom-gcc/article.xml deleted file mode 100644 index 69d06b2536..0000000000 --- a/en_US.ISO8859-1/articles/custom-gcc/article.xml +++ /dev/null @@ -1,201 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1"?> -<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" - "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd"> -<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="en"> - <info><title>Using newer version of <application>GCC</application> and - <application>binutils</application> with the &os; Ports - Collection</title> - - - <author><personname><firstname>Martin</firstname><surname>Matuska</surname></personname><affiliation> - <address><email>mm@FreeBSD.org</email></address> - </affiliation></author> - - <legalnotice xml:id="trademarks" role="trademarks"> - &tm-attrib.freebsd; - &tm-attrib.general; - </legalnotice> - - <copyright> - <year>2009</year> - <holder>The &os; Documentation Project</holder> - </copyright> - - <pubdate>$FreeBSD$</pubdate> - - <releaseinfo>$FreeBSD$</releaseinfo> - - <abstract> - <para>This article describes how to use newer versions of the - <application>GCC</application> compilers and - <application>binutils</application> from the &os; ports tree. - Custom <application>GCC</application> configurations are also - discussed.</para> - </abstract> - </info> - - <sect1 xml:id="intro"> - <title>Introduction</title> - - <para>The default system compiler as of &os; 8.0 is - <application>GCC</application> version 4.2.1. In addition, the - base system of &os; includes <application>binutils</application> - version 2.15. These versions are several years old and lack, - among other things, support for recent <acronym>CPU</acronym> - instructions like <acronym>SSSE3</acronym>, - <acronym>SSE4.1</acronym>, <acronym>SSE4.2</acronym>, etc. - Due to licensing issues, new versions of these applications will - not be integrated into the base system. Luckily, it is possible - to use a newer version of the <application>GCC</application> - compiler (e.g. version 4.4) with the help of the &os; ports - tree.</para> - </sect1> - - <sect1 xml:id="prerequisites"> - <title>Prerequisites</title> - - <sect2 xml:id="installing-binutils"> - <title>Installing binutils and gcc</title> - - <para>To make use of all of the new features in the latest - <application>GCC</application> versions, the latest version of - <application>binutils</application> needs to be installed. - Installation of the newer version of - <application>binutils</application> is optional; but without it, - there will be no support for new <acronym>CPU</acronym> - instructions.</para> - - <para>To install the latest available version of - <application>binutils</application> using the &os; ports tree, - issue the following command:</para> - - <screen>&prompt.root; <userinput>pkg install devel/binutils</userinput></screen> - - <para>The &os; ports tree offers several new versions of - <application>GCC</application>. The default version is called - <package>lang/gcc</package>. Other versions can be found - with - <screen>&prompt.user; <userinput>pkg search gcc</userinput></screen> - </para> - - <para>To install one of the mentioned - <application>GCC</application> ports, run:</para> - - <screen>&prompt.root; <userinput>pkg install <replaceable>lang/gcc</replaceable></userinput></screen> - </sect2> - </sect1> - - <sect1 xml:id="configuring-ports-gcc"> - <title>Configuring ports for custom version of - <application>GCC</application></title> - - <para>Additional system configuration is required in order to use - custom version of <application>GCC</application> installed from - the &os; ports tree.</para> - - <sect2 xml:id="adjusting-make.conf"> - <title>Adjusting <filename>make.conf</filename></title> - - <para>Add the following lines to the - <filename>/etc/make.conf</filename> file (or modify - appropriately):</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -.endif</programlisting> - - <para>Alternatively, it is possible to specify the - <envar>${CC}</envar> and <envar>${CPP}</envar> variables - manually.</para> - - <note> - <para>The examples above are for <application>GCC</application> - version 4.4. To use <command>gcc43</command>, replace - <literal>"gcc44"</literal> with <literal>"gcc43"</literal> and - <literal>"4.4"</literal> with <literal>"4.3"</literal> and so - on.</para> - </note> - </sect2> - - <sect2 xml:id="adjusting-libmap.conf"> - <title>Adjusting <filename>libmap.conf</filename></title> - - <para>Many of the ports' binaries and libraries link to libgcc_s - or libstdc++. The base system already includes these libraries, - but from an earlier version of <application>GCC</application> - (version 4.2.1). To supply rtld (and ldd) with correct versions, - add the following lines to the - <filename>/etc/libmap.conf</filename> file (or modify - appropriately):</para> - - <programlisting>libgcc_s.so.1 gcc44/libgcc_s.so.1 -libgomp.so.1 gcc44/libgomp.so.1 -libobjc.so.3 gcc44/libobjc.so.2 -libssp.so.0 gcc44/libssp.so.0 -libstdc++.so.6 gcc44/libstdc++.so.6</programlisting> - - <note> - <para>The examples above are for <application>GCC</application> - version 4.4. To use <command>gcc43</command>, replace - <literal>"gcc44"</literal> with <literal>"gcc43"</literal> - and so on. Note also that all of these libraries are fully - backwards compatible with base system libraries.</para> - </note> - - <warning> - <para>Some C++ programs may refuse to work if these libraries - are not mapped correctly. If it is not feasible to map them - all, it is recommended to map at least libstdc++.so.</para> - </warning> - </sect2> - - <sect2 xml:id="custom-cflags"> - <title>Custom <literal>CFLAGS</literal> for the ports tree</title> - - <para>To add custom <literal>CFLAGS</literal> for the ports tree - which are unsupported by the base system, adjust the - <filename>/etc/make.conf</filename> according to the following - example:</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -CFLAGS+=-mssse3 -.endif</programlisting> - - <para>It is possible to completely replace - <literal>CFLAGS</literal> and/or define custom - <literal>CPUTYPE</literal> as well. We recommend setting - <literal>CPUTYPE</literal> because many ports decide their - optimizations flags based on this variable.</para> - </sect2> - - <sect2 xml:id="excluding-unbuildable-ports"> - <title>Excluding ports that do not build with new version of - <application>GCC</application></title> - - <para>To exclude ports that have problems with custom version of - <application>GCC</application>, adjust the - <filename>/etc/make.conf</filename> according to the following - example:</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -.if empty(.CURDIR:M/usr/ports/net/openldap*) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -.endif -.endif</programlisting> - - <para>The example above excludes the forced use of - <command>gcc</command> 4.4 for the - <package>net/openldap</package>* ports. It is - also possible to specify more ports on a single line:</para> - - <programlisting>.if empty(.CURDIR:M/usr/ports/net/openldap*) && empty(.CURDIR:M/usr/ports/xxx/yyy) && ...</programlisting> - </sect2> - </sect1> -</article> diff --git a/ja_JP.eucJP/articles/Makefile b/ja_JP.eucJP/articles/Makefile index e751e1ae7e..0ca28fa976 100644 --- a/ja_JP.eucJP/articles/Makefile +++ b/ja_JP.eucJP/articles/Makefile @@ -10,7 +10,6 @@ SUBDIR+= contributing #SUBDIR+= contributing-ports SUBDIR+= contributors #SUBDIR+= cups -#SUBDIR+= custom-gcc #SUBDIR+= explaining-bsd #SUBDIR+= filtering-bridges SUBDIR+= fonts diff --git a/ru_RU.KOI8-R/articles/Makefile b/ru_RU.KOI8-R/articles/Makefile index e5e3e9ce39..d1e3a5940e 100644 --- a/ru_RU.KOI8-R/articles/Makefile +++ b/ru_RU.KOI8-R/articles/Makefile @@ -13,7 +13,6 @@ SUBDIR+= console-server SUBDIR+= contributing #SUBDIR+= contributors SUBDIR+= cups -SUBDIR+= custom-gcc SUBDIR+= cvs-freebsd SUBDIR+= explaining-bsd #SUBDIR+= filtering-bridges diff --git a/ru_RU.KOI8-R/articles/custom-gcc/Makefile b/ru_RU.KOI8-R/articles/custom-gcc/Makefile deleted file mode 100644 index 7d13ba38d7..0000000000 --- a/ru_RU.KOI8-R/articles/custom-gcc/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# -# $FreeBSD$ -# -# Original revision: r39631 -# - - -DOC?= article - -FORMATS?= html -WITH_ARTICLE_TOC?= YES - -INSTALL_COMPRESSED?= gz -INSTALL_ONLY_COMPRESSED?= - -SRCS= article.xml - -URL_RELPREFIX?= ../../../.. -DOC_PREFIX?= ${.CURDIR}/../../.. - -.include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/ru_RU.KOI8-R/articles/custom-gcc/article.xml b/ru_RU.KOI8-R/articles/custom-gcc/article.xml deleted file mode 100644 index 04fbd962b1..0000000000 --- a/ru_RU.KOI8-R/articles/custom-gcc/article.xml +++ /dev/null @@ -1,229 +0,0 @@ -<?xml version="1.0" encoding="koi8-r"?> -<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" - "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd"> -<!-- - The FreeBSD Russian Documentation Project - $FreeBSD$ - Original revision: r43184 ---> -<!-- �������: ������� ����� --> -<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="ru"> - <info><title>������������� ����� ����� ������ <application>GCC</application> - � <application>binutils</application> c ���������� ������ - &os;</title> - - - <author><personname><firstname>Martin</firstname><surname>Matuska</surname></personname><affiliation> - <address><email>mm@FreeBSD.org</email></address> - </affiliation></author> - - <legalnotice xml:id="trademarks" role="trademarks"> - &tm-attrib.freebsd; - &tm-attrib.general; - </legalnotice> - - <copyright> - <year>2009</year> - <holder>The &os; Documentation Project</holder> - </copyright> - - <pubdate>$FreeBSD$</pubdate> - - <releaseinfo>$FreeBSD$</releaseinfo> - - <abstract> - <para>� ���� ������ �������, ��� ������������ ����� ����� ������ - ������������ <application>GCC</application> � ������ ������ - <application>binutils</application> �� ��������� ������ &os;. - ����� ����� ����������� ������������������ ������������ - <application>GCC</application>.</para> - </abstract> - </info> - - <sect1 xml:id="intro"> - <title>�����������</title> - - <para>����������, ������������ � &os; 8.0, — ��� - <application>GCC</application> ������ 4.2.1. � ������� ������� - &os; �������� <application>binutils</application> ������ - 2.15. ��� ��������-���� ������ ������, � � ���, ����� ������, - ����������� ��������� ����� ���������� <acronym>CPU</acronym>, ����� - ��� <acronym>SSSE3</acronym>, <acronym>SSE4.1</acronym>, - <acronym>SSE4.2</acronym> � �.�. ����� ������������ �����������, - ����� ������ ���� ���������� �� ����� �������� � ������� �������. - � �������, ���� ����������� ������������ ����� ����� ������ ����������� - <application>GCC</application> (��������, ������ 4.4) - ��������� ��� �� ��������� ������ &os;.</para> - </sect1> - - <sect1 xml:id="prerequisites"> - <title>����������</title> - - <sect2 xml:id="installing-binutils"> - <title>��������� binutils �� ������</title> - - <para>����� ������������� ��� ����� �������������� ����������� - ��������� ������ <application>GCC</application>, ���������� ��������� - �������� ����� ������ <application>binutils</application>. ��� - �� �������� ������������, �� ��� ���������� - <application>binutils</application> �� �� �������� ��������� - ����� ���������� <acronym>CPU</acronym>.</para> - - <para>��� ����, ���� ���������� �������� ����� ������ - <application>binutils</application> ��������� ��������� ������ - &os;, ��������� ��������� �������:</para> - - <screen>&prompt.root; <userinput>cd /usr/ports/devel/binutils && make install</userinput></screen> - </sect2> - - <sect2 xml:id="installing-gcc"> - <title>��������� GCC �� ������</title> - - <para> - � ��������� ������ &os; ����� ����� ��������� ����� ������ - <application>GCC</application>. � ����� ������� �� ������������� - ���������� ������ 4.4. ������, �������� ���������� ���������� - ��� ����� ����� (�������������) ������ (��������: - <package>lang/gcc43</package> ��� - <package>lang/gcc45</package>).</para> - - <para>��� ��������� ������ �� �������������� ������ - <application>GCC</application>, �������� ��������� �������:</para> - - <screen>&prompt.root; <userinput>cd /usr/ports/lang/<replaceable>gcc44</replaceable> && make install</userinput></screen> - </sect2> - </sect1> - - <sect1 xml:id="configuring-ports-gcc"> - <title>��������� ������ �� ������������� ��������� - ������ <application>GCC</application></title> - - <para>��� ������������� ��������� ������ <application>GCC</application>, - ������������� �� ��������� ������ &os;, ��������� �������������� - ������������ �������.</para> - - <sect2 xml:id="adjusting-make.conf"> - <title>��������� � <filename>make.conf</filename></title> - - <para>�������� ��������� ������ � <filename>/etc/make.conf</filename> - (��� ��������� ������������):</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -.endif</programlisting> - - <para>� �������� ������������, ����� ���������� ������� ���������� - ��������� <envar>${CC}</envar> � <envar>${CPP}</envar>.</para> - - <note> - <para>�������, �����ģ���� ����, ������� ��� - <application>GCC</application> ������ 4.4. ��� ����, ����� - ������������ <command>gcc43</command>, �������� - <literal>"gcc44"</literal> �� <literal>"gcc43"</literal> � - <literal>"4.4"</literal> �� <literal>"4.3"</literal> - � �.�.</para> - </note> - </sect2> - - <sect2 xml:id="adjusting-libmap.conf"> - <title>����������� � <filename>libmap.conf</filename></title> - - <para>������ ������������� �� ������ ���������� � ���������� - ������������ � libgcc_s ��� libstdc++. � ������� ������� ��� - �������� ��� ����������, �� �� ����� ������ ������ - <application>GCC</application> (������ 4.2.1). ����� ������������ - rltd (� ldd) ���������� ������, �������� ��������� ������ � - <filename>/etc/libmap.conf</filename> (��� �������� - ������������):</para> - - <programlisting>libgcc_s.so.1 gcc44/libgcc_s.so.1 -libgomp.so.1 gcc44/libgomp.so.1 -libobjc.so.3 gcc44/libobjc.so.2 -libssp.so.0 gcc44/libssp.so.0 -libstdc++.so.6 gcc44/libstdc++.so.6</programlisting> - - <note> - <para>������ ���� �������� ��� <application>GCC</application> - ������ 4.4. ���� �� ����������� <command>gcc43</command>, - �������� <literal>"gcc44"</literal> �� <literal>"gcc43"</literal> - � �.�. ������� ��������, ��� ��� �������������� ���������� - ������� ���������� � ������������, ������������� � ������� - ��������.</para> - </note> - - <warning> - <para>��������� C++ ��������� ����� ��������� ��������, ���� - ����������� ���������� ���������� ���� ���������. ���� ���������� - ������������ �� ���, ������������� ������� ��� �� ������� ���� - ��� libstdc++.so.</para> - </warning> - </sect2> - - <sect2 xml:id="custom-cflags"> - <title>����������� ��������� <literal>CFLAGS</literal> ��� ��������� - ������</title> - - <para>��� ������, �� �������������� ����������� ��������� - <literal>CFLAGS</literal>, ��������� - <filename>/etc/make.conf</filename> �������� ���������� �������:</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -CFLAGS+=-mssse3 -.endif</programlisting> - - <para>�������� �������� ��������� <literal>CFLAGS</literal> �/��� - ���������� <literal>CPUTYPE</literal>. �� ����������� ������������� - <literal>CPUTYPE</literal> ��� ��� �� ������ ������ ����� ����������� - ����������, ��������� �� �������� ���� ����������.</para> - </sect2> - - <sect2 xml:id="excluding-unbuildable-ports"> - <title>���������� ������, ������� �� ���������� � ����� ������� - <application>GCC</application></title> - - <para>��� ����, ����� ��������� �����, ������� �� ���������� �� - ����������� ������� <application>GCC</application>, ��������� - <filename>/etc/make.conf</filename> �������� ���������� - �������:</para> - - <programlisting>.if !empty(.CURDIR:M/usr/ports/*) && exists(/usr/local/bin/gcc44) -.if empty(.CURDIR:M/usr/ports/net/openldap*) -CC=gcc44 -CXX=g++44 -CPP=cpp44 -.endif -.endif</programlisting> - - <para>������, �����ģ���� ����, �������� �������������� ������������� - <command>gcc</command> 4.4 ��� ������ - <package>net/openldap</package>*. ����� - �������� ������� ������ ������ � ����� ������:</para> - - <programlisting>.if empty(.CURDIR:M/usr/ports/net/openldap*) && empty(.CURDIR:M/usr/ports/xxx/yyy) && ...</programlisting> - </sect2> - </sect1> - - <sect1 xml:id="performance-imparct"> - <title>������� �� ������������������ ����������� ������</title> - - <para>������������� <application>GCC</application> ������ 4.4 � - ����������� ������� ���������� <acronym>SSSE3</acronym> - (���� ��� �������������� <acronym>CPU</acronym>) ����� ���� �� 10% - ���������� ������� ������������������ ����������� ������. � ��������� - ������ ������� ������������������ �������� 20% (��������, � ��������� - �������������� ������).</para> - - <para>� �������, ����������� �� <uri xlink:href="http://people.freebsd.org/~mm/benchmarks/perlbench/">http://people.freebsd.org/~mm/benchmarks/perlbench/</uri>, - �������� ��������� <application>GCC</application> � ��������� ����� - ����������� � ���� &os;, <application>GCC</application> ������ 4.3 � - <application>GCC</application> ������ 4.4 � ���������� ������������ - <literal>CFLAGS</literal>. ��� ��������� ������������������ - ������������� �������� ����� perlbench.</para> - - </sect1> -</article>