origen_app_generators 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/config/commands.rb +13 -25
  3. data/config/version.rb +2 -2
  4. data/lib/origen_app_generators.rb +22 -6
  5. data/lib/origen_app_generators/application.rb +21 -14
  6. data/lib/origen_app_generators/base.rb +18 -3
  7. data/lib/origen_app_generators/plugin.rb +17 -2
  8. data/lib/origen_app_generators/sub_block_parser.rb +81 -0
  9. data/lib/origen_app_generators/test_engineering/stand_alone_application.rb +232 -0
  10. data/lib/origen_app_generators/test_engineering/{generic_test_block.rb → test_block.rb} +2 -2
  11. data/lib/tasks/app_generators.rake +42 -3
  12. data/lib/tasks/boot.rb +1 -1
  13. data/templates/app_generators/application/Gemfile +6 -7
  14. data/templates/app_generators/application/Rakefile +0 -4
  15. data/templates/app_generators/application/config/application.rb +8 -11
  16. data/templates/app_generators/application/config/{environment.rb → boot.rb} +0 -0
  17. data/templates/app_generators/application/config/commands.rb +11 -13
  18. data/templates/app_generators/application/origen_core_session +2 -0
  19. data/templates/app_generators/plugin/Gemfile +9 -0
  20. data/templates/app_generators/plugin/Rakefile +9 -0
  21. data/templates/app_generators/plugin/config/boot.rb +17 -0
  22. data/templates/app_generators/test_engineering/stand_alone_application/Gemfile +14 -0
  23. data/templates/app_generators/test_engineering/stand_alone_application/environment/j750.rb +1 -0
  24. data/templates/app_generators/test_engineering/stand_alone_application/environment/jlink.rb +1 -0
  25. data/templates/app_generators/test_engineering/stand_alone_application/environment/uflex.rb +1 -0
  26. data/templates/app_generators/test_engineering/stand_alone_application/environment/v93k.rb +1 -0
  27. data/templates/app_generators/test_engineering/stand_alone_application/lib/ip_block.rb +23 -0
  28. data/templates/app_generators/test_engineering/stand_alone_application/lib/ip_block_controller.rb +5 -0
  29. data/templates/app_generators/test_engineering/stand_alone_application/lib/top_level.rb +33 -0
  30. data/templates/app_generators/test_engineering/stand_alone_application/lib/top_level_controller.rb +21 -0
  31. data/templates/app_generators/test_engineering/stand_alone_application/pattern/example.rb +4 -0
  32. data/templates/app_generators/test_engineering/stand_alone_application/target/top_level.rb +8 -0
  33. data/templates/app_generators/test_engineering/{generic_test_block → test_block}/lib/interface.rb +0 -0
  34. data/templates/app_generators/test_engineering/{generic_test_block → test_block}/program/prb1.rb +0 -0
  35. data/templates/app_generators/test_engineering/{generic_test_block → test_block}/target/j750.rb +0 -0
  36. data/templates/app_generators/test_engineering/{generic_test_block → test_block}/target/ultraflex.rb +0 -0
  37. data/templates/app_generators/test_engineering/{generic_test_block → test_block}/target/v93k.rb +0 -0
  38. data/templates/web/origen_app_generators/test_engineering/generic_stand_alone_application.md.erb +9 -0
  39. metadata +28 -41
  40. data/templates/app_generators/application/config/users.rb +0 -29
  41. data/templates/app_generators/application/templates/web/archive.md.erb +0 -11
  42. data/templates/app_generators/application/templates/web/contact.md.erb +0 -36
  43. data/templates/app_generators/application/templates/web/docs/environment/definitions.md.erb +0 -17
  44. data/templates/app_generators/application/templates/web/docs/environment/installation.md.erb +0 -22
  45. data/templates/app_generators/application/templates/web/docs/environment/introduction.md.erb +0 -5
  46. data/templates/app_generators/application/templates/web/index.md.erb +0 -12
  47. data/templates/app_generators/application/templates/web/layouts/_basic.html.erb +0 -14
  48. data/templates/app_generators/application/templates/web/layouts/_doc.html.erb +0 -35
  49. data/templates/app_generators/application/templates/web/partials/_navbar.html.erb +0 -23
  50. data/templates/app_generators/application/templates/web/references.md.erb +0 -39
  51. data/templates/app_generators/application/templates/web/release_notes.md.erb +0 -5
  52. data/templates/app_generators/plugin/config/development.rb +0 -12
  53. data/templates/app_generators/plugin/templates/web/index.md.erb +0 -60
  54. data/templates/app_generators/plugin/templates/web/partials/_navbar.html.erb +0 -22
  55. data/templates/web/_history.md +0 -166
  56. data/templates/web/archive.md.erb +0 -11
  57. data/templates/web/contact.md.erb +0 -36
  58. data/templates/web/docs/developers/creating.md.erb +0 -290
  59. data/templates/web/docs/environment/installation.md.erb +0 -12
  60. data/templates/web/docs/environment/introduction.md.erb +0 -10
  61. data/templates/web/example.md.erb +0 -73
  62. data/templates/web/index.md.erb +0 -48
  63. data/templates/web/layouts/_basic.html.erb +0 -18
  64. data/templates/web/layouts/_doc.html.erb +0 -37
  65. data/templates/web/origen_app_generators/application.md.erb +0 -116
  66. data/templates/web/origen_app_generators/plugin.md.erb +0 -29
  67. data/templates/web/origen_app_generators/test_engineering/generic_test_block.md.erb +0 -16
  68. data/templates/web/partials/_navbar.html.erb +0 -22
  69. data/templates/web/release_notes.md.erb +0 -5
@@ -1,18 +0,0 @@
1
- ---
2
- layout: bootstrap
3
- title: <%= options[:title] || Origen.app.namespace %>
4
- ---
5
- <%= render "templates/web/partials/navbar.html", tab: options[:tab] %>
6
-
7
- <div class="row">
8
- %# The markdown attribute is important if you are going to include content written
9
- %# in markdown, without this is will be included verbatim
10
- <div class="span12" markdown="1">
11
- <%= yield %>
12
-
13
- % if !options.has_key?(:yammer_comments) || options[:yammer_comments]
14
- <%= yammer_comments %>
15
- % end
16
-
17
- </div>
18
- </div>
@@ -1,37 +0,0 @@
1
- ---
2
- layout: bootstrap
3
- title: <%= options[:title] || "#{Origen.app.namespace} - Docs" %>
4
- ---
5
- <%= render "templates/web/partials/navbar.html", tab: :docs %>
6
- % s = {}
7
-
8
- %# This creates the index on the left of your doc pages
9
- %#
10
- %# Naming of the keys is very important and must be of the form:
11
- %# <section>_<page> with no other underscores
12
- %# Origen will then look for the corresponding page in:
13
- %# templates/web/docs/<section>/<page>.md.erb
14
- %#
15
- %# See here for more info: http://origen.freescale.net/doc_helpers/latest/examples/searchable/intro/
16
-
17
- % s["Environment"] = {
18
- % environment_introduction: "Introduction",
19
- % environment_installation: "Installation",
20
- % }
21
- % s["Developers"] = {
22
- % developers_creating: "Creating a Generator",
23
- % }
24
- %
25
- %# Define additional sections as required, e.g.
26
- %# s["Registers"] = {
27
- %# registers_map: "Register Map",
28
- %# }
29
-
30
-
31
- % render "doc_helpers/searchable.html", options.merge(:index => s) do
32
-
33
- <%= yield %>
34
-
35
- <%= yammer_comments %>
36
-
37
- % end
@@ -1,116 +0,0 @@
1
- % render "layouts/basic.html" do
2
-
3
- ### OrigenAppGenerators
4
-
5
- ## Generic Application
6
-
7
- Builds a generic Origen application shell that has no specific use case in mind.
8
-
9
- It will build the following application structure:
10
-
11
- ~~~text
12
- |-- config
13
- | |-- application.rb
14
- | |-- commands.rb
15
- | |-- environment.rb
16
- | |-- users.rb
17
- | |-- version.rb
18
- |-- doc
19
- | |--history
20
- |-- lib
21
- | |-- app_name
22
- | | |-- top_level.rb
23
- | |-- app_name.rb
24
- | |-- tasks
25
- | |-- app_name.rake
26
- |-- spec
27
- | |-- spec_helper.rb
28
- |-- log
29
- |-- output
30
- |-- targets
31
- | |-- debug.rb
32
- | |-- default.rb
33
- | |-- production.rb
34
- |-- templates
35
- | |-- web
36
- |-- Gemfile
37
- |-- Rakefile
38
- ~~~
39
-
40
- **config**
41
-
42
- Holds all configuration information for your application
43
-
44
- **config/application.rb**
45
-
46
- This is the main configuration file where the behavior of Origen can be tailored
47
- to the needs of your application. The default settings are usually sufficient
48
- until your application becomes more advanced.
49
-
50
- **config/commands.rb**
51
-
52
- Custom origen commands can be added to your application, this is the preferred
53
- way of distributing any scripts required to support your application to your
54
- users. See the [command guide](http://origen.freescale.net/origen/latest/guides/custom/commands/)
55
- for details.
56
-
57
- **config/environment.rb**
58
-
59
- This file will be called by Origen to load your application environment, any files
60
- that you add to the lib directory should be loaded from here.
61
-
62
- **config/users.rb**
63
-
64
- Define your application users here, this is basically your mailing list for
65
- release notices.
66
-
67
- **config/version.rb**
68
-
69
- Defines the current application version. This file is managed by Origen via the
70
- 'origen rc tag' command and should generally never be edited by hand.
71
-
72
- **doc**
73
-
74
- Any documentation related to your application can be stored here.
75
-
76
- **doc/history**
77
-
78
- A rolling log of your application tags and release notes is maintained here. A
79
- new entry is generated every time the 'origen rc tag' command is run. This file is
80
- pre-formatted to look good when rendered as a web page.
81
-
82
- **lib**
83
-
84
- All of your application models and logic should go in here. This folder is
85
- already added to Ruby's load path by Origen. Sub-folders can be used as desired
86
- to keep things organized. The contents of this folder will be accessible by
87
- any other applications which import this application.
88
-
89
- **log**
90
-
91
- All log output generated by Origen will be placed in here. There is a log containing
92
- the output from the last origen invocation and a rolling log from all previous
93
- runs.
94
-
95
- **output**
96
-
97
- By default all generated or compiled output will be placed in here.
98
-
99
- **target**
100
-
101
- A target defines which silicon design and/or test platform is being targeting
102
- by the generated content. All target definitions live in here.
103
-
104
- **templates**
105
-
106
- All templates used by the application should reside here, normally in sub-directories to separate
107
- them by type - e.g. templates/j750, templates/bench_code, templates/rtl, etc.
108
-
109
- **templates/web**
110
-
111
- Web based documentation of your project should reside here. Origen makes it easy
112
- to produce dynamic documentation based on your application target
113
- configurations. See http://origen.freescale.net for an example of the kind of
114
- documentation that can be produced.
115
-
116
- % end
@@ -1,29 +0,0 @@
1
- % render "layouts/basic.html" do
2
-
3
- ### OrigenAppGenerators
4
-
5
- ## Generic Plugin
6
-
7
- Builds a generic Origen plugin shell that has no specific use case in mind.
8
-
9
- The generated application is very similar to the [Generic Application](<%= path "origen_app_generators/application" %>),
10
- but with the following additional files:
11
-
12
- ~~~text
13
- |-- config
14
- | |-- development.rb
15
- |-- app_name.gemspec
16
- ~~~
17
-
18
- Some file content may be slightly different to that for an application
19
- and it also has a different web doc structure to reflect the goal
20
- for all plugins to have consistent and snappy documentation.
21
-
22
- **config/development.rb**
23
-
24
- Similar to environment.rb this file can be used by plugins to require private
25
- files for the purposes of testing or for use in the development environment.
26
- Only files loaded by environment.rb will be available to applications importing
27
- the plugin.
28
-
29
- % end
@@ -1,16 +0,0 @@
1
- % render "layouts/basic.html" do
2
-
3
- ### OrigenAppGenerators
4
-
5
- ## Generic Test Block
6
-
7
- This generates a customized version of the [Generic Plugin](<%= path "origen_app_generators/plugin" %>).
8
-
9
- At present this builds essentially the same as a generic plugin, but in future it will be
10
- enhanced with some domain specific configuration and added logic.
11
-
12
- Generally this is intended to be a shell for a test block that is an Origen plugin designed to
13
- work with a top-level BOM/product-specific application.
14
-
15
- % end
16
-
@@ -1,22 +0,0 @@
1
- <div class="navbar navbar-inverse navbar-fixed-top">
2
- <div class="navbar-inner">
3
- <div class="container">
4
- <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
5
- <span class="icon-bar"></span>
6
- <span class="icon-bar"></span>
7
- <span class="icon-bar"></span>
8
- </a>
9
- <a class="brand" href="<%= path "/" %>">Home</a>
10
- <div class="nav-collapse collapse">
11
- <ul class="nav">
12
- <li class="<%= options[:tab] == :docs ? 'active' : '' %>"><a href="<%= path("/docs/environment/introduction") %>">Docs</a></li>
13
- <li class="<%= options[:tab] == :api ? 'active' : '' %>"><a href="<%= path "/api/" %>">API</a></li>
14
- <li class="<%= options[:tab] == :archive ? 'active' : '' %>"><a href="<%= path "/archive" %>">Archive</a></li>
15
- <li class="<%= options[:tab] == :release ? 'active' : '' %>"><a href="<%= path "/release_notes" %>">Release Notes</a></li>
16
- <li class="<%= options[:tab] == :contact ? 'active' : '' %>"><a href="<%= path "/contact" %>">Contact</a></li>
17
- </ul>
18
- <%= import "origen/web/logo.html" %>
19
- </div><!--/.nav-collapse -->
20
- </div>
21
- </div>
22
- </div>
@@ -1,5 +0,0 @@
1
- % render "layouts/basic.html", tab: :release, yammer_comments: false do
2
-
3
- <%= render "#{Origen.root}/doc/history" %>
4
-
5
- % end