Commit Graph

926 Commits

Author SHA1 Message Date
Jason Perkins
67bb8488d0 Back out exclude patterns on os.match() 2015-04-01 13:36:01 -04:00
Jason Perkins
5672a02792 Backout changeset 589733d6e9dc0e521bbf90a51dc1ef251b0fe46b 2015-04-01 13:35:12 -04:00
tdijck
71a286da8c strip ../ in path.normalize 2015-03-31 11:49:47 -07:00
Jason Perkins
878d108367 Merged in ben_ratzlaff/premake-dev (pull request #146)
Implement 'RelativeLinks" flag to effect makefile creation to use -l and -L instead of linking against the full path of a dynamic object library
2015-03-29 17:46:35 -04:00
Jason Perkins
2c8facae20 Merged in dcourtois/premake-dev/issue_265 (pull request #159)
fixed issue #265
2015-03-29 17:28:10 -04:00
Jason Perkins
346d3db25c Allows to replace the extension - if exist - of a path (M Skibbe)
No magic but i really often need such a functionality. Espacialy for buildrules.
2015-03-29 17:25:22 -04:00
Jason Perkins
653416ead7 Merged in domu/premake-dev/dev/issue240 (pull request #130)
Fix issue #240, make os.match to get exclude patterns for dirs and files, os.rmdir now gets all dirs and filter out . and .. manually
2015-03-29 16:53:41 -04:00
Jason Perkins
eed8138a82 Fixed duplicate AVX test case name in GCC suite 2015-03-26 12:24:11 -04:00
Jason Perkins
0869ac5cb2 Implement AVX2 for Visual Studio 2013 2015-03-26 10:22:55 -04:00
Jason Perkins
d34021bcc9 Implement AVX2 flags for GCC and MSC 2015-03-26 08:17:13 -04:00
Damien Courtois
f11fe0db26 added unit test for premake's module loader 2015-03-26 10:54:28 +01:00
Jason Perkins
571f2da4fb Apply coding conventions to Xcode workspace exporter 2015-03-13 16:48:06 -04:00
Jason Perkins
8a4a8ff866 Merge latest from development branch 2015-03-12 11:04:54 -04:00
Jason Perkins
c8cc548bb0 Merge latest from default branch 2015-03-11 16:20:37 -04:00
Jason Perkins
39e97e68a3 Phase out use of PS3 platform; no longer included in core 2015-03-11 16:16:56 -04:00
Jason Perkins
89470ea620 Only output VC# .user file if there is something to put in it 2015-03-11 16:11:09 -04:00
Jason Perkins
058f1a4916 Modernize the VC# user file exporter 2015-03-11 15:52:51 -04:00
Jason Perkins
2fdddbee85 Only output VC'200x .user file if there is something to put in it 2015-03-11 15:39:20 -04:00
Jason Perkins
26fb3cb240 Reconcile coding styles between VC'201x and VC'200x user file exporters 2015-03-11 14:58:57 -04:00
Jason Perkins
a0408ebb98 Only output VC'201x .user file if there is something to put in it 2015-03-11 14:40:12 -04:00
Jason Perkins
d5b5abe43e Merged in TurkeyMan/premake-dev/gccprefix (pull request #154)
Added new API gccprefix
2015-03-11 12:03:12 -04:00
Jason Perkins
1fd2bc5c9f Merged in noresources/premake-dev-ns/outputof_exitcode (pull request #92)
os.outputof now returns the command exit code as a second result
2015-03-10 17:26:03 -04:00
Jason Perkins
e4a1ff2638 Merged in TurkeyMan/premake-dev/specific_warnings (pull request #152)
Added api's for control of specific warnings.
2015-03-10 17:14:22 -04:00
Manu Evans
7540f8a2f1 Added support to declare an explicit gcc toolchain prefix. 2015-03-10 21:45:41 +10:00
Manu Evans
f0f02fc680 Now with added unittests 2015-03-10 20:59:28 +10:00
Manu Evans
838e53c3d5 Now with added unit tests. 2015-03-10 20:41:44 +10:00
Jason Perkins
f9270e21cc Allow filters to specify field value aliases in the conditions 2015-02-25 17:38:16 -05:00
Jason Perkins
2ae3479f58 Merged in tbasnoopy/premake-dev/buildoutput fix (pull request #149)
add missing buildoutputs fix for vs2010
2015-02-18 15:13:41 -05:00
M Skibbe
b5c37c25cc add missing buildoutputs fix for vs2010 2015-02-18 11:33:07 +01:00
Jason Perkins
f5abdb9d69 Remove ".lib" extension from system library links in generated makefiles on Windows 2015-02-14 14:56:02 -05:00
Jason Perkins
8390255470 Reverse search order of module naming variations to avoid matching embedded path ahead of local file 2015-02-12 18:29:48 -05:00
Ben Ratzlaff
ec157c8e6e Implement 'RelativeLinks" flag to effect makefile creation to use -l and -L instead of linking against the full path of a dynamic object library 2015-02-06 16:48:59 -07:00
Renaud Guillard
203218e506 merge default 2015-02-03 21:20:16 +01:00
M Skibbe
314d8cbe2d fix buildoutputs format 2015-01-28 09:26:57 +01:00
Jason Perkins
a8a2595d79 Merge toolset path variables feature 2015-01-22 16:34:04 -05:00
Jason Perkins
74c5bfd7bd Handle absolute path tokens placed in path fields, which are themselves absolute 2015-01-21 17:22:19 -05:00
Jason Perkins
3f718a470c Add ability to map Premake tokens to toolset specific variables 2015-01-15 12:00:57 -05:00
Jason Perkins
98ab499f13 Revert ToolVersion change on VC 2013 .filters files to match VS 2015-01-12 17:17:56 -05:00
João Matos
da75753b0d Added support for debug arguments to the C# VS/XS projects generators.
Obsoletes pull request #113, thanks to Elias Holzer for original code.
2015-01-02 22:26:13 +00:00
Jason Perkins
b9d6ce892b Fix Visual Studio 2013 tool and framework version numbers 2014-12-29 15:18:07 -05:00
Jason Perkins
e507d1a2fb Exclude resource elements from Visual Studio when no resource files are present 2014-12-23 20:05:40 -05:00
Jason Perkins
b68537cd00 Remove dead code from option unit tests 2014-12-22 11:49:47 -05:00
Jason Perkins
a8f4c5561a Fix failing PS3 related unit tests 2014-12-18 16:41:58 -05:00
Jason Perkins
934e3cecf8 A bit of cleanup 2014-12-13 17:32:09 -05:00
Jason Perkins
1bcd783031 Consolidate Visual Studio extensions into the core action 2014-12-08 17:42:00 -05:00
Jason Perkins
ceb3c83d67 Remove outdated PS3 support
I will be bringing this back shortly, in a more complete form
2014-12-08 16:04:41 -05:00
Damien Courtois
5b872a3a7f added unit test for issue #63 2014-12-16 10:44:56 +01:00
Jason Perkins
eb0904698f Fix escaping of multiple build rule inputs 2014-12-08 12:44:51 -05:00
Jason Perkins
6e12c6485f Move command token expansion into actions, to allow more control at point of export 2014-11-29 14:51:49 -05:00
Jason Perkins
5d327279cc Add os.translateCommand() to expand tokens 2014-11-27 12:56:48 -05:00
Jason Perkins
011b0d9fd8 Port validation logic to walk the new container hierarchy 2014-11-21 17:04:43 -05:00
Jason Perkins
a956ea740e Allow vpaths to bubble up to project from configurations
This allows expressing "use these vpaths if this configuration is present in the project", and placing the vpaths in the same configuration block as the file lists.
2014-11-21 15:24:42 -05:00
Jason Perkins
8eef265558 Fix issue #21: ARCH variable conflicts with building on Gentoo
Remove the $(ARCH) variable from generated makefiles. If needed, we can come up with a different name that doesn't conflict with existing system variables.
2014-11-19 12:29:19 -05:00
Jason Perkins
0284817398 Implement CLR "Pure" and "Safe" values for VC 201x and MSC 2014-11-11 19:44:44 -05:00
Jason Perkins
ca68cc052b Convert all usages of Unsafe flag to new clr() function 2014-11-11 19:24:07 -05:00
Jason Perkins
38c5620f33 Convert all usages of Managed flag to new clr() function 2014-11-11 19:20:29 -05:00
Jason Perkins
b3aebffaf2 Add new editAndContinue() API to replace NoEditAndContinue flag
Make it easier and more intuitive to support platforms/toolsets where edit-and-continue is available but turned off by default. Can now turn off with editAndContinue("off") instead of flags("NoEditAndContinue"), and turn it on with editAndContinue("on") instead of removeflags("NoEditAndContinue").

The NoEditAndContinue flag is still in place, and continues to behave as it did before, but will be marked deprecated in the documentation.
2014-11-10 18:01:39 -05:00
Jason Perkins
60fc6d2897 New API strictaliasing() with GCC support 2014-11-04 18:25:32 -05:00
Jason Perkins
a972ab8009 Merge with latest development 2014-10-24 15:38:12 -04:00
Jason Perkins
c46f2c09e2 Fixes for Visual Studio rule generation
- Fix setting of boolean values to false
- Don't consider rules that haven't been explicitly included in a project
2014-10-24 15:35:30 -04:00
Jason Perkins
3104421fc3 Fix --scripts path in test helper scripts 2014-10-22 14:48:22 -04:00
Jason Perkins
2ee4d7aca7 Replace customVar() and customList() with per-rule property setters.
Example:
rule "MyCustomRule"
   -- (definition of rule)

project "MyProject"
   myCustomRuleVars {
      MyStringProperty = "Value",
      MyListProperty = { "Value", "Value" }
   }
2014-10-20 18:45:05 -04:00
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
d73e9af2ed Add external…() version to all container creation calls 2014-10-18 16:33:13 -04:00
Jason Perkins
9303920414 Add boolean field kind 2014-10-18 16:06:04 -04:00
Jason Perkins
73f3375607 Rework oven to use new container APIs; can now bake rules as well 2014-10-16 16:17:59 -04:00
Jason Perkins
47aa8db1a7 Rework solution and project APIs around new container calls 2014-10-09 19:34:34 -04:00
Jason Perkins
f73a2206ef Port solution() to new container API 2014-10-07 16:56:53 -04:00
Jason Perkins
86685d7514 Merge latest development branch 2014-10-04 19:21:38 -04:00
Jason Perkins
67f6fba149 Merge new script embedding system 2014-10-04 19:10:21 -04:00
Jason Perkins
a9f862293b Merge latest development branch 2014-10-02 17:11:34 -04:00
Jason Perkins
428b9cad2f Fix managed C++ linking of unmanaged library dependencies 2014-10-02 16:40:28 -04:00
Jason Perkins
157d96e39d Modernize VC 201x project references generator 2014-10-02 16:21:25 -04:00
Jason Perkins
88dc2cb8a8 Merged in dcourtois/premake-dev/custom_build_additional_inputs (pull request #131)
added a buildinput command to add additional input dependencies to custom build commands.
2014-09-28 14:52:43 -04:00
Jason Perkins
d3396be99c Fix unit tests broken by previous commit 2014-09-28 14:49:57 -04:00
Damien Courtois
e919f9e9f5 updated buildinputs tests to check the file separator 2014-09-26 15:26:56 +02: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
Damien Courtois
7c4eed3d1c added buildinputs support to make action 2014-09-26 15:24:23 +02:00
Damien Courtois
39725134b7 added support for buildinputs in vs200x generators 2014-09-25 11:00:17 +02:00
Damien Courtois
4e7dc976ba added a buildinput command to add additional input dependencies to custom build commands. 2014-09-25 10:41:27 +02:00
Alexey Orlov
fd590f9df9 make os.match to get exclude patterns for dirs and files, os.rmdir now gets all dirs and filter out . and .. manually 2014-09-23 18:41:45 +03:00
Jason Perkins
1b73aaf36c Merge with latest development branch 2014-09-22 16:37:51 -04:00
Jason Perkins
65a89ab098 Merged in noresources/premake-dev-ns/makefile-groups (pull request #112)
Transform solution groups into target aggregates in Makefiles (bis)
2014-09-20 18:50:56 -04:00
Jason Perkins
35b652557a Merged in mendsley/premake-dev/xbox360-imagexex (pull request #116)
Add support for custom title configuration files in xbox360 builds
2014-09-20 18:32:18 -04:00
Jason Perkins
fb8a77b902 Merged in grizzlynyo/premake-dev/FatalCompileWarnings_v201x_fix (pull request #114)
"FatalCompileWarnings" flags had no effect in vs201x actions
2014-09-20 18:25:06 -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
22d46ce57c More modernizing of VC 201x for extensibility 2014-08-07 18:07:32 -04:00
Jason Perkins
42cb65e0cb Allow ExcludeFromBuild flag to exclude entire configurations (VS only) 2014-07-29 16:00:02 -04:00
Jason Perkins
b1e25f43b1 Test framework no longer errors when test is not found 2014-07-29 15:50:55 -04:00
Jason Perkins
bed5207c5e Fix up formatting of tests from previous commit 2014-07-29 14:57:20 -04:00
Jason Perkins
32fc58eb23 Merged in gaz_liddon/premake-dev (pull request #115)
Fixes external library name mangling in gmake makefiles
2014-07-29 14:54:08 -04:00
Jason Perkins
2dfa47c0eb Fix up unsafe flag test from previous commit 2014-07-29 14:51:17 -04:00
Jason Perkins
394427a3db Merged in triton/premake-cs-fixes/cs-unsafe2 (pull request #67)
Added Unsafe flag support to the C# Make action.
2014-07-29 14:49:46 -04:00
Jason Perkins
d39cb36aef Allow external projects to be explicitly linked; use target...() APIs to control target name 2014-07-28 19:18:45 -04:00
Jason Perkins
02eb13e99d Stop writing PDB file name element to VS 201x C++ projects; use default name instead 2014-07-28 16:37:45 -04:00
Jason Perkins
10d0bd315f Small fixes to unit test framework
- test.contains() can now accept and array of values to check
- no longer errors on /test argument if no matching suite/test is found
2014-07-23 13:10:41 -04:00
Jason Perkins
ccfc2b8b66 Allow "!" prefix to force an explicit object directory, disregarding project or configuration overlaps 2014-07-21 18:49:56 -04:00
Jason Perkins
ce0e8f8e90 Merged in triton/premake-cs-fixes/defplatform (pull request #108)
Added support for setting default platforms and implemented the VS action.
2014-07-17 11:48:41 -04:00
Jason Perkins
35582e2c4c Added cleanExtensions(), with VC 201x support 2014-07-16 15:32:08 -04:00
Jason Perkins
7b8d4c4c98 Merge utility and build rule improvements 2014-07-16 14:24:00 -04:00
Jason Perkins
f38c76a3ee Fix handling of dependson() for VS C# projects (João Matos) 2014-07-15 18:31:26 -04:00
Jason Perkins
19c3d7c972 Support project-level custom rule variables for VS 201x 2014-07-15 11:16:59 -04:00
Jason Perkins
8d206735b6 Improve compatibility with VS 201x Utility projects 2014-07-14 16:48:03 -04:00
Jason Perkins
3cea3afe1c Merged in stefanc/premake-dev/gmake-parallel-pch (pull request #118)
Fix gmake parallel builds when using precompiled headers
2014-07-08 17:32:00 -04:00
Jason Perkins
1a84bd6530 Move more unit test helpers to testfx, so they can be used by modules 2014-07-07 17:03:14 -04:00
Jason Perkins
5d5928a759 Added response file support to C# Make action (João Matos) 2014-07-01 16:35:31 -04:00
Jason Perkins
a520c6c732 Merge with default 2014-06-27 11:08:59 -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
725e433929 Added missing extension targets section for custom rules 2014-06-12 19:05:44 -04:00
Jason Perkins
bd49556345 Bug fixes and modernizing of VC 2010 exporter 2014-06-12 18:39:39 -04:00
Jason Perkins
07a4ad897d Add custom rules to VC 2010 filters 2014-06-12 16:14:42 -04:00
Jason Perkins
d7c7c9373d Modernizing pass over VS'10 file generation 2014-06-11 16:05:25 -04:00
Jason Perkins
d7bd1e381d Added support for custom rule list variables (VS only) 2014-06-11 13:52:08 -04:00
Jason Perkins
efe5f1e292 Initial implementation of a minimal custom rules API (currently Visual Studio only) 2014-06-10 16:38:16 -04:00
Stefan Cosma
20e44b9f34 - Fix gmake parallel builds when using precompiled headers 2014-06-05 18:11:03 +02:00
Jason Perkins
b0103e76ca Add getLibraryDirectories() to tool adapters
- use throughout to avoid flag duplication in VS projects with external tools
2014-05-23 20:10:34 -04:00
Jason Perkins
17522321aa Disable VS 2013 duplicated file warnings 2014-05-22 10:26:16 -04:00
Gaz Liddon
82a9ebda9e Linking gmake test - checks external lib name isn't mangled
External libs with a period in the currently get changed.

The period and everything after it is deleted. So:

links {"lua-5.1"}

becomes:

-llua-5

in the makefile. This test checks for that. Fix in next commit
2014-05-08 15:52:39 +01:00
Jason Perkins
5d38977c99 Fix bug in VC 2010 test suite 2014-05-07 15:18:03 -04:00
Jason Perkins
ae8a1e0cf3 Manual merge pull request #45 (Oliver Kuckertz)
- Add Maps flag to control generation of maps file for Visual Studio
2014-05-01 15:32:50 -04:00
Jason Perkins
cb0aba47f3 Stop returning dotted directory names in os.matchdirs() 2014-04-29 15:45:15 -04:00
Renaud Guillard
860f4d5fba add tests related to solution groups handling in gmake action 2014-04-26 22:28:04 +02: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
aef8313299 Add per-file vector extension for VC 2010 2014-04-12 14:48:15 -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
triton
dc18aba44a Added support for setting default platforms and implemented the VS action. 2014-03-18 22:01:59 +00:00
Jason Perkins
b9b3667968 Add support for the AVX instruction set 2014-03-18 16:26:21 -04:00
Jason Perkins
5ef13aa5b6 Merge project objects with their underlying configuration sets 2014-03-13 17:08:04 -04:00
Jason Perkins
13c072594d Migrated more of the .vcproj support code to new conventions 2014-03-11 12:10:33 -04:00
Jason Perkins
8c54e7943f Rework VC 200x linker block to call arrays 2014-03-06 10:11:08 -05:00
Jason Perkins
6355a3215d Make virtual path processing order deterministic 2014-03-09 13:17:10 -04:00
Jason Perkins
4f40197ab0 Improve performance of configuration set handling 2014-03-09 11:47:42 -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
7c98127394 Replace "array" and "object" API data kinds with "table" 2014-02-27 17:40:25 -05:00
msk
fa32a48db7 add testcase for utility support 2014-03-01 18:27:05 +01:00
Jason Perkins
6c0be942ce Merged in tbasnoopy/premake-dev/ATL support (pull request #105)
add ATL support
2014-02-27 14:01:16 -05:00
Jason Perkins
35509a1322 Merged in tbasnoopy/premake-dev/testsuite returncode (pull request #106)
return an errorcode if testsuite fails
2014-02-27 13:58:49 -05:00
M. Skibbe
8e32d2a68a lower case the api call 2014-02-27 16:47:43 +01:00
Jason Perkins
5fdeba643f Moved platform toolset selection into configuration system 2014-02-27 09:54:55 -05:00