Commit dbe93c8a authored by Alexandre Julliard's avatar Alexandre Julliard

makedep: Remove support for "hybrid" Unix libraries.

parent a72c7bbc
...@@ -198,7 +198,6 @@ struct makefile ...@@ -198,7 +198,6 @@ struct makefile
const char *staticlib; const char *staticlib;
const char *importlib; const char *importlib;
const char *unixlib; const char *unixlib;
int native_unix_lib;
int use_msvcrt; int use_msvcrt;
int data_only; int data_only;
int is_win16; int is_win16;
...@@ -2075,7 +2074,7 @@ static const char *get_static_lib( const struct makefile *make, const char *name ...@@ -2075,7 +2074,7 @@ static const char *get_static_lib( const struct makefile *make, const char *name
*/ */
static const char *get_native_unix_lib( const struct makefile *make, const char *name ) static const char *get_native_unix_lib( const struct makefile *make, const char *name )
{ {
if (!make->native_unix_lib) return NULL; if (!make->unixlib) return NULL;
if (strncmp( make->unixlib, name, strlen(name) )) return NULL; if (strncmp( make->unixlib, name, strlen(name) )) return NULL;
if (make->unixlib[strlen(name)] != '.') return NULL; if (make->unixlib[strlen(name)] != '.') return NULL;
return obj_dir_path( make, make->unixlib ); return obj_dir_path( make, make->unixlib );
...@@ -3258,23 +3257,6 @@ static const struct ...@@ -3258,23 +3257,6 @@ static const struct
/******************************************************************* /*******************************************************************
* get_unix_lib_name
*/
static char *get_unix_lib_name( struct makefile *make )
{
struct incl_file *source;
if (!*dll_ext) return NULL;
LIST_FOR_EACH_ENTRY( source, &make->sources, struct incl_file, entry )
{
if (!(source->file->flags & FLAG_C_UNIX)) continue;
return strmake( "%s%s", get_base_name( make->module ), dll_ext );
}
return NULL;
}
/*******************************************************************
* output_fake_module * output_fake_module
*/ */
static void output_fake_module( struct makefile *make ) static void output_fake_module( struct makefile *make )
...@@ -3424,49 +3406,19 @@ static void output_import_lib( struct makefile *make, unsigned int arch ) ...@@ -3424,49 +3406,19 @@ static void output_import_lib( struct makefile *make, unsigned int arch )
*/ */
static void output_unix_lib( struct makefile *make ) static void output_unix_lib( struct makefile *make )
{ {
struct strarray unix_libs = empty_strarray;
struct strarray unix_deps = empty_strarray; struct strarray unix_deps = empty_strarray;
char *spec_file = src_dir_path( make, replace_extension( make->module, ".dll", ".spec" )); struct strarray unix_libs = add_unix_libraries( make, &unix_deps );
unsigned int arch = 0; /* unix libs are always native */ unsigned int arch = 0; /* unix libs are always native */
if (!make->native_unix_lib)
{
struct strarray unix_imports = empty_strarray;
strarray_add( &unix_imports, "ntdll" );
strarray_add( &unix_deps, obj_dir_path( top_makefile, "dlls/ntdll/ntdll.so" ));
strarray_add( &unix_imports, "winecrt0" );
if (spec_file) strarray_add( &unix_deps, spec_file );
strarray_addall( &unix_libs, add_import_libs( make, &unix_deps, unix_imports, IMPORT_TYPE_DIRECT, 0 ));
strarray_addall( &unix_libs, get_expanded_make_var_array( make, "UNIX_LIBS" ));
strarray_addall( &unix_libs, libs );
}
else unix_libs = add_unix_libraries( make, &unix_deps );
strarray_add( &make->all_targets[arch], make->unixlib ); strarray_add( &make->all_targets[arch], make->unixlib );
add_install_rule( make, make->module, arch, make->unixlib, add_install_rule( make, make->module, arch, make->unixlib,
strmake( "p%s%s", arch_install_dirs[arch], make->unixlib )); strmake( "p%s%s", arch_install_dirs[arch], make->unixlib ));
output( "%s:", obj_dir_path( make, make->unixlib )); output( "%s:", obj_dir_path( make, make->unixlib ));
output_filenames_obj_dir( make, make->unixobj_files ); output_filenames_obj_dir( make, make->unixobj_files );
output_filenames( unix_deps ); output_filenames( unix_deps );
output( "\n" );
if (make->native_unix_lib) output( "\t%s$(CC) -o $@", cmd_prefix( "CCLD" ));
{ output_filenames( get_expanded_make_var_array( make, "UNIXLDFLAGS" ));
output( "\n" );
output( "\t%s$(CC) -o $@", cmd_prefix( "CCLD" ));
output_filenames( get_expanded_make_var_array( make, "UNIXLDFLAGS" ));
}
else
{
output_filename( tools_path( make, "winebuild" ));
output_filename( tools_path( make, "winegcc" ));
output( "\n" );
output_winegcc_command( make, 0 );
output_filename( "-munix" );
output_filename( "-shared" );
if (spec_file) output_filename( spec_file );
}
output_filenames_obj_dir( make, make->unixobj_files ); output_filenames_obj_dir( make, make->unixobj_files );
output_filenames( unix_libs ); output_filenames( unix_libs );
output_filename( "$(LDFLAGS)" ); output_filename( "$(LDFLAGS)" );
...@@ -4297,7 +4249,6 @@ static void load_sources( struct makefile *make ) ...@@ -4297,7 +4249,6 @@ static void load_sources( struct makefile *make )
!strarray_exists( &make->extradllflags, "-mcygwin" ); !strarray_exists( &make->extradllflags, "-mcygwin" );
make->is_exe = strarray_exists( &make->extradllflags, "-mconsole" ) || make->is_exe = strarray_exists( &make->extradllflags, "-mconsole" ) ||
strarray_exists( &make->extradllflags, "-mwindows" ); strarray_exists( &make->extradllflags, "-mwindows" );
make->native_unix_lib = !!make->unixlib;
if (make->use_msvcrt) strarray_add_uniq( &make->extradllflags, "-mno-cygwin" ); if (make->use_msvcrt) strarray_add_uniq( &make->extradllflags, "-mno-cygwin" );
...@@ -4356,7 +4307,6 @@ static void load_sources( struct makefile *make ) ...@@ -4356,7 +4307,6 @@ static void load_sources( struct makefile *make )
} }
add_generated_sources( make ); add_generated_sources( make );
if (!make->unixlib) make->unixlib = get_unix_lib_name( make );
if (make->use_msvcrt) strarray_add( &make->define_args, get_crt_define( make )); if (make->use_msvcrt) strarray_add( &make->define_args, get_crt_define( make ));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment