dev
the dev gem provides functionality to support the development of ruby,c#,c++ and c projects. dev may be used to auto generate rake tasks
=dev
the dev gem provides functionality to support the development of ruby,c#,c++ and c projects. when the require ‘dev’ is used in a rakefile, the variable DEV is defined as well as several rake tasks. the DEV variable may be manipulated to modify behavior of defined tasks or to cause additional task to be generated.
Installation
dev can be installed by the single command
gem install dev
Usage
dev can be included in a ruby script with
require 'dev'
a constant DEV hash is the primary variable about which the dev functionality revolves some example usages:
PROJECT=Dev::Project.new{( name: 'HelloRuby' )}
Simplest usage
DEV_HOME/wrk/Examples/HelloRuby/trunk/rakefile.rb
require 'dev'
Reference
Variables
DEV is a global instance of a Hash. The variable is define by require ‘dev’ statement
DEV may define several keys automatically
DEV the uri for the source code management system.
DEV the type of source code managment, (none,svn,git).
DEV the full directory name of the rakefile.rb.
DEV the name of the project (inferred by directory structure relative to DEV_ROOT).
DEV the version specified by the .semver file.
DEV the root working directory ENV if defined, otherwise user home directory.
DEV the boost build toolset, if available
DEV a hash containing various environment paths
CLEAN is a Rake::FileList that specifies file(s) to be removed during the clean task.
CLOBBER is a Rake::FileList that specifies file(s) to be removed during the clobber task.
BUILD_PRODUCTS is a Rake::FileList that specified file(s) that are required to consume the project.
Tasks
rake add # add files defined by src_glob to source code management
rake check # checks if the project default task may be skipped
rake clean # Remove any temporary products.
rake clobber # Remove any generated file.
rake commit # commit
rake compile # compile
rake features # tests cucumber features
rake info # display information about the rakefile
rake loc # count the lines of code
rake pull # rake working copies of dependencies
rake replace # replace text
rake setup # setup the project environment
rake test # run unit tests
rake update # updates changes from source code management
rake default # is automatically generated by require 'dev' or TASKS.refresh
# to prevent automatic generation of default task,
# define DEV_NO_DEFAULT_TASK prior to require ‘dev’
# the automatically generated task will execute the following tasks (if defined)
# ["check","setup","replace","pre_compile","compile","post_compile","pre_test",
# “test”,“post_test”,“log_build_products”,“add”,“commit”,“update”,“finalize”] # defining an array of string named DEFAULT_TASK_ORDER will cause # the default task to contain those tasks (if defined).
License
Copyright 2012-2013 Lou Parslow
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.