#19141: Update libmp4v2 -------------------------------------+-------------------------------------- Reporter: and.damore@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: libmp4v2 -------------------------------------+-------------------------------------- Comment(by cedric.luthi@…): The mp4v2 project has now released a stable 1.9.0 version. So I change my mind and I think we should update the libmp4v2 port to version 1.9.0 and change its name to `mp4v2` instead of yet another mp4v2 port which would be indeed too much confusing and overlapping.[[BR]] On the mp4v2 page is written ''Users interested in backward-compatible API with MPEGIP/libmp4v2 should use this release.'' :-) Here are the port that depends on libmp4v2 {{{ $ port echo depends:libmp4v2 aacgain amarok amarok-devel easytag faac mpeg4ip }}} Let's take them one by one and see what are the problems. == aacgain == `aacgain` is actually using an embedded version of libmp4v2. This is how the final aacgain executable is built:[[BR]] /usr/bin/g++-4.0 -O2 -o aacgain aacgain.o decoder.o MP4MetaFile.o syntax.o -Wl,-bind_at_load -L/opt/local/lib ../faad2/libfaad/.libs/libfaad.a -lm '''../mpeg4ip/lib/mp4v2/.libs/libmp4v2.a''' ../mp3gain/mpglibDBL/.libs/libmpglib.a ../mp3gain/.libs/libmp3gain.a We can remove the `depends_lib lib:libmp4v2:libmp4v2` from the Portfile, aacgain will work exactly the same. == amarok and amarok-devel == I could not test `amarok` because it failed to install (because of `kdepimlibs4`), even after applying the patch of #19494: {{{ CMake Error at /opt/local/share/apps/cmake/modules/FindKDE4Internal.cmake:1141 (message): ERROR: the installed kdelibs version 4.2.00 is too old, at least version 4.2.2 is required }}} == easytag == `easytag` is using libmp4v2, but updating to version 1.9.0 is very easy, see attached easytag-mp4v2.patch == faac == As pointed in #19142, mp4 support is not actually built in `faac`. This is because the configure.in file is bugged: it does not do `MY_DEFINE(HAVE_LIBMP4V2)` when ''Building with external mp4v2'' which result in no mp4 support at all. Updating to mp4v2 1.9.0 would thus not impact faac. == mpeg4ip == If I understood correctly libmp4v2 is a subset of `mpeg4ip`, which has been discontinued. mpeg4ip requires libmp4v2 because libmp4v2 installs newer version of the same mp4 tools and libs. mpeg4ip is not actually built on top of libmp4v2, so updating to version 1.9.0 would not impact mpeg4ip. ---- How does a port renaming work? Should we do a pre-fetch { return -code error } in libmp4v2 as in the ethereal port? Is there some other way to achieve it? -- Ticket URL: <http://trac.macports.org/ticket/19141#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS