Commit Graph

994 Commits

Author SHA1 Message Date
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
Jason Perkins
dcf2da2cde Add test for PCH location on include dirs when project has a location set 2013-08-20 10:50:07 -04:00
Jason Perkins
411675d356 Merged in mendsley/premake-dev/xbox360-extension (pull request #59)
In vs2010 Xbox360 builds should create a .exe file as the target for <OutputFile> and leave .xex generation to the Image Conversion task
2013-08-17 15:01:05 -04:00
Jason Perkins
c4af5ff1d4 Merged in mendsley/premake-dev/nobuffersecuritycheck (pull request #58)
adding flag 'NoBufferSecurityCheck' to disable the feature in Visual Studio and GCC projects (/GS-  and -fno-stack-protector respectively)
2013-08-17 14:51:33 -04:00
Jason Perkins
e593172691 Cleaned up previous VS 2013 support:
- Removed tests that were identical to VS 2012, and didn't cover new code
- Fixed Visual Studio version in comment header
- Added to change log
2013-08-17 14:31:52 -04:00
Matthew Endsley
5e3c8d59f8 Readding unit tests for xex->exe target extension changes 2013-08-15 19:36:32 -07:00
Matthew Endsley
cbfd227250 adding flag 'NoBufferSecurityCheck' to disable the feature in Visual Studio and GCC projects (/GS- and -fno-stack-protector respectively) 2013-08-15 15:22:23 -07:00
Igor Karatayev
219f0df11a Visual Studio 2013 integration changed table.insert to premake.override, added vs2013 tests. 2013-08-16 00:58:33 +03:00
Matthew Endsley
a0a2bcfafe Default to .lib extension for links in xbox360 system projects 2013-08-13 19:24:01 -07:00
Jason Perkins
2431aa9fae Improved handling of precompiled headers across toolsets 2013-08-13 10:56:01 -04:00
Jason Perkins
ddcdfe4a60 Stop stripping path from PCH headers in Visual Studio; first step in standardizing handling across tools 2013-08-11 14:27:17 -04:00
Jason Perkins
99ce5cfbbf Rework Gmake C++ exporter to use new extensibility conventions 2013-08-11 14:22:24 -04:00
Jason Perkins
b18e8b7ccd Swapped $(LIBS) and $(ALL_LDFLAGS) in makefile linking step (Ben Henning)
See http://sourceforge.net/p/premake/bugs/279/
2013-08-11 09:54:17 -04:00
Jason Perkins
379de28f74 Use self-closing <ClCompile> elements where possible; remove trailing newline from </Project> 2013-08-11 09:52:51 -04:00
Jason Perkins
f94ccff6d0 Added copylocal() API and NoCopyLocal build flag to control assembly reference copying in C# projects 2013-08-11 09:51:19 -04:00
Jason Perkins
4d653106e6 Use matching build configuration or platform, if available, when building names for excluded project configurations 2013-08-11 09:47:07 -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
b3fdb1457d Merge more file configuration functionality into new fileconfig class 2013-07-12 11:07:26 -04:00
Jason Perkins
4b251b2036 Excluded files are no longer considered in duplicate object file renumbering 2013-07-07 16:48:17 -04:00
Jason Perkins
8f2a64cd88 Consolidate file configuration building in up-front baking step 2013-07-04 12:37:01 -04:00
Jason Perkins
5c87c62de1 Split handling of include directories and force includes; wrap all include paths in quotes 2013-06-27 13:50:12 -04:00
Jason Perkins
644cb30326 One of the change sets to support the new kind "None" seems to have gone missing; here it is (again?) 2013-06-26 07:28:57 -04:00
Jason Perkins
2f1fe980ef Duplicate object file names are now ordered the same across all toolsets 2013-06-21 17:32:33 -04:00
Jason Perkins
e7fc3724b5 Roll back trailing CR-LF pairs on VC'09 build step command lines 2013-06-21 16:08:43 -04:00
Jason Perkins
ceb8756382 Added additional build actions for C# subtypes (Form, Component, UserControl); dropped Component build flag 2013-06-17 11:46:53 -04:00
Jason Perkins
797db3b31d Adjust source file ordering to better match Visual Studio 2008 2013-06-13 14:10:02 -04:00
Jason Perkins
08de36c098 Write ActiveCfg entries for excluded configurations in VS solutions, to avoid rewriting on save 2013-05-31 09:33:02 -04:00
Jason Perkins
bbcafa0d6f Add new configuration kind "None" to support non-building Visual Studio configurations (i.e. header-only projects) 2013-05-27 10:21:10 -04:00
Jason Perkins
536a751dbe Make VS'08 project references relative to solution, to match VS behavior 2013-05-23 11:46:50 -04:00
Jason Perkins
4bd950d130 Make escaping function configurable; fix (non-)escaping of quotes in VS'10 and '12 2013-05-22 11:15:48 -04:00
Jason Perkins
d1cb894b73 Add newline to empty <TargetExt> elements in VC 2010 C++ projects 2013-05-22 09:06:33 -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
e0e4b23a5d More reconciliation with Visual Studio project formats:
- sort solution configurations by case-insensitive names
- add trailing CR-LF to custom build steps
- remove empty Filter attributes from folder filter elements
2013-05-21 08:48:22 -04:00
Jason Perkins
621e59481f Fixed bug #176: Target prefix breaks GCC linking 2013-05-16 11:40:47 -04:00
Jason Perkins
8be16d75b8 Minor changes to Visual Studio C# projects to avoid changes on save 2013-05-15 11:15:54 -04:00
Jason Perkins
23256ecc94 Merged in domu/premake-dev-domu (pull request #46)
[gmake] allow mixing c files in cpp projects
2013-05-02 14:07:43 -04:00
Alexey Orlov
38ba3c5e41 [gmake] allow mixing c files in cpp projects: review changes, test added 2013-05-02 15:36:11 +03:00
Jason Perkins
89a85f0250 Add <ProjectName> to VS 2010 projects when project and file names differ 2013-05-01 12:08:41 -04:00
Jason Perkins
dd639ec1e2 Applied pull requests #38 and #43: Fix escaping of quotes for resource preprocessor.
Sticking with the wonky quotes for now; will fix the escaping in a separate commit.
2013-04-30 12:25:25 -04:00
Jason Perkins
1af3a10c0a Moved more VS2012 logic to extension script; made C# project generation more extensible 2013-04-25 16:05:08 -04:00
Jason Perkins
bacc9ca520 Introduce new extension convention for block elements; move VS2010 <PlatformToolset> to extension script 2013-04-25 11:45:44 -04:00
Jason Perkins
355132f38b Begin splitting out VS2012 support as its own extension 2013-04-25 09:59:55 -04:00
Jason Perkins
2e7299f801 Removed old oven; finished conversion to contexts and configuration sets in baking logic 2013-04-23 10:39: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
xpol
3c099f27d5 Merge 2013-04-12 10:46:15 +08:00
Jason Perkins
0cd9bac896 Switch per-file build rules to use new build…() APIs 2013-04-09 15:12:04 -04:00
Jason Perkins
b35e57d52b Added build, rebuild, and clean commands for makefile projects 2013-04-07 14:30:58 -04:00
Jason Perkins
fe1b37c9ae Initial support for VC 2008 Makefile projects 2013-04-03 14:09:39 -04:00
Jason Perkins
b875f37875 Initial support for VC 2010 Makefile projects 2013-04-03 11:53:00 -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
214ac7097f Added ReleaseRuntime build flag (Tarmo Pikaro) 2013-03-27 11:12:37 -04:00
Jason Perkins
09b0dd1182 Add virtual paths and improve external file links for C# projects (James Whitworth) 2013-03-27 07:43:20 -04:00
Jason Perkins
76c7c1a485 Added Clang tool adapter, passing through to GCC for now 2013-03-20 11:25:39 -04:00
Jason Perkins
96cfdf5acc Add per-file build options and forced includes to VC'2010 2013-03-12 19:26:25 -04:00
Jason Perkins
f4f688e77c Add per-file build options and forced includes to VC 2008 2013-03-12 18:26:19 -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
2d5a5910e6 Visual Studio C# projects can now link to external files 2013-03-10 15:56:56 -04:00
Jason Perkins
b10f1b5b60 Improve Xbox 360 support 2013-03-07 12:14:03 -05:00
Jason Perkins
99a80052da Clean up VC'08 naming, and move toward new extensibility conventions set in VC'10 2013-03-07 10:45:33 -05:00
Jason Perkins
8d8a3e3574 Fix: path.getrelative() gives incorrect results for paths containing "//" 2013-03-06 10:06:45 -05:00
Jason Perkins
ffc53d870e Added support for local assembly references to Visual Studio Managed C++ projects 2013-03-05 11:00:32 -05:00
Jason Perkins
d3ec20d1c3 Support linking of managed system assemblies in Visual Studio managed C++ projects 2013-03-04 11:45:27 -05:00
Jason Perkins
68287a1437 Added application icon support for C# executable projects 2013-02-25 10:47:22 -05:00
Jason Perkins
47c8a568d4 Fix module definition file (.def) handling in VC'10 2013-02-21 10:28:41 -05:00
Jason Perkins
d5e3272957 Added forceusings() 2013-02-20 09:57:37 -05:00
Jason Perkins
2e278af5e2 Cleaned up implementation of solution(), project(), configuration(); now activate scope when called without arguments 2013-02-15 18:57:34 -05:00
Jason Perkins
91272ebd37 Make more VC'10 project elements available for override by add-ons; clean up naming conventions of modified functions 2013-02-11 13:25:33 -05:00
Jason Perkins
3b84626132 Added MultiProcessorCompile flag to enable multiple compiler processes in Visual Studio 2013-02-08 10:35:14 -05:00
Jason Perkins
9c752adf4a Add ExcludeFromBuild flag to mark source files as non-buildable 2013-02-07 10:58:31 -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
faba7a72dc Fix Makefile linking to object files 2013-01-31 09:38:45 -05:00
Jason Perkins
34127f2463 Fix linking to external libraries outside of project folder 2013-01-29 10:25:52 -05:00
Jason Perkins
b7bc59e105 Allow command line override of makefile flags (Cameron Hart) 2013-01-23 11:50:54 -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
8275e190a1 Fix: if link contains a token that expands to an absolute path, HintPath of C# projects will end up with absolute path 2013-01-10 11:09:34 -05:00
Jason Perkins
974d1a7d04 Added startproject() to specify startup project 2013-01-09 11:41:32 -05:00
Jason Perkins
749df96f38 Write out solution groups even if first project is ungrouped 2013-01-09 10:03:50 -05:00
Jason Perkins
89d413d9d5 Visual Studio solutions now use the same project ordering in all sections; avoids unnecessary changes if the solution is later changed within Visual Studio 2013-01-08 13:19:56 -05:00
Jason Perkins
a69b7501e7 Port path.getrelative() and path.translate() from Lua to C 2013-01-04 11:32:52 -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
30daa20f39 Fixed issues with Makefile naming; removed more deprecated Gmake action code 2012-12-31 13:45:22 -05:00
Alexey Orlov
4d6d61035c merge premake-dev->premake-dev-domu 2012-12-30 22:57:24 +03: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
06318ab5b6 Allow config maps to be attached to specific configurations 2012-12-23 13:10:06 -05:00
Jason Perkins
4c7fc6881b Add support for solution groups 2012-12-18 11:09:50 -05:00
Jason Perkins
e4d62bd307 Clean up vpath tests before porting back to stable 2012-12-14 10:00:51 -05:00
Jason Perkins
cb2435faf6 Added NoRuntimeChecks flag to disable Visual Studio default checks 2012-12-11 11:17:43 -05:00
Jason Perkins
43cd668b98 Stop enabling VC'10 smaller type checks 2012-12-11 10:37:30 -05:00
xpol
d7296695c9 Merge 2012-12-10 15:16:47 +08:00
Jason Perkins
b5cc1b96a2 Change case of vc2010.link() to match new extension convention 2012-12-06 14:03:17 -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
cc6e53314f Revert back to Visual Studio's default implicit linking; add NoImplicitLink flag to disable 2012-11-30 14:05:19 -05:00
Jason Perkins
3dd3166c14 Add pre- and post-build support to Visual Studio C# projects 2012-11-28 11:14:47 -05:00
Jason Perkins
432e99b2c9 Display deprecation warning for "ng" actions; properly reset state between unit tests 2012-11-28 09:55:25 -05:00
Jason Perkins
547513a1d9 Remove deprecated tool interfaces 2012-11-27 10:28:17 -05:00
Jason Perkins
bcc2914139 Removed deprecated Visual Studio actions 2012-11-27 10:18:06 -05:00
Jason Perkins
cba537a825 Add architecture support to Visual Studio C# projects 2012-11-26 14:05:33 -05:00
Jason Perkins
1690d9b968 VC200x requires library names to be wrapped with quotes if they contain spaces 2012-11-26 10:09:50 -05:00
Alexey Orlov
6a1e7eecb8 added dependson command to allow dependency without linking 2012-11-20 00:08:48 +03:00
Jason Perkins
13cb60a94b Prevent duplicate config blocks in VC200x projects; clean up tests and remove old solution implementations 2012-11-19 15:47:59 -05:00
Jason Perkins
3af00f8773 If platform matches a known architecture, omit the identifier from Visual Studio configurations (allows configuration mapping to external projects which use multiple architectures per project configuration). 2012-11-17 15:49:06 -05:00
xpol
a61185f506 Merge 2012-11-15 10:36:43 +08:00
Jason Perkins
2cf609c6ac Ported key-value handling to new configuration system 2012-11-14 12:42:53 -05:00
Jason Perkins
400ad0a0be Added force includes to MSC tool definition 2012-11-09 11:07:01 -05:00
Jason Perkins
80a60231db Add force includes for SNC; allow configuration context proxy to be reset by exporter code 2012-11-07 09:46:47 -05:00
Jason Perkins
89deec0474 Added force include files 2012-11-06 16:42:44 -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
4511bc6517 More improvements to failed test stack traces 2012-11-04 09:21:40 -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
837b3afbeb Improve stack traces from test failures 2012-10-31 19:34:04 -04:00
Jason Perkins
fb5aaf860c Initial connection of config sets to the public configuration API 2012-10-31 15:46:28 -04:00
Jason Perkins
bbc1ae59ad Add new API namespace() to set the root namespace of a C# project, independent of the project name 2012-10-26 16:58:46 -04:00
Jason Perkins
1747035050 Added filename(); set solution or project file name independently of the solution or project name 2012-10-24 15:40:25 -04:00
Jason Perkins
8a6bb2c837 Add stack traces to errors in failing tests 2012-10-24 11:31:30 -04:00
Jason Perkins
0e8915ec1d Fix bug in new criteria matcher 2012-10-23 18:15:07 -04:00
Jason Perkins
09334b4b1c Files marked as Content now are properly marked for copying to the output directory 2012-10-23 17:12:25 -04:00
Jason Perkins
355844ca42 Merge with Premake-dev 2012-10-23 15:43:07 -04:00
Jason Perkins
91ba9c899f Initial work on an expanded configuration API; added configset, criteria, and context objects, initial usage for target naming parameters 2012-10-19 18:53:03 -04:00
Jason Perkins
752adb830b Patch 3466877: Removed -flat_namespace from Mac OS X flags (Konstantin Tokarev) 2012-10-18 17:58:41 -04:00
Jason Perkins
279caeac82 Improved error message for nil table comparison in testing framework 2012-10-11 10:59:15 -04:00
Jason Perkins
d27fc9a3a8 Fixed single-star matches for file configuration blocks; *.c now matches file in same folder as config script 2012-10-11 10:59:05 -04:00
Jason Perkins
bece5fb35b Port build action support to VS C# projects 2012-10-10 11:09:51 -04:00
Jason Perkins
12687e877e Added sibling project linking to C# makefiles 2012-10-08 18:31:12 -04:00
Jason Perkins
1659d68e1d Build and link target info now returned absolute to avoid path token expansion side-effects on relative paths 2012-10-08 11:50:42 -04:00
Jason Perkins
42f713857a Correctly handle tokens which expand to absolute paths within a path field 2012-10-08 11:06:37 -04:00
Jason Perkins
37ae88092f Patch 3367642: Add support for targetextension property to Xcode 2012-10-04 17:41:34 -04:00
Jason Perkins
a91b2823cd Iniital objdir support for VS C# projects 2012-10-02 12:57:10 -04:00
Jason Perkins
27493cd10c Merged makefile target vars generation; added missing tool name accessor to snc and ow interfaces 2012-09-28 10:35:13 -04:00
Jason Perkins
e65962166e Patch 3485071: Fixed _PREMAKE_COMMAND fallback when premake4 is not in PATH (Konstantin Tokarev) 2012-09-27 17:07:32 -04:00
Jason Perkins
e3947d6535 Added per-config tool selection to C# makefiles; cleaned up tool selection for C++ makefiles 2012-09-27 12:18:03 -04:00
Jason Perkins
1207bbd3ac Ported C# project and assembly reference handling 2012-09-27 10:15:27 -04:00
Jason Perkins
cf3d1f5f6f Merge with premake-dev 2012-09-25 10:27:10 -04:00
Jason Perkins
a4d67cea10 Fixed handling of architectures, including .NET "Any CPU", in VS 2005+ solutions 2012-09-25 10:03:21 -04:00
Jason Perkins
1bdf2f2e31 Improved handling of architecture and .NET projects in VS solution configurations 2012-09-24 11:16:27 -04:00
Jason Perkins
72d4331f65 Fixed handling of .NET configurations in VS2005+ solution platforms block 2012-09-20 18:07:19 -04:00
Jason Perkins
891a1dbcd6 Fixed handling of exact path matches in vpath building 2012-09-18 11:24:18 -04:00
Jason Perkins
f7cb37fc3c Pull 1: Fixed path to Info.plist in Xcode projects (Adrien Anselme) 2012-09-13 16:46:05 -04:00
Jason Perkins
37cfaf0666 Fixed a (stupid) typo in makefile include dirs list (h/t gogoprog) 2012-09-13 16:36:53 -04:00
Jason Perkins
99aee5ac1f Patch 3476176: Fix dependencies of precompiled header in makefile (Konstantin Tokarev) 2012-09-05 18:37:53 -04:00