Opened 14 years ago
Closed 14 years ago
#25729 closed update (fixed)
update midori to 0.2.6
Reported by: | elelay (Eric Le Lay) | Owned by: | afb@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.1 |
Keywords: | Cc: | ||
Port: | midori |
Description
The latest release of midori looks good. Could it be updated ?
I had to patch it a bit to have extensions working.
Attachments (2)
Change History (13)
comment:1 follow-up: 2 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | afb@… removed |
---|---|
Owner: | changed from macports-tickets@… to afb@… |
comment:2 Changed 14 years ago by elelay (Eric Le Lay)
Replying to ryandesign@…:
Instead of hardcoding "0.2" in the master_sites, you should define and use a branch variable; see PortfileRecipes.
thanks for your input, and for the link to PortfileRecipes : lots of interesting stuff.
The no_x11 variant you added is insufficient because all it does is remove a dependency.
Do you mean that if libnotify happens to be installed, it will be picked even if it doesn't work ? fixing this...
Changed 14 years ago by elelay (Eric Le Lay)
Attachment: | midori-0.2.6.diff added |
---|
update midori to 0.2.6 + don't use libnotify with no_x11
comment:3 Changed 14 years ago by afb@…
The patch-midori-main-c.diff change is a hack, it should build bundles rather than dynamiclibs.
Something like the below, unless the silly build system used has been improved since last time:
reinplace "s/shlib_LINKFLAGS = \\\['-dynamiclib'\\\]/shlib_LINKFLAGS = \['-bundle'\]/" \ ${worksrcpath}/_build_/c4che/default.cache.py reinplace "s/shlib_PATTERN = 'lib%s.dylib'/shlib_PATTERN = 'lib%s.so'/" \ ${worksrcpath}/_build_/c4che/default.cache.py
comment:4 follow-up: 5 Changed 14 years ago by elelay (Eric Le Lay)
err, well I don't know the relative merits of bundles vs dynamic libraries. What I found rather stupid was the definition of G_MODULE_SUFFIX to "so" in the first place. We are on a mac here : libraries are ending with ".dylib".
But you are 100% right : it's a quick hack to just "have it working". Please use any other means you like better. It's just that I stumbled upon midori when trying to update webkit-gtk as a dependency for gPodder. I updated it as a testbed for my webkit-gtk build.
comment:5 Changed 14 years ago by afb@…
Replying to elelay@…:
We are on a mac here : libraries are ending with ".dylib".
Loadable bundles are not dynamic libraries, so they end with ".bundle" or ".so".
comment:6 follow-up: 7 Changed 14 years ago by elelay (Eric Le Lay)
Meanwhile, midori 0.2.7 has been released.
I don't know if you have taken a close look at midori/main.c. Just in case, I'll restate the rationale for patching it. Here is the interesting bit :
1131 /* Ignore files which don't have the correct suffix */ 1132 if (!g_str_has_suffix (filename, G_MODULE_SUFFIX)) 1133 continue;
What it does is scan the extensions directory for *.so and then use a glib (or gobject I don't know) facility to load the extension. It makes sense for a linux program. What the patch does is override the definition of G_MODULE_SUFFIX to .dylib, so that midori finds the libraries.
What throwing bundles at this will add ?
comment:7 Changed 14 years ago by afb@…
Replying to elelay@…:
Meanwhile, midori 0.2.7 has been released.
Extensions are *supposed* to have the .so suffix on Mac OS X too, but I'm OK with the proposed hack (.dylib) to get things going...
comment:8 Changed 14 years ago by elelay (Eric Le Lay)
ok, now I get the distinction between libraries and modules. Now I don't understand how the shared libraries are loaded as extensions ??
Patching wscript to load the osx tool and extensions/wscript_build to set obj.mac_bundle = True
and wscript again to set the bundle extension to .so instead of .bundle seems to work.
I'll submit a patch tomorrow
comment:9 Changed 14 years ago by afb@…
My MacPorts installation is currently broken, but will need to rebuild it for this commit and for the outstanding Xfce 4.6.2 upgrade also waiting to be submitted.
Changed 14 years ago by elelay (Eric Le Lay)
Attachment: | patch-midori-0.2.7-bundles.diff added |
---|
update midori to 0.2.7 + build bundles
comment:10 Changed 14 years ago by afb@…
Status: | new → assigned |
---|
comment:11 Changed 14 years ago by afb@…
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed, r73370. (version 0.2.9)
Instead of hardcoding "0.2" in the master_sites, you should define and use a branch variable; see PortfileRecipes.
The no_x11 variant you added is insufficient because all it does is remove a dependency.