Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#56557 closed defect (fixed)

p11-kit @0.23.11 breaks gnutls @3.5.18 build

Reported by: Schamschula (Marius Schamschula) Owned by: lbschenkel (Leonardo Brondani Schenkel)
Priority: Normal Milestone:
Component: ports Version: 2.5.0
Keywords: Cc:
Port: p11-kit

Description

While rebuilding gnutls 3.5.18, I get the following error:

ibtool: compile:  /usr/bin/clang -DHAVE_CONFIG_H -I. -I../.. -I./../../gl -I./../../gl -I./../includes -I./../includes -I./.. -I/opt/local/include -Wtype-limits -fno-common -W -Wabi -Waddress -Wall -Wattributes -Wbad-function-cast -Wbuiltin-macro-redefined -Wcast-align -Wchar-subscripts -Wcomment -Wcomments -Wcpp -Wdate-time -Wdeprecated -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wdouble-promotion -Wempty-body -Wendif-labels -Wenum-compare -Wextra -Wformat-extra-args -Wformat-security -Wformat-zero-length -Wignored-attributes -Wignored-qualifiers -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wincompatible-pointer-types -Winit-self -Wint-conversion -Wint-to-pointer-cast -Winvalid-pch -Wlogical-not-parentheses -Wmain -Wmissing-braces -Wmissing-declarations -Wmissing-field-initializers -Wmissing-include-dirs -Wmissing-prototypes -Wmultichar -Wnarrowing -Wnested-externs -Wnonnull -Wnull-dereference -Wodr -Wold-style-definition -Woverflow -Wpacked -Wparentheses -Wpointer-arith -Wpointer-sign -Wpointer-to-int-cast -Wpragmas -Wreturn-type -Wsequence-point -Wshadow -Wshift-count-negative -Wshift-count-overflow -Wshift-negative-value -Wsizeof-array-argument -Wsizeof-pointer-memaccess -Wstrict-aliasing -Wstrict-prototypes -Wswitch -Wswitch-bool -Wtautological-compare -Wtrigraphs -Wtype-limits -Wuninitialized -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-local-typedefs -Wunused-parameter -Wunused-result -Wunused-value -Wunused-variable -Wvarargs -Wvariadic-macros -Wvolatile-register-var -Wwrite-strings -Wno-missing-field-initializers -Wno-missing-field-initializers -Wno-unused-parameter -fdiagnostics-show-option -I/opt/local/include/p11-kit-1 -pipe -Os -arch x86_64 -MT verify-high2.lo -MD -MP -MF .deps/verify-high2.Tpo -c verify-high2.c  -fno-common -DPIC -o .libs/verify-high2.o
In file included from verify-high2.c:36:
In file included from ./../pkcs11_int.h:34:
/opt/local/include/p11-kit-1/p11-kit/uri.h:99:68: error: unknown type name 'CK_INFO'
                                                             const CK_INFO *info);
                                                                   ^
/opt/local/include/p11-kit-1/p11-kit/uri.h:104:68: error: unknown type name 'CK_SLOT_INFO'; did you mean 'CK_SLOT_ID'?
                                                             const CK_SLOT_INFO *slot_info);
                                                                   ^~~~~~~~~~~~
                                                                   CK_SLOT_ID
/opt/local/include/p11-kit-1/p11-kit/uri.h:88:22: note: 'CK_SLOT_ID' declared here
typedef ck_slot_id_t CK_SLOT_ID;
                     ^
/opt/local/include/p11-kit-1/p11-kit/uri.h:113:68: error: unknown type name 'CK_TOKEN_INFO'; did you mean 'CK_TOKEN_INFO_PTR'?
                                                             const CK_TOKEN_INFO *token_info);
                                                                   ^~~~~~~~~~~~~
                                                                   CK_TOKEN_INFO_PTR
/opt/local/include/p11-kit-1/p11-kit/uri.h:83:31: note: 'CK_TOKEN_INFO_PTR' declared here
typedef struct ck_token_info *CK_TOKEN_INFO_PTR;
                              ^
/opt/local/include/p11-kit-1/p11-kit/uri.h:134:68: error: unknown type name 'CK_ATTRIBUTE'; did you mean 'CK_ATTRIBUTE_PTR'?
                                                             const CK_ATTRIBUTE *attrs,
                                                                   ^~~~~~~~~~~~
                                                                   CK_ATTRIBUTE_PTR
/opt/local/include/p11-kit-1/p11-kit/uri.h:85:30: note: 'CK_ATTRIBUTE_PTR' declared here
typedef struct ck_attribute *CK_ATTRIBUTE_PTR;
                             ^
4 errors generated.
make[4]: *** [verify-high2.lo] Error 1

I manually edited p11-kit/uri.h, replacing CK_INFO with CK_INFO_PTR, etc. and the build succeeded. However, making such a change breaks the p11-kit build.

Also see https://github.com/p11-glue/p11-kit/issues/165

Change History (4)

comment:1 Changed 6 years ago by Schamschula (Marius Schamschula)

Resolution: fixed
Status: assignedclosed

In a65fd956995b1ec72495b12ecfb71bd0fc3e68ab/macports-ports (master):

p11-kit: pkcs11: Exercise GNU calling convention at compile time

Closes: #56557
See: https://github.com/p11-glue/p11-kit/pull/160

comment:2 Changed 6 years ago by lbschenkel (Leonardo Brondani Schenkel)

Thanks Marius. FYI, I feel that adding new patch files without maintainer's involvement is close to over-stretching the definition of openmaintainer. I prefer to be kept in the loop and have the opportunity to take a look before it ends up being merged. (In this specific case I would have just said to go ahead and commit but it might have not been the case, for one reason or another.)

comment:3 Changed 6 years ago by Schamschula (Marius Schamschula)

Leornado.

Sorry!

I was dealing with fixing a blocker breakage of my gnutls port, that I was just made aware of this morning.

comment:4 Changed 6 years ago by lbschenkel (Leonardo Brondani Schenkel)

No problem. I appreciate your help for this issue. After all, were I doing this I would have done the same exact same change.

Note: See TracTickets for help on using tickets.