Difference between revisions of "Writing Makefiles"
m |
m |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | == Tutorials and documentation == | ||
+ | |||
+ | For further reading: | ||
+ | |||
* [http://www.gnustep.it/nicola/Tutorials/WritingMakefiles/ GNUstep Make tutorial] | * [http://www.gnustep.it/nicola/Tutorials/WritingMakefiles/ GNUstep Make tutorial] | ||
* [http://www.gnustep.org/resources/documentation/Developer/Make/Manual/make_toc.html GNUstep Make manual] | * [http://www.gnustep.org/resources/documentation/Developer/Make/Manual/make_toc.html GNUstep Make manual] | ||
Line 4: | Line 8: | ||
== Releasing == | == Releasing == | ||
− | To aid the | + | To aid the developer and the packager, gGNUstep make has special targets which aid the maintenance. |
+ | |||
+ | Some parameters need to be set in the GNUmakefile for this to work properly. | ||
+ | |||
+ | <pre> | ||
+ | PACKAGE_NAME=<package name> | ||
+ | VERSION=<version identifier> | ||
+ | </pre> | ||
=== dist === | === dist === | ||
− | Creates the classic tarball, using the sources of the directory project. It uses the makefile information to name and version the package. | + | Creates the classic tarball, using the sources of the directory project. It uses the makefile information to name and version the package. Be sure that you don't have any spurious files around (coredumps, temporary editor files, binaries...) |
+ | |||
+ | === cvs-tag === | ||
+ | |||
+ | Tags the release on CVS. | ||
+ | |||
+ | Be sure your gnustep makefile is properly set up and contains: | ||
+ | |||
+ | <pre> | ||
+ | VERSION=x.x.x | ||
+ | CVS_MODULE_NAME=<module name> | ||
+ | CVS_TAG_NAME=<tag name, typically the project name> | ||
+ | </pre> | ||
+ | |||
+ | === cvs-dist === | ||
+ | |||
+ | Creates a tarball by exporting the files directly from the CVS revision control system. It guarantees, compared to dist, that the sources are clean. | ||
+ | |||
+ | The sources need to be tagged before. | ||
+ | |||
+ | === svn-tag === | ||
+ | |||
+ | Tags the release on SVN. | ||
+ | |||
+ | Be sure your gnustep makefile is properly set up and contains: | ||
+ | |||
+ | <pre> | ||
+ | VERSION=x.x.x | ||
+ | SVN_MODULE_NAME = <module name> | ||
+ | SVN_BASE_URL=svn+ssh://<server>/<path> | ||
+ | SVN_TAG_NAME=<tag name, typically the project name> | ||
+ | </pre> | ||
+ | |||
+ | === svn-dist === | ||
+ | |||
+ | Creates a tarball by exporting the files directly from the SVN revision control system. It guarantees, compared to dist, that the sources are clean. | ||
+ | |||
+ | The sources need to be tagged before. |
Latest revision as of 18:10, 8 June 2012
Tutorials and documentation
For further reading:
Releasing
To aid the developer and the packager, gGNUstep make has special targets which aid the maintenance.
Some parameters need to be set in the GNUmakefile for this to work properly.
PACKAGE_NAME=<package name> VERSION=<version identifier>
dist
Creates the classic tarball, using the sources of the directory project. It uses the makefile information to name and version the package. Be sure that you don't have any spurious files around (coredumps, temporary editor files, binaries...)
cvs-tag
Tags the release on CVS.
Be sure your gnustep makefile is properly set up and contains:
VERSION=x.x.x CVS_MODULE_NAME=<module name> CVS_TAG_NAME=<tag name, typically the project name>
cvs-dist
Creates a tarball by exporting the files directly from the CVS revision control system. It guarantees, compared to dist, that the sources are clean.
The sources need to be tagged before.
svn-tag
Tags the release on SVN.
Be sure your gnustep makefile is properly set up and contains:
VERSION=x.x.x SVN_MODULE_NAME = <module name> SVN_BASE_URL=svn+ssh://<server>/<path> SVN_TAG_NAME=<tag name, typically the project name>
svn-dist
Creates a tarball by exporting the files directly from the SVN revision control system. It guarantees, compared to dist, that the sources are clean.
The sources need to be tagged before.