Posted
about 16 years
ago
by
starkos
Premake 4.0 is finally done and available for download! The full change log:
A new, more readable and extensible syntax for projects
More robust syntax validation
A new command-line format, with better argument validation
Improved path handling
... [More]
across all project settings
Upgraded to Lua 5.1.4
Many, many bug fixes
RC4 -> Final
Set Mac OS X linker flags for Code::Blocks
Bug 2533504: Files above project root not added to project
RC3 -> RC4
Embed scripts instead of bytecodes to avoid portability issues
solution() and project() now only set the active object when called with a name; remains unchanged otherwise
RC2 -> RC3
Bug: GCC Windows release builds of Premake4 crash on script errors
Patched Lua to load precompiled bytecodes on PPC architectures.
Display paths of generated files
RC1 -> RC2
Enabled use of absolute Windows paths to different drive letter
Bug: Post-build commands run before build on Code::Blocks
Removed FatalWarnings build flag
Fixed GCC 4.2 warnings (Ryan Pusztai)
Enable Windows linking to shared libraries even with NoImportLib flag set (just in case)
Fixed handling of paths in links
Added “ToolsVersion” attribute to VS2005 and VS2008 C# projects
Fixed separator between library dependencies in C makefiles
Added missing os.copyfile() function
Bug: Sometimes takes a long time to complete on Linux
Enabled Lua popen support on Linux and Mac OS X
Many, many thanks to all the people who tried out the release candidates and provided feedback. You did a great job shaking out the bugs, and I feel confident in saying this is the best version yet, by far. But if you do run into trouble, I’m here to help.
Thank you again everyone, and enjoy!
[Less]
|
Posted
about 16 years
ago
by
starkos
Hey, I’m on a roll, so why not another release candidate?
It turns out Lua bytecode isn’t as portable as I had supposed it to be, so I am now embedding the actual scripts into the release build, rather than precompiled bytecodes. I found some
... [More]
additional testing machines and have now tried it against both 32- and 64-bit x86 architectures as well as 32-bit PowerPC. Because the scripts are now interpreted at runtime it should work everywhere. Of course, let me know if you have problems.
Embed scripts instead of bytecodes to avoid portability issues
solution() and project() now only set the active object when called with a name; remains unchanged otherwise
Please give it a try and let me know what you think. With any luck, this is (really) the last release candidate, but your testing is appreciated.
Thanks, and enjoy!
[Less]
|
Posted
about 16 years
ago
by
starkos
I just discovered a misconfiguration in the Windows binary which caused it to crash if the project script contained a syntax error. So even though RC2 has only just left the oven, here comes RC3!
Bug: GCC Windows release builds of Premake4 crash
... [More]
on script errors
Patched Lua to load precompiled bytecodes on PPC architectures.
Display paths of generated files
Please give it a try and let me know what you think. I don’t have anything left in my queue and the documentation is complete, so unless a major bug is reported this release candidate will become the final build.
Thanks, and enjoy!
[Less]
|
Posted
about 16 years
ago
by
starkos
I have just uploaded the second Premake 4.0 release candidate to SourceForge. Changes since the first candidate include:
Enabled use of absolute Windows paths to different drive letter
Bug: Post-build commands run before build on Code::Blocks
... [More]
Removed FatalWarnings build flag from Premake’s own build script
Fixed GCC 4.2 warnings (Ryan Pusztai)
Enable Windows linking to shared libraries even with NoImportLib flag set (just in case)
Fixed handling of paths in links
Added “ToolsVersion” attribute to VS2005 and VS2008 C# projects
Fixed separator between library dependencies in C makefiles
Added missing os.copyfile() function
Bug: Sometimes takes a long time to complete on Linux
Enabled Lua popen support on Linux and Mac OS X
Not a bad set of fixes. Please give it a try and let me know what you think. Based on user feedback, I will either make a new release candidate in another week or, if there are no major bugs found, the final 4.0 release (followed by much celebration).
In the meantime, I’ll continue working the documentation, adding the extensions to the standard Lua namespaces (like string, table, etc.). Feedback on the documentation is also welcome and appreciated.
Thanks, and enjoy!
[Less]
|
Posted
about 16 years
ago
by
starkos
I have just uploaded the first Premake 4.0 release candidate to SourceForge. This new major version marks a complete ground-up rewrite featuring:
A new, more extensible project syntax
More robust syntax validation
A new command-line format, with
... [More]
better argument validation
Improved path handling across all project settings
An upgrade to Lua 5.1.4
Many, many bug fixes
Please give it a try and let me know what you think. Based on user feedback, I will either make a new release candidate in two weeks or, if there are no major bugs found, the final 4.0 release (followed by much celebration).
In the meantime, I will be working to flesh out and improve the documentation here on the website. That includes documenting the new custom action and option system, new extensions to the Lua libraries, and new FAQ entries culled from recent questions. Feedback on the documentation is also welcome and appreciated.
Thanks, and enjoy!
[Less]
|
Posted
over 16 years
ago
by
starkos
Another big batch of code hit the Subversion trunk today, this time adding C/C support (no C# yet) for Visual Studio 2002-2008. Still no support for custom build steps, but everything else should work. I’m now using it for my day-to-day work (and
... [More]
loving it). Please give it a try, and please let me know how it works for you. Please!
The documentation is improved but still not complete. Not everything is documented yet, but what is there is accurate. You can check the Development Roadmap to see what’s left to be done. And you can look at src/base/functions.lua to find all the project functions, including those that haven’t made it into the docs yet.
It is still my goal to have a release candidate, or least a solid beta, done by the end of this month and a full 4.0 by the end of the year. That’s aggressive, but doable if you folks beat the heck out of these early releases to shake out the bugs.
Check it out, send me feedback either here or on the mailing list, and enjoy!
[Less]
|
Posted
over 16 years
ago
by
starkos
I’ve checked a new batch of code into Subversion with more-or-less complete support for building C/C projects with GMake and GCC. There are no custom build steps yet (the “less” part) but everything else should work as expected. Please give it a
... [More]
try! The documentation is lagging the code, and there is a lot of new stuff to document, so feel free to send questions my way. I’ll start working on updated documentation this week.
At this point, 95% of the internal plumbing is now in place. The remaining work mostly involves porting the Visual Studio and other generators (see the Development Roadmap for details). With your help testing and reporting bugs I hope to have a release candidate available by the end of this month, and a final 4.0 release by the end of the year. So please grab the code and start testing!
Those of you who have been following the development of Premake will notice that this latest round of code is…different: Premake is now written mostly in Lua. Credit for the idea (or blame, depending on your point of view) goes to Thomas Harning for the suggestion. This makes Premake a bit more difficult to build, and I’ve added instructions in BUILD.txt to help get you started. But it also opens up all kinds of possibilities, such as the new template system, and once you’ve got the hang of it development is fast!
Check it out, send me feedback, and enjoy!
[Less]
|
Posted
almost 17 years
ago
by
starkos
I plan to rearrange the Subversion repository later today or tomorrow in order to make the 4.0 development branch the new trunk.
“trunk” will be moved to “branches/3.x-dev”
“branches/4.0” will be renamed to “branches/4.0-spike” and retired
... [More]
(actually it has been retired for a while, I just haven’t finished ripping code out of it yet).
I will post here when I make the changes. At that time:
if you are currently following trunk, you should “svn switch” to branches/3.x-dev
if you are current following branches/4.0, you should “svn switch” to trunk
The new trunk will be the development spike that currently exists in my local repository. It is a mostly sideways step from the current “branches/4.0” code: improved code organization, better test coverage, and some new functionality. Not all of the functionality in the previous spike it present; I’m in the process of cut-and-paste into the new trunk.
Let me know if you have any questions.
Update: All done. Here are the new locations:
3.x Development:
https://premake.svn.sourceforge.net/svnroot/premake/branches/3.x-dev
4.x Development:
https://premake.svn.sourceforge.net/svnroot/premake/trunk
[Less]
|
Posted
over 17 years
ago
by
starkos
For those of you who hadn’t already noticed, I’ve merged the Premake 4.0 development site into the main website at industriousOne. Consolidating all of the websites makes it a lot easier for me to both monitor and improve them, which means I get to
... [More]
spend more time actually creating new stuff. With the infrastructure cleaned up, and Premake 3.5 about to release, I’m ready to turn my attention to finally getting 4.0 up, running, and out the door.
For anyone interested in this kind of behind-the-scenes stuff, check out my blog, where I’ll be posting news and updates from the front. In particular, I’ve been talking about why development has been so slow, and what I’m going to do about it.
[Less]
|
Posted
almost 18 years
ago
by
starkos
Version 4 is going to break backward compatibility in many ways. Here is what I am doing to make the transition as easy as possible for project developers and their users.
The new executable will be named “premake4” instead of “premake”, so you
... [More]
can have both versions installed at the same time.
The default script name will be “premake4.lua” instead of “premake.lua”, so your project can support both versions of the tools for a period of time while folks upgrade.
I will continue to make bug fixes and minor feature upgrades to the 3.x branch while 4.0 is being developed (a few fixes have already been checked in). I will try to continue bug fixes to 3.x for a short while after 4.0 is released as needed, and as my time permits.
The 3.x branch will remain available in Subversion, and the binaries will remain available for download. If 3.x meets your needs you are free to continue using it.
[Less]
|