/******************************************************************* * BuildSpec32File * * Build a Win32 C file from a spec file. */ void BuildSpec32File( DLLSPEC *spec ) { resolve_imports( spec ); output_standard_file_header(); output_module( spec ); output_stubs( spec ); output_exports( spec ); output_imports( spec ); if (is_undefined( "__wine_call_from_regs" )) output_asm_relays(); output_resources( spec ); output_gnu_stack_note(); }
/******************************************************************* * output_spec16_file * * Output the complete data for a spec 16-bit file. */ void output_spec16_file( DLLSPEC *spec16 ) { DLLSPEC *spec32 = alloc_dll_spec(); resolve_imports( spec16 ); add_16bit_exports( spec32, spec16 ); output_standard_file_header(); output_module( spec32 ); output_module16( spec16 ); output_stubs( spec16 ); output_exports( spec32 ); output_imports( spec16 ); if (is_undefined( "__wine_call_from_16" )) output_asm_relays16(); if (spec16->main_module) { output( "\n\t%s\n", get_asm_string_section() ); output( ".L__wine_spec_main_module:\n" ); output( "\t%s \"%s\"\n", get_asm_string_keyword(), spec16->main_module ); } output_gnu_stack_note(); free_dll_spec( spec32 ); output("%s:/*?*/\n", asm_name("_end")); }