Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/premake-4.x-stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BUILD.txt25
-rw-r--r--CHANGES.txt363
-rw-r--r--README.txt2
-rw-r--r--src/host/premake.c2
4 files changed, 375 insertions, 17 deletions
diff --git a/BUILD.txt b/BUILD.txt
index 1a434d2..a34cc5c 100644
--- a/BUILD.txt
+++ b/BUILD.txt
@@ -1,7 +1,7 @@
PREMAKE BUILD INSTRUCTIONS
As of version 4.0, Premake is written in a mix of C and Lua. This mix
- makes it smaller, enables the templating features, and easier the
+ makes it smaller, enables the templating features, and makes the
whole thing easier to maintain. The trade-off is a couple of wrinkles
in the build process.
@@ -14,9 +14,9 @@ PREMAKE BUILD INSTRUCTIONS
GENERATING THE PROJECT FILES
If you downloaded a source code package from SourceForge, the project
- files are already included and you can skip ahead to the next section.
- If you downloaded the sources from Subversion, you'll need to generate
- new projects files before you can build.
+ files are already included (in build/) and you can skip ahead to the
+ next section. If you downloaded the sources from Subversion, you'll
+ need to generate new projects files before you can build.
In order to generate the project files, you need a working version of
Premake, either 3.x or 4.x versions, installed on your system. You can
@@ -34,16 +34,16 @@ GENERATING THE PROJECT FILES
premake --target gnu
premake --target vs2005
- Use the "--help" option to see all available targets.
+ Use the "--help" option to see all of the available targets.
RELEASE AND DEBUG BUILDS
Premake can be built in either "release" or "debug" modes. You can
- choose which configuration to build with the CONFIG argument:
+ choose which configuration to build with the "config" argument:
- make CONFIG=Debug -- build in debug mode
- make CONFIG=Release -- build in release mode
+ make config=debug -- build in debug mode
+ make config=release -- build in release mode
(IDEs like Visual Studio provide their own mechanism for switching
build configurations).
@@ -53,8 +53,8 @@ RELEASE AND DEBUG BUILDS
the disk at runtime, enabling compile-less code/test iterations. But
it needs some help to find the scripts.
- You can specify the location of the scripts in one of two ways. You
- can use the /scripts command line argument, like so:
+ You can specify the location of the scripts in one of two ways: using
+ the /scripts command line argument, like so:
premake4 /scripts=~/Code/premake4/src gmake
@@ -82,7 +82,10 @@ COMPILING SCRIPTS
CONFUSED?
I'll be glad to help you out. Stop by the main project website where
- you leave a note in the forums (the preferred approach), join the
+ you can leave a note in the forums (the preferred approach), join the
mailing list, or contact me directly.
http://industriousone.com/premake
+
+ Enjoy!
+ \ No newline at end of file
diff --git a/CHANGES.txt b/CHANGES.txt
index 066ac69..1f3250a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,10 +1,365 @@
+-----
4.0 (in progress)
---------------------
+-----
+
This version is a complete rewrite of Premake.
-- New, more readable syntax for project information
+- New, more readable and extensible syntax for projects
- More robust syntax validation
- Better validation of command-line arguments
-- Standardized path handling across all project settings
-- Template system allows script-based custom generators
+- Improved path handling across all project settings
- Upgraded to Lua 5.1.2
+
+
+-----
+ 3.7
+-----
+
+- Updated Lua to 5.1.3
+- Added new CodeLite support target (Ryan Pusztai)
+- Added new cb-ow (Code::Blocks Open Watcom) target (Tim Channon)
+- Place OSX winexe's into Content/MacOS folder (William Burnson)
+- Sibling executables may now be listed in package.links
+- Bug 1520012: Improper Makefiles when filenames have spaces
+ (Diaa Sami)
+- Bug 2045506: "no-exceptions" flag ignored for VS200x (Benoit Miller)
+- Bug 2034470: Error in cmd line error handler
+- Bug 2114152: package or config table isn't generated automatically
+
+
+-----
+ 3.6
+-----
+
+- Patch 1946122: Add support for VS2008 (Ryan Pusztai)
+- Patch 1913448: Win32 crash when using '--clean --usetargetpath'
+ (David Walters)
+- Patch 1771168: luaL_getn speed optimization (Richard O'Grady)
+- Bug 1939089: Premake segfault on Linux/PPC (Fabio Till)
+- Fixed "bad argument #2 to 'chdir'" error
+- Disable -MMD on multiple -arch flags (poor man's Universal binary
+ support)
+
+
+-----
+ 3.5
+-----
+
+- Prevent creation of import libraries on OS X
+- Improved handling of dylibs on OS X
+- Patch 1771977: Ability to compile C source as C++ in Code::Blocks
+ (Ryan Pusztai)
+- Bug 1804810: out-implib not present in linux gnu compler toolchain
+- Bug 1806949: .Net reference paths are broken when bindir is specified
+- Bug 1806960: Make clean does not remove .mdb files
+- Bug 1831389: Makefiles stored in subdirs contain no targets on
+ first run
+
+
+-----
+ 3.4
+-----
+
+- Added `no-pch` flag to suppress precompiled headers
+- Added App.config support to GNU makefiles
+- Add os.mkdir() to script environment
+- Makefile now creates target directory before copying .NET references
+- Feature 1520182: Enhanced file-handling functions
+- Bug 531878: Problems with relative paths
+- Bug 1723867: Config-specific post-build on GNU target (Benoit Miller)
+- Bug 1596826: XML targets doesn't escape xml entities
+- Bug 1600155: Core dump due to newpackage() and matchfiles()
+- Bug 1608895: resgen command shown
+- Bug 1639730: Output filename is not set
+- Bug 1729227: non-portable executable with relative library path
+- Bug 1559951: default clean rule removes package dir
+- Patch 1733674: PCH support for Code::Block targets (Ryan Pusztai)
+- Patch 1746563: Ability to specify GUID for VS targets (Ryan Pusztai)
+- Patch 1754867: Creating import lib of different name (Ryan Pusztai)
+
+
+-----
+ 3.3
+-----
+
+- Added support for prebuild, prelink, and postbuild commands
+- Added `target` global variable to script environment
+- Added build flag `no-edit-and-continue`
+- Added build flags `native-wchar` and `no-native-wchar`
+- Added build flag `no-manifest`
+- Added build flag `seh-exceptions` (VS2005 only)
+- Added `resdefines`, `respaths`, and `resoptions`
+- Added `prebuildcommands`, `prelinkcommands`, and `postbuildcommands`
+- Added `pchheader` and `pchsource` (Visual Studio only)
+- Feature 1337547: Package-level bindir and libdir
+- Bug 1565755: Generated makefiles do not work with MSYS
+- Bug 1587955: Target path ignored for libs
+- Bug 1574725: Static library extension for "gnu" target
+- Bug 1522861: Fixed by using "ar -rcs" instead of "ar -cr && ranlib"
+- Bug 1656816: Mkdir set wrong directory rights
+- Bug 1655595: Compile/build problem on FreeBSD
+- Bug: "gnu" clean rule doesn't work in cmd.exe
+- Improved behavior of Linux findlib()
+- Updated Code::Blocks support to latest project version
+ (major="1" minor="6")
+- Patch 1681666: GNU targets always show the console if kind = 'winexe'
+
+
+-----
+ 3.2
+-----
+
+- Added support for Code::Blocks
+- Updated MonoDevelop support
+- Upgraded Lua to 5.0.3
+- Added new matchdirs() to Lua script environment
+- Expose list of packages as _PACKAGES global in Lua
+- Turn off edit-and-continue in release builds with symbols
+- Bug 1559873: libpaths inserts extra space after -L
+
+
+-----
+ 3.1
+-----
+
+- Added support for Visual Studio 2005
+- Added support for Windows resources to GNU make target
+- Added path handling functions to Lua environment
+- Added matchrecursive() for recursive file searches
+- Added os.fileexists() function to Lua environment
+- Added os.appendfile() function to Lua environment
+- Changed `monoresgen` to `resgen` to keep up with Mono project
+- Added `mono2` .NET compiler set for Mono .NET 2.0 support
+- Feature 1096677: exclude files from matchfiles (package.excludes)
+- Bug 1439463: VS2003 RTTI problem
+- Bug 1439446: GNU Makefile problem under Mingw32
+- Bug 1422068: package.path="." causes bad makefiles
+- Bug 1431530: makefile target fails when project path specified
+
+
+-----
+ 3.0
+-----
+
+- Upgraded Lua interpreter to version 5.0.1
+- The options table now stores simple values, rather than tables
+- Completed MonoDevelop support
+- Improved .NET resource handling for GNU generator
+- Added unit test suite
+- Merged Scott Graham unicode build flag patch
+- Removed package.warninglevel in favor of extra-warnings flag
+- Added package.targetprefix
+- Overhauled structure of generated GNU makefiles
+- Added --os command line option
+- Fixed bug 1268588: Use gcc to link C packages
+- Fixed bug 1363306: GNU C# should copy referenced DLLs
+
+
+-----
+ 2.4
+-----
+
+- Added chdir() to Lua script environment
+- Merged Thomas Harning's patch for .NET resources on GNU
+- Fixed bug 1194702: Can't put multiple packages in same directory
+- Fixed bug in GNU shared library builds (doh!)
+- Added target 'vs2002' to replace 'vs7'
+
+
+-----
+ 2.3
+-----
+
+- Added 'project.config[]' with 'bindir' and 'libdir'
+- Merged Scott Graham's "warninglevel" patch.
+- Fixed bug 1153484: Import lib in wrong directory.
+- Fixed bug 1013352: Stack overflow with large projects.
+- Fixed bug 945406: package.files, bad value = crash
+
+
+-----
+ 2.2
+-----
+
+- Worked around VS.NET bug for .NET assemblies > 64K.
+- Added --very-verbose flag to GNU generator.
+- GNU generator now supports assembly sources.
+
+
+-----
+ 2.1
+-----
+
+- File extension of generated binaries can now be set
+ with config.targetextension.
+- Windows targets now handle .def files for DLLs.
+
+
+-----
+ 2.0
+-----
+
+- Can now specify build actions per file
+- Include paths are now passed to VC7 resource compiler
+- Removed _WIN32 define from Cygwin makefiles
+- Added package.objdir to set intermediates directory
+- Added rmdir() to Lua script environment
+- A big bag of bug fixes
+
+
+-----
+ 1.9
+-----
+
+- Made verbose mode even more verbose.
+- posix.c now builds properly as C.
+- Fixed package dependency generation for GNU and VS2003.
+- Display Lua version number in usage text.
+- Fixed VS link between *.aspx and *.aspx.cs files.
+- Fixed VS link between *.resx and *.cs files.
+- Fixed *.d file generation for gcc 2.9x.
+- Unified various help options under '--help'.
+- Bin and Lib paths can now be arbitrarily long.
+- linkoptions are now applied in VC6 and VC7 projects.
+
+
+-----
+ 1.8
+-----
+
+- Added support for ASP.NET projects.
+- Fixed a bug in VC6 support for static libraries.
+- matchfiles() now uses package path instead of script path.
+- Added --verbose option.
+- No longer apply no-rtti and no-exceptions to *.c files.
+
+
+-----
+ 1.7
+-----
+
+- Location of generated project files can now be specified with
+ the project.path variable.
+- Inter-package dependencies are fixed for GNU makefiles.
+- No longer need to execute in same directory as project script.
+- Added "c" language specifier.
+- Added support for .resx and .config files to C# projects.
+- Added support for full assembly names in .NET references.
+- Fixed handling of paths in package.target variable.
+- Improved support for SharpDevelop.
+- Started support for OS X.
+- Added support for Digital Mars compiler.
+
+
+-------
+ 1.6.1
+-------
+
+- VS7 generator crashed if a package was built before one of its
+ dependencies. Now immediately assigns UUID before processing.
+
+
+-----
+ 1.6
+-----
+
+- Added support for Visual Studio 2003 and SharpDevelop.
+- Added binaries directory as a reference path for VS7.
+
+
+-----
+ 1.5
+-----
+
+- Added initial support for building static libraries.
+- Added "no-main" flag, prevents overriding WinMain() on
+ Windows builds.
+- Added "--no-rtti" and "no-exceptions" build flags to
+ disable those C++ features.
+- Display error message when project has no packages.
+- Moved VC7 *.pdb files into intermediates directory.
+
+
+-----
+ 1.4
+-----
+
+- Bug fixes to the path manipulation routines.
+- GNU makefiles are regenerated when premake scripts change.
+
+
+-----
+ 1.3
+-----
+
+- Added support for the Cygwin environment.
+- Added "static-runtime" build flag to statically link against C/C++
+ standard runtime libraries.
+- Bug fixes to Visual Studio 6 and 7 generators and path reversing
+ algorithm.
+
+
+-----
+ 1.2
+-----
+
+- Standardized format of command-line options.
+- Can now handle custom command-line options in script.
+- Added new function findlib().
+- Added new C++ build flag "managed" for writing C++ .NET code.
+- Can now use open-source C# compilers in VS6 generator.
+- Several bug fixes to the VS7 generator.
+
+
+-----
+ 1.1
+-----
+
+- Added support for custom build configurations. Added "optimize",
+ "optimize-size", "optimize-speed", and "no-symbols" flags to control
+ build settings.
+- Added matchfiles() to select files using wildcards.
+- Added "unsafe" flag for C# projects.
+- Added newpackage() function for creating new package objects inline,
+ instead of creating separate scripts.
+- Changed include() to dopackage() and option() to addoption(). The old
+ versions have been kept for compatibility, but will be deprecated
+ eventually.
+- Major cleanup of the source code.
+
+
+-----
+ 1.0
+-----
+
+- Fixed a bug related to the reference paths in VS7 C# projects.
+- Display a warning message if a reference path can't be found.
+- Automatically create bin and lib directories if they do not exist.
+- GNU C# projects will now properly use the configured library paths.
+
+
+-------
+ 0.9.2
+-------
+
+- Added --with-mono and --with-pnet options.
+- VS7 C# projects will now properly use the configured library paths.
+
+
+-------
+ 0.9.1
+-------
+
+- Switched to Lua (http://www.lua.org/) for project script parsing.
+- Add support for custom project options.
+- Changed 'type' to 'kind' to avoid conflict with Lua function of the
+ same name.
+- Changed 'conexe' to 'exe' because I liked it better.
+- Changed 'library' to 'dll' for C# projects to keep things consistent.
+
+
+-------
+ 0.9.0
+-------
+
+- Initial public release.
diff --git a/README.txt b/README.txt
index 5daa26a..15dd427 100644
--- a/README.txt
+++ b/README.txt
@@ -1,7 +1,7 @@
PREMAKE
A build configuration tool
- Copyright (C) 2002-2008 by Jason Perkins
+ Copyright (C) 2002-2009 by Jason Perkins
Distributed under the GNU General Public License, see LICENSE.txt
The Lua language and runtime library is (C) TeCGraf, PUC-Rio.
diff --git a/src/host/premake.c b/src/host/premake.c
index 9b21cc3..d1a2ae4 100644
--- a/src/host/premake.c
+++ b/src/host/premake.c
@@ -10,7 +10,7 @@
#define VERSION "SVN"
-#define COPYRIGHT "Copyright (C) 2002-2008 Jason Perkins and the Premake Project"
+#define COPYRIGHT "Copyright (C) 2002-2009 Jason Perkins and the Premake Project"
#define ERROR_MESSAGE "%s\n"