diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2019-10-16 13:12:35 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2019-10-16 13:12:35 -0400 |
| commit | 10f6176f3dea426d97b19e7d890947b5e07346af (patch) | |
| tree | 6b18007e03fa1c8c1098faa60dda6cbf7a9da4b4 | |
| parent | 5bfea3f1ea4b5c81321583af7aa7549e5a81cf3c (diff) | |
| download | zig-10f6176f3dea426d97b19e7d890947b5e07346af.tar.gz zig-10f6176f3dea426d97b19e7d890947b5e07346af.zip | |
only look for .defs when needed; remove samsrv.dll cross compiling support
previously zig would look for all the .defs even when not needed,
wasting time. also, we only had samsrv definitions for some architectures.
remove cross compiling support for this.
| -rw-r--r-- | lib/libc/mingw/lib64/samsrv.def | 170 | ||||
| -rw-r--r-- | lib/libc/mingw/libarm32/samsrv.def | 328 | ||||
| -rw-r--r-- | src/link.cpp | 21 |
3 files changed, 10 insertions, 509 deletions
diff --git a/lib/libc/mingw/lib64/samsrv.def b/lib/libc/mingw/lib64/samsrv.def deleted file mode 100644 index 640963d2c6..0000000000 --- a/lib/libc/mingw/lib64/samsrv.def +++ /dev/null @@ -1,170 +0,0 @@ -; -; Exports of file SAMSRV.dll -; -; Autogenerated by gen_exportdef -; Written by Kai Tietz, 2007 -; -LIBRARY SAMSRV.dll -EXPORTS -SamIAccountRestrictions -SamIAddDSNameToAlias -SamIAddDSNameToGroup -SamIAmIGC -SamIChangePasswordForeignUser -SamIChangePasswordForeignUser2 -SamIConnect -SamICreateAccountByRid -SamIDemote -SamIDemoteUndo -SamIDoFSMORoleChange -SamIDsCreateObjectInDomain -SamIDsSetObjectInformation -SamIEnumerateAccountRids -SamIEnumerateInterdomainTrustAccountsForUpgrade -SamIFloatingSingleMasterOpEx -SamIFreeSidAndAttributesList -SamIFreeSidArray -SamIFreeVoid -SamIFree_SAMPR_ALIAS_INFO_BUFFER -SamIFree_SAMPR_DISPLAY_INFO_BUFFER -SamIFree_SAMPR_DOMAIN_INFO_BUFFER -SamIFree_SAMPR_ENUMERATION_BUFFER -SamIFree_SAMPR_GET_GROUPS_BUFFER -SamIFree_SAMPR_GET_MEMBERS_BUFFER -SamIFree_SAMPR_GROUP_INFO_BUFFER -SamIFree_SAMPR_PSID_ARRAY -SamIFree_SAMPR_RETURNED_USTRING_ARRAY -SamIFree_SAMPR_SR_SECURITY_DESCRIPTOR -SamIFree_SAMPR_ULONG_ARRAY -SamIFree_SAMPR_USER_INFO_BUFFER -SamIFree_UserInternal6Information -SamIGCLookupNames -SamIGCLookupSids -SamIGetAliasMembership -SamIGetBootKeyInformation -SamIGetDefaultAdministratorName -SamIGetDefaultComputersContainer -SamIGetFixedAttributes -SamIGetInterdomainTrustAccountPasswordsForUpgrade -SamIGetPrivateData -SamIGetResourceGroupMembershipsTransitive -SamIGetSerialNumberDomain -SamIGetUserLogonInformation -SamIGetUserLogonInformation2 -SamIGetUserLogonInformationEx -SamIHandleObjectUpdate -SamIImpersonateNullSession -SamIIncrementPerformanceCounter -SamIInitialize -SamIIsAttributeProtected -SamIIsDownlevelDcUpgrade -SamIIsExtendedSidMode -SamIIsRebootAfterPromotion -SamIIsSetupInProgress -SamILoadDownlevelDatabase -SamILoopbackConnect -SamIMixedDomain -SamIMixedDomain2 -SamINT4UpgradeInProgress -SamINetLogonPing -SamINotifyDelta -SamINotifyRoleChange -SamINotifyServerDelta -SamIOpenAccount -SamIOpenUserByAlternateId -SamIPromote -SamIPromoteUndo -SamIQueryServerRole -SamIQueryServerRole2 -SamIRemoveDSNameFromAlias -SamIRemoveDSNameFromGroup -SamIReplaceDownlevelDatabase -SamIResetBadPwdCountOnPdc -SamIRetrievePrimaryCredentials -SamIRevertNullSession -SamISameSite -SamISetAuditingInformation -SamISetMixedDomainFlag -SamISetPasswordForeignUser -SamISetPasswordForeignUser2 -SamISetPasswordInfoOnPdc -SamISetPrivateData -SamISetSerialNumberDomain -SamIStorePrimaryCredentials -SamIUPNFromUserHandle -SamIUnLoadDownlevelDatabase -SamIUpdateLogonStatistics -SampAbortSingleLoopbackTask -SampAccountControlToFlags -SampAcquireSamLockExclusive -SampAcquireWriteLock -SampCommitBufferedWrites -SampConvertNt4SdToNt5Sd -SampDsChangePasswordUser -SampFlagsToAccountControl -SampGetDefaultSecurityDescriptorForClass -SampGetSerialNumberDomain2 -SampInitializeRegistry -SampInitializeSdConversion -SampInvalidateDomainCache -SampInvalidateRidRange -SampIsAuditingEnabled -SampNetLogonNotificationRequired -SampNotifyAuditChange -SampNotifyReplicatedInChange -SampProcessSingleLoopbackTask -SampReleaseSamLockExclusive -SampReleaseWriteLock -SampRtlConvertUlongToUnicodeString -SampSetSerialNumberDomain2 -SampUsingDsData -SampWriteGroupType -SamrAddMemberToAlias -SamrAddMemberToGroup -SamrAddMultipleMembersToAlias -SamrChangePasswordUser -SamrCloseHandle -SamrCreateAliasInDomain -SamrCreateGroupInDomain -SamrCreateUser2InDomain -SamrCreateUserInDomain -SamrDeleteAlias -SamrDeleteGroup -SamrDeleteUser -SamrEnumerateAliasesInDomain -SamrEnumerateDomainsInSamServer -SamrEnumerateGroupsInDomain -SamrEnumerateUsersInDomain -SamrGetAliasMembership -SamrGetGroupsForUser -SamrGetMembersInAlias -SamrGetMembersInGroup -SamrGetUserDomainPasswordInformation -SamrLookupDomainInSamServer -SamrLookupIdsInDomain -SamrLookupNamesInDomain -SamrOpenAlias -SamrOpenDomain -SamrOpenGroup -SamrOpenUser -SamrQueryDisplayInformation -SamrQueryInformationAlias -SamrQueryInformationDomain -SamrQueryInformationGroup -SamrQueryInformationUser -SamrQuerySecurityObject -SamrRemoveMemberFromAlias -SamrRemoveMemberFromForeignDomain -SamrRemoveMemberFromGroup -SamrRemoveMultipleMembersFromAlias -SamrRidToSid -SamrSetInformationAlias -SamrSetInformationDomain -SamrSetInformationGroup -SamrSetInformationUser -SamrSetMemberAttributesOfGroup -SamrSetSecurityObject -SamrShutdownSamServer -SamrTestPrivateFunctionsDomain -SamrTestPrivateFunctionsUser -SamrUnicodeChangePasswordUser2 diff --git a/lib/libc/mingw/libarm32/samsrv.def b/lib/libc/mingw/libarm32/samsrv.def deleted file mode 100644 index 0af60509ae..0000000000 --- a/lib/libc/mingw/libarm32/samsrv.def +++ /dev/null @@ -1,328 +0,0 @@ -; -; Definition file of SAMSRV.dll -; Automatic generated by gendef -; written by Kai Tietz 2008-2014 -; -LIBRARY "SAMSRV.dll" -EXPORTS -RtlDeleteElementGenericTable2 -RtlInitializeGenericTable2 -RtlInsertElementGenericTable2 -RtlLookupElementGenericTable2 -SAM_MIDL_user_allocate -SAM_MIDL_user_free -SamDsExtAlloc -SamDsExtFree -SamIAccountRestrictions -SamIAddDSNameToAlias -SamIChangePasswordForeignUser -SamIClaimIsValid -SamIConnect -SamIConvertSecurityAttributesToClaimsBlob -SamICopyCurrentDomainAccountSettings -SamICreateKrbTgt -SamIDecodeClaimsBlob -SamIDecodeClaimsBlobIntoClaimsSet -SamIDecodeClaimsBlobToAuthz -SamIDemote -SamIDemoteUndo -SamIDoFSMORoleChange -SamIFreeAuthzSecurityAttributesInfo -SamIFreeClaimsBlob -SamIFreeDecodedClaimsSet -SamIFreeLookupNamesInfo -SamIFreeLookupSidsInfo -SamIFreeOidList -SamIFreeRealmList -SamIFreeSecurityAttributesInfo -SamIFreeSidAndAttributesList -SamIFreeSidArray -SamIFreeVoid -SamIFree_SAMPR_DISPLAY_INFO_BUFFER -SamIFree_SAMPR_DOMAIN_INFO_BUFFER -SamIFree_SAMPR_ENUMERATION_BUFFER -SamIFree_SAMPR_GET_GROUPS_BUFFER -SamIFree_SAMPR_RETURNED_USTRING_ARRAY -SamIFree_SAMPR_ULONG_ARRAY -SamIFree_SAMPR_USER_INFO_BUFFER -SamIFree_UserInternal6Information -SamIGetAliasMembership -SamIGetConfigurationOidList -SamIGetDefaultAdministratorName -SamIGetResourceGroupMembershipsTransitive -SamIGetUserLogonInformation -SamIGetUserLogonInformation2 -SamIGetUserLogonInformation3 -SamIGetUserLogonInformationEx -SamIHandleObjectUpdate -SamIImpersonateNullSession -SamIInitialize -SamIIsDownlevelDcUpgrade -SamIIsExtendedSidMode -SamIIsRebootAfterPromotion -SamIIsSetupInProgress -SamILoadDownlevelDatabase -SamILookupNamesBySid -SamILookupNamesInDomain -SamILookupSidsByName -SamILoopbackConnect -SamIMixedDomain -SamIMixedDomain2 -SamINT4UpgradeInProgress -SamINetLogonPing -SamINotifyRoleChange -SamIOpenUserByAlternateId -SamIPromote -SamIPromoteUndo -SamIPurgeSecrets -SamIQueryAccountSecretsCachability -SamIQueryCapabilities -SamIQueryRealmList -SamIQueryServerRole -SamIQueryServerRole2 -SamIRemoveDSNameFromAlias -SamIReplaceDownlevelDatabase -SamIReplicateAccountData -SamIResetBadPwdCountOnPdc -SamIRetrieveMultiplePrimaryCredentials -SamIRetrievePrimaryCredentials -SamIRevertNullSession -SamIScorePassword -SamISetAuditingInformation -SamISetMachinePassword -SamISetPasswordForeignUser2 -SamISetPasswordForeignUser3 -SamISetPasswordInfoOnDc -SamIStorePrimaryCredentials -SamITransformClaims -SamIUPNFromUserHandle -SamIUnLoadDownlevelDatabase -SamIUninitialize -SamIUpdateLogonStatistics -SamIValidateAccountName -SamIValidateNewAccountName -SampAccountControlToFlags -SampAcquireReadLock -SampAcquireSamLockExclusive -SampAcquireWriteLock -SampAddAccountToGroupMembers -SampAddAccountsAndApplyMemberships -SampAddDeltaTime -SampAddNonLocalDomainRelativeMemberships -SampAddSameDomainMemberToGlobalOrUniversalGroup -SampAddUserToGroup -SampAlInvalidateAliasInformation -SampAllocateNextCurrentRidFromIndex -SampApplyDomainUpdatesForAllDomains -SampAssignPrimaryGroup -SampAuditAccountEnableDisableChange -SampAuditAccountNameChange -SampAuditAnyEvent -SampAuditGroupTypeChange -SampAuditSidHistory -SampBuildDsNameFromSid -SampBuildSamProtection -SampCalculateLmAndNtOwfPasswords -SampChangeAliasAccountName -SampChangeGroupAccountName -SampChangeUserAccountName -SampCheckForAccountLockout -SampCheckGroupTypeBits -SampCheckSidType -SampCommitBufferedWrites -SampCompareDisplayStrings -SampComputePasswordExpired -SampConnect -SampConvertUiListToApiList -SampCreateAccountContext2 -SampCreateAliasInDomain -SampCreateContextEx -SampCreateDefaultUPN -SampCreateFullSid -SampCreateGroupInDomain -SampCreateUserInDomain -SampCurrentThreadOwnsLock -SampDeReferenceContext -SampDecrementActiveThreads -SampDecryptCredentialData -SampDeleteContext -SampDeleteDsDirsToDeleteKey -SampDeleteKeyForPostBootPromote -SampDeltaChangeNotify -SampDsChangePasswordUser -SampDsConvertReadAttrBlock -SampDsGetPrimaryDomainStart -SampDsInitializeSingleDomain -SampDsIsRunning -SampDsMakeAttrBlock -SampDsSetBuiltinDomainPolicy -SampDsSetDomainPolicy -SampDsSetPasswordUser -SampDsUpdateContextAttributes -SampDuplicateGroupInfo -SampDuplicateMachineInfo -SampDuplicateOemGroupInfo -SampDuplicateOemUserInfo -SampDuplicateUnicodeString -SampDuplicateUserInfo -SampEncryptCredentialData -SampExamineSid -SampExtendDefinedDomains -SampFlagsToAccountControl -SampFreeGroupInfo -SampFreeMachineInfo -SampFreeOemGroupInfo -SampFreeOemUserInfo -SampFreeUnicodeString -SampFreeUserInfo -SampGenerateRandomPassword -SampGetAccessAttribute -SampGetAccountDomainInfo -SampGetBehaviorVersion -SampGetCurrentOwnerAndPrimaryGroup -SampGetDisableOutboundRSO -SampGetDisableRSOOnPDCForward -SampGetDisableResetBadPwdCountForward -SampGetDisableSingleObjectRepl -SampGetDnsDomainNameFromIndex -SampGetDomainContextFromIndex -SampGetDomainObjectFromAccountContext -SampGetDomainObjectFromIndex -SampGetDomainServerRoleFromIndex -SampGetDomainSidFromAccountContext -SampGetDomainSidFromIndex -SampGetDomainSidListForSam -SampGetDomainUpgradeTasks -SampGetDownLevelDomainControllersPresent -SampGetExtendedAttribute -SampGetExternalNameFromIndex -SampGetFixedAttributes -SampGetHasNeverTime -SampGetIgnoreGCFailures -SampGetLogLevel -SampGetNT4UpgradeInProgress -SampGetNewAccountSecurityNt4 -SampGetNextUnmodifiedRidFromIndex -SampGetNoGcLogonEnforceKerberosIpCheck -SampGetNoGcLogonEnforceNTLMCheck -SampGetObjectSD -SampGetObjectTypeNameFromIndex -SampGetPasswordMustChangeWithUF_UAC -SampGetReverseMembershipTransitive -SampGetSamSubsystemName -SampGetSerialNumberDomain2 -SampGetServerObjectName -SampGetSidArrayAttribute -SampGetSidAttribute -SampGetSuccessAccountAuditingEnabled -SampGetUlongArrayAttribute -SampGetUnicodeStringAttribute -SampGetUserAccountControlComputed -SampGetUserAccountSettings -SampGetWillNeverTime -SampImpersonateClient -SampIncreaseBadPwdCountLoopback -SampIncrementActiveThreads -SampIncrementNetlogonChangeLogSerialNumber -SampInvalidateDomainCache -SampIsAccountBuiltIn -SampIsAuditingEnabled -SampIsBuiltinDomain -SampIsDomainHosted -SampIsServiceRunning -SampIsSetupInProgress -SampLogPrint -SampLookupContext -SampMarkPerAttributeInvalidFromWhichFields -SampNeedUserAccountSettingsDuringQuery -SampNetLogonNotificationRequired -SampNotifyAuditChange -SampNotifyReplicatedInChange -SampPasswordChangeNotify -SampPasswordChangeNotifyWorker -SampPositionOfHighestBit -SampQueryCapabilities -SampQueryInformationUserInternal -SampReadExtendedAttributes -SampRecordSystemSchemaVerisonInRegistry -SampReferenceContext -SampRegObjToDsObj -SampReleaseReadLock -SampReleaseSamLockExclusive -SampReleaseWriteLock -SampRemoveAccountFromGroupMembers -SampRemoveSameDomainMemberFromGlobalOrUniversalGroup -SampRemoveUserFromGroup -SampRenameKrbtgtAccount -SampReplaceUserLogonHours -SampReplaceUserV1aFixed -SampRetrieveGroupV1Fixed -SampRetrieveMultipleCredentials -SampRetrieveUserPasswords -SampRetrieveUserV1aFixed -SampRevertToSelf -SampRtlWellKnownPrivilegeCheck -SampSetAccessAttribute -SampSetAdminPassword -SampSetAttributeAccess -SampSetComputerObjectDsName -SampSetDSRMPasswordWorker -SampSetExtendedAttributeAccess -SampSetFixedAttributes -SampSetGlobalDsSids -SampSetPassword -SampSetPasswordInfoOnPdcByHandle -SampSetPasswordInfoOnPdcByIndex -SampSetSerialNumberDomain2 -SampSetTransactionDomain -SampSetTransactionWithinDomain -SampSetUnicodeStringAttribute -SampSetUserAccountControl -SampSplitSid -SampStoreObjectAttributes -SampStringFromGuid -SampTraceEvent -SampUpdateAccountDisabledFlag -SampUpdateComputedUserAccountControlBits -SampUpdateMixedModeAndFindDomain -SampUpdatePerformanceCounters -SampUpgradeUserParmsActual -SampUsingDsData -SampValidateDomainCacheCallback -SampValidateDomainControllerCreation -SampValidatePwdSettingAttempt -SampValidateRegAttributes -SampWriteEventLog -SampWriteGroupType -SamrAddMemberToAlias -SamrAddMemberToGroup -SamrCloseHandle -SamrCreateUser2InDomain -SamrCreateUserInDomain -SamrDeleteAlias -SamrDeleteGroup -SamrDeleteUser -SamrEnumerateUsersInDomain -SamrEnumerateUsersInDomain2 -SamrGetAliasMembership -SamrGetGroupsForUser -SamrLookupIdsInDomain -SamrLookupNamesInDomain -SamrLookupNamesInDomain2 -SamrOpenAlias -SamrOpenDomain -SamrOpenGroup -SamrOpenUser -SamrQueryDisplayInformation -SamrQueryInformationDomain -SamrQueryInformationUser -SamrQueryInformationUser2 -SamrQuerySecurityObject -SamrRemoveMemberFromAlias -SamrRemoveMemberFromGroup -SamrRidToSid -SamrSetInformationAlias -SamrSetInformationGroup -SamrSetInformationUser -SamrSetSecurityObject -SamrValidatePassword diff --git a/src/link.cpp b/src/link.cpp index fbe922c511..abb4ca6193 100644 --- a/src/link.cpp +++ b/src/link.cpp @@ -576,7 +576,6 @@ static const MinGWDef mingw_def_list[] = { {"opengl32",false}, {"rpcns4", false}, {"rpcrt4", false}, - {"samsrv", false}, {"scarddlg",false}, {"setupapi",false}, {"shell32", true}, @@ -2184,17 +2183,17 @@ static void add_mingw_link_args(LinkJob *lj, bool is_library) { const char *name = mingw_def_list[def_i].name; const bool always_link = mingw_def_list[def_i].always_link; - Buf lib_path = BUF_INIT; - Error err = find_mingw_lib_def(lj, name, &lib_path); - - if (err == ErrorFileNotFound) { - zig_panic("link: could not find .def file to build %s\n", name); - } else if (err != ErrorNone) { - zig_panic("link: unable to check if .def file for %s exists: %s", - name, err_str(err)); - } - if (always_link || is_linking_system_lib(g, name)) { + Buf lib_path = BUF_INIT; + Error err = find_mingw_lib_def(lj, name, &lib_path); + + if (err == ErrorFileNotFound) { + zig_panic("link: could not find .def file to build %s\n", name); + } else if (err != ErrorNone) { + zig_panic("link: unable to check if .def file for %s exists: %s", + name, err_str(err)); + } + lj->args.append(get_def_lib(g, name, &lib_path)); } } |
