Changeset 95

Show
Ignore:
Timestamp:
09/05/08 11:49:25 (3 months ago)
Author:
deveiant
Message:
  • Updated build system and license
Location:
branches/rakefile-work
Files:
7 modified

Legend:

Unmodified
Added
Removed
  • branches/rakefile-work/INSTALL

    • Property svn:keywords changed from author date id revision to Date Rev Author URL Id
  • branches/rakefile-work/LICENSE

    r91 r95  
    1 # The Artistic License 
     1Copyright (c) 2008, Michael Granger 
     2All rights reserved. 
    23 
    3 August 15, 1997 
     4Redistribution and use in source and binary forms, with or without 
     5modification, are permitted provided that the following conditions are met: 
    46 
    5 ## Preamble 
     7  * Redistributions of source code must retain the above copyright notice, 
     8    this list of conditions and the following disclaimer. 
    69 
    7 The intent of this document is to state the conditions under which a Package may 
    8 be copied, such that the Copyright Holder maintains some semblance of artistic 
    9 control over the development of the package, while giving the users of the 
    10 package the right to use and distribute the Package in a more-or-less customary 
    11 fashion, plus the right to make reasonable modifications. 
     10  * Redistributions in binary form must reproduce the above copyright notice, 
     11    this list of conditions and the following disclaimer in the documentation 
     12    and/or other materials provided with the distribution. 
    1213 
    13 ## Definitions 
     14  * Neither the name of the author/s, nor the names of the project's 
     15    contributors may be used to endorse or promote products derived from this 
     16    software without specific prior written permission. 
    1417 
    15   "Package" refers to the collection of files distributed by the Copyright 
    16   Holder, and derivatives of that collection of files created through textual 
    17   modification. 
    18    
    19   "Standard Version" refers to such a Package if it has not been modified, or 
    20   has been modified in accordance with the wishes of the Copyright Holder as 
    21   specified below. 
    22    
    23   "Copyright Holder" is whoever is named in the copyright or copyrights for the 
    24   package. 
    25    
    26   "You" is you, if you're thinking about copying or distributing this Package. 
    27    
    28   "Reasonable copying fee" is whatever you can justify on the basis of media 
    29   cost, duplication charges, time of people involved, and so on. (You will not 
    30   be required to justify it to the Copyright Holder, but only to the computing 
    31   community at large as a market that must bear the fee.) 
    32    
    33   "Freely Available" means that no fee is charged for the item itself, though 
    34   there may be fees involved in handling the item. It also means that recipients 
    35   of the item may redistribute it under the same conditions they received it. 
    36  
    37 1. You may make and give away verbatim copies of the source form of the Standard 
    38 Version of this Package without restriction, provided that you duplicate all of 
    39 the original copyright notices and associated disclaimers. 
    40  
    41 2. You may apply bug fixes, portability fixes and other modifications derived 
    42 from the Public Domain or from the Copyright Holder. A Package modified in such 
    43 a way shall still be considered the Standard Version. 
    44  
    45 3. You may otherwise modify your copy of this Package in any way, provided that 
    46 you insert a prominent notice in each changed file stating how and when you 
    47 changed that file, and provided that you do at least ONE of the following: 
    48  
    49    1. place your modifications in the Public Domain or otherwise make them 
    50    Freely Available, such as by posting said modifications to Usenet or an 
    51    equivalent medium, or placing the modifications on a major archive site such 
    52    as uunet.uu.net, or by allowing the Copyright Holder to include your 
    53    modifications in the Standard Version of the Package. 
    54     
    55    2. use the modified Package only within your corporation or organization. 
    56  
    57    3. rename any non-standard executables so the names do not conflict with 
    58    standard executables, which must also be provided, and provide a separate 
    59    manual page for each non-standard executable that clearly documents how it 
    60    differs from the Standard Version. 
    61  
    62    4. make other distribution arrangements with the Copyright Holder.  
    63  
    64 4. You may distribute the programs of this Package in object code or executable 
    65 form, provided that you do at least ONE of the following: 
    66  
    67    1. distribute a Standard Version of the executables and library files, 
    68    together with instructions (in the manual page or equivalent) on where to get 
    69    the Standard Version. 
    70  
    71    2. accompany the distribution with the machine-readable source of the Package 
    72    with your modifications. 
    73  
    74    3. give non-standard executables non-standard names, and clearly document the 
    75    differences in manual pages (or equivalent), together with instructions on 
    76    where to get the Standard Version. 
    77  
    78    4. make other distribution arrangements with the Copyright Holder.  
    79  
    80 5. You may charge a reasonable copying fee for any distribution of this Package. 
    81 You may charge any fee you choose for support of this Package. You may not 
    82 charge a fee for this Package itself. However, you may distribute this Package 
    83 in aggregate with other (possibly commercial) programs as part of a larger 
    84 (possibly commercial) software distribution provided that you do not advertise 
    85 this Package as a product of your own. You may embed this Package's interpreter 
    86 within an executable of yours (by linking); this shall be construed as a mere 
    87 form of aggregation, provided that the complete Standard Version of the 
    88 interpreter is so embedded. 
    89  
    90 6. The scripts and library files supplied as input to or produced as output from 
    91 the programs of this Package do not automatically fall under the copyright of 
    92 this Package, but belong to whomever generated them, and may be sold 
    93 commercially, and may be aggregated with this Package. If such scripts or 
    94 library files are aggregated with this Package via the so-called "undump" or 
    95 "unexec" methods of producing a binary executable image, then distribution of 
    96 such an image shall neither be construed as a distribution of this Package nor 
    97 shall it fall under the restrictions of Paragraphs 3 and 4, provided that you do 
    98 not represent such an executable image as a Standard Version of this Package. 
    99  
    100 7. C subroutines (or comparably compiled subroutines in other languages) 
    101 supplied by you and linked into this Package in order to emulate subroutines and 
    102 variables of the language defined by this Package shall not be considered part 
    103 of this Package, but are the equivalent of input as in Paragraph 6, provided 
    104 these subroutines do not change the language in any way that would cause it to 
    105 fail the regression tests for the language. 
    106  
    107 8. Aggregation of this Package with a commercial distribution is always 
    108 permitted provided that the use of this Package is embedded; that is, when no 
    109 overt attempt is made to make this Package's interfaces visible to the end user 
    110 of the commercial distribution. Such use shall not be construed as a 
    111 distribution of this Package. 
    112  
    113 9. The name of the Copyright Holder may not be used to endorse or promote 
    114 products derived from this software without specific prior written permission. 
    115  
    116 10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED 
    117 WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF 
    118 MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 
    119  
    120 The End 
    121  
     18THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
     19AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
     20IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 
     21DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 
     22FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
     23DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 
     24SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
     25CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 
     26OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
     27OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  • branches/rakefile-work/README

    • Property svn:keywords changed from author date id revision to Date Rev Author URL Id
    r83 r95  
    4141== Installation 
    4242 
    43 For installation instructions, see the INSTALL file. 
     43If you use RubyGems, you can install via: 
     44 
     45  $ sudo gem install ruby-wordnet 
     46 
     47You can also install as a site library via the Rakefile: 
     48 
     49  $ wget http://deveiate.org/code/ruby-wordnet-x.y.z.tar.gz 
     50  $ tar xzvf ruby-wordnet-x.y.z.tar.gz 
     51  $ cd ruby-wordnet-x.y.z 
     52  $ sudo rake install 
    4453 
    4554 
     
    4756 
    4857There is a project page for Ruby-WordNet which can be found at: 
    49 <http://deveiate.org/code/Ruby-WordNet.shtml>. 
     58<http://deveiate.org/projects/Ruby-WordNet/>. 
    5059 
    5160This library was developed as part of the FaerieMUD Project. For more 
     
    6574== Legal 
    6675 
    67 Ruby-WordNet is Open Source Software which is Copyright © 2001-2007 by The 
     76Ruby-WordNet is Open Source Software which is Copyright © 2001-2008 by The 
    6877FaerieMUD Consortium. 
    6978 
    70 You may use, modify, and/or redistribute this software under the terms of the 
    71 Perl Artistic License, a copy of which should have been included in this 
    72 distribution (See the file Artistic). If it was not, a copy of it may be 
    73 obtained from http://language.perl.com/misc/Artistic.html or 
    74 http://www.faeriemud.org/artistic.html). 
    75  
    76 THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, 
    77 INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND 
    78 FITNESS FOR A PARTICULAR PURPOSE. 
    79  
    80 -- 
     79It is licensed under the modified BSD license. See the LICENSE file for details. 
    8180 
    8281WordNet® is a registered trademark of Princeton University.  
    83  
    84 -- 
    8582 
    8683Lingua::Wordnet is code licensed under the following terms: 
     
    9390 
    9491 
    95 === Version 
    96  
    9792$Id$ 
    9893 
  • branches/rakefile-work/Rakefile

    r94 r95  
    3535### Config constants 
    3636BASEDIR       = Pathname.new( __FILE__ ).dirname.relative_path_from( Pathname.getwd ) 
     37BINDIR        = BASEDIR + 'bin' 
    3738LIBDIR        = BASEDIR + 'lib' 
    3839EXTDIR        = BASEDIR + 'ext' 
    3940DOCSDIR       = BASEDIR + 'docs' 
    4041PKGDIR        = BASEDIR + 'pkg' 
    41 RAKE_TASKDIR  = BASEDIR + 'rake' 
    42  
    43 PKG_NAME      = 'wordnet' 
    44 PKG_SUMMARY   = '' 
     42 
     43PROJECT_NAME  = 'WordNet' 
     44PKG_NAME      = PROJECT_NAME.downcase 
     45PKG_SUMMARY   = 'a Ruby interface to the WordNet Lexical Database' 
    4546VERSION_FILE  = LIBDIR + 'wordnet.rb' 
    4647PKG_VERSION   = VERSION_FILE.read[ /VERSION = '(\d+\.\d+\.\d+)'/, 1 ] 
     
    4849GEM_FILE_NAME = "#{PKG_FILE_NAME}.gem" 
    4950 
    50 RELEASE_NAME  = "RELEASE_#{PKG_VERSION.gsub(/\./, '_')}" 
    51  
    5251ARTIFACTS_DIR = Pathname.new( ENV['CC_BUILD_ARTIFACTS'] || 'artifacts' ) 
    5352 
    5453TEXT_FILES    = %w( Rakefile ChangeLog README LICENSE ).collect {|filename| BASEDIR + filename } 
     54BIN_FILES     = Pathname.glob( BINDIR + '*' ).delete_if {|item| item =~ /\.svn/ } 
    5555LIB_FILES     = Pathname.glob( LIBDIR + '**/*.rb' ).delete_if {|item| item =~ /\.svn/ } 
    5656EXT_FILES     = Pathname.glob( EXTDIR + '**/*.{c,h,rb}' ).delete_if {|item| item =~ /\.svn/ } 
     
    6262TEST_FILES    = Pathname.glob( TESTDIR + '**/*.tests.rb' ).delete_if {|item| item =~ /\.svn/ } 
    6363 
    64 RELEASE_FILES = FileList[ TEXT_FILES + SPEC_FILES + TEST_FILES + LIB_FILES + EXT_FILES ] 
     64RAKE_TASKDIR  = BASEDIR + 'rake' 
     65RAKE_TASKLIBS = Pathname.glob( RAKE_TASKDIR + '*.rb' ) 
     66 
     67LOCAL_RAKEFILE = BASEDIR + 'Rakefile.local' 
     68 
     69EXTRA_PKGFILES = [] 
     70EXTRA_PKGFILES.concat Pathname.glob( BASEDIR + 'covertdb.rb' ).delete_if {|item| item =~ /\.svn/ }  
     71EXTRA_PKGFILES.concat Pathname.glob( BASEDIR + 'utils.rb' ).delete_if {|item| item =~ /\.svn/ }  
     72EXTRA_PKGFILES.concat Pathname.glob( BASEDIR + 'examples/*.rb' ).delete_if {|item| item =~ /\.svn/ }  
     73 
     74RELEASE_FILES = TEXT_FILES +  
     75    SPEC_FILES +  
     76    TEST_FILES +  
     77    BIN_FILES + 
     78    LIB_FILES +  
     79    EXT_FILES +  
     80    RAKE_TASKLIBS + 
     81    EXTRA_PKGFILES 
     82 
     83RELEASE_FILES << LOCAL_RAKEFILE if LOCAL_RAKEFILE.exist? 
    6584 
    6685COVERAGE_MINIMUM = ENV['COVERAGE_MINIMUM'] ? Float( ENV['COVERAGE_MINIMUM'] ) : 85.0 
     
    81100SVN_TAGS_DIR     = 'tags' 
    82101 
     102SVN_DOTDIR       = BASEDIR + '.svn' 
     103SVN_ENTRIES      = SVN_DOTDIR + 'entries' 
     104 
     105 
    83106### Load some task libraries that need to be loaded early 
    84107require RAKE_TASKDIR + 'helpers.rb' 
     
    92115 
    93116# Documentation constants 
     117RDOCDIR = DOCSDIR + 'api' 
    94118RDOC_OPTIONS = [ 
    95119    '-w', '4', 
     
    108132PROJECT_PUBDIR = "/usr/local/www/public/code" 
    109133PROJECT_DOCDIR = "#{PROJECT_PUBDIR}/#{PKG_NAME}" 
    110 PROJECT_SCPURL = "#{PROJECT_HOST}:#{PROJECT_DOCDIR}" 
     134PROJECT_SCPPUBURL = "#{PROJECT_HOST}:#{PROJECT_PUBDIR}" 
     135PROJECT_SCPDOCURL = "#{PROJECT_HOST}:#{PROJECT_DOCDIR}" 
     136 
     137# Rubyforge stuff 
     138RUBYFORGE_GROUP = 'deveiate' 
     139RUBYFORGE_PROJECT = 'wordnet' 
    111140 
    112141# Gem dependencies: gemname => version 
    113142DEPENDENCIES = { 
     143} 
     144 
     145# Developer Gem dependencies: gemname => version 
     146DEVELOPMENT_DEPENDENCIES = { 
     147    'amatch'      => '>= 0.2.3', 
     148    'rake'        => '>= 0.8.1', 
     149    'rcodetools'  => '>= 0.7.0.0', 
     150    'rcov'        => '>= 0', 
     151    'RedCloth'    => '>= 4.0.3', 
     152    'rspec'       => '>= 0', 
     153    'rubyforge'   => '>= 0', 
     154    'termios'     => '>= 0', 
     155    'text-format' => '>= 1.0.0', 
     156    'tmail'       => '>= 1.2.3.1', 
     157    'ultraviolet' => '>= 0.10.2', 
     158    'libxml-ruby' => '>= 0.8.3', 
    114159} 
    115160 
     
    126171    gem.summary           = PKG_SUMMARY 
    127172    gem.description       = <<-EOD 
    128     A Ruby implementation of the WordNet lexical dictionary 
     173    A Ruby implementation of the WordNet lexical dictionary an online lexical reference system whose 
     174    design is inspired by current psycholinguistic theories of human lexical memory. 
    129175    EOD 
    130176 
     
    132178    gem.email             = 'ged@FaerieMUD.org' 
    133179    gem.homepage          = 'http://deveiate.org/projects/Ruby-WordNet' 
    134     gem.rubyforge_project = 'deveiate' 
     180    gem.rubyforge_project = RUBYFORGE_PROJECT 
    135181 
    136182    gem.has_rdoc          = true 
    137183    gem.rdoc_options      = RDOC_OPTIONS 
     184 
     185    gem.bindir            = BINDIR.relative_path_from(BASEDIR).to_s 
     186     
    138187 
    139188    gem.files             = RELEASE_FILES. 
     
    144193    DEPENDENCIES.each do |name, version| 
    145194        version = '>= 0' if version.length.zero? 
    146         gem.add_dependency( name, version ) 
     195        gem.add_runtime_dependency( name, version ) 
     196    end 
     197     
     198    DEVELOPMENT_DEPENDENCIES.each do |name, version| 
     199        version = '>= 0' if version.length.zero? 
     200        gem.add_development_dependency( name, version ) 
    147201    end 
    148202     
     
    152206end 
    153207 
     208# Manual-generation config 
     209MANUALDIR = DOCSDIR + 'manual' 
     210 
     211$trace = Rake.application.options.trace ? true : false 
     212$dryrun = Rake.application.options.dryrun ? true : false 
     213 
    154214 
    155215# Load any remaining task libraries 
    156 Pathname.glob( RAKE_TASKDIR + '*.rb' ).each do |tasklib| 
    157     RELEASE_FILES.include( tasklib ) 
    158  
     216RAKE_TASKLIBS.each do |tasklib| 
    159217    next if tasklib =~ %r{/(helpers|svn|verifytask)\.rb$} 
    160218    begin 
     
    171229end 
    172230 
    173 $trace = Rake.application.options.trace ? true : false 
    174 $dryrun = Rake.application.options.dryrun ? true : false 
    175  
    176231# Load any project-specific rules defined in 'Rakefile.local' if it exists 
    177 LOCAL_RAKEFILE = BASEDIR + 'Rakefile.local' 
    178 if LOCAL_RAKEFILE.exist? 
    179     import LOCAL_RAKEFILE  
    180     RELEASE_FILES.include( LOCAL_RAKEFILE.to_s ) 
    181 end 
     232import LOCAL_RAKEFILE if LOCAL_RAKEFILE.exist? 
    182233 
    183234 
     
    187238 
    188239### Default task 
    189 task :default  => [:clean, :spec, :rdoc, :package] 
     240task :default  => [:clean, :local, :spec, :rdoc, :package] 
     241 
     242### Task the local Rakefile can append to -- no-op by default 
     243task :local 
    190244 
    191245 
     
    194248CLOBBER.include 'artifacts', 'coverage.info', PKGDIR 
    195249 
    196  
    197 ### Cruisecontrol task 
     250# Target to hinge on ChangeLog updates 
     251file SVN_ENTRIES 
     252 
     253### Task: changelog 
     254file 'ChangeLog' => SVN_ENTRIES.to_s do |task| 
     255    log "Updating #{task.name}" 
     256 
     257    changelog = make_svn_changelog() 
     258    File.open( task.name, 'w' ) do |fh| 
     259        fh.print( changelog ) 
     260    end 
     261end 
     262 
     263 
     264### Task: cruise (Cruisecontrol task) 
    198265desc "Cruisecontrol build" 
    199266task :cruise => [:clean, :spec, :package] do |task| 
     
    202269    artifact_dir.mkpath 
    203270     
    204     $stderr.puts "Copying coverage stats..." 
    205     FileUtils.cp_r( 'coverage', artifact_dir ) 
     271    coverage = BASEDIR + 'coverage' 
     272    if coverage.exist? && coverage.directory? 
     273        $stderr.puts "Copying coverage stats..." 
     274        FileUtils.cp_r( 'coverage', artifact_dir ) 
     275    end 
    206276     
    207277    $stderr.puts "Copying packages..." 
     
    210280 
    211281 
     282desc "Update the build system to the latest version" 
     283task :update_build do 
     284    log "Updating the build system" 
     285    sh 'svn', 'up', RAKE_TASKDIR 
     286    log "Updating the Rakefile" 
     287    sh 'rake', '-f', RAKE_TASKDIR + 'Metarakefile' 
     288end 
     289 
  • branches/rakefile-work/Rakefile.local

    • Property svn:keywords set to Date Rev Author URL Id
    r94 r95  
    2020DATA_DATABASE_FILE = DATA_BUILD_DIR + 'data' 
    2121 
    22 RELEASE_FILES.include( 'examples/*.rb' ) 
    23  
    2422 
    2523### Tasks 
     
    3533# Conversion utility 
    3634file CONVERT_UTIL.to_s 
    37 RELEASE_FILES.include( CONVERT_UTIL.to_s ) 
    3835 
    3936# Build directory for the database files 
  • branches/rakefile-work/TODO

    • Property svn:keywords changed from author date id revision to Date Rev Author URL Id
  • branches/rakefile-work/project.yml

    r94 r95  
    11---  
    2 project_description: A Ruby implementation of the WordNet lexical dictionary 
     2rubyforge_project: wordnet 
     3project_requirements:  
     4  bdb: ">= 0.6.5" 
     5project_description: |- 
     6  A Ruby implementation of the WordNet lexical dictionary an online lexical reference system whose 
     7  design is inspired by current psycholinguistic theories of human lexical memory. 
     8rubyforge_group: deveiate 
    39author_name: Michael Granger 
    410project_homepage: http://deveiate.org/projects/Ruby-WordNet 
     11project_dependencies: {} 
     12 
     13project_summary: a Ruby interface to the WordNet Lexical Database 
    514project_name: WordNet 
     15version_file: wordnet.rb 
     16additional_pkgfiles:  
     17- convertdb.rb 
     18- utils.rb 
     19- examples/*.rb 
     20dev_dependencies: {} 
     21 
    622author_email: ged@FaerieMUD.org 
    7  
    8 project_dependencies: 
    9  
    10 project_requirements: 
    11   bdb: >= 0.6.5 
    12