From: Arkadiusz Miƛkiewicz Date: Thu, 27 May 2010 11:47:30 +0000 (+0000) Subject: - rel 3; x86_64 asm optimized now; nicer way of linking shared lib; export only requi... X-Git-Tag: auto/th/libvpx-0_9_0-3 X-Git-Url: https://git.pld-linux.org/?p=packages%2Flibvpx.git;a=commitdiff_plain;h=5cb653621b79ca10d552830e1253c594da0ab811 - rel 3; x86_64 asm optimized now; nicer way of linking shared lib; export only required symbols not all crap Changed files: libvpx.spec -> 1.10 libvpx.ver -> 1.1 --- diff --git a/libvpx.spec b/libvpx.spec index c79506f..c9e70e5 100644 --- a/libvpx.spec +++ b/libvpx.spec @@ -2,19 +2,15 @@ # Conditional build: %bcond_without asm -%ifarch %{x8664} -# buggy, non PIC asm code -%undefine with_asm -%endif - Summary: VP8, a high-quality video codec Name: libvpx Version: 0.9.0 -Release: 2 +Release: 3 License: BSD Group: Libraries Source0: http://webm.googlecode.com/files/%{name}-%{version}.tar.bz2 # Source0-md5: 9eb8e818d2f3263623c258fe66924082 +Source1: %{name}.ver Patch0: %{name}-0.9.0-no-explicit-dep-on-static-lib.patch URL: http://www.webmproject.org/ BuildRequires: /usr/bin/php @@ -76,13 +72,15 @@ sed -i "s|STRIP=.*|STRIP=|g" {libs,examples,docs}-*.mk %{__make} verbose=true target=libs \ CC="%{__cc}" -%{__cc} %{rpmldflags} -fPIC -o libvpx.so.0.0.0 -shared -Wl,-soname,libvpx.so.0 vpx_codec/src/*.o vpx_mem/*.o \ - vpx_scale/generic/*.o vp8/common/*.o vp8/common/generic/*.o vp8/*.o vp8/encoder/*.o \ - vp8/encoder/generic/*.o vp8/decoder/*.o vp8/decoder/generic/*.o vpx_config.c.o \ -%if %{with asm} - vp8/common/x*/*.o vp8/encoder/x*/*.o vp8/decoder/x*/*.o vpx_ports/*.o \ -%endif - -lm -lpthread +mkdir tmp +cd tmp +ar x ../libvpx_g.a +cd .. +%{__cc} %{rpmldflags} -fPIC -shared \ + -Wl,--no-undefined -Wl,-soname,libvpx.so.0 -Wl,--version-script,%{SOURCE1} -Wl,-z,noexecstack \ + -o libvpx.so.0.0.0 tmp/*.o \ + -pthread -lm +rm -rf tmp # Temporarily dance the static libs out of the way mv libvpx.a libNOTvpx.a diff --git a/libvpx.ver b/libvpx.ver new file mode 100644 index 0000000..d4b6ec2 --- /dev/null +++ b/libvpx.ver @@ -0,0 +1,56 @@ +{ global: +vpx_codec_build_config; +vpx_codec_control_; +vpx_codec_dec_init_ver; +vpx_codec_decode; +vpx_codec_destroy; +vpx_codec_enc_config_default; +vpx_codec_enc_config_set; +vpx_codec_enc_init_ver; +vpx_codec_encode; +vpx_codec_error; +vpx_codec_error_detail; +vpx_codec_err_to_string; +vpx_codec_get_caps; +vpx_codec_get_cx_data; +vpx_codec_get_frame; +vpx_codec_get_global_headers; +vpx_codec_get_mem_map; +vpx_codec_get_preview_frame; +vpx_codec_get_stream_info; +vpx_codec_iface_name; +vpx_codec_peek_stream_info; +vpx_codec_register_put_frame_cb; +vpx_codec_register_put_slice_cb; +vpx_codec_set_cx_data_buf; +vpx_codec_set_mem_map; +vpx_codec_version; +vpx_codec_version_extra_str; +vpx_codec_version_str; +vpx_codec_vp8_algo; +vpx_codec_vp8_cx_algo; +vpx_codec_vp8_dx_algo; +vpx_dec_control; +vpx_dec_decode; +vpx_dec_destroy; +vpx_dec_error; +vpx_dec_error_detail; +vpx_dec_err_to_string; +vpx_dec_get_caps; +vpx_dec_get_frame; +vpx_dec_get_mem_map; +vpx_dec_get_stream_info; +vpx_dec_iface_name; +vpx_dec_init_ver; +vpx_dec_peek_stream_info; +vpx_dec_register_put_frame_cb; +vpx_dec_register_put_slice_cb; +vpx_dec_set_mem_map; +vpx_dec_xma_init_ver; +vpx_enc_vp8_algo; +vpx_img_alloc; +vpx_img_flip; +vpx_img_free; +vpx_img_set_rect; +vpx_img_wrap; +local: *; };