Commit Graph

1511 Commits

Author SHA1 Message Date
Jason Perkins
0284817398 Implement CLR "Pure" and "Safe" values for VC 201x and MSC 2014-11-11 19:44:44 -05:00
Jason Perkins
baa6989d0f Replace "Off" string literal with p.OFF variable, just in case 2014-11-11 19:29:28 -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
77d75071fd Add new API clr() to replace existing Managed and Unsafe flags
A new API is needed to add support for "pure" and "safe" managed C++ code. The existing flags will be marked as deprecated in the documentation, but otherwise left intact.
2014-11-11 19:20:09 -05:00
Jason Perkins
facc0cb1a7 Closed branch feature/edit-continue-switch 2014-11-11 15:36:56 -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
3b960f01be Turn off deprecation warnings for fields and values that can be easily translated.
To ease the transition to 5.0, allow these values to continue to work while marking them deprecated in the documentation. Will put the messages back some time after release when folks have had a chance to switch.
2014-11-10 17:41:31 -05:00
Jason Perkins
24050ebc2c Fix segfault when dofile() called within _premake_main() 2014-11-10 17:07:37 -05:00
Jason Perkins
e2f36deda8 Fix incorrect whitespace 2014-11-07 11:50:10 -05:00
Jason Perkins
30347622bf Add new flags ShadowedVariables and UndefinedIdentifiers with GCC support 2014-11-05 16:27:48 -05:00
Jason Perkins
ba74e661fa Move cfg.linkoptions out of toolset getldflags() to match behavior of getcflags() and getcxxflags() 2014-11-05 16:25:58 -05:00
Jason Perkins
60fc6d2897 New API strictaliasing() with GCC support 2014-11-04 18:25:32 -05:00
Jason Perkins
5899a7f34b Reformulate conditional from previous commit to prevent weird errors in third-party test projects 2014-10-29 18:28:59 -04:00
Jason Perkins
71bb1f8079 Add new call includeExternal()
Works like include(), but any containers created by the included scripts (projects, solutions, rules) will be marked as external.
2014-10-29 17:43:32 -04:00
Jason Perkins
920ddcb1f1 Support both upper- and lowercase first letter for rule variable setters
For a rule named "MyRule", can now use myRuleVars() or MyRuleVars()
2014-10-29 17:19:31 -04:00
Jason Perkins
0a4c3e6853 Merge new custom rule file support 2014-10-29 17:04:07 -04:00
Jason Perkins
bf00eaae80 Allow for some path information in values to filename()
Not complete, should split out the path and add to location(), but at least absorbs leading "../" sequences
2014-10-29 16:52:07 -04:00
Jason Perkins
a972ab8009 Merge with latest development 2014-10-24 15:38:12 -04:00
Jason Perkins
7efe07a51f Restore missing 'file not found' error message in dofile() 2014-10-24 15:37:38 -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
3de32788d2 Sort properties in generated projects, to prevent reordering by Visual Studio 2014-10-23 10:31:43 -04:00
Jason Perkins
b6c54eb2f5 Enum rule properties should use enum key rather than value 2014-10-23 10:18:05 -04:00
Jason Perkins
dad48fd632 Fix "attempt to index nil value" in --help 2014-10-22 15:02:02 -04:00
Jason Perkins
3104421fc3 Fix --scripts path in test helper scripts 2014-10-22 14:48:22 -04:00
Jason Perkins
81c9493e0e Fix detoken of table values, broken by previous commit 2014-10-21 18:28:14 -04:00
Jason Perkins
678d5729ae A couple of small fixes for rule generation
- Properly convert properties like "XYZ" to xyzVars() for the setter function
- Early out of detokenizer for non-string values
2014-10-21 16:23:30 -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
81430daabb Rename rules.lua to rule.lua to match solution.lua and project.lua 2014-10-17 14:52:48 -04:00
Jason Perkins
a72d4824ec Merge latest development branch 2014-10-17 14:37:42 -04:00
Jason Perkins
0efa24492d Merge --script argument changes for modules 2014-10-16 19:13:50 -04:00
Jason Perkins
aaa3052db4 Convert --scripts argument to absolute path on startup 2014-10-16 19:09:14 -04:00
Jason Perkins
df6ff7c86c Update BUILD.txt to reflect new behavior of --scripts option 2014-10-16 17:50:55 -04:00
Jason Perkins
a0ab11bda6 Rework --scripts handling to allow module loading
The --scripts argument should not point to the top-level Premake folder rather than its src/ folder; this allows the modules/ folder to also be referenced along that same path.
2014-10-16 17:32:09 -04:00
Jason Perkins
636f886795 Merge Merge container API improvements 2014-10-16 16:51:34 -04:00
Jason Perkins
41b5f77aba Fix up namespaces, added under construction comment to configset and context 2014-10-16 16:26:37 -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
a2dcae333c Merged in tbasnoopy/premake-dev/utility support for VS (pull request #136)
enable buildEvents like Postbuildstep in "Utility" Projects
2014-10-16 15:18:45 -04:00
M Skibbe
d7a05b551b enable buildEvents like Postbuildstep in "Utility" Projects 2014-10-14 11:39:54 +02:00
Jason Perkins
bf70a72860 Add Xcode module 2014-10-13 07:54:58 -04:00
Jason Perkins
dea8422ba4 Merged in SpacedBrain/premake-dev/osversion-update (pull request #135)
Updated os_getversion
2014-10-12 17:53:06 -04:00
SpaceBrain
ffb77ca782 Added new Windows and OSX versions to os_getversion 2014-10-12 21:12:41 +02:00
Jason Perkins
47aa8db1a7 Rework solution and project APIs around new container calls 2014-10-09 19:34:34 -04:00
Jason Perkins
68c106bb5b Clean up current container implementation before expanding into existing code
- use existing objects (premake.solution, premake.project) as the container classes
- drop metatables and inheritance setup, more trouble than its worth
- create explicit containers for global scope and project groups
2014-10-09 18:16:14 -04:00
Jason Perkins
352b5ba4ca Merge work-in-progress rules support, configuration container API 2014-10-08 16:45:03 -04:00
Jason Perkins
de5b04b348 Prevent project groups from containing configuration settings 2014-10-08 16:20:16 -04:00
Jason Perkins
141bec58b5 Port project() and group() to new container API 2014-10-07 18:49:33 -04:00