[haiku-bugs] Re: [Haiku] #12710: BPackageInfo; URL Validation Checks

  • From: "apl-haiku" <trac@xxxxxxxxxxxx>
  • Date: Sat, 07 May 2016 05:41:05 -0000

#12710: BPackageInfo; URL Validation Checks
--------------------------------+----------------------------
   Reporter:  apl-haiku         |      Owner:  bonefish
       Type:  enhancement       |     Status:  new
   Priority:  normal            |  Milestone:  Unscheduled
  Component:  Kits/Package Kit  |    Version:  R1/Development
 Resolution:                    |   Keywords:
 Blocked By:                    |   Blocking:
Has a Patch:  1                 |   Platform:  All
--------------------------------+----------------------------

Comment (by apl-haiku):

 Thanks for the pointer.  It seems that Jam is receiving instruction to
 include "gnuregex" into the build from "BuildSetup";

 {{{
 # Unlike glibc FreeBSD's libc doesn't have built-in regex support.
 if $(HOST_PLATFORM) = freebsd {
                 HOST_LIBROOT += /usr/lib/libgnuregex.so ;
                 HOST_STATIC_LIBROOT += /usr/lib/libgnuregex.so ;
 } else if $(HOST_PLATFORM) = darwin {
                 HOST_LIBROOT += libgnuregex_build.a ;
                 HOST_STATIC_LIBROOT += libgnuregex_build.a ;
 }
 }}}

 So this seems to insert the `libgnuregex_build.a` into the link before the
 object files.  I also added it at the end as well (I think that makes more
 sense?) in this case below;

 {{{
 cc -lm -L/opt/local/lib -dynamic -dynamiclib -Xlinker -flat_namespace -o \
 "/Volumes/HaikuSource/haiku/generated/objects/darwin/lib/libbe_build.so" \
 
"/Volumes/HaikuSource/haiku/generated/objects/darwin/x86_64/release/build/libroot/libroot_build_function_remapper.a"
 \
 "/Volumes/HaikuSource/haiku/generated/objects/darwin/lib/libroot_build.so"
 \
 
"/Volumes/HaikuSource/haiku/generated/objects/darwin/x86_64/release/build/libgnuregex/libgnuregex_build.a"
 \
 
"/Volumes/HaikuSource/haiku/generated/objects/darwin/x86_64/release/build/libbe/app/app_kit.o"
 \
 ...SNIP...
 
"/Volumes/HaikuSource/haiku/generated/objects/darwin/x86_64/release/build/libshared/libshared_build.a"
 \
 
"/Volumes/HaikuSource/haiku/generated/objects/darwin/x86_64/release/build/libgnuregex/libgnuregex_build.a"
 \
 -lz -lgcc_s.1 -lstdc++
 }}}

 Still the symbols remain undefined in the `libbe_build.so`;

 {{{
                  U _regcomp
                  U _regexec
                  U _regfree
 }}}

 Rather strange.  I will have to come back to it later.

--
Ticket URL: <https://dev.haiku-os.org/ticket/12710#comment:28>
Haiku <https://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: