Commit Graph

192 Commits

Author SHA1 Message Date
Jason Perkins
f40bdf16c1 Switch local namespace alias from _ to m
- avoids conflicts with _ as a dummy variable in loops
- matches the informal Lua convention for module definitions
2014-01-28 10:42:49 -05:00
Jason Perkins
3a2c736b3b Add implementations for all VC 200x tools, as override points for modules 2014-01-24 13:06:52 -05:00
Jason Perkins
625d4a9d5d Fixed broken vc200x namespace alias in loops 2014-01-18 14:54:46 -05:00
Jason Perkins
729cab1680 Convert existing VC 200x call arrays to new format 2014-01-16 14:22:38 -05:00
Jason Perkins
6cf6ab4955 Add prebuild-, prelink- and postbuildmessage() 2014-01-15 16:12:29 -05: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
3b5a070d42 Split more of VC 200x exporter into function call-outs 2013-10-28 11:01:41 -04:00
Jason Perkins
a31373e287 Begin porting VC200x exporter to new function callout conventions 2013-10-23 10:51:11 -04:00
Jason Perkins
c72d71424a Begin splitting VC200x exporter into function lists for overriding 2013-10-18 10:38:00 -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
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
Jason Perkins
bc9ba89cce Add nativewchar(); deprecate NativeWChar and NoNativeWChar flags 2013-09-27 15:12:50 -04: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
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
dcourtois
a5e8862339 added support for LinkTimeOptimization flag 2013-08-21 11:58:08 +02: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
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
b3fdb1457d Merge more file configuration functionality into new fileconfig class 2013-07-12 11:07:26 -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
797db3b31d Adjust source file ordering to better match Visual Studio 2008 2013-06-13 14:10:02 -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
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
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
e8f45e5735 Move is…project() test function into the new project namespace, shorten names 2013-03-28 10:33:28 -04:00
Jason Perkins
214ac7097f Added ReleaseRuntime build flag (Tarmo Pikaro) 2013-03-27 11:12:37 -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
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
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
d5e3272957 Added forceusings() 2013-02-20 09:57:37 -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
24708fcb21 Split out VC'08 CharacterSet attribute to allow extensions by add-ons 2013-01-23 11:23:39 -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
cb2435faf6 Added NoRuntimeChecks flag to disable Visual Studio default checks 2012-12-11 11:17:43 -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
732dd23d2e Removed deprecated file configuration object; now uses context object directly 2012-11-29 14:24:28 -05:00
Jason Perkins
bcc2914139 Removed deprecated Visual Studio actions 2012-11-27 10:18:06 -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
Jason Perkins
afdc2c37be Fixed small bug in VC200x empty configuration call 2012-11-19 16:16:41 -05: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
Jason Perkins
89deec0474 Added force include files 2012-11-06 16:42:44 -05: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
b277777bdc Cleaned up the VS solution configuration accessor functions 2012-09-25 10:20:14 -04:00
Jason Perkins
e6a30c7ee5 Turn off dependency linking in Visual Studio; link all sibling libraries explicitly 2012-08-01 15:28:21 -04:00
Jason Perkins
00d7bfc0da Made build and link targets available for token expansion 2012-07-23 17:21:06 -04:00
Jason Perkins
b1a2f8918d Explicitly link dependent project libraries for external (i.e. PS3) VC200x projects to fix intermittent concurrent build issues 2012-06-26 15:10:43 -04:00
Jason Perkins
2f6a84a86b Explicitly link dependent project libraries in VC200x to fix intermittent concurrent build problems 2012-06-26 14:56:54 -04:00
Jason Perkins
4b6daf8424 Make baked cfg.objdir absolute, to be consistent with other path fields 2012-06-20 18:16:46 -04:00
Jason Perkins
808aa41177 Bug 1674173: Allow source files to have the same name 2012-06-19 15:58:16 -04:00
Jason Perkins
da4dbbc9de Ported GMake link step to new APIs 2012-06-13 15:21:22 -04:00
Jason Perkins
b9c09f6dd3 Added project references to VC 2008 to fix intermittent build failures 2012-06-12 18:16:14 -04:00
Jason Perkins
e926a49c28 Fixed backslash escaping in VS2008 dummy configurations 2012-06-06 14:56:08 -04:00
Jason Perkins
c1a793ae65 More changes to match VC2008 project defaults; avoid unnecessary changesets 2012-05-28 18:39:38 -04:00
Jason Perkins
cac52ce5d6 Tweaks to better match the default VS2008 project layout, avoid modifications on project save 2012-05-10 17:52:28 -04:00
Jason Perkins
7b14efeba7 Removed deprecated config.getuniqueobjdirs(); object directories are now part of up-front bake process 2012-05-01 17:04:26 -04:00
Jason Perkins
391ec4eee6 Remove all configuration values from project; prevent top-level settings from bleeding through and causing side-effects at the config level 2012-04-25 19:10:37 -04:00
Jason Perkins
2cbab56592 A bit of consistency cleanup on the prior pull request 2012-04-16 18:24:35 -04:00
xpol
816eacf8be Revert the call to buildstepsblock() back to vs200x.buildstepsblock(). 2012-04-13 09:32:42 +08:00
xpol
a708f3ad82 Refactor to the duplicated code on output warnings blocks. 2012-04-11 11:28:44 +08:00
xpol
bd16eaedeb Add NoWarnings flags for Visual Studo to disable warnings (Very usefull when managing 3rd libraries). 2012-04-10 18:03:31 +08:00
Jason Perkins
0b241993c2 Merged file configurations and nodes in source trees 2012-03-27 18:54:15 -04:00
Jason Perkins
a1f9c7c376 Renamed file config fullpath to relpath; better matches corresponding abspath field, less confusing 2012-03-21 16:10:16 -04:00
Jason Perkins
d90942b318 Implemented basic custom build rules for VC2008 2012-03-15 20:02:46 -04:00
Jason Perkins
b64395526d Fixed config.getlinks(), can now find sibling projects properly 2012-03-01 19:25:34 -05:00
Jason Perkins
5761e86cb6 Ported GCC and SNC linker flag generation to new tool APIs 2012-02-28 16:15:46 -05:00
Jason Perkins
79e84920bd VC200x resource compiler include paths are now project relative 2012-02-22 16:20:21 -05:00
Jason Perkins
458dcb8cbb Added toolset() API to enable per-configuration tool selection 2012-02-16 19:51:14 -05:00
Jason Perkins
dac18c990b Added per-configuration file lists for VC2008 2012-02-14 16:16:58 -05:00
Jason Perkins
b88bf60036 Improved the extensibility of the VC2008 generator 2012-02-11 11:29:45 -05:00
Jason Perkins
fe00186ca3 Made VC200x compiler block easier for add-ons to extend with external toolsets 2012-02-11 08:18:19 -05:00
Jason Perkins
bbb70b9f18 Avoid writing empty AdditionalOptions to PS3 compiler blocks 2012-02-06 17:39:32 -05:00
Jason Perkins
c9786f2242 Configurations are now cached before action is called; performance 2012-02-03 16:03:46 -05:00
Jason Perkins
69a28a1369 Ported VC2010 resource compiler and linker setting blocks 2012-01-27 16:29:41 -05:00
Jason Perkins
a01df4bc83 Ported Visual Studio 2010 to new platforms, up to the compiler settings block 2012-01-26 20:40:39 -05:00
Jason Perkins
5d5e199efe Ported VC200x C++ .user files to new platforms API 2012-01-24 19:27:18 -05:00
Jason Perkins
4e30af55b8 Removed sibling libraries from VC200x links, as Visual Studio includes them implicitly 2012-01-22 13:16:18 -05:00
Jason Perkins
283ecaeb45 Ported Visual Studio 2008 files element and supporting functions 2012-01-19 19:14:18 -05:00
Jason Perkins
12b9c326d1 Ported remaining Visual Studio 2008 tool elements: MIDL, resources, Xbox 360 tools 2012-01-18 17:42:34 -05:00
Jason Perkins
761673005b Added some sanity tests for config linker information, to get things started 2012-01-18 16:26:05 -05:00
Jason Perkins
3f0f15942a Ported VCCompilerTool, VCLinkerTool, VCManifestTool and supporting function and tests to new platforms API 2012-01-17 19:04:46 -05:00
Jason Perkins
63a568dd3f Began implementation of Vc200x next-gen projects: header and configuration blocks 2012-01-13 17:19:46 -05:00
Jason Perkins
8c9c451bdb Added new action "vs2008ng", implemented solutions using new platforms API 2012-01-12 16:59:15 -05:00
Jason Perkins
fa4813cf3b Port unique objects directory logic to the new platforms API 2012-01-11 16:30:59 -05:00
Jason Perkins
9749188cc4 Ported build target info logic to new platforms; added system() to API 2012-01-06 17:08:24 -05:00
Jason Perkins
2baa0ce3ad Ported VS2008 .vcproj Platforms and Configuration blocks to new platforms API 2012-01-04 17:16:06 -05:00
Jason Perkins
94e29b7cf3 Merge with premake-dev 2011-12-13 16:14:14 -05:00
Jason Perkins
5b6f8f6f36 Patch 3451212: Fix Visual Studio MFC with StaticRuntime 2011-12-13 16:10:22 -05:00