Commit Graph

1496 Commits

Author SHA1 Message Date
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
Jason Perkins
f73a2206ef Port solution() to new container API 2014-10-07 16:56:53 -04:00
Jason Perkins
30b6631b37 Rename new API "scope" functions to "container"; start standardizing new terminology 2014-10-06 18:02:49 -04:00
Jason Perkins
4205a4e773 Phase out configset.root in favor of new containers 2014-10-06 17:55:37 -04:00
Jason Perkins
37e564b23c Update build instructions for new embedding logic 2014-10-06 16:13:44 -04:00
Jason Perkins
86685d7514 Merge latest development branch 2014-10-04 19:21:38 -04:00
Jason Perkins
67f6fba149 Merge new script embedding system 2014-10-04 19:10:21 -04:00
Jason Perkins
3e4975af1b Enable relative referencing of embedded scripts 2014-10-04 18:02:20 -04:00
Jason Perkins
a9f862293b Merge latest development branch 2014-10-02 17:11:34 -04:00
Jason Perkins
2143d3de9b Merge managed C++ linking of unmanaged library dependencies 2014-10-02 16:41:14 -04:00
Jason Perkins
428b9cad2f Fix managed C++ linking of unmanaged library dependencies 2014-10-02 16:40:28 -04:00
Jason Perkins
157d96e39d Modernize VC 201x project references generator 2014-10-02 16:21:25 -04:00
Jason Perkins
e2c1f5c430 Add more module and script search paths
Now uses same set of paths to locate both modules and individual scripts, in order:
  - the main script dir (_MAIN_SCRIPT_DIR)
  - the current working directory
  - ~/.premake
  - the --scripts=… argument, if present
  - the PREMAKE_PATH environment variable, if set
  - the folder containing the Premake executable (_PREMAKE_DIR)
  - ~/Library/Application Support/Premake
  - /usr/local/share/premake
  - /usr/share/premake

Prints a warning when embedded scripts are loaded from a debug build
2014-09-29 18:00:52 -04:00
Jason Perkins
d9c87649f3 Fix embedding of main script and manifest 2014-09-29 15:28:11 -04:00
Jason Perkins
b4cdb330bf Added _MAIN_SCRIPT_DIR to module search path 2014-09-29 14:58:46 -04:00
Jason Perkins
88dc2cb8a8 Merged in dcourtois/premake-dev/custom_build_additional_inputs (pull request #131)
added a buildinput command to add additional input dependencies to custom build commands.
2014-09-28 14:52:43 -04:00