[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Library Question



Am Montag, 9. Mai 2011 schrieb Paul Wise:
> On Sun, May 8, 2011 at 5:42 PM, Rainer Dorsch <rdorsch@web.de> wrote:
> > No, navit is a third party application, which I want to package on maemo.
> > Nokia does not ship any version of Navit (they ship the proprietary OVI
> > maps). Freetype belongs to the core system which is shipped by Nokia,
> > which I do not want to change, since I fear that it breaks other stuff.
> > But applying the patch in question specifically, I might consider it as
> > an option...
> > 
> > Yes, I understand, Debian would not introduce such a hack (although e.g.
> > libdb comes in a number of versions, libdb4.7, libdb4.8, libdb5.0,...).
> > But I am more looking for a tactical short term solution on which I can
> > iterate  and improve (e.g. why should I replace the Nokia freetype, when
> > I do not yet know, that this would fix the problem....).
> 
> Yeah, this situation is similar to backporting.
> 
> If you are unable to workaround the freetype bug in navit or use an
> older version of navit that works with that version of freetype, then
> try this:
> 
> Since the ABI is the same for both versions of freetype, I would
> suggest introducing a libfreetype6-navit package that contains the
> newer freetype library in a private directory and adding an rpath to
> navit pointing at that directory:
> 
> http://en.wikipedia.org/wiki/Rpath_(linking)

Can you give a few hints what I need to change in the freetype/debian/rules 
file to create a libfreetype6-navit package? I would think:
-> for the private directory: changing the prefix in ./configure
-> for the package name: dh_strip --dbg-package=libfreetype6 to dh_strip --
dbg-package=libfreetype6-navit
Anything else?

Hmm....what is the advantage of an rpath compared to a wrapper script with an 
LD_LIBRARY_PATH?

> This is better than static linking since you can upgrade
> libfreetype6-navit separately to navit.
> 
> > Cool, I was not aware of this effort. If GPS and modem support will be
> > added, the have a usable base system, I am really impressed of this
> > effort :-)
> > 
> > The biggest challenge are probably the missing hardware drivers (which
> > prohibit e.g. to update the maemo distribution with new kernels).
> 
> In addition the freesmartphone.org distribution SHR (based on
> OpenEmbedded) has a port to the N900 (in the early stages):
> 
> http://shr-project.org/trac/wiki/Devices/NokiaN900

Wow, did not see this one before, but I like pkg-n900 better :-)

> There is also an Android port:
> 
> http://www.nitdroid.com/

That one I saw before. I am more interested in a debian based system, than in 
android right now (given, that it does not work much better than the debian 
based systems).

Many thanks for your comments and links,
Rainer

-- 
Rainer Dorsch
Lärchenstr. 6
D-72135 Dettenhausen
07157-734133
email: rdorsch@web.de
jabber: rdorsch@jabber.org
GPG Fingerprint: 5966 C54C 2B3C 42CC 1F4F  8F59 E3A8 C538 7519 141E
Full GPG key: http://pgp.mit.edu/
#!/usr/bin/make -f


export DH_COMPAT=4

SHELL = /bin/bash

CFLAGS = -Wall -g

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif

ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif

# Use soft-float and thumb mode if it enabled.
ifneq (,$(findstring thumb,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -mthumb
endif

export CFLAGS

configure: configure-stamp
configure-stamp:
	dh_testdir
	tar -xjf freetype-2.3.9.tar.bz2
	patch -p0 < security-CVE-2009-0946.patch
	patch -p0 < armel-asm-declaration.patch
	cd freetype-2.3.9 && ./configure --prefix=/usr --sysconfdir=/etc
	touch configure-stamp


build: configure-stamp build-stamp
build-stamp:
	dh_testdir
	$(MAKE) -C freetype-2.3.9
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp
	rm -rf freetype-2.3.9
	rm -fr objs/.libs
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	$(MAKE) -C freetype-2.3.9 install DESTDIR=$(CURDIR)/debian/tmp
	

binary-indep: build install

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_makeshlibs -V
	dh_installchangelogs
	dh_install --sourcedir=debian/tmp -v
	dh_strip --dbg-package=libfreetype6
	dh_link
	dh_fixperms
	dh_makeshlibs -V
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: