ports/118458: [UPDATE] multimedia/handbrake

Jeremy Messenger mezz7 at cox.net
Tue Dec 11 10:07:37 PST 2007


On Tue, 11 Dec 2007 11:39:06 -0600, Jeremy Messenger <mezz7 at cox.net> wrote:

> On Tue, 11 Dec 2007 11:27:11 -0600, Jeremy Messenger <mezz7 at cox.net>  
> wrote:
>
>> On Tue, 11 Dec 2007 05:42:48 -0600, Jona Joachim <jaj at hcl-club.lu>  
>> wrote:
>>
>> <snip>
>>> I tested it with your latest changes on my system and everything works
>>> as expected, on-the-fly DVD ripping was also fine.
>>>
>>> However it doesn't build in tinderbox.
>>>
>>> Here is the whole output:
>>> http://www.hcl-club.lu/~jaj/stuff/handbrake-0.9.1.log
>>>
>>> The main problem is that libvorbis doesn't build because it doesn't
>>> find libogg:
>>>
>>> checking for Ogg... no
>>> ...
>>> configure: error: must have Ogg installed!
>>>
>>> (on line 6678)
>>
>> Umm... I think I see a problem with it. It couldn't find ogg, because  
>> pkg-config does not exist. I have built handbrake and see in the  
>> config.log of libvorbis:
>>
>> ===================================
>> configure:20133: found /usr/local/bin/pkg-config
>> configure:20146: result: /usr/local/bin/pkg-config
>> configure:20164: checking for ogg >= 1.0
>> configure:20168: result: yes
>> configure:20172: checking OGG_CFLAGS
>> configure:20175: result: -I/usr/local/include
>> configure:20178: checking OGG_LIBS
>> configure:20181: result: -L/usr/local/lib -logg
>> ===================================
>>
>> Ouch, it built with my system's libogg rather than handbrake's libogg.  
>> It needs to be tweak the PKG_CONFIG_PATH by set it to  
>> 'PKG_CONFIG_PATH=$CONTRIB/lib/pkgconfig'. But after look inside  
>> libvorbis that there has options:
>>
>> ===================================
>>    --with-ogg=PFX   Prefix where libogg is installed (optional)
>>    --with-ogg-libraries=DIR   Directory where libogg library is  
>> installed (optional)
>>    --with-ogg-includes=DIR   Directory where libogg header files are  
>> installed (optional)
>> ===================================
>>
>> Let's add '--with-ogg-includes=$CONTRIB/include  
>> --with-ogg-libraries=$CONTRIB/lib' in files/patch-contrib-Jamfile after  
>> that '--with-ogg=$CONTRIB' to see if it helps in your tinderbox. If not  
>> then we will have to go with PKG_CONFIG_PATH stuff.

I couldn't help it, I did it myself and the --with-ogg-*= stuff above  
don't work.

> Maybe it's best for us to setup PKG_CONFIG_PATH too to avoid create  
> other problems. I haven't test it yet, so hopeful it won't cause another  
> problem to set 'PKG_CONFIG_PATH=$CONTRIB/lib/pkgconfig' without add  
> ${LOCALBASE}/libdata/pkgconfig. Try to add  
> 'CONFIGURE_ENV+=PKG_CONFIG_PATH=${WRKSRC}/contrib/lib/pkgconfig' in  
> Makefile.

The PKG_CONFIG_PATH method works great. I have modified Makefile to add  
pkg-config in build dependency and add CONFIGURE_ENV line too. The  
libvorbis's config.log now looks like this:

===================================
configure:20133: found /usr/local/bin/pkg-config
configure:20146: result: /usr/local/bin/pkg-config
configure:20164: checking for ogg >= 1.0
configure:20168: result: yes
configure:20172: checking OGG_CFLAGS
configure:20175: result:  
-I/usr/home/mezz/commit/handbrake/work/HandBrake/contrib/include
configure:20178: checking OGG_LIBS
configure:20181: result:  
-L/usr/home/mezz/commit/handbrake/work/HandBrake/contrib/lib -logg
===================================

Update: http://people.freebsd.org/~mezz/diff/handbrake.diff

Let me know how it works for your tinderbox with this change. Okay, I will  
quit spamming around. :-)

Cheers,
Mezz

> Cheers,
> Mezz
>
>>> The are some other minor problems.
>>
>> What other minor problems?
>>
>>> Unfortunately tinderbox always cleans the work folder after it
>>> finishes. I don't know how to make it keep it to have a look at what's
>>> going wrong.
>>
>> Are you using MC tinderbox? If yes, there has README at about 290 line:
>>
>> ===================================
>> Sometimes, the log alone is not sufficient for figuring out
>> why a port failed to build.  In such cases, one must also see the port's
>> work directory.  To have Tinderbox save this, create an empty file  
>> called
>> ``.keep'' in the port's directory, and the work directory will be  
>> tarred,
>> compressed, and copied to ${pb}/wrkdirs/{BUILD} (where {BUILD} is the
>> Build name).
>> ===================================
>>
>> I used to have a MC tinderbox, but that system has died some months  
>> ago. I haven't buy a cheap system for tinderbox yet.
>>
>> Cheers,
>> Mezz


-- 
mezz7 at cox.net  -  mezz at FreeBSD.org
FreeBSD GNOME Team  -  FreeBSD Multimedia Hat (ports, not src)
http://www.FreeBSD.org/gnome/  -  gnome at FreeBSD.org
http://wiki.freebsd.org/multimedia  -  multimedia at FreeBSD.org


More information about the freebsd-multimedia mailing list