Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-doc
Path: blob/main/documentation/content/en/books/fdp-primer/doc-build/_index.po
18099 views
# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR The FreeBSD Project
# This file is distributed under the same license as the FreeBSD Documentation package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2026-02-22 15:58+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. type: YAML Front Matter: description
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:1
#, no-wrap
msgid "Describes the FreeBSD Documentation Build Process"
msgstr ""

#. type: YAML Front Matter: title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:1
#, no-wrap
msgid "Chapter 5. The FreeBSD Documentation Build Process"
msgstr ""

#. type: Title =
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:14
#, no-wrap
msgid "The FreeBSD Documentation Build Process"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:52
msgid ""
"This chapter covers organization of the documentation build process and how "
"man:make[1] is used to control it."
msgstr ""

#. type: Title ==
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:54
#, no-wrap
msgid "Rendering AsciiDoc into Output"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:57
msgid ""
"Different types of output can be produced from a single AsciiDoc source file."
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:61
#, no-wrap
msgid "Formats"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:62
#, no-wrap
msgid "File Type"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:64
#, no-wrap
msgid "Description"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:65
#, no-wrap
msgid "`html`"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:66
#, no-wrap
msgid "HTML"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:68
#, no-wrap
msgid "An `article` or `book` chapter."
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:69
#, no-wrap
msgid "`pdf`"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:70
#, no-wrap
msgid "PDF"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:72
#, no-wrap
msgid "Portable Document Format."
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:73
#, no-wrap
msgid "`epub`"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:74
#, no-wrap
msgid "EPUB"
msgstr ""

#. type: Table
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:76
#, no-wrap
msgid ""
"Electronic Publication.\n"
"ePub file format."
msgstr ""

#. type: Title ===
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:79
#, no-wrap
msgid "Rendering to html"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:82
msgid ""
"To render the documentation and the website to `html` use one of the "
"following examples."
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:84
#, no-wrap
msgid "Build the documentation"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:91
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:95
#, no-wrap
msgid "Build the website"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:102
#, no-wrap
msgid ""
"% cd ~/doc/website\n"
"% make\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:106
#, no-wrap
msgid "Build the entire documentation project"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:113
#, no-wrap
msgid ""
"% cd ~/doc\n"
"% make -j2\n"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:117
msgid "Advanced build examples are given below:"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:119
#, no-wrap
msgid "Build English and Spanish documentation with verbose and debug messages"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:126
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make DOC_LANG=\"en es\" HUGO_ARGS=\"--verbose --debug\"\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:130
#, no-wrap
msgid "Build and serve the content with Hugo’s internal webserver"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:137
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make run\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:139
msgid "This webserver runs on `localhost`, port `1313` by default."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:141
msgid ""
"To serve the content with Hugo’s internal webserver binding a specific IP "
"address and port:"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:145
#, no-wrap
msgid "% make run BIND=192.168.15.10 HUGO_ARGS=\"-p 8080\"\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:148
msgid "A `hostname` can also be set as base url to Hugo’s internal webserver:"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:152
#, no-wrap
msgid "% make run BIND=192.168.15.10 HOSTNAME=example.com\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:156
#, no-wrap
msgid "Build documentation in html for offline usage"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:163
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make html\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:166
msgid "To compress the html output, add `DOC_HTML_ARCHIVE=1`:"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:171
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% DOC_HTML_ARCHIVE=1 make html\n"
msgstr ""

#. type: Title ===
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:175
#, no-wrap
msgid "Rendering to pdf"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:178
msgid ""
"To render the documentation to `pdf`, use one of the following examples."
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:180
#, no-wrap
msgid "Build all documents in pdf"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:187
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make pdf\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:191
#, no-wrap
msgid "Build all articles in pdf"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:198
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make pdf-articles\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:202
#, no-wrap
msgid "Build all books in pdf"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:209
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make pdf-books\n"
msgstr ""

#. type: Block title
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:213
#, no-wrap
msgid "Build documents in pdf for specific languages"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:220
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make DOC_LANG=\"en\" pdf\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:222
msgid "This will build all English documents in pdf."
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:227
#, no-wrap
msgid ""
"% cd ~/doc/documentation\n"
"% make DOC_LANG=\"en fr\" pdf-books\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:229
msgid "This will build all English and French books in pdf."
msgstr ""

#. type: Title ==
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:232
#, no-wrap
msgid "The FreeBSD Documentation Build Toolset"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:235
msgid "These are the tools used to build and install the FDP documentation."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:237
msgid "The primary build tool is man:make[1], specifically Berkeley Make."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:238
msgid "Hugo"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:239
msgid "AsciiDoctor"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:240
msgid "Git"
msgstr ""

#. type: Title ==
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:242
#, no-wrap
msgid "Understanding the Makefile in the Documentation Tree"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:245
msgid ""
"There are three [.filename]#Makefile# files for building some or all of the "
"documentation project."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:247
msgid ""
"The [.filename]#Makefile# in the [.filename]#documentation# directory will "
"build only the documentation."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:248
msgid ""
"The [.filename]#Makefile# in the [.filename]#website# directory will build "
"only the website."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:249
msgid ""
"The [.filename]#Makefile# at the top of the tree will build both the "
"documentation and the website."
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:252
msgid ""
"The [.filename]#Makefile# appearing in subdirectories also support `make "
"run` to serve built content with Hugo's internal webserver.  This webserver "
"runs on port 1313 by default."
msgstr ""

#. type: Title ===
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:254
#, no-wrap
msgid "Documentation Makefile"
msgstr ""

#. type: delimited block = 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:257
msgid "This [.filename]#Makefile# takes the following form:"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:282
#, no-wrap
msgid ""
"# Generate the FreeBSD documentation\n"
"#\n"
"# Copyright (c) 2020-2026, The FreeBSD Documentation Project\n"
"# Copyright (c) 2020-2026, Sergio Carlavilla <[email protected]>\n"
"#\n"
"# Targets intended for use on the command line\n"
"#\n"
"# all (default)\t-\tgenerate the books TOC and compile all the documentation\n"
"# clean\t\t- \tremoves generated files\n"
"# run\t\t-\tserves the built documentation site for local browsing\n"
"# pdf\t\t-\tbuild PDF versions of the articles and books.\n"
"# html\t\t-\tbuild HTML versions of the articles and books for\n"
"#\t\t\toffline use.\n"
"#\t\t\tIf variable DOC_HTML_ARCHIVE is set, all documents will be\n"
"#\t\t\tarchived/compressed, and only these files will be kept in the public\n"
"#\t\t\tdirectory.\n"
"# epub\t\t-\tbuild EPUB versions of the articles and books (Experimental).\n"
"#\n"
"# The run target uses hugo's built-in webserver to make the documentation site\n"
"# available for local browsing.  The documentation should have been built prior\n"
"# to attempting to use the `run` target.  By default, hugo will start its\n"
"# webserver on port 1313.\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:284
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:566
#, no-wrap
msgid "[email protected] <.>\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:289
#, no-wrap
msgid ""
"# List of languages without book translations\n"
"ARTICLEONLY_LANGS=\tbn-bd da ko tr\n"
"# List of languages without article translations\n"
"BOOKONLY_LANGS=\t\tmn\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:292
#, no-wrap
msgid ""
"# List of all languages we have content for\n"
"ALL_LANGUAGES=\tbn-bd da de el en es fr hu it ja ko mn nl pl pt-br ru tr zh-cn zh-tw <.>\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:294
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:571
#, no-wrap
msgid "LOCALBASE?=\t/usr/local\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:301
#, no-wrap
msgid ""
"RUBY_CMD =\t${LOCALBASE}/bin/ruby <.>\n"
"HUGO_CMD =\t${LOCALBASE}/bin/hugo <.>\n"
"HUGO_ARGS?=\t--verbose --minify\n"
"HUGO_OFFLINE_ARGS?= \t--environment offline --verbose --minify\n"
"ASCIIDOCTOR_CMD=\t${LOCALBASE}/bin/asciidoctor\n"
"ASCIIDOCTORPDF_CMD=\t${LOCALBASE}/bin/asciidoctor-pdf\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:311
#, no-wrap
msgid ""
".if defined(DOC_LANG) && !empty(DOC_LANG)\n"
"LANGUAGES=\t${DOC_LANG:S/,/ /g}\n"
".if  ${LANGUAGES:Men} == \"\" && ${.TARGETS:Mpdf*} == \"\" && ${.TARGETS:Mhtml*} == \"\"\n"
".warning \"Warning: cannot skip 'en'; adding it back\"\n"
"LANGUAGES+=\ten\n"
".endif\n"
".else\n"
"LANGUAGES=\t${ALL_LANGUAGES}\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:314
#, no-wrap
msgid ""
"RUBYLIB =\t../shared/lib\n"
".export\tRUBYLIB\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:318
#, no-wrap
msgid ""
"RUN_DEPENDS=\t${HUGO_CMD} \\\n"
"\t\t${LOCALBASE}/bin/asciidoctor \\\n"
"\t\t${LOCALBASE}/bin/rougify\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:328
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:587
#, no-wrap
msgid ""
".ifndef HOSTNAME\n"
".  ifdef BIND\n"
".HOST=$(BIND)\n"
".  else\n"
".HOST=localhost\n"
".  endif\n"
".else\n"
".HOST=$(HOSTNAME)\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:335
#, no-wrap
msgid ""
"# Strip the languages with only articles from the list of languages we\n"
"#  will use to build books.\n"
"BOOK_LANGS= ${LANGUAGES}\n"
".for a in ${ARTICLEONLY_LANGS}\n"
"BOOK_LANGS:=\t${BOOK_LANGS:N${a}}\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:342
#, no-wrap
msgid ""
"# Strip the languages with only books from the list of languages we\n"
"#  will use to build articles.\n"
"ARTICLE_LANGS= ${LANGUAGES}\n"
".for a in ${BOOKONLY_LANGS}\n"
"ARTICLE_LANGS:=\t${ARTICLE_LANGS:N${a}}\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:351
#, no-wrap
msgid ""
"# Take the list of all languages, and take out the ones we have been\n"
"#   asked for.  We'll feed this to hugo.\n"
"SKIP_LANGS=\n"
".for a in ${ALL_LANGUAGES}\n"
".if  ${LANGUAGES:M${a}} == \"\"\n"
"SKIP_LANGS+=    ${a}\n"
".endif\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:353
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:608
#, no-wrap
msgid ".ORDER: all run <.>\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:358
#, no-wrap
msgid ""
".ORDER: requirements <.>\n"
".ORDER: starting-message\n"
".ORDER: starting-message build\n"
".ORDER: build\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:361
#, no-wrap
msgid ""
"all: requirements starting-message generate-pgpkeys-txt build\n"
"run: requirements starting-message generate-pgpkeys-txt run-local\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:364
#, no-wrap
msgid ""
"# clean does not call pdf-clean as that is a subset of hugo-clean\n"
"clean: hugo-clean pgp-clean\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:371
#, no-wrap
msgid ""
"requirements:\n"
".for dep in ${RUN_DEPENDS}\n"
".if !exists(${dep})\n"
"\t@(echo ${dep} not found, please run 'pkg install docproj'; exit 1)\n"
".endif\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:376
#, no-wrap
msgid ""
"requirements-pdf:\n"
".if !exists(${LOCALBASE}/bin/asciidoctor-pdf)\n"
"\t@(echo ${LOCALBASE}/bin/asciidoctor-pdf not found, please run 'pkg install rubygem-asciidoctor-pdf'; exit 1)\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:381
#, no-wrap
msgid ""
"requirements-epub:\n"
".if !exists(${LOCALBASE}/bin/asciidoctor-epub3)\n"
"\t@(echo ${LOCALBASE}/bin/asciidoctor-epub3 not found, please run 'pkg install rubygem-asciidoctor-epub3'; exit 1)\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:388
#, no-wrap
msgid ""
"starting-message: .PHONY <.>\n"
"\t@echo ---------------------------------------------------------------\n"
"\t@echo                   Building the documentation\n"
"\t@echo  included languages: ${LANGUAGES}\n"
"\t@echo  excluded languages: ${SKIP_LANGS}\n"
"\t@echo ---------------------------------------------------------------\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:390
#, no-wrap
msgid "generate-pgpkeys-txt: static/pgpkeys/pgpkeys.txt\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:393
#, no-wrap
msgid ""
"static/pgpkeys/pgpkeys.txt: static/pgpkeys/*key\n"
"\t${RUBY_CMD} ./tools/global-pgpkeys-creator.rb\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:397
#, no-wrap
msgid ""
"run-local: .PHONY <.>\n"
"\tHUGO_DISABLELANGUAGES=\"${SKIP_LANGS}\" ${HUGO_CMD} server \\\n"
"\t\t${HUGO_ARGS} -D $(BIND:D--bind=$(BIND)) --baseURL=\"http://$(.HOST):1313\"\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:400
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:642
#, no-wrap
msgid ""
"build: .PHONY <.>\n"
"\tHUGO_DISABLELANGUAGES=\"${SKIP_LANGS}\" ${HUGO_CMD} ${HUGO_ARGS}\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:403
#, no-wrap
msgid ""
"build-offline: .PHONY\n"
"\tHUGO_DISABLELANGUAGES=\"${SKIP_LANGS}\" ${HUGO_CMD} ${HUGO_OFFLINE_ARGS}\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:406
#, no-wrap
msgid ""
"pgp-clean: .PHONY\n"
"\trm -f static/pgpkeys/pgpkeys.txt\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:409
#, no-wrap
msgid ""
"hugo-clean: .PHONY\n"
"\trm -rf resources public\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:415
#, no-wrap
msgid ""
"#\n"
"# PDF targets\n"
"# Use DOC_LANG to choose the language, e.g., make DOC_LANG=\"en fr\" pdf-books\n"
"#\n"
"pdf: pdf-articles pdf-books\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:420
#, no-wrap
msgid ""
"pdf-books: requirements-pdf\n"
".for _lang in ${BOOK_LANGS}\n"
"\t./tools/asciidoctor.sh books ${_lang} pdf\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:425
#, no-wrap
msgid ""
"pdf-articles: requirements-pdf\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\t./tools/asciidoctor.sh articles ${_lang} pdf\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:427
#, no-wrap
msgid "pdf-clean: pdf-articles-clean pdf-books-clean\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:434
#, no-wrap
msgid ""
"pdf-books-clean:\n"
".for _lang in ${BOOK_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/books\n"
"\t-rmdir ${.CURDIR}/public/${_lang}\n"
".endfor\n"
"\t-rmdir ${.CURDIR}/public/\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:443
#, no-wrap
msgid ""
"pdf-articles-clean:\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/articles\n"
".if !exists(${.CURDIR}/public/${_lang}/books)\n"
"\trm -fr ${.CURDIR}/public/${_lang}\n"
".endif\n"
".endfor\n"
"\t-rmdir ${.CURDIR}/public\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:448
#, no-wrap
msgid ""
"#\n"
"# HTML targets\n"
"#\n"
"html: build-offline html-clean-global html-clean-articles html-clean-books html-archive html-archive-clean-files\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:450
#, no-wrap
msgid "html-clean: hugo-clean\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:454
#, no-wrap
msgid ""
"html-clean-global:\n"
"\trm -fr ${.CURDIR}/public/index.html\n"
"\trm -rf pgpkeys js\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:460
#, no-wrap
msgid ""
"html-clean-articles:\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/index.html\n"
"\trm -fr ${.CURDIR}/public/${_lang}/articles/index.html\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:465
#, no-wrap
msgid ""
"html-clean-books:\n"
".for _lang in ${BOOK_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/books/index.html\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:475
#, no-wrap
msgid ""
"html-archive:\n"
".if defined(DOC_HTML_ARCHIVE)\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\t./tools/asciidoctor.sh articles ${_lang} archive\n"
".endfor\n"
".for _lang in ${BOOK_LANGS}\n"
"\t./tools/asciidoctor.sh books ${_lang} archive\n"
".endfor\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:481
#, no-wrap
msgid ""
"html-archive-clean-files:\n"
".if defined(DOC_HTML_ARCHIVE)\n"
"\tfind ${.CURDIR}/public/ ! -name '*.pdf' ! -name '*.tar.gz' -type f -delete\n"
"\tfind ${.CURDIR}/public/ -type d -empty -delete\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:487
#, no-wrap
msgid ""
"#\n"
"# EPUB targets\n"
"# Use DOC_LANG to choose the language, e.g., make DOC_LANG=\"en fr\" epub-books\n"
"#\n"
"epub: epub-articles epub-books\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:500
#, no-wrap
msgid ""
"epub-books: requirements-epub\n"
"\t@echo ---------------------------------------------------------------\n"
"\t@echo !!! EPUB output is experimental !!!\n"
"\t@echo\n"
"\t@echo Asciidoctor EPUB3 is currently alpha software. Use accordingly. Although the\n"
"\t@echo bulk of AsciiDoc content is converted, there’s still work needed to fill in\n"
"\t@echo gaps where conversion is incomplete or unstyled.\n"
"\t@echo https://docs.asciidoctor.org/epub3-converter/latest/#project-status\n"
"\t@echo ---------------------------------------------------------------\n"
".for _lang in ${BOOK_LANGS}\n"
"\t./tools/asciidoctor.sh books ${_lang} epub\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:513
#, no-wrap
msgid ""
"epub-articles: requirements-epub\n"
"\t@echo ---------------------------------------------------------------\n"
"\t@echo !!! EPUB output is experimental !!!\n"
"\t@echo\n"
"\t@echo Asciidoctor EPUB3 is currently alpha software. Use accordingly. Although the\n"
"\t@echo bulk of AsciiDoc content is converted, there’s still work needed to fill in\n"
"\t@echo gaps where conversion is incomplete or unstyled.\n"
"\t@echo https://docs.asciidoctor.org/epub3-converter/latest/#project-status\n"
"\t@echo ---------------------------------------------------------------\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\t./tools/asciidoctor.sh articles ${_lang} epub\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:515
#, no-wrap
msgid "epub-clean: epub-articles-clean epub-books-clean\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:522
#, no-wrap
msgid ""
"epub-books-clean:\n"
".for _lang in ${BOOK_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/books\n"
"\t-rmdir ${.CURDIR}/public/${_lang}\n"
".endfor\n"
"\t-rmdir ${.CURDIR}/public/\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:531
#, no-wrap
msgid ""
"epub-articles-clean:\n"
".for _lang in ${ARTICLE_LANGS}\n"
"\trm -fr ${.CURDIR}/public/${_lang}/articles\n"
".if !exists(${.CURDIR}/public/${_lang}/books)\n"
"\trm -fr ${.CURDIR}/public/${_lang}\n"
".endif\n"
".endfor\n"
"\t-rmdir ${.CURDIR}/public\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:534
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:656
msgid "The `MAINTAINER` flag specifies who is the maintainer of this Makefile."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:535
msgid ""
"`ALL_LANGUAGES` flag specifies in which languages the table of contents has "
"to be generated."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:536
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:657
msgid "`RUBY_CMD` flag specifies the location of the Ruby binary."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:537
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:658
msgid "`HUGO_CMD` flag specifies the location of the Hugo binary."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:538
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:659
msgid ""
"`.ORDER` directives are used to ensure multiple make jobs may run without "
"problem."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:539
msgid ""
"`all` target builds the documentation and puts the result in *~/doc/"
"documentation/public*."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:540
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:661
msgid ""
"`starting-message` shows a message in the CLI to show the user that the "
"process is running."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:541
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:664
msgid ""
"`run-local` runs hugo webserver on port 1313, or a random free port if that "
"is already in use."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:542
msgid ""
"`build` builds the documentation and puts the result in the *~/doc/"
"documentation/public*."
msgstr ""

#. type: Title ===
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:544
#, no-wrap
msgid "Website Makefile"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:547
msgid "This [.filename]#Makefile# takes the form of:"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:564
#, no-wrap
msgid ""
"# Generate the FreeBSD website\n"
"#\n"
"# Copyright (c) 2020-2026, The FreeBSD Documentation Project\n"
"# Copyright (c) 2020-2026, Sergio Carlavilla <[email protected]>\n"
"#\n"
"# Targets intended for use on the command line\n"
"#\n"
"# all (default)\t-\tgenerate the releases.toml and compile all the website\n"
"# run\t-\t\t\tserves the built website for local browsing\n"
"#\n"
"# The run target uses hugo's built-in webserver to make the built website\n"
"# available for local browsing.  The website should have been built prior\n"
"# to attempting to use the `run` target.  By default, hugo will start its\n"
"# webserver on port 1313.\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:569
#, no-wrap
msgid ""
"# List of all languages we have content for\n"
"ALL_LANGUAGES=\tde el en es fr hu it ja nl ru tr zh-cn zh-tw\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:577
#, no-wrap
msgid ""
"RUBY_CMD =\t${LOCALBASE}/bin/ruby <.>\n"
"HUGO_CMD =\t${LOCALBASE}/bin/hugo <.>\n"
"HUGO_ARGS?=\t--verbose\n"
"RUBYLIB =\t../shared/lib\n"
".export\tRUBYLIB\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:597
#, no-wrap
msgid ""
".if defined(DOC_LANG) && !empty(DOC_LANG)\n"
"LANGUAGES=      ${DOC_LANG:S/,/ /g}\n"
".if  ${LANGUAGES:Men} == \"\"\n"
".warning \"Warning: cannot skip 'en'; adding it back\"\n"
"LANGUAGES+=\ten\n"
".endif\n"
".else\n"
"LANGUAGES=\t${ALL_LANGUAGES}\n"
".endif\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:606
#, no-wrap
msgid ""
"# Take the list of all languages, and take out the ones we have been\n"
"#   asked for via DOC_LANG.  We'll feed this to hugo.\n"
"SKIP_LANGS=\n"
".for a in ${ALL_LANGUAGES}\n"
".if ${LANGUAGES:M${a}} == \"\"\n"
"SKIP_LANGS+=\t${a}\n"
".endif\n"
".endfor\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:614
#, no-wrap
msgid ""
".ORDER: starting-message generate-releases\n"
".ORDER: starting-message build\n"
".ORDER: generate-releases build\n"
".ORDER: build post-build\n"
".ORDER: post-build end-message\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:618
#, no-wrap
msgid ""
"all: starting-message generate-releases build post-build end-message <.>\n"
"run: starting-message generate-releases run-local\n"
"clean: hugo-clean releases-clean\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:625
#, no-wrap
msgid ""
"starting-message: .PHONY <.>\n"
"\t@echo \"---------------------------------------------------------------\"\n"
"\t@echo \"Building the website started on $$(date)\"\n"
"\t@echo \" included languages: ${LANGUAGES}\"\n"
"\t@echo \" excluded languages: ${SKIP_LANGS}\"\n"
"\t@echo \"---------------------------------------------------------------\"\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:630
#, no-wrap
msgid ""
"end-message: .PHONY\n"
"\t@echo \"---------------------------------------------------------------\"\n"
"\t@echo \"Building the website completed on $$(date)\"\n"
"\t@echo \"---------------------------------------------------------------\"\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:632
#, no-wrap
msgid "generate-releases: data/releases.toml <.>\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:635
#, no-wrap
msgid ""
"data/releases.toml:\n"
"\t${RUBY_CMD} ./tools/releases-toml.rb\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:639
#, no-wrap
msgid ""
"run-local: .PHONY <.>\n"
"\tHUGO_DISABLELANGUAGES=\"${SKIP_LANGS}\" ${HUGO_CMD} server \\\n"
"\t    ${HUGO_ARGS} -D $(BIND:D--bind=$(BIND)) --baseURL=\"http://$(.HOST):1313\"\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:644
#, no-wrap
msgid "post-build: cgi-permissions\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:647
#, no-wrap
msgid ""
"cgi-permissions:\n"
"\t@chmod 555 ./public/cgi/*.cgi\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:650
#, no-wrap
msgid ""
"hugo-clean:\n"
"\trm -fr public resources\n"
msgstr ""

#. type: delimited block . 4
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:653
#, no-wrap
msgid ""
"releases-clean:\n"
"\trm -f data/releases.toml\n"
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:660
msgid ""
"`all` target builds the website and puts the result in *~/doc/website/"
"public*."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:663
msgid ""
"`generate-releases` calls the script used to convert from AsciiDoc variables "
"to TOML variables.  With this conversion, the releases variables can be used "
"in AsciiDoc and in the Hugo custom templates."
msgstr ""

#. type: Plain text
#: documentation/content/en/books/fdp-primer/doc-build/_index.adoc:664
msgid ""
"`build` builds the website and puts the result in the *~/doc/website/public*."
msgstr ""