lib/xezat/command/validate.rb in xezat-0.2.1 vs lib/xezat/command/validate.rb in xezat-0.2.2

- old
+ new

@@ -1,10 +1,11 @@ # frozen_string_literal: true require 'net/http' require 'pkg-config' require 'uri' +require 'xezat/packages' require 'xezat/variables' module Xezat module Command class Validate @@ -16,20 +17,24 @@ end def execute Xezat.logger.debug('Start validating') vars = variables(@cygport) + pkgs = packages Xezat.logger.debug(' Validate .cygport') validate_cygport(@cygport) Xezat.logger.debug(' Validate category') validate_category(vars[:CATEGORY]) Xezat.logger.debug(' Validate homepage') validate_homepage(vars[:HOMEPAGE]) + Xezat.logger.debug(' Validate BUILD_REQUIRES') + validate_build_requires(vars[:BUILD_REQUIRES], pkgs) + Xezat.logger.debug(' Validate *.pc') validate_pkgconfig(vars) Xezat.logger.debug('End validating') end @@ -51,12 +56,29 @@ if code == '200' Xezat.logger.debug(" code = #{response.code}") else Xezat.logger.error(" code = #{response.code}") end + rescue OpenSSL::SSL::SSLError => e + raise e unless @options[:ignore] + + Xezat.logger.error(' Ignore SSLError') end + def validate_build_requires(build_requires, pkgs) + return if build_requires.nil? + + build_requires.split.each do |build_require| + build_require_pkg = pkgs[build_require.to_sym] + if build_require_pkg.nil? + Xezat.logger.error(" #{build_require} not found") + else + Xezat.logger.debug(" #{build_require_pkg}") + end + end + end + def validate_pkgconfig(variables) pkgconfig_path = File.join(variables[:D], 'usr', 'lib', 'pkgconfig') PKGConfig.add_path(pkgconfig_path) Dir.glob('*.pc', 0, base: pkgconfig_path).each do |pc| basename = File.basename(pc, '.pc') @@ -71,10 +93,10 @@ validate_libs(variables, libs) end end def validate_libs(variables, libs) - lib_dirs = [File.join(variables[:D], '/usr/lib'), '/usr/lib', '/usr/lib/w32api', '/usr/lib/gcc/x86_64-pc-cygwin/10'] + lib_dirs = [File.join(variables[:D], '/usr/lib'), '/usr/lib', '/usr/lib/w32api', '/usr/lib/gcc/x86_64-pc-cygwin/11'] libs.split do |option| if option.start_with?('-l') lib_name = option[2, 255] # Assume file length limit found = false lib_dirs.each do |dir|