#27995 closed enhancement (fixed)
darktable @0.7.1 add +gcc44 and +gcc45 variants and gtk-engines2 dependency
Reported by: | julians37@… | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.2 |
Keywords: | Cc: | ||
Port: | darktable |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Upstream recommends to build with gcc 4.4 or later so I've added the option. I haven't made it the default since gcc 4.4/4.5 are big downloads and can take a long time to build.
Attachments (2)
Change History (8)
Changed 14 years ago by julians37@…
Attachment: | darktable-071-add-gcc44-gcc45-variants.patch added |
---|
comment:1 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Owner: | changed from macports-tickets@… to ryandesign@… |
Status: | new → assigned |
comment:2 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Changed 14 years ago by julians37@…
Attachment: | darktable-071-add-gcc44-gcc45-variants-and-gtk-engines2.patch added |
---|
Same as above, but also adds missing dependency on gtk-engines2
comment:4 follow-up: 5 Changed 14 years ago by julians37@…
Darktable prints warnings like this one:
(darktable:29679): Gtk-WARNING **: Unable to locate theme engine in module_path: "clearlooks",
These warnings disappear once gtk-engines2 is installed. The second patch revision adds this as a dependency.
comment:5 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Summary: | darktable @0.7.1 add +gcc44 and +gcc45 variants → darktable @0.7.1 add +gcc44 and +gcc45 variants and gtk-engines2 dependency |
Replying to julians37@…:
The second patch revision adds this as a dependency.
Ok, yes, that's now a good reason to increase the revision.
Note that manually setting CC, CXX and CPP in the build.env and destroot.env in the gcc variants seems to be unnecessary; MacPorts already sets these during the configure phase for you, and this configure script appears to be well-behaved enough that it notices and uses this.
When I build with gcc45, I get lots of warnings of this form:
gcc-mp-4.5: unrecognized option '-rdynamic'
(though the build succeeds). Similarly, with gcc44, I get:
gcc-mp-4.4: unrecognized option '-rdynamic'
I don't know if this is a problem.
gcc is not only used for building; the program also links with its library, as you can see with "otool -L":
$ otool -L /opt/local/bin/darktable | grep gcc /opt/local/lib/gcc44/libgomp.1.dylib (compatibility version 2.0.0, current version 2.0.0) /opt/local/lib/gcc44/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.13.0) /opt/local/lib/gcc44/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
Therefore, in the gcc variants, the gcc port needs to be a library dependency, not just a build dependency.
Committed in r75211.
comment:6 Changed 14 years ago by julians37@…
Thanks for fixing the little things that I missed. Slowly getting the hang of it.
Note the revision shouldn't be increased, since the port won't change for anyone who already had it installed without these variants; users will have to explicitly request these variants anyway for anything to change.