diff options
Diffstat (limited to 'poky/meta/recipes-support/serf')
-rw-r--r-- | poky/meta/recipes-support/serf/serf/env.patch | 28 | ||||
-rw-r--r-- | poky/meta/recipes-support/serf/serf/norpath.patch | 42 | ||||
-rw-r--r-- | poky/meta/recipes-support/serf/serf_1.3.9.bb | 26 |
3 files changed, 96 insertions, 0 deletions
diff --git a/poky/meta/recipes-support/serf/serf/env.patch b/poky/meta/recipes-support/serf/serf/env.patch new file mode 100644 index 000000000..9d073e9ab --- /dev/null +++ b/poky/meta/recipes-support/serf/serf/env.patch @@ -0,0 +1,28 @@ +'scons' cleans the environment which breaks ccache builds because +CCACHEDIR can point to an unexpected location: + +| ccache arm-linux-gnueabi-gcc ... context.c +| ccache: failed to create .../serf/1.3.6-r0/.home/.ccache (No such file or directory) + +Issue is described in + + http://www.scons.org/wiki/ImportingEnvironmentSettings + +and because 'bitbake' cleans environment we can pass it completely +instead of trying to enumerate needed env. + +Upstream-Status: Inappropriate + + +Index: serf-1.3.6/SConstruct +=================================================================== +--- serf-1.3.6.orig/SConstruct ++++ serf-1.3.6/SConstruct +@@ -149,6 +149,7 @@ if sys.platform == 'win32': + env = Environment(variables=opts, + tools=('default', 'textfile',), + CPPPATH=['.', ], ++ ENV = os.environ, + ) + + env.Append(BUILDERS = { diff --git a/poky/meta/recipes-support/serf/serf/norpath.patch b/poky/meta/recipes-support/serf/serf/norpath.patch new file mode 100644 index 000000000..c392444f7 --- /dev/null +++ b/poky/meta/recipes-support/serf/serf/norpath.patch @@ -0,0 +1,42 @@ +The RPATH handling in serf is all wrong for us and we don't need it +anyway so hack around it by removing this for now. + +Upstream-Status: Inappropriate + +RP 2014/7/17 + +Index: serf-1.3.9/SConstruct +=================================================================== +--- serf-1.3.9.orig/SConstruct ++++ serf-1.3.9/SConstruct +@@ -224,8 +224,7 @@ if sys.platform != 'win32': + else: + LIBNAMESTATIC = 'serf-${MAJOR}' + +-env.Append(RPATH=libdir, +- PDB='${TARGET.filebase}.pdb') ++env.Append(PDB='${TARGET.filebase}.pdb') + + if sys.platform == 'darwin': + # linkflags.append('-Wl,-install_name,@executable_path/%s.dylib' % (LIBNAME,)) +@@ -385,12 +384,6 @@ if gssapi and CALLOUT_OKAY: + if sys.platform == 'win32': + env.Append(CPPDEFINES=['SERF_HAVE_SSPI']) + +-# On some systems, the -R values that APR describes never make it into actual +-# RPATH flags. We'll manually map all directories in LIBPATH into new +-# flags to set RPATH values. +-for d in env['LIBPATH']: +- env.Append(RPATH=':'+d) +- + # Set up the construction of serf-*.pc + pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,), + env.File('build/serf.pc.in'), +@@ -461,7 +454,6 @@ else: + TEST_EXES = [ os.path.join('test', '%s' % (prog)) for prog in TEST_PROGRAMS ] + + # Find the (dynamic) library in this directory +-tenv.Replace(RPATH=thisdir) + tenv.Prepend(LIBS=[LIBNAMESTATIC, ], + LIBPATH=[thisdir, ]) + diff --git a/poky/meta/recipes-support/serf/serf_1.3.9.bb b/poky/meta/recipes-support/serf/serf_1.3.9.bb new file mode 100644 index 000000000..2be5a069c --- /dev/null +++ b/poky/meta/recipes-support/serf/serf_1.3.9.bb @@ -0,0 +1,26 @@ +SUMMARY = "High-Performance Asynchronous HTTP Client Library" +SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://norpath.patch \ + file://env.patch" + +SRC_URI[md5sum] = "370a6340ff20366ab088012cd13f2b57" +SRC_URI[sha256sum] = "549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +DEPENDS = "python-scons-native openssl apr apr-util util-linux expat" + +do_compile() { + ${STAGING_BINDIR_NATIVE}/scons ${PARALLEL_MAKE} PREFIX=${prefix} \ + CC="${CC}" \ + APR=`which apr-1-config` APU=`which apu-1-config` \ + CFLAGS="${CFLAGS}" LINKFLAGS="${LDFLAGS}" \ + OPENSSL="${STAGING_EXECPREFIXDIR}" +} + +do_install() { + ${STAGING_BINDIR_NATIVE}/scons PREFIX=${D}${prefix} LIBDIR=${D}${libdir} install +} + +BBCLASSEXTEND = "native" |