X-Git-Url: https://git.saurik.com/apple/ld64.git/blobdiff_plain/f410558f5d60087e4c310119a1751b437121c3b9..e456bf1059cf7e6b8b71545d1b2f2092b55a9684:/src/ld/parsers/generic_dylib_file.hpp diff --git a/src/ld/parsers/generic_dylib_file.hpp b/src/ld/parsers/generic_dylib_file.hpp index 0b781be..baf09f9 100644 --- a/src/ld/parsers/generic_dylib_file.hpp +++ b/src/ld/parsers/generic_dylib_file.hpp @@ -123,17 +123,14 @@ template class File : public ld::dylib::File { public: - File(const char* path, time_t mTime, ld::File::Ordinal ordinal, Options::Platform platform, - uint32_t linkMinOSVersion, bool allowWeakImports, bool linkingFlatNamespace, bool hoistImplicitPublicDylibs, + File(const char* path, time_t mTime, ld::File::Ordinal ordinal, const ld::VersionSet& platforms, + bool allowWeakImports, bool linkingFlatNamespace, bool hoistImplicitPublicDylibs, bool allowSimToMacOSX, bool addVers); // overrides of ld::File virtual bool forEachAtom(ld::File::AtomHandler&) const override final; virtual bool justInTimeforEachAtom(const char* name, ld::File::AtomHandler&) const override final; - virtual ld::File::ObjcConstraint objCConstraint() const override final { return _objcConstraint; } virtual uint8_t swiftVersion() const override final { return _swiftVersion; } - virtual uint32_t minOSVersion() const override final { return _minVersionInDylib; } - virtual uint32_t platform() const override final { return _platformInDylib; } virtual ld::Bitcode* getBitcode() const override final { return _bitcode.get(); } @@ -207,11 +204,7 @@ protected: std::vector _rpaths; const char* _parentUmbrella; std::unique_ptr _bitcode; - const Options::Platform _platform; - ld::File::ObjcConstraint _objcConstraint; - const uint32_t _linkMinOSVersion; - uint32_t _minVersionInDylib; - uint32_t _platformInDylib; + ld::VersionSet _platforms; uint8_t _swiftVersion; bool _wrongOS; bool _linkingFlat; @@ -223,7 +216,7 @@ protected: bool _deadStrippable; bool _hasPublicInstallName; bool _appExtensionSafe; - const bool _allowWeakImports; + const bool _allowWeakImports; const bool _allowSimToMacOSXLinking; const bool _addVersionLoadCommand; @@ -234,8 +227,8 @@ template bool File::_s_logHashtable = false; template -File::File(const char* path, time_t mTime, ld::File::Ordinal ord, Options::Platform platform, - uint32_t linkMinOSVersion, bool allowWeakImports, bool linkingFlatNamespace, +File::File(const char* path, time_t mTime, ld::File::Ordinal ord, const ld::VersionSet& platforms, + bool allowWeakImports, bool linkingFlatNamespace, bool hoistImplicitPublicDylibs, bool allowSimToMacOSX, bool addVers) : ld::dylib::File(path, mTime, ord), @@ -245,11 +238,7 @@ File::File(const char* path, time_t mTime, ld::File::Ordinal ord, Options::P _indirectDylibsProcessed(false), _importAtom(nullptr), _parentUmbrella(nullptr), - _platform(platform), - _objcConstraint(ld::File::objcConstraintNone), - _linkMinOSVersion(linkMinOSVersion), - _minVersionInDylib(0), - _platformInDylib(Options::kPlatformUnknown), + _platforms(platforms), _swiftVersion(0), _wrongOS(false), _linkingFlat(linkingFlatNamespace), @@ -261,7 +250,7 @@ File::File(const char* path, time_t mTime, ld::File::Ordinal ord, Options::P _deadStrippable(false), _hasPublicInstallName(false), _appExtensionSafe(false), - _allowWeakImports(allowWeakImports), + _allowWeakImports(allowWeakImports), _allowSimToMacOSXLinking(allowSimToMacOSX), _addVersionLoadCommand(addVers) {