DESCRIPTION
The build.proj.mk module uses the premake utility to generate "project files", so that BSDBuild projects can be opened by various IDEs (Integrated Development Environments).

This module adds the target "proj", so that "make proj" will compile the project files, and pack them into sets of archive files (under PROJDIR, which defaults to "./ProjectFiles").

The various profiles are defined by the space-separated list PROJFILES. Each entry in PROJFILES has the format:
<OS>:<IDE>:<FLAVOR>:<OPTIONS>

"<OS>" specifies the operating system and "<IDE>" is the target IDE name. The "<FLAVOR> argument is a flavor or variant identifier (e.g., "nothreads"), and "<OPTIONS>" is a comma-separated list of ./configure options (e.g., "--disable-threads").

Valid "<OS>" values include:
windowsWindows 95 and up
windows-xpWindows XP and up
windows-xp-x64Windows XP and up (64-bit)
windows-vistaWindows Vista and up
windows-vista-x64Windows Vista and up (64-bit)
windows-7Windows 7 and up
windows-7-x64Windows 7 and up (64-bit)

Note: Premake does support other targets ("bsd", "linux" and "macosx"), but it rarely if ever necessary to generate project files for those targets since they already provide a proper compilation environment (i.e., BSDBuild can be used directly on them).

Valid "<IDE>" target names include:
cb-gccCode::Blocks with gcc
vs6Visual Studio 6
vs2002Visual Studio 2002
vs2003Visual Studio 2003
vs2005Visual Studio 2005
monodevMonoDevelop
sharpdevICSharpCode SharpDevelop

TARGETS
proj If PROJECT is defined, generate the project files. Otherwise, only generate PREMAKEOUT in the current directory.

VARIABLES
PROJECT Name of project. If a project has multiple subdirectories, this should only be defined in the top-level directory.
PROJFILES List of project files to generate (see DESCRIPTION above).
PROJDIR Directory to hold generated project file archives.
PROJFILESEXTRA List of additional files to include in all project file archives.
PROJINCLUDES List of additional premake scripts to include everywhere.
PREMAKE Path to premake utility.
ZIP Path to zip utility.
ZIPFLAGS Flags to zip.
MKPROJFILES Path to mkprojfiles utility (which is part of BSDBuild).
PREMAKEOUT Filename of premake input generated by BSDBuild (defaults to premake.lua).
PREMAKEFLAGS Flags to premake utility.

SEE ALSO
build.common.mk, build.prog.mk, build.lib.mk

HISTORY
build.proj.mk first appeared in BSDBuild 2.2

BSDBuild is based on the 4.4BSD build system.

Hosted on multiple redundant OpenBSD servers at Csoft.net.
2014 Hypertriton, Inc. Opposed to software patents and DRM-encumbered devices!
Hosted by Csoft.net Eliminate DRM!