Commit Graph

781 Commits

Author SHA1 Message Date
Jason Perkins
601ca14e6f Push all project naming through premake.project.getfilename(), so projects can override the default behavior 2012-08-06 21:04:43 -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
f2063245f8 Added configuration map to solution makefiles 2012-07-24 16:54:11 -04:00
Jason Perkins
00d7bfc0da Made build and link targets available for token expansion 2012-07-23 17:21:06 -04:00
Jason Perkins
e96383c3ae Fixed expansion of solution-level tokens 2012-07-18 13:42:39 -04:00
Jason Perkins
3a46c1addd Prevent explicit links lookup when configuration is not mapped for a project 2012-07-17 16:00:11 -04:00
Jason Perkins
3c8eae761a Make file name configuration tests case-insensitive 2012-07-16 15:06:23 -04:00
Jason Perkins
a05fafca93 Prevent "not X" terms from matching file names when building file configurations; object fields are not nil if not set (instead of empty table) 2012-07-15 15:46:22 -04:00
Jason Perkins
0ff8a15947 Break link between target and imp lib extension; setting a custom target extension will no longer change the imp lib extension 2012-07-11 15:53:21 -04:00
Jason Perkins
5912e3bbdf Added vs2005ng action, using latest APIs 2012-07-10 18:14:15 -04:00
Jason Perkins
55e952d7f4 Begin porting C# projects to new APIs 2012-07-10 16:44:44 -04:00
Jason Perkins
91a06a9304 Enable token expansion on more fields (including some that had been inadvertently dropped) 2012-07-06 17:20:14 -04:00
Jason Perkins
8cbd6bdcb0 Ported virtual paths to new api.register() API definition system 2012-07-06 17:01:50 -04:00
Jason Perkins
fc2af5a98a Ported everything except virtual paths to new api.register() definition system 2012-07-05 18:33:40 -04:00
Jason Perkins
a84eb22342 Remove makefile escaping from project dependency lists 2012-07-04 14:44:32 -04:00
Jason Perkins
6f359ae0ac Handle a nil custom build command description in Gmake action 2012-07-04 14:13:01 -04:00
Jason Perkins
be819ed338 Fix file exclusions for Gmake target 2012-07-04 12:52:25 -04:00
Jason Perkins
2386e328b0 Merge mopey's VS2012 support 2012-07-03 13:48:57 -04:00
Jason Perkins
f349259fa0 Remove…() now implicitly creates a new configuration block, so it will be applied in same context as it appears in the script 2012-06-30 14:33:28 -04:00
Jason Perkins
2d5d3a33da Exclude external project references from dependency path lists since actual target isn't known 2012-06-30 08:25:30 -04:00
Jason Perkins
2dd8552258 Initial support for custom build rules in makefiles 2012-06-29 09:05:20 -04:00
Jason Perkins
dfc37def22 Restore GMake per-configuration target rules 2012-06-28 14:21:55 -04:00
Jason Perkins
1119afdc08 Make GCC include dir flags project relative 2012-06-28 14:17:19 -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
67ba45c1c3 Make GMake target rules configuration dependent 2012-06-22 17:15:17 -04:00
Jason Perkins
6928b3c7bb Ported GMake Windows resource file handling, with per-configuration support 2012-06-22 09:27:03 -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
6ad4ec1506 Allow GCC to provide both system and architecture specific flags (instead of one or the other) 2012-06-20 16:15:45 -04:00
Jason Perkins
a651c0deea Improve handling of nested tokens 2012-06-20 15:40:19 -04:00
Jason Perkins
770dcdac48 Convert path tokens (i.e. targetdir) to project relative during expansion 2012-06-20 14:10:23 -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
759c169b94 Port GMake file object lists, start work on per-configuration file lists 2012-06-15 18:42:10 -04:00
Jason Perkins
56f6fe1039 Ported GMake tests to new APIs 2012-06-14 16:30:48 -04:00
Jason Perkins
0550a3fa0f Ported GMake system-specific tool configurations 2012-06-14 15:55:46 -04:00
Jason Perkins
3153c7578f Ported make settings to new APIs 2012-06-13 18:29:51 -04:00
Jason Perkins
9855bc6483 Fix handling of relative libdirs in config.getlinks() 2012-06-13 17:13:52 -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
e45a6efbd4 Ported GMake PCH rules 2012-06-12 15:57:45 -04:00
Jason Perkins
e15d115bbd Fix a bug in configuration map pattern matching 2012-06-11 19:11:21 -04:00
Jason Perkins
019eb6eb39 Minimal changes for VS2012 support, from mopey's pull request 2012-06-08 15:07:49 -04:00
Jason Perkins
1fa3951541 Added external() to reference non-Premake generated project files 2012-06-07 16:46:36 -04:00
Jason Perkins
e926a49c28 Fixed backslash escaping in VS2008 dummy configurations 2012-06-06 14:56:08 -04:00
Jason Perkins
cab63d8b14 Prevent external linker lib dir flags from bleeding through to configuration lists 2012-06-06 11:09:58 -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
17fecf2e3a Ported LDFLAGS to the new Gmake action 2012-05-24 16:47:31 -04:00
Jason Perkins
850dbb099d Can now map from a solution config which doesn't exist in the project 2012-05-23 16:34:28 -04:00
Jason Perkins
ef4e929f60 Fix architecture mismatch in VS2010 project configurations element 2012-05-23 14:28:14 -04:00
Jason Perkins
4d1ad673fd Apply removes first instead of last, to give projects a way to clear the slate of solution level settings 2012-05-22 16:24:53 -04:00
Jason Perkins
e9a81b6f86 When configuration settings overlap, give precedence to the later settings 2012-05-21 17:55:07 -04:00
Jason Perkins
bf65487655 More progress on nextgen GMake action 2012-05-17 20:41:28 -04:00
Jason Perkins
9659541013 Write all config/architecture pairs into VS2010 project configurations element to avoid missing configurations 2012-05-15 19:06:03 -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
5284f920f3 Finished porting solutions to next-gen GMake action 2012-05-08 18:08:42 -04:00
Jason Perkins
3da76a113f Project-level configurations no longer propagate up to solutions, require mapping instead 2012-05-08 15:37:12 -04:00
Jason Perkins
73146fa066 Disregard project configuration lists when iterating solution configurations 2012-05-08 14:09:07 -04:00
Jason Perkins
06ec00f1f4 Ported default config and help rule to new GMake action 2012-05-04 16:38:21 -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
8c5924f705 Fixed project-lookup bug in project.getdependencies() 2012-05-01 15:34:28 -04:00
Jason Perkins
6a586ded76 Added stubs for GMake next-gen action 2012-04-30 16:42:03 -04:00
Jason Perkins
aded68ba8a Baking changes to support tokens in object directories 2012-04-26 09:26:44 -04:00
Jason Perkins
7675e057d2 Deep copy all object values, to allow unique per-target token expansions 2012-04-26 07:44:25 -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
f19694fd9a Clear current project object when setting solution 2012-04-25 16:05:34 -04:00
Jason Perkins
69b0a076ac Removed old config map cache 2012-04-24 19:51:20 -04:00
Jason Perkins
591a6d09eb Moved all project baking logic into an upfront pass 2012-04-24 19:29:56 -04:00
Jason Perkins
b44817ebd7 Solution.bake() now returns a temporary result; does not overwrite original solution object 2012-04-24 16:57:02 -04:00
Jason Perkins
15662f30c9 oven.bake() now takes explicit basis object, no longer tries to set parent objects automatically 2012-04-24 16:36:52 -04:00
Jason Perkins
bfeb1e6906 Added solution.bakeall(), new entry point for full bake process 2012-04-24 16:13:30 -04:00
Jason Perkins
6bdcb86ece Can now expand cfg.objdir, file.basedir and file.path tokens 2012-04-23 18:18:31 -04:00
Jason Perkins
671fd97864 Ported most list fields to new register() API 2012-04-22 14:12:33 -04:00
Jason Perkins
e9687ed684 Patch 3305599: Add -Wextra to ExtraWarnings (ergosys) 2012-04-22 12:58:46 -04:00
Jason Perkins
10b8b373dd Ignore nil values in the new register() API 2012-04-20 18:29:23 -04:00
Jason Perkins
66585d36ae Fixed a project caching issue; performance is improved 2012-04-20 18:15:32 -04:00
Jason Perkins
0bbb323d0c Added support for basic token expansion; more work still needed 2012-04-20 16:08:42 -04:00
Jason Perkins
b930597f58 Enable token expansions on simple string fields 2012-04-18 15:15:56 -04:00
Jason Perkins
fb833f3122 Ported string fields to new register()-based API definitions 2012-04-17 14:33:47 -04:00
Jason Perkins
fad379b388 Merged in xpol/premake-dev-debugcommand (debugcommand for Visual Studio) 2012-04-17 14:14:58 -04:00
Jason Perkins
8f60b15942 Ported string fields to new register()-based API definitions 2012-04-16 19:31:08 -04:00
Jason Perkins
2cbab56592 A bit of consistency cleanup on the prior pull request 2012-04-16 18:24:35 -04:00
Jason Perkins
1e29737cd7 Merged in xpol/premake-dev (Add NoWarnings flags) 2012-04-16 18:17:49 -04:00
xpol
ef3a891d83 add debugcommand for vs*. 2012-04-16 10:09:35 +08:00
Jason Perkins
e73c1aeed3 Fix bug in configuration mapping when applied multiple maps 2012-04-14 13:16:49 -04:00
xpol
816eacf8be Revert the call to buildstepsblock() back to vs200x.buildstepsblock(). 2012-04-13 09:32:42 +08:00
Jason Perkins
5cc291c313 Configuration mapping now working in Visual Studio 2008+, for most cases 2012-04-12 20:31:10 -04:00
Jason Perkins
21c44e57fd Added project-level filtering for configuration maps 2012-04-11 18:56:17 -04:00
xpol
a708f3ad82 Refactor to the duplicated code on output warnings blocks. 2012-04-11 11:28:44 +08:00
Jason Perkins
8e326ff6f1 Fixes for key-array and the new api.register() path 2012-04-10 17:21:37 -04: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
86984a87de Added import library support to Visual Studio 2010 C++ projects 2012-04-09 14:51:08 -04:00
Jason Perkins
a68aa47e5f Added new array API value type, and started support for new key-value handling 2012-04-05 20:02:53 -04:00
Jason Perkins
22266a995d Start of API system overhaul, in support of configuration mapping 2012-04-04 16:21:22 -04:00
Jason Perkins
38ae459803 Fixes for VC2010 custom build rule handling 2012-03-29 20:01:02 -04:00
Jason Perkins
a1a0afd327 Prevent single-child ".." folders from appearing at the top of the source tree; merge project.eachfile() into project.getsourcetree() 2012-03-27 19:52:48 -04:00
Jason Perkins
0b241993c2 Merged file configurations and nodes in source trees 2012-03-27 18:54:15 -04:00
Jason Perkins
07f000ecda Folders containing a single sub-folder are now trimmed from top of the source tree 2012-03-27 18:33:15 -04:00
Jason Perkins
e563517031 Fixed VC2010 "attempt to index local 'cfg'" error 2012-03-23 10:23:48 -04:00
Jason Perkins
ef032d52cc Handle case where a library is specified with a system extension and end quote 2012-03-22 19:37:51 -04:00
Jason Perkins
f8fa020d64 Only add extension to libraries if it doesn't already exist; handle ending quote, if present, when appending extension 2012-03-22 19:30:34 -04:00