On Thu, Mar 31, 2016 at 11:37 AM, Andre McCurdy <[email protected]> wrote:
> On Thu, Mar 31, 2016 at 10:17 AM, Khem Raj <[email protected]> wrote:
>> Some package enquire using pkgconfig
>>
>> Change-Id: I4b7ac35930caf25b8ca04c3f5b34a193d4ed4a3d
>> Signed-off-by: Khem Raj <[email protected]>
>> ---
>>  .../libtinyxml2/libtinyxml2/libtinyxml2.pc         | 10 +++++++++
>>  .../recipes-support/libtinyxml2/libtinyxml2_git.bb | 26 
>> +++++++++++++---------
>>  2 files changed, 26 insertions(+), 10 deletions(-)
>>  create mode 100644 
>> meta-oe/recipes-support/libtinyxml2/libtinyxml2/libtinyxml2.pc
>>
>> diff --git a/meta-oe/recipes-support/libtinyxml2/libtinyxml2/libtinyxml2.pc 
>> b/meta-oe/recipes-support/libtinyxml2/libtinyxml2/libtinyxml2.pc
>> new file mode 100644
>> index 0000000..ef155a1
>> --- /dev/null
>> +++ b/meta-oe/recipes-support/libtinyxml2/libtinyxml2/libtinyxml2.pc
>> @@ -0,0 +1,10 @@
>> +prefix=/usr
>> +exec_prefix=${prefix}
>> +libdir=${exec_prefix}/lib
>> +includedir=${prefix}/include
>> +
>> +Name: TinyXml2
>> +Description: simple, small, C++ XML parser
>> +Version: 2.2.0
>> +Libs: -L${libdir} -ltinyxml2
>> +Cflags: -I${includedir}
>> diff --git a/meta-oe/recipes-support/libtinyxml2/libtinyxml2_git.bb 
>> b/meta-oe/recipes-support/libtinyxml2/libtinyxml2_git.bb
>> index 6ca6f7c..e1760e4 100644
>> --- a/meta-oe/recipes-support/libtinyxml2/libtinyxml2_git.bb
>> +++ b/meta-oe/recipes-support/libtinyxml2/libtinyxml2_git.bb
>> @@ -6,9 +6,13 @@ SECTION = "libs"
>>
>>  SRCREV = "d211bb13512cf4edb408e2c4badbcf4100ce0fd0"
>>
>> -PV = "2.2.0+git${SRCPV}"
>> +XML2VER = "2.2.0"
>>
>> -SRC_URI = "git://github.com/leethomason/tinyxml2.git"
>> +PV = "${XML2VER}+git${SRCPV}"
>> +
>> +SRC_URI = "git://github.com/leethomason/tinyxml2.git \
>> +           file://libtinyxml2.pc \
>> +          "
>>
>>  S = "${WORKDIR}/git"
>>
>> @@ -17,21 +21,23 @@ EXTRA_CXXFLAGS = "-I. -fPIC"
>>  do_compile() {
>>      ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxml2.o tinyxml2.cpp
>>      ${CXX} ${CXXFLAGS} \
>> -            -shared \
>> -            -Wl,-soname,libtinyxml2.so.${PV} \
>> -            -o libtinyxml2.so.${PV} \
>> -            ${LDFLAGS} \
>> -            tinyxml2.o
>> +        -shared \
>> +        -Wl,-soname,libtinyxml2.so.${XML2VER} \
>> +        -o libtinyxml2.so.${XML2VER} \
>> +        ${LDFLAGS} \
>> +        tinyxml2.o
>> +
>>  }
>>
>>  do_install() {
>>      install -d ${D}${libdir}
>> -    install -m 0755 ${S}/libtinyxml2.so.${PV} ${D}${libdir}
>> -    ln -sf libtinyxml2.so.${PV} ${D}${libdir}/libtinyxml2.so
>> +    install -m 0644 ${S}/libtinyxml2.so.${XML2VER} ${D}${libdir}
>> +    ln -sf libtinyxml2.so.${XML2VER} ${D}${libdir}/libtinyxml2.so
>> +    ln -sf libtinyxml2.so.${XML2VER} ${D}${libdir}/libtinyxml2.so.2
>
> Either set soname to libtinyxml2.so.2 or drop the libtinyxml2.so.2 symlink.

Or even better, drop all the custom tasks and just inherit cmake. It
looks like you'll get correct library versioning and a pkgconfig file
for free :-)

>>
>>      install -d ${D}${includedir}
>>      install -m 0644 ${S}/tinyxml2.h ${D}${includedir}
>> +    install -Dm644 ${WORKDIR}/libtinyxml2.pc 
>> ${D}${libdir}/pkgconfig/libtinyxml2.pc
>>  }
>>
>>  BBCLASSEXTEND += "native"
>> -
>> --
>> 1.9.1
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> [email protected]
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
-- 
_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Reply via email to