diff options
Diffstat (limited to 'newapkbuild.1')
-rw-r--r-- | newapkbuild.1 | 220 |
1 files changed, 220 insertions, 0 deletions
diff --git a/newapkbuild.1 b/newapkbuild.1 new file mode 100644 index 0000000..93471b9 --- /dev/null +++ b/newapkbuild.1 @@ -0,0 +1,220 @@ +.Dd November 4, 2017 +.Dt NEWAPKBUILD 1 PRM +.Os "Alpine Linux" + + +.Sh NAME +.Nm newapkbuild +.Nd generate a new APKBUILD + + +.Sh SYNOPSIS +.Nm +.Op Fl n Ar NAME +.Op Fl d Ar DESC +.Op Fl l Ar LICENSE +.Op Fl u Ar URL +.Op Fl aCmpy +.Op Fl cfhs +.Op Ar pkgname Op Ar -pkgver + +.Nm +.Op Fl n Ar NAME +.Op Fl d Ar DESC +.Op Fl l Ar LICENSE +.Op Fl u Ar URL +.Op Fl aCmpy +.Op Fl cfhs +.Op Ar source_url + + +.Sh DESCRIPTION +.Nm +generates a new APKBUILD for use with +.Xr abuild 1 . + +.Bl -tag -width "pkgname-pkgver" -offset indent -compact + +.It Fl n Ar NAME +Specifies the name of the new package. A new directory called +.Ar NAME +will be created in the current directory, with the APKBUILD file. + +.It Fl d Ar DESC +Specifies the description (pkgdesc=) for the new package. + +.It Fl l Ar LICENSE +Specifies the license under which the new package is distributed. This should +match an SPDX Identifier. + +.It Fl u Ar URL +Specifies the Web page (url=) for the new package. This should +.Em not +be the source package URL; it should be the project's main Web page. + +.It Fl c +Causes +.Nm +to additionally copy an init.d script, conf.d file, and sample pre- and post- +install scripts to the APKBUILD directory. This allows you to have a quick +start for daemon packages. + +.It Fl f +Forces +.Nm +to overwrite an existing APKBUILD, if one already exists in the package +directory. + +.It Fl h +Displays usage information. + +.It Fl s +Create an automatic SourceForge URL for the package based on its name and +version. This is only valid if +.Ar pkgname-pkgver +is specified on the command line. + +.It Ar pkgname-pkgver +Specify the package name, if not already specified by +.Fl n . +If followed by a dash (-) and a valid version string, additionally specify the +package's version. + +.El + + +.Ss Build system type + +.Nm +will try to automatically detect the build system by inspecting the source +directory if +.Ar source_url +is specified, and write out typical build instructions for that build system. +If you do not specify the source URL, or you want to override auto-detection, +you may specify one of the following four flags: + +.Bl -tag -width "-a" -offset indent -compact + +.It Fl a +Specifies that the package uses autotools. The APKBUILD will contain a typical +invocation of ./configure, make, and make install. + +.It Fl C +Specifies that the package uses CMake. CMake will be added to the makedepends +and a typical CMake invocation will be added to the APKBUILD. + +.It Fl m +Specifies that the package uses Meson. A typical Meson and Ninja invocation +will be added to the APKBUILD. + +.It Fl p +Specifies that the package uses a Perl Makefile.PL file. The CPAN template +will be used. + +.It Fl y +Specifies that the package uses a Python setup.py build system. Python will be +added to the makedepends. + +.El + +If you do not specify any option, and you do not specify the source URL, the +generated APKBUILD file will not contain any build instructions. + + +.Sh FILES + +All files generated will be placed in a +.Pa pkgname +directory inside the current working directory, with +.Pa pkgname +being created if it does not exist. + +.Bl -tag -width "pkgname.post-install" -compact + +.It Pa APKBUILD +.Nm +will create +.Pa APKBUILD +with the details gathered from the invocation of +.Nm , +and introspection of the downloaded package source if +.Ar source_url +is provided. + +For more information about APKBUILD and its format, see +.Xr APKBUILD 5 . + +.It Pa pkgname.initd +If +.Fl c +is given, +.Nm +will create +.Pa pkgname.initd +with example data to assist in the creation of an init.d script for a daemon. + +.It Pa pkgname.confd +If +.Fl c +is given, +.Nm +will create +.Pa pkgname.confd +to assist in the creation of a conf.d file for a daemon, used by init.d +scripts. conf.d files are used to configure init.d scripts; for more +information, see +.Xr openrc 8 +and +.Xr rc_config 3 . + +.It Pa pkgname.pre-install +If +.Fl c +is given, +.Nm +will create +.Pa pkgname.pre-install , +the contents of which will be run by +.Xr apk 8 +before the package is installed. + +.It Pa pkgname.post-install +If +.Fl c +is given, +.Nm +will create +.Pa pkgname.post-install , +the contents of which will be run by +.Xr apk 8 +after the package is successfully installed. + +For more information about apk install hooks, consult the +.Xr apk 8 +manual. + +.El + + +.Sh EXAMPLES + +newapkbuild -n sharutils -d "Utilities for manipulating shell archives" \\ + -l "GPL-3.0+" -u "https://www.gnu.org/software/sharutils/" -a \\ + https://ftp.gnu.org/gnu/sharutils/sharutils-4.15.2.tar.xz + + +.Sh SEE ALSO + +SPDX license reference (on the Web at <https://spdx.org/licenses/>), +.Xr abuild 1 , +.Xr apk 8 , +.Xr APKBUILD 5 . + + +.Sh AUTHORS + +.Nm : +.An Natanael Copa Aq ncopa@alpinelinux.org + +Documentation: +.An A. Wilcox Aq awilfox@adelielinux.org |