Sha256: 86d89c0e54f4532215dcb2e23deab81a4488a8cbcddc70f00f74594bcc09dfae

Contents?: true

Size: 1.27 KB

Versions: 7

Compression:

Stored size: 1.27 KB

Contents

require 'ceedling/constants'
require 'ceedling/file_path_utils'


desc "Build release target."
task RELEASE_SYM => [:directories] do
  header = "Release build '#{File.basename(PROJECT_RELEASE_BUILD_TARGET)}'"
  @ceedling[:streaminator].stdout_puts("\n\n#{header}\n#{'-' * header.length}")  
  
  begin
    @ceedling[:plugin_manager].pre_release

    core_objects  = []
    extra_objects = @ceedling[:file_path_utils].form_release_build_c_objects_filelist( COLLECTION_RELEASE_ARTIFACT_EXTRA_LINK_OBJECTS )

    @ceedling[:project_config_manager].process_release_config_change
    core_objects.concat( @ceedling[:release_invoker].setup_and_invoke_c_objects( COLLECTION_ALL_SOURCE ) )
  
    # if assembler use isn't enabled, COLLECTION_ALL_ASSEMBLY is empty array & nothing happens
    core_objects.concat( @ceedling[:release_invoker].setup_and_invoke_asm_objects( COLLECTION_ALL_ASSEMBLY ) )
  
    # if we're using libraries, we need to add those to our collection as well
    library_objects = (defined? LIBRARIES_RELEASE && !LIBRARIES_RELEASE.empty?) ? LIBRARIES_RELEASE.flatten.compact : []
    file( PROJECT_RELEASE_BUILD_TARGET => (core_objects + extra_objects + library_objects) )
    Rake::Task[PROJECT_RELEASE_BUILD_TARGET].invoke
  ensure
    @ceedling[:plugin_manager].post_release  
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ceedling-0.31.1 lib/ceedling/tasks_release.rake
ceedling-0.31.0 lib/ceedling/tasks_release.rake
ceedling-0.30.0 lib/ceedling/tasks_release.rake
ceedling-0.28.3 lib/ceedling/tasks_release.rake
ceedling-0.28.2 lib/ceedling/tasks_release.rake
ceedling-0.28.1 lib/ceedling/tasks_release.rake
ceedling-0.27.0 lib/ceedling/tasks_release.rake