tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: dynamic object dependencies of libvpx.so in wip/libvpx
On Sun, Jan 16, 2011 at 06:58:48AM +0900, Ryo ONODERA wrote:
> Hi,
>
> Manually libtool-ized libvpx.so from wip/libvpx has
> inappropriate ldd output.
>
> Original build's ldd output:
> /usr/tmp/wip/libvpx/work/libvpx-v0.9.5/libvpx.so.0.9.5:
> -lpthread.1 => /usr/lib/libpthread.so.1
> -lc.12 => /usr/lib/libc.so.12
> -lm.0 => /usr/lib/libm.so.0
>
> Libtool-ized build's ldd output
> /usr/tmp/wip/libvpx/work/libvpx-v0.9.5/.libs/libvpx.so.0.9.5:
> -lc.12 => /usr/lib/libc.so.12
>
>
> Can anyone provide me clue for this problem?
Hi,
The extralibs are missing. The patches may fix the issue.
-rxg
$NetBSD$
--- build/make/Makefile.orig 2010-10-28 13:14:14.000000000 +0000
+++ build/make/Makefile
@@ -102,7 +102,7 @@ $(BUILD_PFX)%.c.d: %.c
$(BUILD_PFX)%.c.o: %.c
$(if $(quiet),@echo " [CC] $@")
- $(qexec)$(CC) $(CFLAGS) -c -o $@ $<
+ $(qexec)${LIBTOOL} --mode=compile $(CC) $(CFLAGS) -c -o $@ $<
$(BUILD_PFX)%.asm.d: %.asm
$(if $(quiet),@echo " [DEP] $@")
@@ -112,7 +112,8 @@ $(BUILD_PFX)%.asm.d: %.asm
$(BUILD_PFX)%.asm.o: %.asm
$(if $(quiet),@echo " [AS] $@")
- $(qexec)$(AS) $(ASFLAGS) -o $@ $<
+ $(qexec)${LIBTOOL} --mode=compile --tag=CC sh strip_fPIC.sh \
+ $(AS) $(ASFLAGS) -o $@ $<
$(BUILD_PFX)%.s.d: %.s
$(if $(quiet),@echo " [DEP] $@")
@@ -188,7 +189,8 @@ define linker_template
$(1): $(filter-out -%,$(2))
$(1):
$(if $(quiet),@echo " [LD] $$@")
- $(qexec)$$(LD) $$(strip $$(LDFLAGS) -o $$@ $(2) $(3) $$(extralibs))
+ $(qexec)${LIBTOOL} --mode=link $(CC) -o $$@ $$(filter-out -lvpx,$(2)) \
+ libvpx.la
endef
# make-3.80 has a bug with expanding large input strings to the eval function,
# which was triggered in some cases by the following component of
@@ -201,8 +203,12 @@ endef
define install_map_template
$(DIST_DIR)/$(1): $(2)
$(if $(quiet),@echo " [INSTALL] $$@")
- $(qexec)mkdir -p $$(dir $$@)
- $(qexec)cp -p $$< $$@
+ $(qexec)${BSD_INSTALL_DATA} -d -m 755 $$(dir $$@)
+ $$(if $$(filter %.a,$$<), \
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} -c $$(patsubst
%.a,%.la,$$<) $$(dir $$@), \
+ $$(if $$(filter %.h,$$<), \
+ ${BSD_INSTALL_DATA} -c -m 644 $$< $$(dir $$@), \
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} -c -s $$< $$(dir $$@)))
endef
define archive_template
@@ -211,7 +217,9 @@ define archive_template
# for creating them.
$(1):
$(if $(quiet),@echo " [AR] $$@")
- $(qexec)$$(AR) $$(ARFLAGS) $$@ $$?
+ $(qexec)${LIBTOOL} --mode=link $(CC) -o $$(patsubst %.a,%.la,$$@) \
+ $$(patsubst %.o,%.lo,$$?) -rpath $(DIST_DIR)/lib $$(extralibs) \
+ -version-info $(VERSION_MINOR):$(VERSION_PATCH):$(VERSION_MINOR)
endef
define so_template
@@ -290,7 +298,7 @@ clean::
LIBS=$(call enabled,LIBS)
.libs: $(LIBS)
@touch $@
-$(foreach lib,$(filter %_g.a,$(LIBS)),$(eval $(call archive_template,$(lib))))
+$(foreach lib,$(filter %.a,$(LIBS)),$(eval $(call archive_template,$(lib))))
$(foreach lib,$(filter
%so.$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH),$(LIBS)),$(eval $(call
so_template,$(lib))))
INSTALL-LIBS=$(call cond_enabled,CONFIG_INSTALL_LIBS,INSTALL-LIBS)
$NetBSD$
--- libs.mk.orig 2010-10-28 13:14:14.000000000 +0000
+++ libs.mk
@@ -176,8 +176,9 @@ endif
else
LIBVPX_OBJS=$(call objs,$(CODEC_SRCS))
OBJS-$(BUILD_LIBVPX) += $(LIBVPX_OBJS)
-LIBS-$(BUILD_LIBVPX) += $(BUILD_PFX)libvpx.a $(BUILD_PFX)libvpx_g.a
-$(BUILD_PFX)libvpx_g.a: $(LIBVPX_OBJS)
+LIBS-$(BUILD_LIBVPX) += $(BUILD_PFX)libvpx.a
+$(BUILD_PFX)libvpx.a: $(LIBVPX_OBJS)
+$(BUILD_PFX)libvpx.a: extralibs += -lm -pthread
BUILD_LIBVPX_SO := $(if $(BUILD_LIBVPX),$(CONFIG_SHARED))
LIBVPX_SO :=
libvpx.so.$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)
Home |
Main Index |
Thread Index |
Old Index