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 >= 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. 
> The cm_nls.c uses run-time loading of the functions so that the code can
> 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.

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to