Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
ginty committed Oct 21, 2015
0 parents commit 7513124
Show file tree
Hide file tree
Showing 26 changed files with 801 additions and 0 deletions.
36 changes: 36 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Misc
.irb_history

# Editor cruft
*.swp
*.swo
*~

# Origen local files
/.bundle
/target/.default
/environment/.default
/release_note.txt
/pkg
/lbin
/.bin
/list/referenced.list
/tags
/.ref
/.ws
/.lsf
/.db
/log
/output
/web
/coverage
/.ref
/.yardoc
/.collection
/.bin
/.session
/tmp

# Cruft from other revision control systems
.SYNC
.svn
9 changes: 9 additions & 0 deletions .irbrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
$VERBOSE=nil
require 'pp'
require 'rubygems'
require 'irb/completion'
require 'irb/ext/save-history'

IRB.conf[:SAVE_HISTORY] = 100
IRB.conf[:AUTO_INDENT] = true
IRB.conf[:IRB_NAME] = "origen"
1 change: 1 addition & 0 deletions .rspec
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
--color -f doc
11 changes: 11 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
language: ruby
rvm:
- 2.1.0
- 2.2.2
script:
- bundle exec origen -v
- bundle exec origen specs
- bundle exec origen examples
- bundle exec origen web compile --no-serve
env:
- ORIGEN_GEM_USE_FROM_SYSTEM=false ORIGEN_GEM_MANAGE_BUNDLER=false
10 changes: 10 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
source 'https://rubygems.org'

# Specify your gem's dependencies in i_jtag.gemspec
gemspec

# Only these gems should be added here
# This gem provides integration with https://coveralls.io/ to monitor
# your application's test coverage
gem 'coveralls', require: false
gem 'byebug', '~>3.5'
172 changes: 172 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
PATH
remote: .
specs:
ijtag (0.1.0)
origen (>= 0.5.7)
treetop (~> 1)

GEM
remote: https://rubygems.org/
specs:
activesupport (4.2.4)
i18n (~> 0.7)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
ast (2.1.0)
astrolabe (1.3.1)
parser (~> 2.2)
builder (3.2.2)
byebug (3.5.1)
columnize (~> 0.8)
debugger-linecache (~> 1.2)
slop (~> 3.6)
coderay (1.1.0)
colored (1.2)
columnize (0.9.0)
coveralls (0.8.3)
json (~> 1.8)
rest-client (>= 1.6.8, < 2)
simplecov (~> 0.10.0)
term-ansicolor (~> 1.3)
thor (~> 0.19.1)
cri (2.7.0)
colored (~> 1.2)
debugger-linecache (1.2.0)
diff-lcs (1.2.5)
docile (1.1.5)
domain_name (0.5.25)
unf (>= 0.0.5, < 1.0.0)
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
geminabox (0.12.4)
builder
faraday
httpclient (>= 2.2.7)
nesty
sinatra (>= 1.2.7)
gems (0.8.3)
highline (1.7.8)
http-cookie (1.0.2)
domain_name (~> 0.5)
httparty (0.13.7)
json (~> 1.8)
multi_xml (>= 0.5.2)
httpclient (2.6.0.1)
i18n (0.7.0)
json (1.8.3)
kramdown (1.9.0)
log4r (1.1.10)
method_source (0.8.2)
mime-types (2.6.2)
mini_portile (0.6.2)
minitest (5.8.1)
multi_xml (0.5.5)
multipart-post (2.0.0)
nanoc (3.8.0)
cri (~> 2.3)
nesty (1.0.2)
net-ldap (0.11)
netrc (0.10.3)
nokogiri (1.6.4.1)
mini_portile (~> 0.6.0)
origen (0.5.7)
activesupport (~> 4.1)
bundler (~> 1.7)
coderay (~> 1.1)
colored (~> 1.2)
geminabox (= 0.12.4)
gems (~> 0.8)
highline (~> 1.7)
httparty (~> 0.13)
kramdown (~> 1.5)
log4r (~> 1.1.10, ~> 1.1)
nanoc (~> 3.7)
net-ldap (~> 0.9)
nokogiri (= 1.6.4.1)
pry (~> 0.10)
rake (~> 10)
rspec (~> 3)
rspec-legacy_formatters (~> 1)
rubocop (= 0.30)
scrub_rb (~> 1.0)
simplecov (~> 0.9)
thor (~> 0.19)
yard (~> 0.8)
origen_doc_helpers (0.2.1)
origen (~> 0.2, >= 0.2.1)
parser (2.2.3.0)
ast (>= 1.1, < 3.0)
polyglot (0.3.5)
powerpack (0.1.1)
pry (0.10.3)
coderay (~> 1.1.0)
method_source (~> 0.8.1)
slop (~> 3.4)
rack (1.6.4)
rack-protection (1.5.3)
rack
rainbow (2.0.0)
rake (10.4.2)
rest-client (1.8.0)
http-cookie (>= 1.0.2, < 2.0)
mime-types (>= 1.16, < 3.0)
netrc (~> 0.7)
rspec (3.3.0)
rspec-core (~> 3.3.0)
rspec-expectations (~> 3.3.0)
rspec-mocks (~> 3.3.0)
rspec-core (3.3.2)
rspec-support (~> 3.3.0)
rspec-expectations (3.3.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.3.0)
rspec-legacy_formatters (1.0.0)
rspec-core (>= 3.0.0.beta2)
rspec-support (>= 3.0.0.beta2)
rspec-mocks (3.3.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.3.0)
rspec-support (3.3.0)
rubocop (0.30.0)
astrolabe (~> 1.3)
parser (>= 2.2.0.1, < 3.0)
powerpack (~> 0.1)
rainbow (>= 1.99.1, < 3.0)
ruby-progressbar (~> 1.4)
ruby-progressbar (1.7.5)
scrub_rb (1.0.1)
simplecov (0.10.0)
docile (~> 1.1.0)
json (~> 1.8)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.0)
sinatra (1.4.6)
rack (~> 1.4)
rack-protection (~> 1.4)
tilt (>= 1.3, < 3)
slop (3.6.0)
term-ansicolor (1.3.2)
tins (~> 1.0)
thor (0.19.1)
thread_safe (0.3.5)
tilt (2.0.1)
tins (1.6.0)
treetop (1.6.3)
polyglot (~> 0.3)
tzinfo (1.2.2)
thread_safe (~> 0.1)
unf (0.1.4)
unf_ext
unf_ext (0.0.7.1)
yard (0.8.7.6)

PLATFORMS
ruby

DEPENDENCIES
byebug (~> 3.5)
coveralls
ijtag!
origen_doc_helpers
10 changes: 10 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/i_jtag.rake, and they will automatically
# be available to Rake.
#
# Any task files found in lib/tasks/shared/*.rake will be made available to 3rd party
# apps that use this plugin
require "bundler/setup"
require "origen"

Origen.app.load_tasks
103 changes: 103 additions & 0 deletions config/application.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
require 'origen'
class IJTAGApplication < Origen::Application

# See http://origen-sdk.org/origen/api/Origen/Application/Configuration.html
# for a full list of the configuration options available

# These attributes should never be changed, the duplication here will be resolved in future
# by condensing these attributes that do similar things
self.name = "ijtag"
self.namespace = "IJTAG"
config.name = "ijtag"
config.initials = "IJTAG"
# Change this to point to the revision control repository for this plugin
config.rc_url = "ssh://[email protected]:Origen-SDK/ijtag.git"
config.release_externally = true

# To enable deployment of your documentation to a web server (via the 'origen web'
# command) fill in these attributes.
config.web_directory = "[email protected]:Origen-SDK/Origen-SDK.github.io.git/ijtag"
config.web_domain = "http://origen-sdk.org/ijtag"

# When false Origen will be less strict about checking for some common coding errors,
# it is recommended that you leave this to true for better feedback and easier debug.
# This will be the default setting in Origen v3.
config.strict_errors = true

# See: http://origen-sdk.org/origen/latest/guides/utilities/lint/
config.lint_test = {
# Require the lint tests to pass before allowing a release to proceed
run_on_tag: true,
# Auto correct violations where possible whenever 'origen lint' is run
auto_correct: true,
# Limit the testing for large legacy applications
#level: :easy,
# Run on these directories/files by default
#files: ["lib", "config/application.rb"],
}

config.semantically_version = true

# An example of how to set application specific LSF parameters
#config.lsf.project = "msg.te"

# An example of how to specify a prefix to add to all generated patterns
#config.pattern_prefix = "nvm"

# An example of how to add header comments to all generated patterns
#config.pattern_header do
# cc "This is a pattern created by the example origen application"
#end

# By default all generated output will end up in ./output.
# Here you can specify an alternative directory entirely, or make it dynamic such that
# the output ends up in a setup specific directory.
#config.output_directory do
# "#{Origen.root}/output/#{$dut.class}"
#end

# Similarly for the reference files, generally you want to setup the reference directory
# structure to mirror that of your output directory structure.
#config.reference_directory do
# "#{Origen.root}/.ref/#{$dut.class}"
#end

# This will automatically deploy your documentation after every tag
#def after_release_email(tag, note, type, selector, options)
# command = "origen web compile --remote --api"
# Dir.chdir Origen.root do
# system command
# end
#end

# Ensure that all tests pass before allowing a release to continue
#def validate_release
# if !system("origen specs") || !system("origen examples")
# puts "Sorry but you can't release with failing tests, please fix them and try again."
# exit 1
# else
# puts "All tests passing, proceeding with release process!"
# end
#end

# To enabled source-less pattern generation create a class (for example PatternDispatcher)
# to generate the pattern. This should return false if the requested pattern has been
# dispatched, otherwise Origen will proceed with looking up a pattern source as normal.
#def before_pattern_lookup(requested_pattern)
# PatternDispatcher.new.dispatch_or_return(requested_pattern)
#end

# If you use pattern iterators you may come across the case where you request a pattern
# like this:
# origen g example_pat_b0.atp
#
# However it cannot be found by Origen since the pattern name is actually example_pat_bx.atp
# In the case where the pattern cannot be found Origen will pass the name to this translator
# if it exists, and here you can make any substitutions to help Origen find the file you
# want. In this example any instances of _b\d, where \d means a number, are replaced by
# _bx.
#config.pattern_name_translator do |name|
# name.gsub(/_b\d/, "_bx")
#end

end
17 changes: 17 additions & 0 deletions config/boot.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# This file is used to boot your plugin when it is running in standalone mode
# from its own workspace - i.e. when the plugin is being developed.
#
# It will not be loaded when the plugin is imported by a 3rd party app - in that
# case only lib/i_jtag.rb is loaded.
#
# Therefore this file can be used to load anything extra that you need to boot
# the development environment for this app. For example this is typically used
# to load some additional test classes to use your plugin APIs so that they can
# be tested and/or interacted with in the console.
require "ijtag"

# Load a Top-level/DUT class that is defined within this plugin's lib directory
# and is required by some of our tests.
# Normally such a class should not be exposed to 3rd party users of the plugin,
# so we required it here rather than in lib/i_jtag.rb.
#require "i_jtag/test/top_level"
Loading

0 comments on commit 7513124

Please sign in to comment.