diff options
Diffstat (limited to 'release_app.rb')
-rwxr-xr-x | release_app.rb | 238 |
1 files changed, 0 insertions, 238 deletions
diff --git a/release_app.rb b/release_app.rb deleted file mode 100755 index 6d9315c3..00000000 --- a/release_app.rb +++ /dev/null @@ -1,238 +0,0 @@ -#!/usr/bin/env ruby -# -# Ruby script for generating tarball releases from SVN -# -# (c) 2005 Mark Kretschmann <markey@web.de> -# modified by Carsten Niehaus -# Some parts of this code taken from cvs2dist -# License: GPL V2 - -require 'getoptlong' - -opts = GetoptLong.new( - [ "--noi18n", "-i", GetoptLong::NO_ARGUMENT ], - [ "--nogpg", "-g", GetoptLong::NO_ARGUMENT ], - [ "--libtdeedu", "-l", GetoptLong::NO_ARGUMENT ], - [ "--widgets", "-w", GetoptLong::NO_ARGUMENT ], - [ "--appname", "-a", GetoptLong::REQUIRED_ARGUMENT ], - [ "--help", "-h", GetoptLong::NO_ARGUMENT ] -) - -doi18n = "yes" -dogpg = "yes" -packlibtdeedu = "no" -packwidgets = "no" -name = "" - -#check if there are arguments -opts.each do |opt, arg| - if opt == "--noi18n" - doi18n = "no" - elsif opt == "--nogpg" - dogpg = "no" - elsif opt == "--libtdeedu" - packlibtdeedu = "yes" - elsif opt == "--widgets" - packwidgets = "yes" - elsif opt == "--appname" - name = arg - elsif opt == "--help" - puts "Usage:\n - Optional:\n - --noi18n to disable the packaging of translations and documentation\n - --nogpg to disable signing with GnuPG\n - --libtdeedu to enable packing libtdeedu\n - --widgets to enable packing the KDEEDU-Widgets" - exit() - end -end - -if name.empty? - name = `kdialog --combobox "Select an application:" Kalzium KBruch KHangMan Kig Kiten KPercentage KMessedWords KmPlot KStars KTouch KTurtle KVerbos KVoctrain KWordQuiz`.chomp!.downcase -end - -if name.empty? - exit() -end - -version = `kdialog --title "Version number" --inputbox "Enter the version number"`.chomp! -if version.empty? - version = "preview" -end - -puts "Start packing #{name}".center(40, " - ") - -folder = "#{name}-#{version}" - -# Some helper methods -def svn( command, dir ) - `svn #{command} svn://anonsvn.kde.org/home/kde/#{dir}` -end - -# Prevent using unsermake -oldmake = ENV["UNSERMAKE"] -ENV["UNSERMAKE"] = "no" - -# Remove old folder, if exists -`rm -rf #{folder} 2> /dev/null` -`rm -rf folder.tar.bz2 2> /dev/null` - -Dir.mkdir( folder ) -Dir.chdir( folder ) - -if packlibtdeedu == "yes" - svn( "co -N", "/trunk/KDE/tdeedu/" ) - Dir.chdir( "tdeedu") - puts "Checking out libtdeedu".center(40, " - ") - `svn up libtdeedu` -end -if packwidgets == "yes" - svn( "co -N", "/trunk/playground/edu/" ) - Dir.chdir( "playground/edu") - puts "Checking out the tdeedu-widgets".center(40, " - ") - svn( "co", "/trunk/playground/edu/widgets/") -end - -puts "Checking out #{name}".center(40," - ") -`svn up #{name}` - -puts "Checking out kde-commons/admin".center(40, " - ") -svn( "co", "/trunk/KDE/kde-common/admin") - -# we check out kde-l10n... -if doi18n == "yes" - puts "\n" - puts "l10n".center(40, " - ") - puts "\n" - - Dir.mkdir( "doc" ) - - i18nlangs = `svn cat https://svn.kde.org/home/kde/trunk/l10n/subdirs` - Dir.mkdir( "l10n" ) - Dir.chdir( "l10n" ) - - # docs - for lang in i18nlangs - lang.chomp! - `rm -rf ../doc/#{lang}` - `rm -rf #{name}` - docdirname = "l10n/#{lang}/docs/tdeedu/#{name}" - `svn co -q https://svn.kde.org/home/kde/trunk/#{docdirname} > /dev/null 2>&1` - next unless FileTest.exists?( "#{name}" ) - `cp -R #{name}/ ../doc/#{lang}` - - # we don't want KDE_DOCS = AUTO, cause that makes the - # build system assume that the name of the app is the - # same as the name of the dir the Makefile.am is in. - # Instead, we explicitly pass the name.. - makefile = File.new( "../doc/#{lang}/Makefile.am", File::CREAT | File::RDWR | File::TRUNC ) - makefile << "KDE_LANG = #{lang}\n" - makefile << "KDE_DOCS = #{name}\n" - makefile.close() - - puts( "#{lang} done.\n" ) - end - - #now create the Makefile.am so that the docs will be build - makefile = File.new( "../doc/Makefile.am", File::CREAT | File::RDWR | File::TRUNC ) - makefile << "KDE_LANG = en\n" - makefile << "KDE_DOCS = AUTO\n" - makefile << "SUBDIRS = $(AUTODIRS)\n" - makefile.close() - - Dir.chdir( ".." ) # multimedia - puts "\n" - - $subdirs = false - Dir.mkdir( "po" ) - - for lang in i18nlangs - lang.chomp! - pofilename = "l10n/#{lang}/messages/tdeedu/#{name}.po" - `svn cat https://svn.kde.org/home/kde/trunk/#{pofilename} 2> /dev/null | tee l10n/#{name}.po` - next if FileTest.size( "l10n/#{name}.po" ) == 0 - - dest = "po/#{lang}" - Dir.mkdir( dest ) - print "Copying #{lang}'s #{name}.po over .. " - `mv l10n/#{name}.po #{dest}` - puts( "done.\n" ) - - makefile = File.new( "#{dest}/Makefile.am", File::CREAT | File::RDWR | File::TRUNC ) - makefile << "KDE_LANG = #{lang}\n" - makefile << "SUBDIRS = $(AUTODIRS)\n" - makefile << "POFILES = AUTO\n" - makefile.close() - - $subdirs = true - end - - if $subdirs - makefile = File.new( "po/Makefile.am", File::CREAT | File::RDWR | File::TRUNC ) - makefile << "SUBDIRS = $(AUTODIRS)\n" - makefile.close() - else - puts "Removing po-subdirectory" - `rm -Rf po` - end - - `rm -rf l10n` -end - -puts "\n" - -puts "Removing svn-history files" -`find -name ".svn" | xargs rm -rf` - -Dir.chdir( "#{name}" ) - -`rm -rf debian` - -Dir.chdir( ".." ) # tdeedu -puts( "\n" ) - -`find | xargs touch` - - -puts "Generating Makefiles".center(40, " - ") -`make -f Makefile.cvs` -puts "done.\n" - -`rm -rf autom4te.cache` -`rm stamp-h.in` - - -puts "Compressing".center(40, " - ") -`mv * ..` -Dir.chdir( ".." ) -`rm -rf kde-common` -`rm -rf tdeedu` # after the moving of the directory this is empty -Dir.chdir( ".." ) # root folder -`tar -cf #{folder}.tar #{folder}` -`bzip2 #{folder}.tar` -`rm -rf #{folder}` -puts "done.\n" - - -ENV["UNSERMAKE"] = oldmake - -if dogpg == "yes" - puts "Signing with your GnuPG-key".center(40, " - ") - `gpg --detach-sign #{folder}.tar.bz2` -end - - -puts "\n" -puts "=====================================================" -puts "Congratulations :) #{name} #{version} tarball generated.\n" -puts "\n" -puts "MD5 checksum: " + `md5sum #{folder}.tar.bz2` -if dogpg == "yes" - puts "The user can verify this package with " - puts "\n" - puts "gpg --verify #{folder}.tar.bz2.sig #{folder}.tar.bz2" -end -puts "\n" -puts "\n" - - |