Commit Graph

1087 Commits

Author SHA1 Message Date
Jason Perkins
10b83b950f Only output NuGet project element if packages were listed by the project 2016-04-13 18:55:44 -04:00
Sam Surtees
5059099a5b Added systemversion API. Fixes #315 2016-04-12 21:10:23 +10:00
Jason Perkins
002e65d428 Merge pull request #453 from aleksijuvani/nuget-in-vs-exporter
Add NuGet support to the Visual Studio exporter
2016-04-11 13:30:49 -04:00
Tom van Dijck
da89636575 Test for .asm file support in visual studio action. 2016-04-07 12:52:58 -07:00
Tom van Dijck
cf1b44018c refactor file categorization in vcxproj backend.
and add Masm support.
2016-04-07 12:52:58 -07:00
Eyal Solnik
9d068901f9 Fix replaceextension from adding a leading dot
When an empty string was passed to replaceextension
as the new extension, it added a leading dot,
this update fixes/prevents it.
2016-03-29 20:15:19 +03:00
Eyal Solnik
82fd64e00c Fix getextension to handle paths w/ dot correctly 2016-03-29 10:02:49 +03:00
aleksijuvani
6059f8ff39 Change cs2005.assemblyReferences to use call arrays 2016-03-21 11:15:57 +02:00
aleksijuvani
ee521c4c57 Add tests for Visual Studio NuGet support 2016-03-19 20:43:38 +02:00
Jason Perkins
dbb42a0b77 Merge pull request #307 from LORgames/ssurtees/translatePathFix
Modify `path.translate()` to use target OS path separator by default
2016-03-17 12:13:55 -04:00
Jason Perkins
ef2f5c8945 Roll back PR #440; see discussion at https://github.com/premake/premake-core/pull/440 2016-03-15 14:48:33 -04:00
Samuel Surtees
495befbd7e Merge pull request #443 from starkos/isabsolute-allow-dot
Allow dot in path variables
2016-03-08 21:13:01 +10:00
Jason Perkins
5c3f2b8835 Some environments and toolsets allow additional characters within $(...) tokens. Adding the dot "." 2016-03-07 16:38:50 -05:00
Sam Surtees
a0242bb955 Cleaned up vstudio linker elements. Fixes #150 2016-03-01 22:11:33 +10:00
Sam Surtees
7886b04642 Added support for schema files in C# projects. Fixes #416 2016-02-29 21:39:32 +10:00
Sam Surtees
43dc8ccbcc Fixed issue with incorrect UUID being generated for groups. Fixes #100 2016-02-26 02:04:08 +10:00
Samuel Surtees
cd336b08fe Merge pull request #423 from Blizzard/link-groups
Link groups for gcc. (-Wl,--start-group)
2016-02-23 20:21:47 +10:00
Sam Surtees
d382228ceb Converted premake-core tests over to use premake.action.set() instead of _ACTION 2016-02-06 13:35:54 +10:00
Sam Surtees
f60a1b391f path.translate now uses the target OS separator by default instead of Windows separator. 2016-02-06 13:35:03 +10:00
Tom van Dijck
d387209ed4 fix "do_isabsolute", and add more tests. 2016-02-05 13:15:01 -08:00
Tom van Dijck
6377a30a6a Link groups for gcc. (-Wl,--start-group) 2016-02-05 09:54:30 -08:00
Jason Perkins
ef5ac384cf Add support for DOS-style environment variables, e.g. %JAVA_HOME% 2016-01-20 14:06:38 -05:00
Jason Perkins
309ef32ff8 Move character set command line flags from switch lists to defines 2016-01-18 14:11:50 -05:00
Jason Perkins
84cb655069 Add missing Unicode/MBCS defines to MSC command line
Note that the defines are showing up in CFLAGS rather than DEFINES. The tool adapter API needs to be modified before they can be placed in the defines list where they should be.
2016-01-18 13:13:37 -05:00
Jason Perkins
0573e4f4b6 Update unit tests to match new VS solution output 2016-01-17 16:39:30 -05:00
Jason Perkins
fb93e43649 Update the stress test to work with the latest APIs 2016-01-17 12:30:32 -05:00
yuyoyuppe
196d46a412 add grouping by link mode 2016-01-15 22:02:01 +06:00
yuyoyuppe
82473183a5 feature + tests 2016-01-15 18:46:05 +06:00
Tom van Dijck
99bf0bc8cd Merge pull request #398 from Blizzard/premake-extension-support
add premake extension data.
2016-01-14 13:45:54 -08:00
Tom van Dijck
c9dd90f4b7 Merge pull request #370 from Blizzard/detoken-explicit-absolute
Allow the pathVars to return a table that specifies explicitly that a token represents a relative or absolute path.
2016-01-14 13:23:53 -08:00
Tom van Dijck
00aff301b2 added 'editorintegration' flag
added tests
use p.push/pop api.
2016-01-12 08:27:42 -08:00
Jason Perkins
c74e8d12ee Merge pull request #367 from Blizzard/semver
make "premake.checkVersion" use Semantic Versioning
2015-12-28 11:11:43 -05:00
Jason Perkins
16b62f0877 Add new API characterset(); make Premake match Visual Studio default behavior
Visual Studio has been defaulting its projects to Unicode since at least 2008. Premake has been defaulting to MBCS to maintain backward compatibility with earlier Premake versions. This PR tries to set things right by switching Premake's default to Unicode.

This might set a record for most broken projects.
2015-12-18 16:59:13 -05:00
Tom van Dijck
535e40db5f Allow the pathVars to return a table that specifies explicitly that a token represents a relative or absolute path. 2015-12-17 16:13:35 -08:00
Tom van Dijck
9f7ebdced2 make "premake.checkVersion" use Semantic Versioning
http://semver.org/
2015-12-17 10:55:43 -08:00
Jason Perkins
a7fa9b9142 Adds the missing resource file test on PR #365 2015-12-16 19:50:37 -05:00
Jason Perkins
79f453a285 Emit <TargetMachine> element to fix LNK4068 warnings in Visual Studio 2010+ 2015-12-16 16:25:37 -05:00
Manu Evans
b4bc07f4ed Merge pull request #353 from starkos/rollback-link-groups
Rollback link groups (-Wl,--start-group, -Wl,--end-group)
2015-12-04 10:53:02 +10:00
Jason Perkins
4b629acda0 Rollback link groups (-Wl,--start-group, -Wl,--end-group)
The --start-group and --end-group flags cause issues for anyone using alternate linkers with GCC or Clang. We need to come up with a better solution.
2015-12-03 07:04:00 -05:00
Joao Matos
fb99262b4c Fixed C# GNU Make backend response files to deal with platform path separators.
Obsoletes pull request #292.
2015-11-27 23:46:06 +00:00
Jason Perkins
7f4bd53f70 Rollback PR #247 - support framework folders in gcc/clang
Rolled back the change and added a unit test to make sure we catch this in future
2015-10-27 09:54:57 -04:00
starkos
9f9353eb27 Merge pull request #260 from tritao/framework
Rename "framework" to "dotnetframework".
2015-10-07 12:42:34 -04:00
Sami Kankaristo
c71562f072 Add test for gmake Utility projects 2015-10-03 12:06:39 +03:00
starkos
991561c600 Merge pull request #246 from Blizzard/fix-dependencies
Fix project dependencies.
2015-09-28 18:04:55 -04:00
Manu Evans
f035d0a68c Merge pull request #273 from Euclideon/link_grouping
Group sibling libs for GCC/Clang
2015-09-24 08:59:19 +10:00
starkos
9c76d29b8c Merge pull request #244 from Blizzard/lua-no-deprecated-api-use
Don't use deprecated LUA API's
2015-09-21 19:28:34 -04:00
starkos
847fc633ac Merge pull request #242 from Blizzard/fix-path-join
Recognize more situations where '..' should not be trimmed.
2015-09-16 18:40:49 -04:00
Jason Perkins
d623e47d2a Merge branch 'ssurtees/fixedEmptyProjectBug' of https://github.com/LORgames/premake-core into LORgames-ssurtees/fixedEmptyProjectBug
# Conflicts:
#	tests/actions/vstudio/vc2010/test_platform_toolset.lua
2015-09-16 18:35:25 -04:00
Sam Surtees
01dfaf611c Added tests and file type testing helper function 2015-09-16 22:31:40 +10:00
Manu Evans
4c11977bd3 Fixed the tests. 2015-09-16 15:56:57 +10:00
Sam Surtees
0c497da65e Empty projects no longer ignore platform toolset when there are no "cpp" files present. Fixes #93 2015-09-15 21:03:25 +10:00
starkos
fcb06adcf4 Merge pull request #259 from starkos/rollback-162
Roll back pull request #162
2015-09-10 15:03:23 -04:00
triton
bf94b638f3 Support toolset prefix in filters.
Tries to fix issue #257.
2015-09-10 03:37:38 +01:00
triton
5952d054e5 Rename "framework" to "dotnetframework".
"framework" is a very generic term and hard to tell what it's actually about.

Keeps "framework" around for backwards compatibility.
2015-09-10 02:58:52 +01:00
starkos
b5ee3ac021 Merge pull request #169 from TurkeyMan/llvm_toolset
Support LLVM platform toolset for MSC; Clang in Visual Studio.
2015-09-09 15:06:53 -04:00
Jason Perkins
5cd081cf65 Roll back pull request #162
As discussed in the conversion on the request, and on issue #151.
2015-09-09 14:22:43 -04:00
James Touton
d26944a64e Added tests for complex joins with .. components. 2015-09-05 17:40:50 -07:00
Jason Perkins
741bd5524e Put back test.createsolution() function
Restore `test.createsolution()` alongside the new `test.createWorkspace()`. The former creates a workspace with the name "MySolution", which will pass all tests using the old name, while the latter creates a workspace named "MyWorkspace" for consistency.
2015-09-04 15:40:12 -04:00
Jason Perkins
aa88ddab96 Rename "MySolution" to "MyWorkspace" across tests 2015-09-03 18:03:39 -04:00
Jason Perkins
c3d2e226a3 Rename solution to workspace in test suites 2015-09-03 18:03:39 -04:00
Jason Perkins
e4db08ef8a Rename solution test folders to workspace 2015-09-03 18:03:39 -04:00
Tom van Dijck
25045787e0 fix project dependencies. 2015-09-03 13:31:26 -07:00
Tom van Dijck
66b2febb3e Don't use deprecated LUA API's 2015-09-02 14:01:10 -07:00
Manu Evans
28ebe8fce7 string.explode() gains 'maxTokens' argument. 2015-09-01 22:46:10 +10:00
aleksijuvani
48131e0598 Update unit tests for extension settings change 2015-08-31 22:23:15 +03:00
aleksijuvani
35e5a3d3a0 Update unit tests for extension targets change 2015-08-31 22:13:41 +03:00
starkos
aeca0bb3fd Merge pull request #228 from LORgames/ssurtees/multipleWorkspacesFix
Fixed a bug when including (includeexternal) the same project in multiple workspaces
2015-08-30 11:11:16 -04:00
starkos
ba3e30f510 Merge pull request #234 from starkos/more-workspace-renames
More workspace renames
2015-08-30 11:10:34 -04:00
Sam Surtees
23d2c04e2b Fixed a bug when including the same project in multiple workspaces, when using the includeexternal API. Based on discussion in #122 2015-08-30 22:17:00 +10:00
starkos
d2290fc742 Merge pull request #231 from LORgames/ssurtees/windowsCopyFix
Windows copy function no longer uses /E when used on a file
2015-08-28 16:19:24 -04:00
Jason Perkins
14525e8161 Changes names in core test suites 2015-08-28 16:16:14 -04:00
Sam Surtees
773aecbee7 Added test case to ensure the functionality isn't broken in the future. 2015-08-27 22:35:04 +10:00
Sam Surtees
0f3972c914 Windows copy function no longer uses /E when used on a file
* Added some basic tests to ensure combinations work
* Fixes: #124
2015-08-27 20:44:14 +10:00
starkos
703ff8ec54 Merge pull request #225 from LORgames/ssurtees/ignoreDefaultLibraries
Added ignoreDefaultLibraries API for Visual Studio 2010+ projects.
2015-08-25 16:52:47 -04:00
Sam Surtees
5d6d05c31d Added ignoreDefaultLibraries API for Visual Studio 2010+ projects. 2015-08-25 20:33:46 +10:00
Jason Perkins
04a7170d6c Finish solution to workspace renames in core code 2015-08-24 17:08:09 -04:00
Jason Perkins
1dd9e9fae2 Fix output deltas caused by recent file buffering additions
- Restore trailing EOL sequences to Visual Studio projects and solutions
- Fix UTF8 BOM marker on VC 2010 projects
2015-08-24 16:08:17 -04:00
Sam Surtees
b5ccf23105 The links API, for visual studio, no longer appends .lib if an extension already exists. Fixes #87 2015-08-24 23:51:48 +10:00
starkos
355d2e3f3c Merge pull request #218 from starkos/fix-cs-platforms
Fix handling of arbitrary platform names in Visual Studio C# projects
2015-08-23 15:37:17 -04:00
Jason Perkins
8bfaef3e8f Merge branch 'buffered-io' of https://github.com/Blizzard/premake-core into Blizzard-buffered-io 2015-08-23 15:18:50 -04:00
Jason Perkins
072b47eb56 Added unit test for new search ability 2015-08-23 14:53:56 -04:00
Jason Perkins
007b8a2385 Fix handling of arbitrary platform names in Visual Studio C# projects 2015-08-20 15:34:23 -04:00
StiX
3cea1dce35 Merge branch 'master' into PathNormalizationFix 2015-08-20 21:30:30 +02:00
StiX
16dded0499 Fixed path.normalize 2015-08-12 00:21:23 +02:00
Jason Perkins
1eb38c9fc1 Rename solution to workspace in oven and validation code 2015-08-11 16:31:17 -04:00
Jason Perkins
3d778a7151 Rename solution to workspace in global.lua and propagate changes 2015-08-10 13:05:26 -04:00
starkos
d8782c076a Merge pull request #162 from leeonix/master
rename .pdb file name as targetname.
2015-08-04 12:09:07 -04:00
Manu Evans
04a7cd1546 Silence warnings about arguments unknown to Clang, fixed a mistake 2015-08-02 12:34:28 +10:00
Manu Evans
eab093302c Support LLVM platform toolset for MSC; Clang in Visual Studio. 2015-08-02 12:34:27 +10:00
Lusito
15ceabac48 fix for path.join problem when both string start with a "..", a unit test has been added 2015-08-01 21:10:02 +02:00
leeonix
a52c947838 update test_compile_settings.lua 2015-08-01 09:28:07 +08:00
leeonix
dd8c5f1818 Merge remote-tracking branch 'premake-src/master' 2015-08-01 09:21:57 +08:00
starkos
236dd35f62 Merge pull request #145 from Meoo/master
Fix #39, working tokens and wildcards in the same path
2015-07-31 16:08:43 -04:00
Tom van Dijck
21f4046793 Buffered I/O, and only write generated file if it changed. 2015-07-31 09:28:51 -07:00
Jason Perkins
91220c7d71 Replace "wrk" with "wks" 2015-07-30 15:30:41 -04:00
Jason Perkins
2db9ed2061 Change solution() to workspace() with minimum changes 2015-07-28 19:08:28 -04:00
Jason Perkins
e84cc11412 Add ability to safely alias function names without breaking overrides
Introduces new calls premake.alias() and premake.resolveAlias()
2015-07-28 17:20:13 -04:00
leeonix
e8a7ce64ff update test_compile_settings.lua 2015-07-22 15:14:06 +08:00
Jason Perkins
de7b6e001d Code cleanup; finish converting to new indentation-aware output APIs 2015-07-15 16:52:56 -04:00
Bastien Brunnenstein
cc1ec554af Add a small test suite for tokens and wildcards in "files" 2015-07-10 11:33:23 +02:00
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