Differential D31926 Diff 97856 documentation/content/en/books/porters-handbook/makefiles/_index.adoc
Changeset View
Changeset View
Standalone View
Standalone View
documentation/content/en/books/porters-handbook/makefiles/_index.adoc
Context not available. | |||||
:icons: font | :icons: font | ||||
:sectnums: | :sectnums: | ||||
:sectnumlevels: 6 | :sectnumlevels: 6 | ||||
:sectnumoffset: 5 | |||||
:partnums: | |||||
:source-highlighter: rouge | :source-highlighter: rouge | ||||
:experimental: | :experimental: | ||||
:skip-front-matter: | |||||
:xrefstyle: basic | |||||
:relfileprefix: ../ | |||||
:outfilesuffix: | |||||
:sectnumoffset: 5 | |||||
:g-plus-plus: g++ | :g-plus-plus: g++ | ||||
:images-path: books/porters-handbook/ | |||||
include::shared/mirrors.adoc[] | ifdef::env-beastie[] | ||||
ifdef::backend-html5[] | |||||
:imagesdir: ../../../../images/{images-path} | |||||
endif::[] | |||||
ifndef::book[] | |||||
include::shared/authors.adoc[] | include::shared/authors.adoc[] | ||||
include::shared/mirrors.adoc[] | |||||
include::shared/releases.adoc[] | include::shared/releases.adoc[] | ||||
include::shared/en/mailing-lists.adoc[] | include::shared/attributes/attributes-{{% lang %}}.adoc[] | ||||
include::shared/en/teams.adoc[] | include::shared/{{% lang %}}/teams.adoc[] | ||||
include::shared/en/urls.adoc[] | include::shared/{{% lang %}}/mailing-lists.adoc[] | ||||
include::shared/{{% lang %}}/urls.adoc[] | |||||
toc::[] | |||||
endif::[] | |||||
ifdef::backend-pdf,backend-epub3[] | |||||
include::../../../../../shared/asciidoctor.adoc[] | |||||
endif::[] | |||||
endif::[] | |||||
ifndef::env-beastie[] | |||||
toc::[] | toc::[] | ||||
include::../../../../../shared/asciidoctor.adoc[] | |||||
endif::[] | |||||
Configuring the [.filename]#Makefile# is pretty simple, and again we suggest looking at existing examples before starting. | Configuring the [.filename]#Makefile# is pretty simple, and again we suggest looking at existing examples before starting. | ||||
Also, there is a crossref:porting-samplem[porting-samplem,sample Makefile] in this handbook, | Also, there is a crossref:porting-samplem[porting-samplem,sample Makefile] in this handbook, | ||||
Context not available. | |||||
Our existing practice has been to avoid creating a new physical category unless either a large number of ports would logically belong to it, or the ports that would belong to it are a logically distinct group that is of limited general interest (for instance, categories related to spoken human languages), or preferably both. | Our existing practice has been to avoid creating a new physical category unless either a large number of ports would logically belong to it, or the ports that would belong to it are a logically distinct group that is of limited general interest (for instance, categories related to spoken human languages), or preferably both. | ||||
The rationale for this is that such a change creates a link:{committers-guide}#ports[fair amount of work] for both the committers and also for all users who track changes to the Ports Collection. | The rationale for this is that such a change creates a extref:{committers-guide}[fair amount of work, ports] for both the committers and also for all users who track changes to the Ports Collection. | ||||
In addition, proposed category changes just naturally seem to attract controversy. | In addition, proposed category changes just naturally seem to attract controversy. | ||||
(Perhaps this is because there is no clear consensus on when a category is "too big", nor whether categories should lend themselves to browsing (and thus what number of categories would be an ideal number), and so forth.) | (Perhaps this is because there is no clear consensus on when a category is "too big", nor whether categories should lend themselves to browsing (and thus what number of categories would be an ideal number), and so forth.) | ||||
Context not available. | |||||
** (for extra credit, include the other files that have to change, as per the procedure in the Committer's Guide.) | ** (for extra credit, include the other files that have to change, as per the procedure in the Committer's Guide.) | ||||
. Since it affects the ports infrastructure and involves moving and patching many ports but also possibly running regression tests on the build cluster, assign the PR to the {portmgr}. | . Since it affects the ports infrastructure and involves moving and patching many ports but also possibly running regression tests on the build cluster, assign the PR to the {portmgr}. | ||||
. If that PR is approved, a committer will need to follow the rest of the procedure that is link:{committers-guide}#PORTS[outlined in the Committer's Guide]. | . If that PR is approved, a committer will need to follow the rest of the procedure that is extref:{committers-guide}[outlined in the Committer's Guide, ports]. | ||||
Proposing a new virtual category is similar to the above but much less involved, since no ports will actually have to move. | Proposing a new virtual category is similar to the above but much less involved, since no ports will actually have to move. | ||||
In this case, the only patches to include in the PR would be those to add the new category to `CATEGORIES` of the affected ports. | In this case, the only patches to include in the PR would be those to add the new category to `CATEGORIES` of the affected ports. | ||||
Context not available. | |||||
That merely confuses the Ports infrastructure and most tools using it. | That merely confuses the Ports infrastructure and most tools using it. | ||||
The maintainer is responsible for keeping the port up to date and making sure that it works correctly. | The maintainer is responsible for keeping the port up to date and making sure that it works correctly. | ||||
For a detailed description of the responsibilities of a port maintainer, refer to link:{contributing}#maintain-port[The challenge for port maintainers]. | For a detailed description of the responsibilities of a port maintainer, refer to extref:{contributing}[The challenge for port maintainers, maintain-port]. | ||||
[NOTE] | [NOTE] | ||||
==== | ==== | ||||
Context not available. | |||||
These fixes do not need approval from the maintainer. | These fixes do not need approval from the maintainer. | ||||
Blanket approval for most ports applies to fixes like infrastructure changes, or trivial and _tested_ build and runtime fixes. | Blanket approval for most ports applies to fixes like infrastructure changes, or trivial and _tested_ build and runtime fixes. | ||||
The current list is available in link:{committers-guide}#ports-qa-misc-blanket-approval[Ports section of the Committer's Guide]. | The current list is available in extref:{committers-guide}[Ports section of the Committer's Guide, ports-qa-misc-blanket-approval]. | ||||
==== | ==== | ||||
Other changes to the port will be sent to the maintainer for review and approval before being committed. | Other changes to the port will be sent to the maintainer for review and approval before being committed. | ||||
Context not available. |