View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0010090 | CMake | Modules | public | 2010-01-04 11:45 | 2011-03-18 14:09 | ||||
Reporter | Andreas Schneider. | ||||||||
Assigned To | Brad King | ||||||||
Priority | normal | Severity | tweak | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | CMake-2-8 | ||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0010090: check_prototype_definition() - Check if the protoype we expect is correct | ||||||||
Description | check_prototype_definition(FUNCTION PROTOTYPE RETURN HEADER VARIABLE) This check if the function exists and the prototype we want to use is correct. There are still functions which have different prototypes on UNICES :( check_prototype_definition(getpwent_r "struct passwd *getpwent_r(struct passwd *src, char *buf, int buflen)" "NULL" "unistd.h;pwd.h" SOLARIS_GETPWENT_R) Comments are welcome :) | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | CheckPrototypeDefinition.cmake [^] (4,003 bytes) 2010-01-04 11:45 CheckPrototypeDefinition.c.in [^] (514 bytes) 2010-01-04 11:46 0002-Added-a-check-to-verify-that-a-protoype-we-expect-is.patch [^] (5,994 bytes) 2010-03-11 05:16 [Show Content] | ||||||||
Relationships | ||||||
|
Relationships |
Notes | |
(0024791) David Cole (manager) 2011-01-17 14:34 |
A worthy addition? Better than what we have now? |
(0024797) Brad King (manager) 2011-01-17 15:01 |
Yes, this is interesting. It looks like the implementation depends on the compiler to complain if the specified prototype does not match the original declaration in the header file. What happens if the system header actually defines the "function" as a macro? |
(0025376) Andreas Schneider. (developer) 2011-02-10 12:43 |
Well this only works for functions and it is looking for the symbol. Normally these functions you're looking for aren't macros and it is a bad idea to have them as a macro cause you can't dlsym() them. |
(0025377) Andreas Schneider. (developer) 2011-02-10 12:43 |
IIRC this is more or less the same what the autofools do. |
(0025803) Andreas Schneider. (developer) 2011-03-18 09:15 |
Pushed to the staging server with a test case. Waiting for review! |
(0025818) Brad King (manager) 2011-03-18 14:07 |
Merged to next, thanks: http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4f252abe [^] http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=93c56a70 [^] http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=030f83de [^] |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2010-01-04 11:45 | Andreas Schneider. | New Issue | |
2010-01-04 11:45 | Andreas Schneider. | File Added: CheckPrototypeDefinition.cmake | |
2010-01-04 11:46 | Andreas Schneider. | File Added: CheckPrototypeDefinition.c.in | |
2010-03-11 05:16 | Andreas Schneider. | File Added: 0002-Added-a-check-to-verify-that-a-protoype-we-expect-is.patch | |
2011-01-17 14:33 | David Cole | Assigned To | => Brad King |
2011-01-17 14:33 | David Cole | Status | new => assigned |
2011-01-17 14:34 | David Cole | Note Added: 0024791 | |
2011-01-17 14:34 | David Cole | Relationship added | related to 0011565 |
2011-01-17 15:01 | Brad King | Note Added: 0024797 | |
2011-02-10 12:43 | Andreas Schneider. | Note Added: 0025376 | |
2011-02-10 12:43 | Andreas Schneider. | Note Added: 0025377 | |
2011-03-18 09:15 | Andreas Schneider. | Note Added: 0025803 | |
2011-03-18 14:07 | Brad King | Note Added: 0025818 | |
2011-03-18 14:09 | Brad King | Status | assigned => closed |
2011-03-18 14:09 | Brad King | Resolution | open => fixed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |