Please help, how to build the libpurple framework?

Evan Schoenberg, M.D. evan at adium.im
Sun Aug 9 15:38:23 UTC 2009


On Aug 8, 2009, at 3:08 PM, Ryan Govostes wrote:

> There are new dependency build scripts in /Dependencies -- if you  
> update anything for the old scripts, please see if you can work out  
> how to change them in the new scripts as well.
>
> Right now they're set up to build 32/64-bit universal, but I think  
> we can probably switch them to 32-bit only for now

At 32-bit universal, we're looking at 31 MB uncompressed of new  
binaries & headers (I haven't seen what happens after stripping and  
deleting headers for a release yet).  I'm not sure that we'd be doing  
the majority a service by shipping 64-bit.

> . The remaining changes that are required are
> - figure out how to utilize pkgconfig so that dependencies from /opt  
> don't get in our way

We were using pkgconfig with the old scripts, right? It looks like  
PKG_CONFIG is being set in the new ones; this is newly not working, or  
it wasn't working in the first place?

> - work out how to compile in new stuff like gstreamer, sipe, gfire

It looks like we're doing a single configure and make for all  
architectures simultaneously? How does that work?  When doing liboil  
and the gstreamer plugins, the old scripts do this:
case $ARCH in
		ppc) TARGET_DIR="$TARGET_DIR_PPC"
			 export PATH="$PATH_PPC"
			 export PKG_CONFIG_PATH="$TARGET_DIR_PPC/lib/pkgconfig"
             export HOST="powerpc-apple-darwin"
             export NM="nm -arch ppc "
          	# We add -DHAVE_SYMBOL_UNDERSCORE because otherwise the
          	# Altivec functions for PPC are defined as __vec_memcpy  
rather
          	# than _vec_memcpy, which fails (liboil)
             export LOCAL_CFLAGS="-DHAVE_SYMBOL_UNDERSCORE";;
		i386) TARGET_DIR="$TARGET_DIR_I386"
			  export PATH="$PATH_I386"
			  export PKG_CONFIG_PATH="$TARGET_DIR_I386/lib/pkgconfig"
              export HOST="i386-apple-darwin9.6.0"
              export NM="nm -arch i386 "
              export LOCAL_CFLAGS="";;
	esac

what's the equivalent for a single cycle?

> - actually package up a framework

Is this just a matter of calling universalize.sh once the dylibs are  
built, or is there a new challenge produced here?

Cheers,
Evan





More information about the devel mailing list