-
Notifications
You must be signed in to change notification settings - Fork 620
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CMake shared libraries #57
CMake shared libraries #57
Conversation
Thanks for your work. I'm glad to see ZLIB_WINAPI gone to a build option as it should be. I like having the Visual Studio projects because it lets you build EXR libraries into another VS project just by adding the project files into your solution file. Although I think the Visual Studio projects have not been updated for the new OpenEXR 2.0 stuff. Maybe I can help with that. |
The purpose of CMake is to generate VS projects when needed. I see no reason in keeping VS solutions from vc7 to vc9 in the sources. Without mentioning, that the solutions for vc10 and vc11 are missing... |
The cmake parts look like a definite improvement, but it would be good to retain the export semantics for gcc, new namespacing macros, and so on. Maybe this change can be reconciled somehow with #54 |
I see about VS projects. Well then yes, I agree, get rid of them. They're out of date anyway. Too bad CMake doesn't make Xcode projects too. |
I think CMake does make XCode projects. It used to, at least, when we On Mon, Apr 15, 2013 at 5:13 PM, Brendan Bolles notifications@github.comwrote:
I think this situation absolutely requires that a really futile and stupid |
Cmake does good command line builds for OSX. The Xcode projects it makes are very clumsy unfortunately. |
Hi, thanks, your namespace fix works for me. Some notes to previous discussions: I simply tried to unify the export symbols in the header file. Unfortunately OpenEXR Headers are very inconsistent. For instance ImathExport.h, halfExport.h and IexMathFloatExc.h defined 3 different ways of creating export symbols. From those patterns I took the first one, and yes, I missed the point that the gcc visibility might be somehow important. Btw. from the 3 header files listed, just one included the gcc visibility attribute (before my patch). For general unification #54 offers a good starting point, but more should be done. IMHO there should be just one header file which defines export symbols. Either all projects have *_EXPORTS and OPENEXR_DLL defined, or none. I don't think they should and will be mixed. Such a modification would also ensure that there are no different export definitions around. Best, |
Hi,
since I missed to compile OpenEXR Dlls using the CMake build system, I implemented some CMake options. Moreover I made the usage of the zlib-winapi version optional (via option), it works fine for me using the normal zlib version.
I needed to change a few files, fixing some export symbols, but finally it works. I tested it on windows 32+64bit Visual Studio 2012.
Since your CMake infrastructure looks quite stable, I strongly suggest removing all Makefiles and VS solutions from the repository.
Best,
Daniel Kaneider