@@ -649,16 +649,18 @@ def _files_match_settings(conanfile, folder, output):
649
649
mingw_extensions = ["a" , "a.dll" , "dll" , "exe" , "sh" ]
650
650
# The "" extension is allowed to look for possible executables
651
651
linux_extensions = ["a" , "so" , "sh" , "" ]
652
+ freebsd_extensions = ["a" , "so" , "sh" , "" ]
652
653
macos_extensions = ["a" , "dylib" , "" ]
653
654
654
655
has_header = _get_files_with_extensions (folder , header_extensions )
655
656
has_visual = _get_files_with_extensions (folder , visual_extensions )
656
657
has_mingw = _get_files_with_extensions (folder , mingw_extensions )
657
658
has_linux = _get_files_with_extensions (folder , linux_extensions )
659
+ has_freebsd = _get_files_with_extensions (folder , freebsd_extensions )
658
660
has_macos = _get_files_with_extensions (folder , macos_extensions )
659
661
os = _get_os (conanfile )
660
662
661
- if not has_header and not has_visual and not has_mingw and not has_linux and not has_macos :
663
+ if not has_header and not has_visual and not has_mingw and not has_linux and not has_freebsd and not has_macos :
662
664
output .error ("Empty package" )
663
665
return False
664
666
if _is_recipe_header_only (conanfile ):
@@ -686,18 +688,25 @@ def _files_match_settings(conanfile, folder, output):
686
688
output .error ("Package for Linux does not contain artifacts with these extensions: "
687
689
"%s" % linux_extensions )
688
690
return has_linux
691
+ if os == "FreeBSD" :
692
+ if not has_freebsd :
693
+ output .error ("Package for FreeBSD does not contain artifacts with these extensions: "
694
+ "%s" % freebsd_extensions )
695
+ return has_freebsd
689
696
if os == "Macos" :
690
697
if not has_macos :
691
698
output .error ("Package for Macos does not contain artifacts with these extensions: "
692
699
"%s" % macos_extensions )
693
700
return has_macos
694
701
if os is None :
695
- if not has_header and (has_visual or has_mingw or has_linux or has_macos ):
702
+ if not has_header and (has_visual or has_mingw or has_linux or has_freebsd or has_macos ):
696
703
output .error ("Package for Header Only does not contain artifacts with these extensions: "
697
704
"%s" % header_extensions )
698
705
return False
699
706
else :
700
707
return True
708
+
709
+ output .error ("OS %s might not be supported" % os )
701
710
return False
702
711
703
712
0 commit comments