Difference between revisions of "Writing Makefiles"

From GNUstepWiki
Jump to navigation Jump to search
(resection tutorials)
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]

Revision as of 09:58, 27 July 2011

Tutorials and documentation

For further reading:

Releasing

To aid the develoepr and the packager, gnustep make has special targets which aid the maintenace.

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.