Module: wine Branch: master Commit: f1ff3179aaf3beffcfcfc556ba03a09f29e30c34 URL: https://gitlab.winehq.org/wine/wine/-/commit/f1ff3179aaf3beffcfcfc556ba03a09...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Sep 5 13:07:18 2023 +0200
makedep: Make the spec file optional for data-only dlls.
---
dlls/activeds.tlb/activeds.tlb.spec | 1 - dlls/apisetschema/Makefile.in | 2 ++ dlls/icmp/Makefile.in | 2 ++ dlls/light.msstyles/light.msstyles.spec | 1 - dlls/lz32/Makefile.in | 4 +++- dlls/mferror/mferror.spec | 1 - dlls/mshtml.tlb/mshtml.tlb.spec | 1 - dlls/msimsg/msimsg.spec | 1 - dlls/normaliz/Makefile.in | 2 ++ dlls/security/Makefile.in | 2 ++ dlls/sfc/Makefile.in | 2 ++ dlls/shdoclc/shdoclc.spec | 1 - dlls/stdole2.tlb/stdole2.tlb.spec | 1 - dlls/stdole32.tlb/stdole32.tlb.spec | 1 - dlls/tzres/tzres.spec | 1 - dlls/usp10/Makefile.in | 2 ++ dlls/wmi/Makefile.in | 2 ++ tools/make_makefiles | 3 ++- tools/makedep.c | 18 ++++++++++++------ 19 files changed, 31 insertions(+), 17 deletions(-)
diff --git a/dlls/activeds.tlb/activeds.tlb.spec b/dlls/activeds.tlb/activeds.tlb.spec deleted file mode 100644 index b427b2913c6..00000000000 --- a/dlls/activeds.tlb/activeds.tlb.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported entry points diff --git a/dlls/apisetschema/Makefile.in b/dlls/apisetschema/Makefile.in index 5d0adf1f82d..3bc6935f940 100644 --- a/dlls/apisetschema/Makefile.in +++ b/dlls/apisetschema/Makefile.in @@ -1,3 +1,5 @@ MODULE = apisetschema.dll
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = apisetschema.spec diff --git a/dlls/icmp/Makefile.in b/dlls/icmp/Makefile.in index 93213ab130b..86398388d4e 100644 --- a/dlls/icmp/Makefile.in +++ b/dlls/icmp/Makefile.in @@ -1,3 +1,5 @@ MODULE = icmp.dll
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = icmp.spec diff --git a/dlls/light.msstyles/light.msstyles.spec b/dlls/light.msstyles/light.msstyles.spec deleted file mode 100644 index b427b2913c6..00000000000 --- a/dlls/light.msstyles/light.msstyles.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported entry points diff --git a/dlls/lz32/Makefile.in b/dlls/lz32/Makefile.in index d67f7d70fe8..69e1a94daf9 100644 --- a/dlls/lz32/Makefile.in +++ b/dlls/lz32/Makefile.in @@ -3,4 +3,6 @@ IMPORTLIB = lz32
EXTRADLLFLAGS = -Wb,--data-only
-RC_SRCS = version.rc +SOURCES = \ + lz32.spec \ + version.rc diff --git a/dlls/mferror/mferror.spec b/dlls/mferror/mferror.spec deleted file mode 100644 index 2792acf3607..00000000000 --- a/dlls/mferror/mferror.spec +++ /dev/null @@ -1 +0,0 @@ -# This is resource dll diff --git a/dlls/mshtml.tlb/mshtml.tlb.spec b/dlls/mshtml.tlb/mshtml.tlb.spec deleted file mode 100644 index b427b2913c6..00000000000 --- a/dlls/mshtml.tlb/mshtml.tlb.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported entry points diff --git a/dlls/msimsg/msimsg.spec b/dlls/msimsg/msimsg.spec deleted file mode 100644 index 1bb8bf6d7fd..00000000000 --- a/dlls/msimsg/msimsg.spec +++ /dev/null @@ -1 +0,0 @@ -# empty diff --git a/dlls/normaliz/Makefile.in b/dlls/normaliz/Makefile.in index a466e0ce7fc..4834502ee1d 100644 --- a/dlls/normaliz/Makefile.in +++ b/dlls/normaliz/Makefile.in @@ -2,3 +2,5 @@ MODULE = normaliz.dll IMPORTLIB = normaliz
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = normaliz.spec diff --git a/dlls/security/Makefile.in b/dlls/security/Makefile.in index ff4a5a7363a..ce96f8e1c52 100644 --- a/dlls/security/Makefile.in +++ b/dlls/security/Makefile.in @@ -2,3 +2,5 @@ MODULE = security.dll IMPORTS = secur32
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = security.spec diff --git a/dlls/sfc/Makefile.in b/dlls/sfc/Makefile.in index 1c8fe4f9b8c..14c2f34b0fa 100644 --- a/dlls/sfc/Makefile.in +++ b/dlls/sfc/Makefile.in @@ -2,3 +2,5 @@ MODULE = sfc.dll IMPORTLIB = sfc
EXTRADLLFLAGS = -Wb,--data-only -Wb,--prefer-native + +SOURCES = sfc.spec diff --git a/dlls/shdoclc/shdoclc.spec b/dlls/shdoclc/shdoclc.spec deleted file mode 100644 index 590a204a2b0..00000000000 --- a/dlls/shdoclc/shdoclc.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported functions diff --git a/dlls/stdole2.tlb/stdole2.tlb.spec b/dlls/stdole2.tlb/stdole2.tlb.spec deleted file mode 100644 index b427b2913c6..00000000000 --- a/dlls/stdole2.tlb/stdole2.tlb.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported entry points diff --git a/dlls/stdole32.tlb/stdole32.tlb.spec b/dlls/stdole32.tlb/stdole32.tlb.spec deleted file mode 100644 index b427b2913c6..00000000000 --- a/dlls/stdole32.tlb/stdole32.tlb.spec +++ /dev/null @@ -1 +0,0 @@ -# no exported entry points diff --git a/dlls/tzres/tzres.spec b/dlls/tzres/tzres.spec deleted file mode 100644 index 1126204203d..00000000000 --- a/dlls/tzres/tzres.spec +++ /dev/null @@ -1 +0,0 @@ -# nothing exported diff --git a/dlls/usp10/Makefile.in b/dlls/usp10/Makefile.in index 016891af651..0d8a865b9f0 100644 --- a/dlls/usp10/Makefile.in +++ b/dlls/usp10/Makefile.in @@ -2,3 +2,5 @@ MODULE = usp10.dll IMPORTLIB = usp10
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = usp10.spec diff --git a/dlls/wmi/Makefile.in b/dlls/wmi/Makefile.in index de7719654ff..fde1177f9a5 100644 --- a/dlls/wmi/Makefile.in +++ b/dlls/wmi/Makefile.in @@ -2,3 +2,5 @@ MODULE = wmi.dll IMPORTS = advapi32
EXTRADLLFLAGS = -Wb,--data-only + +SOURCES = wmi.spec diff --git a/tools/make_makefiles b/tools/make_makefiles index 13252ef8232..7bb87559da7 100755 --- a/tools/make_makefiles +++ b/tools/make_makefiles @@ -381,7 +381,8 @@ sub assign_sources_to_makefiles(@) } elsif ($name =~ /.spec$/) { - next unless defined ${$make}{"TESTDLL"}; + my $dllflags = ${$make}{"EXTRADLLFLAGS"} || ""; + next unless defined ${$make}{"TESTDLL"} || ($dllflags =~ /-Wb,--data-only/); } elsif ($name =~ /.nls$/) { diff --git a/tools/makedep.c b/tools/makedep.c index 5939e0e6798..1ac2749c022 100644 --- a/tools/makedep.c +++ b/tools/makedep.c @@ -3351,7 +3351,16 @@ static void output_module( struct makefile *make, unsigned int arch )
if (make->disabled[arch]) return;
- if (!make->is_exe) spec_file = src_dir_path( make, replace_extension( make->module, ".dll", ".spec" )); + if (!make->is_exe) + { + if (make->data_only) + { + /* spec file is optional */ + struct incl_file *spec = find_src_file( make, replace_extension( make->module, ".dll", ".spec" )); + if (spec) spec_file = spec->filename; + } + else spec_file = src_dir_path( make, replace_extension( make->module, ".dll", ".spec" )); + }
if (!make->data_only) { @@ -3394,11 +3403,8 @@ static void output_module( struct makefile *make, unsigned int arch ) output( "\n" ); output_winegcc_command( make, arch ); if (arch) output_filename( "-Wl,--wine-builtin" ); - if (spec_file) - { - output_filename( "-shared" ); - output_filename( spec_file ); - } + if (!make->is_exe) output_filename( "-shared" ); + if (spec_file) output_filename( spec_file ); output_filenames( make->extradllflags ); if (arch) output_filenames( get_expanded_arch_var_array( make, "EXTRADLLFLAGS", arch )); output_filenames_obj_dir( make, make->object_files[arch] );