Next: , Previous: , Up: Project Types   [Contents]


1.4.10 NSIS Installer (nsis.make)

The NSIS make project provides rules for automatically generating NSIS installers for Windows operating systems. In order to get this functionality, include Master/nsis.make from the Makefiles directory in your GNUmakefile.

include $(GNUSTEP_MAKEFILES)/Master/nsis.make

To create an installer file by itself, run make nsifile. To create the full installer executable, run make nsis. Note that in order to do this, you must be either running on a Windows computer with a release of the NSIS compiler (from http://nsis.sourceforge.net) or you need to be using a cross-compiler and cross-compiled NSIS script compiler. (NOTE: This does not currently work - you need to use the GUI NSIS compiler to compile the installer scripts).

Currently the nsis make package only makes installers for Applications. It will use the nsi-app.template file in the GNUstep Makefiles directory. If you want, you can provide your own template with customized script instructions by creating a file called PACKAGE_NAME.nsi.in, where PACKAGE_NAME is the same as the name of your package (see below).

You also need to define several variables in your main make file. Except for PACKAGE_NAME, which is required, all the following variables are optional.

NSIS: PACKAGE_NAME

PACKAGE_NAME defines the name of the NSIS installer. In most cases this will be the same as the name of your project type. For instance, if you are creating a application, and have set APP_NAME to ‘MyApplication’, Then set PACKAGE_NAME to the same thing, or just use PACKAGE_NAME=$(APP_NAME). if PACKAGE_NAME is not set, it defaults to unnamed-package

NSIS: PACKAGE_VERSION

Set PACKAGE_VERSION to the release version number of your package. If not set, it defaults to 0.0.1

NSIS: GNUSTEP_INSTALLATION_DOMAIN

Set GNUSTEP_INSTALLATION_DOMAIN to the domain where you want to install the software. This should be either SYSTEM), LOCAL, or USER. If not set it defaults to LOCAL.


Next: , Previous: , Up: Project Types   [Contents]