[OpenAFS] OpenAFS Windows build environment

Kostas Liakakis kostas@physics.auth.gr
Tue, 14 Feb 2017 19:15:24 +0200


This is a cryptographically signed message in MIME format.

--------------ms040904040205060203060508
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


On 2017-02-14 16:56, Jeffrey Altman wrote:
> On 2/14/2017 8:14 AM, Kostas Liakakis wrote:
>> Well, I gave up on it :)
>> Instead commented the #include in cm_nls.c and added a typedef for
>> _NORM_FORM enum copied out of the MS documentation.
> The NORM_FORM enum is defined in the Windows SDK.  The normalization.h
> include is protected by a conditional
>
>   #if (_WIN32_WINNT < 0x0600)
>   /* This is part of the Microsoft Internationalized Domain Name
>      Mitigation APIs. */
>   # include <normalization.h>
>   #endif
>
> which matches the conditional in the SDK headers:
>
>   #if (WINVER >=3D 0x0600)
>   //
>   //  Normalization forms
>   //
>
>   typedef enum _NORM_FORM {
>     ...
>   } NORM_FORM;

What version of the OpenAFS source tree and Windows Platform SDK are you
quotting from?

Even in 1.8.0pre1 tarball the normalize.h inclusion in cm_nls.c is
unconditional and in Platform SDK 6.0a a quick search comes back empty
for NORM_FORM.

I started with a "known good" source tree and tried to replicate a known
good build environment as suggested in the guide I was pointed at as a
starting point. So I picked 1.7.32 and tried to match all the toolchain
versions as much as possible.

Should I have cloned the git tree instead? And maybe, since you probably
have a solid and current build environment already setup, could you
please share your tool and SDK versions so I can match them instead of
trying to solve problems already dealt with?


>> Amazingingly, this was enough for the build to proceed and end in
>> success.=20
> The cm_nls.c uses run-time loading of the functions so that the code ca=
n
> be compiled for versions of Windows that do not ship with the
> NormalizeString() and IsNormalizedString() functions.
>
> The IDN is required when building for pre-Vista because you have
> to install the normaliz.dll library as part of the installer.
>
>> Well, at least my openafs/dest directory is now populated and I
>> could at least run "pts help" and "fs help".
> Neither pts nor fs use the normalization routines directly.

Oh, I see.

But anyway, what I wanted to say is that in the end I did manage to get
executables that execute... to some extent at least.

-K.


--------------ms040904040205060203060508
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC
DR0wggYjMIIFC6ADAgECAggY3YeuH0u2eTANBgkqhkiG9w0BAQsFADCBlTELMAkGA1UEBhMC
R1IxRDBCBgNVBAoTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlv
bnMgQ2VydC4gQXV0aG9yaXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVz
ZWFyY2ggSW5zdGl0dXRpb25zIFJvb3RDQSAyMDExMB4XDTE1MDUwNTEzMzU1NFoXDTIzMDUw
MzEzMzU1NFoweTELMAkGA1UEBhMCR1IxLTArBgNVBAoMJEFyaXN0b3RsZSBVbml2ZXJzaXR5
IG9mIFRoZXNzYWxvbmlraTE7MDkGA1UEAwwyQXJpc3RvdGxlIFVuaXZlcnNpdHkgb2YgVGhl
c3NhbG9uaWtpIENlbnRyYWwgQ0EgUjUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQDjvOiWJ9gvog6JHKxxfC/CfailKSpypKBn62M8M3SjzKWJ8V08gPHqsGC8jpnNkC5w+IpF
CJDczTeOTVADmJZayrP3ezTcJQv2h7aPJZ6lreph+GzXSc5lpvGkb8+tc0DLogyYNRytQquc
R7Z8DAhZB+3rS28zFLOk4Yw/8Sod41RFU5scv4d0bTzktjvsAcGUkWlXY2rp4QP5ZgSNaH6R
HrLLbSjSot2qHVIYQozDWTPJG0MiKySLy2D7njLsWquAGbuXpNnriJx7I7Ix6vrNvxye7jV6
M7qczQ1sJ8QTP60u7FkDgjFtydA3WTctGalGp0WVMIba8m/Ez/KY13IpAgMBAAGjggKQMIIC
jDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUdJGEzY+bxcj7
PqN08k50u/ma7kYwRgYDVR0fBD8wPTA7oDmgN4Y1aHR0cDovL2NybHYxLmhhcmljYS5nci9I
YXJpY2FSb290Q0EyMDExL2NybHYxLmRlci5jcmwwHwYDVR0jBBgwFoAUppFC/RNhSiOeCKQp
5dgTBCPuQSUwbgYIKwYBBQUHAQEEYjBgMCEGCCsGAQUFBzABhhVodHRwOi8vb2NzcC5oYXJp
Y2EuZ3IwOwYIKwYBBQUHMAKGL2h0dHA6Ly93d3cuaGFyaWNhLmdyL2NlcnRzL0hhcmljYVJv
b3RDQTIwMTEuY3J0MIIBQAYDVR0gBIIBNzCCATMwggEvBgsrBgEEAbwdAgADBjCCAR4wNAYI
KwYBBQUHAgEWKGh0dHA6Ly93d3cucGtpLmF1dGguZ3IvZG9jdW1lbnRzL0NQUy5waHAwgeUG
CCsGAQUFBwICMIHYMEoWQ0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1
dGlvbnMgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwAwIBARqBiVRoaXMgY2VydGlmaWNhdGUg
aXMgc3ViamVjdCB0byBHcmVlayBsYXdzIGFuZCBvdXIgQ1BTLiBUaGlzIENlcnRpZmljYXRl
IG11c3Qgb25seSBiZSB1c2VkIGZvciBhY2FkZW1pYywgcmVzZWFyY2ggb3IgZWR1Y2F0aW9u
YWwgcHVycG9zZXMuMC0GA1UdHgQmMCSgIjAJggdhdXRoLmdyMAmBB2F1dGguZ3IwCoEILmF1
dGguZ3IwDQYJKoZIhvcNAQELBQADggEBAKZLw+h67xvMUXpl7pQ+cH5yB7aklIen3Eicb8rw
GZVGX67JRowYdic3SSHhj3QfVUrqY+PQ4DwUKiPhm8PCr0rlBS/+uY3yNYT+/+ipSjVku5f9
/Aa+4Fl/kyP5VK0RDcMTJRcaQOoa/xRu94MsvCD1vMzltOfsbraCuYyunr8Zw1BfrcgjE3cu
Pp19XWe1qIkeo76jtuT+b5AcByK+o5Dt7kTLrs8M1BCMfd01EqAN2WgOW2cFRFpy0ncN4W7B
w4Vvbn0EphssMyK9WPs4xSQ+dU5AA2qnARa8+MM5RENY23e6rfj46cHj0lhBTO2x/fiyaiCq
Hq6tA/k7OBJg3fEwggbyMIIF2qADAgECAggUEcgnyrBkEzANBgkqhkiG9w0BAQsFADB5MQsw
CQYDVQQGEwJHUjEtMCsGA1UECgwkQXJpc3RvdGxlIFVuaXZlcnNpdHkgb2YgVGhlc3NhbG9u
aWtpMTswOQYDVQQDDDJBcmlzdG90bGUgVW5pdmVyc2l0eSBvZiBUaGVzc2Fsb25pa2kgQ2Vu
dHJhbCBDQSBSNTAeFw0xNTExMTMwMDAwMDBaFw0xNzExMTIwODQ2NTVaMIHxMQswCQYDVQQG
EwJHUjEVMBMGA1UEBwwMVGhlc3NhbG9uaWtpMS0wKwYDVQQKDCRBcmlzdG90bGUgVW5pdmVy
c2l0eSBvZiBUaGVzc2Fsb25pa2kxGjAYBgNVBAsMEVNjaG9vbCBvZiBQaHlzaWNzMUEwPwYD
VQQLDDhDbGFzcyBBIC0gUHJpdmF0ZSBLZXkgY3JlYXRlZCBhbmQgc3RvcmVkIGluIGhhcmR3
YXJlIENTUDEeMBwGA1UEAwwVS29uc3RhbnRpbm9zIExpYWtha2lzMR0wGwYJKoZIhvcNAQkB
Fg5rb3N0YXNAYXV0aC5ncjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAP4J7lPp
oN8ZwYwnOj/44g9jGaS05OJy23il4M/z1DdbizDhKYwvm4fL+BjjUabPjDfVg9ltCkaXSrmM
T743VVK7zdiojxGDKDP6z1J/JJfKzBXOJC0AjYZHHB9anYiDeu4ItBFzz77sCWYg2qA0I0kG
eHhx9Ziswg4bIQEwi1Zcn+jjAUc+4YxCwwBzMT56wR7l7bpG8gMN/jjnkrsE7Mbmdf1gOcr9
gfULvUjtRxT9HezUKnHl8dpXPi6nWGxTr+bj05Qo4i/BsvH/H2JCB4N9EOgd3xQGgAAARvgD
lVdUE9Yhu3nTT+f3+4m8xjz3Z9vQR7D6Yg0r8kSQ3B1U4ZUCAwEAAaOCAwMwggL/MAsGA1Ud
DwQEAwIF4DApBgNVHSUEIjAgBggrBgEFBQcDAgYIKwYBBQUHAwQGCisGAQQBgjcUAgIwHQYD
VR0OBBYEFJKuQo2V8Bqi9E6simGPn/+fjQRGMB8GA1UdIwQYMBaAFHSRhM2Pm8XI+z6jdPJO
dLv5mu5GMHEGCCsGAQUFBwEBBGUwYzAjBggrBgEFBQcwAYYXaHR0cDovL29jc3AucGtpLmF1
dGguZ3IwPAYIKwYBBQUHMAKGMGh0dHA6Ly93d3cucGtpLmF1dGguZ3IvY2VydHMvQXV0aENl
bnRyYWxDQVI1LmNydDBHBgNVHR8EQDA+MDygOqA4hjZodHRwOi8vY3JsdjEucGtpLmF1dGgu
Z3IvQXV0aENlbnRyYWxDQVI1L2NybHYxLmRlci5jcmwwggEqBgNVHSAEggEhMIIBHTCCAQ8G
CysGAQQBvB0CAAMFMIH/MDQGCCsGAQUFBwIBFihodHRwOi8vd3d3LnBraS5hdXRoLmdyL2Rv
Y3VtZW50cy9DUFMucGhwMIHGBggrBgEFBQcCAjCBuTArFiRBcmlzdG90bGUgVW5pdmVyc2l0
eSBvZiBUaGVzc2Fsb25pa2kwAwIBARqBiVRoaXMgY2VydGlmaWNhdGUgaXMgc3ViamVjdCB0
byBHcmVlayBsYXdzIGFuZCBvdXIgQ1BTLiBUaGlzIENlcnRpZmljYXRlIG11c3Qgb25seSBi
ZSB1c2VkIGZvciBhY2FkZW1pYywgcmVzZWFyY2ggb3IgZWR1Y2F0aW9uYWwgcHVycG9zZXMu
MAgGBgQAizABATAiBggrBgEFBQcBAwQWMBQwCAYGBACORgEBMAgGBgQAjkYBBDBMBgNVHREE
RTBDgRZrb3N0YXNAcGh5c2ljcy5hdXRoLmdyoCkGCisGAQQBgjcUAgOgGwwZa29zdGFzQHBj
bGFicy5pdGMuYXV0aC5ncjApBgkrBgEEAYI3FAIEHB4aAFMAbQBhAHIAdABjAGEAcgBkAFUA
cwBlAHIwDQYJKoZIhvcNAQELBQADggEBAFvzyrVJEj7AmTbPe7qtOtEMoQ3wsMj0TLW9o2ED
/C0Z2o5rN7QnAkJEJ5DM5r4SQq9pezgOvFFBeUqj3cdPqL2II7XDy7r9BXFbjp+uk9rm3ltl
T5kD4aaIWvQKVj67XnyG1L5EfUZy40uG+Z6PjgHQqq4hGDU0Vdn3k0di5caC97Do1u6VO81/
fFeEtKnTHKr+KU6xeBVG73imfo9F5fLy1F9l7+i+cNipA9EwxsocO8pKLY3Hn5Ju+u9fNNuE
cnl11eN/nh8FuCqgBtRkmOGRQltaU+p/TPj5VWBKwvdvUmxYElmC9TR+oa6q4sB+deyyuDlG
mugeTNLKtIMOb9gxggPAMIIDvAIBATCBhTB5MQswCQYDVQQGEwJHUjEtMCsGA1UECgwkQXJp
c3RvdGxlIFVuaXZlcnNpdHkgb2YgVGhlc3NhbG9uaWtpMTswOQYDVQQDDDJBcmlzdG90bGUg
VW5pdmVyc2l0eSBvZiBUaGVzc2Fsb25pa2kgQ2VudHJhbCBDQSBSNQIIFBHIJ8qwZBMwDQYJ
YIZIAWUDBAIBBQCgggILMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF
MQ8XDTE3MDIxNDE3MTUyNFowLwYJKoZIhvcNAQkEMSIEIFZTpi+BSSs8mUMy6OC9PkoQPnU7
aSc4aySn3OjeONu4MGwGCSqGSIb3DQEJDzFfMF0wCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQB
AjAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcw
DQYIKoZIhvcNAwICASgwgZYGCSsGAQQBgjcQBDGBiDCBhTB5MQswCQYDVQQGEwJHUjEtMCsG
A1UECgwkQXJpc3RvdGxlIFVuaXZlcnNpdHkgb2YgVGhlc3NhbG9uaWtpMTswOQYDVQQDDDJB
cmlzdG90bGUgVW5pdmVyc2l0eSBvZiBUaGVzc2Fsb25pa2kgQ2VudHJhbCBDQSBSNQIIFBHI
J8qwZBMwgZgGCyqGSIb3DQEJEAILMYGIoIGFMHkxCzAJBgNVBAYTAkdSMS0wKwYDVQQKDCRB
cmlzdG90bGUgVW5pdmVyc2l0eSBvZiBUaGVzc2Fsb25pa2kxOzA5BgNVBAMMMkFyaXN0b3Rs
ZSBVbml2ZXJzaXR5IG9mIFRoZXNzYWxvbmlraSBDZW50cmFsIENBIFI1AggUEcgnyrBkEzAN
BgkqhkiG9w0BAQEFAASCAQAVSYkDaFMQxOH1h6eAgqCaNV8p4mNehH5Xul7+D11QO/QmnE1d
b6/rxooYUAV7OMGHNmNLFjQzYZkb0Fjt8G8g4q8lhjg2B3LCWV+uCClN1CE6L0m4P9IU7kAo
g6rfk7t2zQCk41cAhA2Bdlcjo6mqpMwQqoCANcYwR2ySaCZ4iRP5BbcQaapMPcyi8gWUKPjx
/K0GTZvClyY4oBtNfo14X+dDmILUW2ZNYyC3+d99RSmga8CDbiqanJrgTJT65X+OrXpjNJVU
5nS0O/pslTUkgB8SgPh+3dejNt38N/vwTOpdhK5oOh+IBCMFgOdkmQrambBQ4PHlONktKZCo
F21/AAAAAAAA
--------------ms040904040205060203060508--