From e3fa7d216fe2f24015681c913fffd4dd92cc19ae Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Sun, 20 Nov 2022 12:44:28 +0100 Subject: Split dmd and d-tools update functions --- Rakefile | 59 ++++------------------------------------------------------- 1 file changed, 4 insertions(+), 55 deletions(-) (limited to 'Rakefile') diff --git a/Rakefile b/Rakefile index d25e1c7..eb45a33 100644 --- a/Rakefile +++ b/Rakefile @@ -9,68 +9,17 @@ require 'net/http' require_relative 'config/config' require_relative 'lib/package' require_relative 'lib/download' +require_relative 'lib/dmd_tools' task :dmd, [:version] do |_, arguments| raise 'Version is not specified.' unless arguments.key? :version - dub_version = '1.29.0' + dub_version = '1.30.0' dscanner_version = '0.12.2' dcd_version = '0.13.6' - tarball_name = "dmd.#{arguments[:version]}.linux.tar.xz" - uri = URI "http://downloads.dlang.org/releases/2.x/#{arguments[:version]}/#{tarball_name}" - checksum = { - dmd: download(uri, "slackbuilds/development/dmd/#{tarball_name}").hexdigest - } - - package = Package.new 'development/dmd', - version: arguments[:version], - homepage: 'https://dlang.org' - - write_info package, - downloads: [Download.new(uri.to_s, checksum[:dmd])] - - update_slackbuild_version 'development/dmd', package.version - commit 'development/dmd', version - - uri = URI "https://codeload.github.com/dlang/tools/tar.gz/v#{package.version}" - checksum[:tools] = download_and_deploy uri, - "development/d-tools/tools-#{package.version}.tar.gz" - - uri = URI "https://codeload.github.com/dlang/dub/tar.gz/v#{dub_version}" - checksum[:dub] = download_and_deploy uri, - "development/d-tools/dub-#{dub_version}.tar.gz" - - checksum[:dscanner] = clone 'https://github.com/dlang-community/D-Scanner.git', - "development/d-tools/D-Scanner-#{dscanner_version}.tar.xz" - checksum[:dcd] = clone 'https://github.com/dlang-community/DCD.git', - "development/d-tools/DCD-#{dcd_version}.tar.xz" - - package = Package.new 'development/d-tools', - version: arguments[:version], - homepage: 'https://dlang.org', - requires: ['dmd'] - - write_info package, - downloads: [ - Download.new(hosted_sources("/d-tools/dub-#{dub_version}.tar.gz"), checksum[:dub]), - Download.new(hosted_sources("/d-tools/tools-#{package.version}.tar.gz"), checksum[:tools]), - Download.new(hosted_sources("/d-tools/D-Scanner-#{dscanner_version}.tar.xz"), checksum[:dscanner]), - Download.new(hosted_sources("/d-tools/DCD-#{dcd_version}.tar.xz"), checksum[:dcd]) - ] - - slackbuild_filename = 'slackbuilds/development/d-tools/d-tools.SlackBuild' - slackbuild_contents = File.read(slackbuild_filename) - .gsub(/^DUB_VERSION=\${DUB_VERSION:-.+/, - "DUB_VERSION=${DUB_VERSION:-#{dub_version}}") - .gsub(/^DSCANNER_VERSION=\${DSCANNER_VERSION:-.+/, - "DSCANNER_VERSION=${DSCANNER_VERSION:-#{dscanner_version}}") - .gsub(/^DCD_VERSION=\${DCD_VERSION:-.+/, - "DCD_VERSION=${DCD_VERSION:-#{dcd_version}}") - File.open(slackbuild_filename, 'w') { |file| file.puts slackbuild_contents } - - update_slackbuild_version 'development/d-tools', package.version - commit 'development/d-tools', package.version + SlackBuilder::DmdTools.update_dmd arguments[:version] + SlackBuilder::DmdTools.update_tools arguments[:version], dub_version, dscanner_version, dcd_version end task :composer, [:version] do |_, arguments| -- cgit v1.2.3