Hi

Currently mingw-filesystem contains

# (rpm -ql mingw32-crt | grep '\.a$' | while read f ; do i686-w64-mingw32-dlltool   -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw32
Source20:       standard-dlls-mingw32
# (rpm -ql mingw64-crt | grep '\.a$' | while read f ; do x86_64-w64-mingw32-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw64
Source21:       standard-dlls-mingw64
# (rpm -ql ucrt64-crt | grep '\.a$' | while read f ; do x86_64-w64-mingw32ucrt-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-ucrt64
Source22:       standard-dlls-ucrt64

and

%package -n mingw32-filesystem
[...]
Provides:       %(sed "s/\(.*\)/mingw32(\1) /g" %{SOURCE20} | tr "\n" " ")
Provides:       mingw32(mscoree.dll)

%package -n mingw64-filesystem
[...]
Provides:       %(sed "s/\(.*\)/mingw64(\1) /g" %{SOURCE21} | tr "\n" " ")
Provides:       mingw64(mscoree.dll)

%package -n ucrt64-filesystem
[...]
Provides:       %(sed "s/\(.*\)/ucrt64(\1) /g" %{SOURCE22} | tr "\n" " ")
Provides:       ucrt64(mscoree.dll)


I wonder whether these standard DLL provides should be provided by mingw32-crt, mingw64 and ucrt64-crt instead? The provided DLLs depend on the mingw-w64 version (indeed I just had to update them for mingw-w64-10.0.0), and IMO it would be better to keep mingw-filesystem independent from the mingw-w64 version, i.e. to allow adding macros etc and allow simple git merges to update also the other branches. I'd proceed with removing these from mingw-filesystem, and adding to mingw-crt.spec:

# Steps:
# - Perform (scratch) build with bootstrap=1
# - Update the standard-dlls-xxx files as documented below, and rebuild with bootstrap=0
%global bootstrap 0

%if 0%{?bootstrap:1}
# (rpm -ql mingw32-crt | grep '\.a$' | while read f ; do i686-w64-mingw32-dlltool   -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw32
Source1:       standard-dlls-mingw32
# (rpm -ql mingw64-crt | grep '\.a$' | while read f ; do x86_64-w64-mingw32-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw64
Source2:       standard-dlls-mingw64
# (rpm -ql ucrt64-crt | grep '\.a$' | while read f ; do x86_64-w64-mingw32ucrt-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-ucrt64
Source3:       standard-dlls-ucrt64
%endif

%package -n mingw32-crt
[...]
%if 0%{?bootstrap:1}
Provides:       %(sed "s/\(.*\)/mingw32(\1) /g" %{SOURCE1} | tr "\n" " ")
Provides:       mingw32(mscoree.dll)
%endif

%package -n mingw64-crt
[...]
%if 0%{?bootstrap:1}
Provides:       %(sed "s/\(.*\)/mingw64(\1) /g" %{SOURCE2} | tr "\n" " ")
Provides:       mingw64(mscoree.dll)
%endif

%package -n ucrt64-crt
[...]
%if 0%{?bootstrap:1}
Provides:       %(sed "s/\(.*\)/ucrt64(\1) /g" %{SOURCE3} | tr "\n" " ")
Provides:       ucrt64(mscoree.dll)
%endif


Any comments/objections?

Thanks
Sandro
_______________________________________________
mingw mailing list -- mingw@lists.fedoraproject.org
To unsubscribe send an email to mingw-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/mingw@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to