Commit Graph

104 Commits

Author SHA1 Message Date
Jason Perkins
4af8eb44af Clean up rule container creation and usage
- Adds externalRule() to match rule()
- Adds externalProject() as replacement for external() for consistency with rules
- Adds rules() to associate rules (external or generated) with a project
- Drops customRules(); use rules() on the project level instead
2014-10-20 15:41:00 -04:00
Jason Perkins
86685d7514 Merge latest development branch 2014-10-04 19:21:38 -04:00
Jason Perkins
90ae7aaa70 Rework embedded scripts to be loaded on-demand and by name
This will be required in order to migrate modules into the executable for binary releases
2014-09-26 09:25:14 -04:00
Jason Perkins
039d83cc28 Merge latest development branch 2014-09-18 17:29:01 -04:00
Jason Perkins
b347b204d8 Modify testing scripts to use new test action setup 2014-09-18 16:19:08 -04:00
Jason Perkins
52515963b4 Make test framework module aware
- Move test action into main project script
- Look for and load test suites from manifest files
- Make individual tests play nicer with third-party modifications
2014-09-17 19:19:47 -04:00
Jason Perkins
5d9901913c Merge with development branch 2014-09-11 10:56:44 -04:00
Jason Perkins
1f67707a9b Store config maps in a list, so project script ordering will be maintained 2014-08-28 09:19:14 -04:00
Jason Perkins
98aba2438f Rework filter() and configuration() to support new container hierarchies; can now use on rules 2014-08-27 16:38:58 -04:00
Jason Perkins
9230abc637 Rename project.getfilename() to premake.filename(); now used by rules too 2014-08-11 17:28:51 -04:00
Jason Perkins
0df2020f6b Pass _PREMAKE_COMMAND unit test when executable uses a non-standard name or location 2014-06-26 10:43:48 -04:00
Jason Perkins
cb0aba47f3 Stop returning dotted directory names in os.matchdirs() 2014-04-29 15:45:15 -04:00
Jason Perkins
f4e55da621 Added new filter() to replace configuration(), with required field prefixes
- use like: filter { "configurations:Debug" }
- supported prefixes: action, architecture, configurations, files, kind, language, options, platforms, system
- defaults to "configurations" if no prefix is specified
2014-04-25 11:53:01 -04:00
Jason Perkins
a672ec416a Fix issue #20 - can now find files with a dot prefix; directories are still ignored 2014-04-24 10:49:06 -04:00
Jason Perkins
7dd9f4b041 Fix handling of "files:not Pattern*" for non-file contexts 2014-04-08 15:50:00 -04:00
Jason Perkins
28cfa55886 First pass at support for configuration filter prefixes (e.g. "files:Debug**") 2014-04-07 15:04:19 -04:00
Jason Perkins
5ef13aa5b6 Merge project objects with their underlying configuration sets 2014-03-13 17:08:04 -04:00
Jason Perkins
6355a3215d Make virtual path processing order deterministic 2014-03-09 13:17:10 -04:00
Jason Perkins
b228800ba9 Move config set value removes to new field framework (mostly) 2014-03-09 08:27:21 -04:00
Jason Perkins
aacafa8fe7 Move config set value stores to new field framework 2014-03-08 16:03:34 -05:00
Jason Perkins
9378d31295 Move config set value fetches to new field framework 2014-03-08 14:17:35 -05:00
Jason Perkins
974b622b82 Require configuration set fetch/store to use registered fields only; phase out direct table access 2014-03-08 09:28:37 -05:00
Jason Perkins
51ab0947e8 Make _OPTIONS table key lookups case insensitive 2014-02-25 13:17:04 -05:00
Jason Perkins
1cbc2bef9d Clean up pass over output APIs used by exporters
- Reworked _p() and _x() over new indentation-aware output APIs
- Added proper APIs for setting indentation, EOL sequence, and value escaping
- Moved functions intended for exporters to premake.lua (with generation and validation calls)
2014-02-08 10:44:57 -05:00
Jason Perkins
b3216cbcf8 Return absolute path if getrelative() hits the top of a DOS file system (issue #213) 2013-12-20 15:08:05 -05:00
Jason Perkins
9831545e2d Fix path.getrelative() when trailing slashes are present 2013-10-22 16:32:51 -04:00
Jason Perkins
1e24b4790b Improve path.getabsolute
- Allow optional second "relative to" argument to use as base for conversion
- Fix handling of paths like: $ORIGIN/../lib
2013-10-12 16:18:54 -04:00
Jason Perkins
686f3f071a Add optimize(); deprecate Optimize, OptimizeSize, and OptimizeSpeed flags 2013-09-29 11:23:39 -04:00
Jason Perkins
18c6d90734 Allow virtual paths to specify empty source tree root folders 2013-09-12 10:40:52 -04:00
Jason Perkins
985c58103c Make the version change from 4.x to 5.x official
- Rename executable to premake5
- Default to premake5.lua project script; fallback to premake4.lua if not found
- Clean up internal references to premake4 naming
2013-09-10 16:24:39 -04:00
Jason Perkins
347f10a379 Make table.isempty work with table which has a key as false (Baiyan Huang) 2013-07-29 11:41:05 -04:00
Jason Perkins
01531cde9e Snapshot recent project format changesMore reconciliation with Visual Studio project formats:
- fix dummy configurations for makefile projects
- remove manifest and app verifier tools from static library configurations
- improve sorting of source tree (still needs work)
2013-05-21 11:55:00 -04:00
Jason Perkins
b59850dd1b Path tokens in non-path fields (like custom build commands) are not expanded to project-relative paths 2013-04-17 11:54:07 -04:00
Jason Perkins
64d6d71fcd Add new Makefile configuration kind to API and project validation 2013-04-02 10:59:54 -04:00
Jason Perkins
4c93d368eb Modified io.capture() etc. to allow for nested captures, to be used by new file configuration handling code 2013-03-12 18:18:47 -04:00
Jason Perkins
8d8a3e3574 Fix: path.getrelative() gives incorrect results for paths containing "//" 2013-03-06 10:06:45 -05:00
Jason Perkins
09100182c3 Port validation checking; add warning for out of scope values 2013-02-01 14:54:14 -05:00
Jason Perkins
8e7da0f3be Moved UUID collision warning to stderr to improve visibility 2013-01-17 14:37:49 -05:00
Jason Perkins
f60074d380 Omit Keyword and RootNamespace from non-Windows Visual Studio projects 2013-01-12 11:52:59 -05:00
Jason Perkins
c94073fc7e Port path.getabsolute() from Lua to C 2013-01-04 10:18:47 -05:00
Jason Perkins
b25c12f2b6 Ported old stress test; moved path.join() to C 2013-01-03 11:11:31 -05:00
Jason Perkins
41198fac9a UUIDs in Visual Studio project files now use a deterministic, name-based generator 2012-12-29 13:26:41 -05:00
Jason Perkins
4ead57c055 Make VC2010 C++ .user file more extensible; add premake.override() convenience function. 2012-12-04 11:45:26 -05:00
Jason Perkins
2cf609c6ac Ported key-value handling to new configuration system 2012-11-14 12:42:53 -05:00
Jason Perkins
2800ebd010 Ported list handling to new configuration objects 2012-11-04 18:48:20 -05:00
Jason Perkins
3f79a363b2 First pass at removing dead and deprecated code 2012-11-04 11:54:04 -05:00
Jason Perkins
77212557dc Merge new configuration system into the public APIs 2012-11-04 09:21:58 -05:00
Jason Perkins
3d6e03e966 Config sets can now be hierarchical; pull target information from sets instead of old configs 2012-11-01 16:34:06 -04:00
Jason Perkins
6c19509737 Port "not" and "or" modifiers to new criteria objects 2012-10-31 19:34:53 -04:00
Jason Perkins
fb5aaf860c Initial connection of config sets to the public configuration API 2012-10-31 15:46:28 -04:00