@@ -45,8 +45,10 @@ def generate(self):
4545 "boost_thread*" ],
4646 "thrift" : ["thrift" , "thriftd" ],
4747 }
48- for req , dep in self .dependencies .items ():
49- self ._import_dynamic_libs (dep , dldir , dependency_libs .get (req .ref .name , ["*" ]))
48+ licensedir = os .path .join (self .build_folder , "dist" , "doc" , "licenses" )
49+ for dep in self .dependencies .host .values ():
50+ self ._import_dynamic_libs (dep , dldir , dependency_libs .get (dep .ref .name , ["*" ]))
51+ self ._import_license (dep , licensedir )
5052 if self .dependencies ["libcosim" ].options .proxyfmu :
5153 self ._import_executables (self .dependencies ["proxyfmu" ], bindir , ["*" ])
5254
@@ -74,6 +76,22 @@ def _import_executables(self, dependency, target_dir, patterns=["*"]):
7476 files = copy (self , patternx , bindir , target_dir , keep_path = False )
7577 self ._update_rpath (files , "$ORIGIN/../lib" )
7678
79+ def _import_license (self , dependency , licenses_dir ):
80+ src_licenses_dir = os .path .join (dependency .package_folder , "licenses" )
81+ tgt_licenses_dir = os .path .join (licenses_dir , dependency .ref .name )
82+ if os .path .isdir (src_licenses_dir ):
83+ # Copy the full contents of '<package_dir>/licenses/' if it exists,
84+ # which it does for virtually all conan-center packages.
85+ copy (self , "*" , src_licenses_dir , tgt_licenses_dir )
86+ else :
87+ # Copy everything that looks like it might contain license and
88+ # copyright information.
89+ copy (self , "*licen?e*" , dependency .package_folder , tgt_licenses_dir , keep_path = False )
90+ copy (self , "*copying*" , dependency .package_folder , tgt_licenses_dir , keep_path = False )
91+ copy (self , "*notice*" , dependency .package_folder , tgt_licenses_dir , keep_path = False )
92+ copy (self , "*authors*" , dependency .package_folder , tgt_licenses_dir , keep_path = False )
93+ copy (self , "*copyright*" , dependency .package_folder , tgt_licenses_dir , keep_path = False )
94+
7795 def _update_rpath (self , files , new_rpath ):
7896 if files and self .settings .os == "Linux" :
7997 with VirtualBuildEnv (self ).environment ().vars (self ).apply ():
0 commit comments