module CmdLine
Module with overrideable command line functions
Public Class Methods
compile_base_cmdline(mode, src)
click to toggle source
# File lib/akro.rb, line 135 def CmdLine.compile_base_cmdline(mode, src) per_file_flags = $PER_FILE_COMPILE_FLAGS.call(mode, src) if per_file_flags.size() > 0 per_file_flags = " " + per_file_flags end "#{$COMPILER_PREFIX}#{$COMPILER} #{$COMPILE_FLAGS} #{$MODE_COMPILE_FLAGS[mode]}#{per_file_flags}" end
compile_cmdline(mode, src, obj)
click to toggle source
# File lib/akro.rb, line 145 def CmdLine.compile_cmdline(mode, src, obj) "#{CmdLine.compile_base_cmdline(mode, src)} -c #{src} -o #{obj}" end
dependency_cmdline(mode, src)
click to toggle source
# File lib/akro.rb, line 142 def CmdLine.dependency_cmdline(mode, src) "#{CmdLine.compile_base_cmdline(mode, src)} -M #{src}" end
dynamic_lib_cmdline(mode, objs, additional_params, bin)
click to toggle source
# File lib/akro.rb, line 156 def CmdLine.dynamic_lib_cmdline(mode, objs, additional_params, bin) if !additional_params.nil? if additional_params.kind_of?(Array) extra_params = " " + objs.join(" ") elsif additional_params.respond_to?(:to_str) extra_params = " " + additional_params.to_str else raise "Additional params to a dynamic library must be either a string or an array of strings" end else extra_params = "" end soname = if bin.include?("/") then FileMapper.strip_mode(bin) else bin end "#{$LINKER_PREFIX}#{$COMPILER} -shared #{$COMPILE_FLAGS} #{$MODE_COMPILE_FLAGS[mode]} -Wl,-soname,#{soname} -o #{bin} #{objs.join(' ')}#{extra_params}" end
link_cmdline(mode, objs, bin)
click to toggle source
# File lib/akro.rb, line 148 def CmdLine.link_cmdline(mode, objs, bin) nomodebin = FileMapper.strip_mode(bin) per_file_flags = if $BIN_EXTRA_FLAGS.has_key?(nomodebin) then " " + $BIN_EXTRA_FLAGS[nomodebin] else "" end "#{$LINKER_PREFIX}#{$LINKER} #{$LINK_FLAGS} #{objs.join(' ')} #{$ADDITIONAL_LINK_FLAGS}#{per_file_flags} #{$MODE_LINK_FLAGS[mode]} -o #{bin}" end
static_lib_cmdline(objs, bin)
click to toggle source
# File lib/akro.rb, line 153 def CmdLine.static_lib_cmdline(objs, bin) "#{$AR} rcs #{bin} #{objs.join(' ')}" end