SYNOPSIS
include <build.proj.mk>
DESCRIPTION
The
build.proj.mk module uses the
premake(1) 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>" 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:
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:
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:
windows | Windows 95 and up |
windows-xp | Windows XP and up |
windows-xp-x64 | Windows XP and up (64-bit) |
windows-vista | Windows Vista and up |
windows-vista-x64 | Windows Vista and up (64-bit) |
windows-7 | Windows 7 and up |
windows-7-x64 | Windows 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-gcc | Code::Blocks with gcc |
vs6 | Visual Studio 6 |
vs2002 | Visual Studio 2002 |
vs2003 | Visual Studio 2003 |
vs2005 | Visual Studio 2005 |
monodev | MonoDevelop |
sharpdev | ICSharpCode SharpDevelop |
TARGETS ↑
proj | If PROJECT is defined, generate the project files. Otherwise, only generate PREMAKEOUT in the current directory. |
configure | Invoke mkconfigure(1) to generate the ./configure script from configure.in in the working 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(1) utility. |
ZIP | Path to zip(1) utility. |
ZIPFLAGS | Flags to zip(1). |
MKPROJFILES | Path to mkprojfiles(1) 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(5), build.lib.mk(5), build.man.mk(5), build.prog.mk(5), build.www.mk(5)
https://bsdbuild.hypertriton.com/
https://bsdbuild.hypertriton.com/
HISTORY ↑
build.proj.mk first appeared in BSDBuild 2.2
BSDBuild is based on the 4.4BSD build system.
BSDBuild is based on the 4.4BSD build system.