Closed GoogleCodeExporter closed 9 years ago
Hi,
Could you try with the last trunk revision please. I think to have corrected
this point.
Best
Mickaël
Original comment by savmick...@gmail.com
on 3 Feb 2013 at 6:16
I tested with trunk and the missing stdio.h bug is fixed. The missing
pkg-config file bug has also been fixed.
However the problem of including config.h in a public header still exists. This
is a really bad idea as described here http://inaugust.com/post/68 .
There is also the typedef of the stdint types on WIN32 which will conflict with
any project that has their own definition for these types. According to my copy
of Harbison & Steele identifiers beginning with int or uint and ending with _t
are reserved by Standard C. In addition POSIX reserves all identifiers ending
with _t
(http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html)
although you can usually get away with it providing you use a project specific
prefix.
Original comment by adrian.j...@gmail.com
on 4 Feb 2013 at 10:40
ok thanks for your return.
I understand your point of view for int definitions.
For config.h I will try to check why we have decided to install this file.
Original comment by savmick...@gmail.com
on 4 Feb 2013 at 12:29
I had a look at what is in opj_config.h and the only thing that is being used
is OPJ_HAVE_STDINT_H. You could easily remove both opj_config.h and
opj_stdint.h and replace them with the attached patch. The OPJ_HAVE_STDINT_H
macro is not adding any value since if stdint.h is not available and the
platform is not windows the build errors out. So you may as well just have the
bare #include <stdint.h> for non windows platforms.
Also, are the exact width types really needed or do you only need a minimum
guaranteed size? The types are not used consistently throughout the header. In
the structs the standard types (char, int etc) are mixed with fixed width types.
Original comment by adrian.j...@gmail.com
on 5 Feb 2013 at 12:22
Attachments:
Hi,
Can you take a look to my github
https://github.com/savmickael/openjpeg-msd/tree/issue_207. I provide a proposal
about this issue.
Mickaël
Original comment by savmick...@gmail.com
on 10 Apr 2013 at 9:13
Building on Linux now works fine. I think that defining the stdint types on
windows will cause problems for applications that define their own stdint types.
Since the stdint types are only used to create the OPJ_* types you could easily
avoid defining stdint types on windows and create the OPJ_* types directly from
the windows __int* types.
It would be good to get a new release out with this and the pkg-config fix so
poppler can start using openjpeg 2.
Original comment by adrian.j...@gmail.com
on 24 Aug 2013 at 6:53
Original comment by mathieu.malaterre
on 25 Feb 2014 at 3:31
Original comment by mathieu.malaterre
on 25 Feb 2014 at 3:32
As per OP report, all issues have been fixed now. closing.
Original comment by mathieu.malaterre
on 27 Feb 2014 at 10:21
Original issue reported on code.google.com by
adrian.j...@gmail.com
on 1 Jan 2013 at 2:22