Commit Graph

1137 Commits

Author SHA1 Message Date
Jason Perkins
b07b353507 Fix unit tests broken by the previous commit 2015-07-09 15:06:41 +02:00
Tom van Dijck
5fb66f12e5 fix unit-tests. 2015-07-09 15:06:38 +02:00
rhuvendiek
ca4a687773 Add unit test for MIDL generator. 2015-07-09 15:06:35 +02:00
Jason Perkins
349c6f891c Add link time optimization support for GCC and Clang 2015-07-09 15:06:32 +02:00
leeonix
91ec1f2f4f modify gmake Makefile LINKCMD $(TARGET) to "$@" issue #125 2015-07-09 15:06:18 +02:00
Jason Perkins
9f68132f53 Deprecate SEH flag; add value to exceptionhandling() 2015-07-09 15:06:14 +02:00
Jason Perkins
2a608f4ca4 Replace usages of NoExceptions and NoRTTI flags with exceptionhandling() and rtti() 2015-07-09 15:06:09 +02:00
Jason Perkins
bd2b887367 Add optional versions argument to require() 2015-07-09 15:06:03 +02:00
Jason Perkins
c3c288a139 Add a version comparison call with tests 2015-07-09 15:05:59 +02:00
Tom van Dijck
0432d192e4 convert exceptionhandling, rtti and editandcontinue flags from boolean to "tri-states". 2015-07-09 15:05:50 +02:00
Tom van Dijck
046abc1331 add new exceptionhandling and rtti API's, deprecate the corresponding flags. 2015-07-09 15:05:47 +02:00
Tom van Dijck
cd80c5a9c5 oops.. remove out paths. 2015-07-09 15:05:34 +02:00
Tom van Dijck
b874b79597 filter out /./ in path.join and path.normalize 2015-07-09 15:05:33 +02:00
Damien Courtois
b228a68919 fixed incorrect backslashes escaping outside of tokens 2015-07-07 14:43:31 +02:00
Jason Perkins
86d40be605 Fix unit tests broken by the previous commit 2015-07-05 12:51:36 -04:00
starkos
9e1b733e78 Merge pull request #138 from Blizzard/targetdir-default-fix
fix targetdir default.
2015-07-05 12:30:36 -04:00
Tom van Dijck
31e3588d54 fix unit-tests. 2015-07-02 07:14:26 -07:00
starkos
b3639127cc Merge pull request #137 from starkos/lto-support
Add link time optimization support for GCC and Clang
2015-07-01 16:27:53 -04:00
rhuvendiek
2014046021 Add unit test for MIDL generator. 2015-07-01 16:52:53 +02:00
Jason Perkins
d0e6042406 Add link time optimization support for GCC and Clang 2015-06-30 16:20:10 -04:00
starkos
5ce2bc0a7b Merge pull request #127 from starkos/exception-rtti-fixes
Finish switching to exceptionhandling() and rtti()
2015-06-25 15:35:05 -04:00
leeonix
a01225a90a modify gmake Makefile LINKCMD $(TARGET) to "$@" issue #125 2015-06-25 07:03:10 +08:00
Jason Perkins
f59651f3f6 Deprecate SEH flag; add value to exceptionhandling() 2015-06-23 19:03:28 -04:00
Jason Perkins
313a7c31ce Replace usages of NoExceptions and NoRTTI flags with exceptionhandling() and rtti() 2015-06-23 16:53:10 -04:00
Jason Perkins
5d98731c65 Add optional versions argument to require() 2015-06-22 15:35:20 -04:00
Jason Perkins
bc55dc5796 Add a version comparison call with tests 2015-06-22 14:48:26 -04:00
starkos
0280d44efd Merge pull request #104 from Blizzard/normalize-fix
filter out /./ in path.join and path.normalize
2015-06-21 19:30:45 -04:00
Tom van Dijck
8d0b2565b5 convert exceptionhandling, rtti and editandcontinue flags from boolean to "tri-states". 2015-06-16 08:44:18 -07:00
Tom van Dijck
307e04ed88 add new exceptionhandling and rtti API's, deprecate the corresponding flags. 2015-06-16 08:25:39 -07:00
Damien Courtois
f5d7ef1a5b fixed a crash when a token contains non-escaped backslashes, and added a unit test 2015-06-15 18:15:03 +02:00
Manu Evans
2851751963 Merge pull request #99 from moomalade/make_cc_override
Enable Makefile environment overrides for CC,CXX and AR.
2015-06-13 10:43:04 +10:00
Tom van Dijck
678616b068 fix for /O2 not liking /RTC1 2015-06-10 16:32:09 -07:00
Tom van Dijck
fc9c8d224d oops.. remove out paths. 2015-06-08 11:12:17 -07:00
Tom van Dijck
c3c2045d92 filter out /./ in path.join and path.normalize 2015-06-08 11:08:08 -07:00
Tim Wharton
45401aa57b Enable Makefile environment overrides for CC,CXX and AR.
Check if CC, CXX or AR are their default values before assigning them their premake defaults.
If they are not at their default values, they have been overriden in the environment and we should leave them alone.

Overriding toolchains from the command line is useful when swapping between compilers.
For example: `CC=gcc-4.8.1 make -C build`
2015-06-08 04:46:16 +01:00
starkos
b23fcc0e2b Merge pull request #12 from Blizzard/pr6
/O2 is incompatible with /RTC1
2015-05-25 19:42:29 -04:00
Jason Perkins
aafdc11626 Prevent environment variables from being trimmed out by ".." sequences in path.join() 2015-05-20 18:15:41 -04:00
starkos
d16b2f952f Merge pull request #76 from starkos/vstudio-system-includes
Add system include and library search paths
2015-05-20 16:20:03 -04:00
Jason Perkins
304c091431 Merge remote-tracking branch 'origin/master' into vstudio-system-includes 2015-05-19 15:55:47 -04:00
Jason Perkins
c83634c105 Add support for sysincludedirs() and syslibdirs() to GCC, Clang, and MSC adapters 2015-05-19 15:55:11 -04:00
Tom van Dijck
6f20d21328 performance improvement by handling edge .. directories during path join 2015-05-18 18:08:36 -07:00
Tom van Dijck
e821e1f1da fix unit-tests 2015-05-18 08:43:12 -07:00
Jason Perkins
7eb03dfa27 Add syslibdirs and VC 2010+ implementation 2015-05-17 17:53:55 -04:00
starkos
b1cbb27914 Merge pull request #61 from Blizzard/deprecated-args
Fixes for lua deprecated 'arg' usage.
2015-05-17 12:02:33 -04:00
Jason Perkins
8048890507 Merge branch 'master' of https://github.com/amc522/premake-core into amc522-master
# Conflicts:
#	src/actions/vstudio/vs2010_vcxproj_user.lua
2015-05-17 12:01:04 -04:00
Jason Perkins
ee1f165c8a Add sysincludedirs() and VC 2010+ implementation 2015-05-13 15:41:29 -04:00
tdijck
010397c15e Fixes for lua deprecated 'arg' usage. 2015-05-11 10:18:17 -07:00
Manu Evans
c2b982885a Merge pull request #60 from starkos/fix-rule-var-paths
Fix rule var paths
2015-05-09 10:54:53 +10:00
Jason Perkins
15fd9fd43b Translate rule var paths for Visual Studio projects and make relative to project 2015-05-08 16:30:47 -04:00
Aaron
431c158a65 Fixed test for debugcommand for vc2010 action 2015-05-08 12:24:49 -04:00
Jason Perkins
a0881cbcff Fix usages of old external function casing 2015-05-07 15:37:32 -04:00
Jason Perkins
2df200eb2d Re-standardize all project APIs to Lua's all-lowercase style
See [this discussion topic](https://groups.google.com/forum/#!topic/premake-development/W1rRPcMmM0k)
2015-05-05 14:46:00 -04:00
Manu Evans
f01d7f726c Merge pull request #48 from starkos/vs-platform-toolset
Modify toolset() to accept an option version number
2015-04-29 21:26:59 +10:00
Jason Perkins
32183f039f Modify toolset() to accept an option version number.
toolset("gcc")   -- specifies GCC with no specific version
toolset("gcc-4.8")   -- GCC version 4.8
toolset("msc-100")  -- MSC with platform toolset v100
toolset("v100")  -- same as above
2015-04-28 18:50:56 -04:00
Jason Perkins
400f0fccdb New API buildlog() to specify build log file path; implemented for Visual Studio 2010+ 2015-04-28 16:30:23 -04:00
Jason Perkins
17f1843c71 Finish renaming architectures away from x32/x64
A number of tests were relying on the fact that x32/x64 were being converted implicitly to x86/x86_64. If/when we retire those symbols, all of those tests would break. Renamed them now to avoid having to sort it out later. Also fixed up comments to keep everything consistent.
2015-04-13 18:27:11 -04:00
Manu Evans
07e90323cd Changed x32/x64 to explicit architecture names for clarity.
Aliases should probably be deprecated.
2015-04-13 21:41:08 +10:00
Jason Perkins
614cea1c98 Fix handling of "../../.." sequences in path.normalize() 2015-04-08 18:01:43 -04:00
Jason Perkins
4f511b2960 Merge branch 'cleanup-hg' of https://github.com/premake/premake-core 2015-04-04 11:29:40 -04:00
Jason Perkins
0557e38efd Merge branch 'pr2' of https://github.com/Blizzard/premake-core 2015-04-04 11:17:24 -04:00
Manu Evans
1873aa77af Surprisingly, the source code has referenced to .hg* files... 2015-04-03 13:30:46 +10:00
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
M. Skibbe
cb3671fdc8 add ATL support 2014-02-27 13:47:51 +01:00
M. Skibbe
67877ab787 return an errorcode if testsuite fails 2014-02-27 13:37:46 +01:00
Jason Perkins
0af9660606 Fix file sort order for VC'10 projects when virtual paths are used 2014-02-26 18:43:06 -05:00
Jason Perkins
51ab0947e8 Make _OPTIONS table key lookups case insensitive 2014-02-25 13:17:04 -05:00
Jason Perkins
cba18ab007 Port and clean up empty configuration handling in VC 200x projects 2014-02-18 10:59:56 -05:00
Jason Perkins
1b28b48a6b Fix duplicate flags in Gmake PCH build commands (Patrick Rapin) 2014-02-14 15:22:32 -05:00
Jason Perkins
407861bc80 Allow custom build and resource files to be excluded from builds 2014-02-11 18:04:07 -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
b3468bd591 Add locale() to specify culture codes for Visual Studio C/C++ resources 2014-02-06 15:38:51 -05:00
Jason Perkins
f44ac84545 Add per-file defines for VC 200x 2014-02-05 17:04:37 -05:00
Jason Perkins
5f1c12a1cf Fix makefile unit tests broken by previous commits 2014-02-04 15:27:51 -05:00
Jason Perkins
46e3a06330 Port VC 200x user files to new indentation APIs, fix a few indentation bugs from previous commit 2014-01-31 14:29:58 -05:00
Jason Perkins
93949df3fc Enable per-file defines in VC 2010 projects 2014-01-28 13:41:58 -05:00
Jason Perkins
6db06d6985 Use new indentation-aware APIs in VC 200x exporter 2014-01-31 11:40:09 -05:00
Renaud Guillard
2057519a42 ... 2014-01-25 20:37:31 +01:00
Renaud Guillard
31447cb370 typo: copy/paste is evil 2014-01-25 20:31:54 +01:00
Renaud Guillard
c8a18c4b4e add more comments on changes to the lua library
add basic test for the new os.outputof behavior
2014-01-25 20:23:13 +01:00
Jason Perkins
623b35aba8 Add indentation aware output functions for exporters 2014-01-24 18:57:00 -05:00
Jason Perkins
6cf6ab4955 Add prebuild-, prelink- and postbuildmessage() 2014-01-15 16:12:29 -05:00
Jason Perkins
98ee892303 Use boolean fields rather than string decorations for extra API field information (Richard Geary) 2014-01-14 16:43:14 -05:00
Jason Perkins
d9a9919f49 Use DOS-style environment variables in VS solution paths 2014-01-13 17:10:53 -05:00
Jason Perkins
2efe9d780d Fixed VC 2010 escaping of custom build steps 2014-01-10 10:40:45 -05:00
Jason Perkins
48bbde5334 Fixed XML escaping for VS C# projects 2014-01-09 18:06:03 -05:00
Jason Perkins
75da14d13b Split XML declarations from VS project headers, to allow comments to be inserted by modules 2014-01-07 17:08:51 -05:00
Jason Perkins
ffdacd7fba Treat linker warnings as errors when FatalWarnings is set 2013-12-24 14:01:57 -05:00
Jason Perkins
cd4e12e287 Remove MSC /MANIFEST and /INCREMENTAL flags; are already the default values 2013-12-23 16:52:54 -05:00
Jason Perkins
591b6d4083 Add /DLL switch when building shared libs with MSC 2013-12-20 10:19:44 -05:00
Jason Perkins
0824533307 Allow implib… fields to control linking names for all target kinds 2013-12-20 09:48:03 -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
957a6e45e1 Move more tool switches into the mapping tables 2013-12-17 16:43:09 -05:00
Jason Perkins
c79f93665a Add command line options to filter terms for configurations
--renderer=opengl can be used like: configuration { "renderer=opengl" }
  --release can be used like: configuration { "release" }
2013-12-10 11:59:35 -05:00
Jason Perkins
446090b6d8 Added more command line flags for MSC compiler 2013-11-22 14:06:41 -05:00
Jason Perkins
11bfb279d3 Added support for Settings.settings file association 2013-11-20 15:35:37 -05:00
Jason Perkins
1ee62b13bc Removed override of Lua type(); no longer required by Premake APIs 2013-11-20 13:26:52 -05:00
Jason Perkins
06aa897261 Add new "Resource" build action for WPF 2013-11-16 11:53:48 -05:00
Jason Perkins
fadde31127 Begin adding support for .xaml files 2013-11-15 17:17:41 -05:00
Jason Perkins
d3f0a43644 Add flag "WPF" to enable Microsoft WPF project handling 2013-11-15 16:35:27 -05:00
Jason Perkins
708175e24b Split baking back out into own source file; prevent automatic baking of "raw" objects 2013-11-14 08:52:55 -05:00
Jason Perkins
c38eb0c67f Fix virtual path matching for patterns like "filename.*" 2013-11-10 16:14:29 -05:00
Jason Perkins
91d003a82f Phased out sysflag tables from tool adapters 2013-10-31 10:57:25 -04:00
Jason Perkins
b5e7a345fb Merged in triton/premake-cs-fixes/make-rc2 (pull request #71)
Fixed resource compiler tool in the C++ Make backend.
2013-10-31 11:19:09 -04:00
Jason Perkins
db77bb3434 Fix C# resource file associations when placed in a subfolder 2013-10-30 14:22:53 -04:00
Manu Evans
3feb383e2b Support vs2005 (yes, I downloaded and installed vs2005 to test).
Added unit tests.
2013-10-30 14:03:24 +10:00
Jason Perkins
d2295fc5d5 Merged in triton/premake-cs-fixes/gcc-rc (pull request #68)
Added support for resource compiler tool under the GCC toolset.
2013-10-24 11:39:57 -04:00
Jason Perkins
b9739214dc Merged in triton/premake-cs-fixes/cs-noconfig (pull request #66)
C# Make projects now specify the "/noconfig" csc/mcs flag to behave like VS.
2013-10-24 11:38:52 -04:00
Jason Perkins
bff804a03a Merged in triton/premake-cs-fixes/cli-usingdirs3 (pull request #75)
Added new function usingdirs() to specify additional C++/CLI using directories.
2013-10-24 11:32:48 -04:00
Jason Perkins
f9015f55f1 Fix DEPENDS in C# Makefiles (João Matos, Jason Filsinger) 2013-10-24 11:30:05 -04:00
Jason Perkins
04b290f725 Allow "*" to select the parent scope (i.e. solution "*" selects global scope, project "*" selects solution scope) 2013-10-24 09:59:24 -04:00
Jason Perkins
a31373e287 Begin porting VC200x exporter to new function callout conventions 2013-10-23 10:51:11 -04:00
Jason Perkins
9831545e2d Fix path.getrelative() when trailing slashes are present 2013-10-22 16:32:51 -04:00
Jason Perkins
a91f7154f8 Merged in filsinger/premake-dev/cs-source-path-delimiter (pull request #84)
removing path.translate from cs.listsources to prevent the use of double backslash path delimiters.
2013-10-21 12:01:08 -04:00
Jason Perkins
c72d71424a Begin splitting VC200x exporter into function lists for overriding 2013-10-18 10:38:00 -04:00
Jason Filsinger
0343d81c9f removing path.translate from cs.listsources to prevent the use of double backslash path delimiters. 2013-10-16 22:04:23 -07:00
Jason Perkins
2e08d5f218 Added support for per-file NoPCH flag in the VS2010 generator (João Matos) 2013-10-16 16:11:39 -04:00
Jason Perkins
d1eb67d43b Enable per-file optimization levels for Visual Studio 2013-10-16 14:29:49 -04:00
Jason Perkins
133cf7ce7c Add "full" and "debug" optimization levels 2013-10-16 13:47:09 -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
30d53ced1d Merged in triton/premake-cs-fixes/cpp-framework (pull request #79)
Use the user specified target .NET framework for Managed C++ VS projects.
2013-10-09 11:38:18 -04:00
Nitin Gupta
9fc0cc4f85 Handle case for optimize "Off"
Makes gcc/clang use '-O0' when optimize "Off" is set
2013-10-08 18:05:17 -07:00
Nitin Gupta
c3d0e094a8 Fix clang test case
Test asserts that CXX is set to clang++ (and not clang)
2013-10-08 17:30:04 -07:00
Jason Perkins
1b105e377d Pass same flags to PCH compile as C/C++ source code 2013-10-03 10:47:14 -04:00
triton
68f3a6d032 Use the user specified target .NET framework for Managed C++ VS projects. 2013-09-30 15:53:16 +01:00
Jason Perkins
64c220b70a Project locations are now inherited from the solution, if set. 2013-09-30 10:16:56 -04:00
Jason Perkins
91635859b9 Add warnings(); deprecate ExtraWarnings and NoWarnings flags 2013-09-29 12:39:07 -04:00
Jason Perkins
686f3f071a Add optimize(); deprecate Optimize, OptimizeSize, and OptimizeSpeed flags 2013-09-29 11:23:39 -04:00
triton
69ad16381c Added new function usingdirs() to specify additional C++/CLI using directories. 2013-09-28 00:04:18 +01:00
Jason Perkins
4862c25af5 Add floatingpoint(); deprecate FloatFast and FloatStrict flags 2013-09-27 14:49:21 -04:00
Jason Perkins
df428a72d7 Add vectorextensions(); deprecate EnableSSE and EnableSSE2 2013-09-27 14:25:10 -04:00
triton
6e15d08b16 Fixed resource compiler tool in the C++ Make backend. 2013-09-27 01:52:06 +01:00
triton
48c49498fa Added support for resource compiler tool under the GCC toolset. 2013-09-27 00:37:24 +01:00
triton
6307cf0bd1 Added Unsafe flag support to the C# Make action. 2013-09-27 00:27:48 +01:00
triton
82fc2683be C# Make projects now specify the "/noconfig" csc/mcs flag to behave like VS. 2013-09-27 00:18:33 +01:00
Jason Perkins
542d4c88fb Merged in dcourtois/premake-dev/FixNoWarnings (pull request #65)
fixed NoWarnings flag for vs201x generators
2013-09-19 10:22:39 -04:00
Jason Perkins
4bef76b42a Merged in dcourtois/premake-dev/CustomBuildMessages (pull request #62)
added support for custom build message in vs201x generator
2013-09-19 10:19:15 -04:00
dcourtois
9a4e2ec8aa forgot to add test_manifest.lua to tests/premake5.lua and small fixes 2013-09-18 16:50:00 +02:00
dcourtois
eebd451006 merge latest revisions 2013-09-18 11:54:46 +02:00
dcourtois
e682b08779 fixed NoWarnings flag for vs201x generators 2013-09-18 11:37:36 +02:00
Jason Perkins
7c8881ddb2 Remove nextgen fields and _ng suffixes everywhere 2013-09-13 11:52:00 -04:00
Jason Perkins
e681b636ec More code cleanup:
- Drop premake5 namespace; everything is premake again
- Remove deprecated project and config APIs
2013-09-13 11:15:36 -04:00
Jason Perkins
24a5ba03ee Merged in xpol/premake-dev (pull request #39)
Add NoWarnings flags support for gcc.
2013-09-13 11:16:37 -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
db22c65496 Limit use of quotes in compiler command line arguments 2013-09-11 10:57:44 -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
20b324201e Fixed bug in directory field wildcard expansion (h/t StiX) 2013-09-09 14:03:06 -04:00
dcourtois
36d62865b1 added support for additional manifest files to vs201x actions 2013-09-06 17:32:06 +02:00
Jason Perkins
ad0e72f6cf Removed references to missing getbuildaction() from C# Makefile projects 2013-09-06 10:23:17 -04:00
dcourtois
4c867e2f1d added support for custom build message in vs201x generator 2013-09-03 13:16:08 +02:00
Jason Perkins
191e81df8e Improved use of premake.warnOnce() 2013-08-29 12:20:53 -04:00
dcourtois
a5e8862339 added support for LinkTimeOptimization flag 2013-08-21 11:58:08 +02:00