[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1064962: Doesn't have a .symbols for its library



Package: speexdsp
Version: 1.2.1-1
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu noble ubuntu-patch

The package builds a C library, it would be nice to have a .symbols included in the package to ensure there are no change to the exported symbols with future updates. The attached patch is adding the .symbols and enforcing the build to stop if the content is not matching. For context I'm uploading that patch to Ubuntu since that is one of the requirements for package promotion to the main pocket there and we are promoting speexdsp as it's a depends of pipewire now

Thanks,
diff -Nru speexdsp-1.2.1/debian/changelog speexdsp-1.2.1/debian/changelog
--- speexdsp-1.2.1/debian/changelog	2022-09-17 19:48:41.000000000 +0200
+++ speexdsp-1.2.1/debian/changelog	2024-02-28 12:27:53.000000000 +0100
@@ -1,3 +1,10 @@
+speexdsp (1.2.1-2) UNRELEASED; urgency=medium
+
+  * debian/libspeexdsp1.symbols, debian/rules:
+    - enforce symbols checking for the library
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Wed, 28 Feb 2024 12:27:53 +0100
+
 speexdsp (1.2.1-1) unstable; urgency=medium
 
   * New upstream release. (Closes: #1014555)
diff -Nru speexdsp-1.2.1/debian/libspeexdsp1.symbols speexdsp-1.2.1/debian/libspeexdsp1.symbols
--- speexdsp-1.2.1/debian/libspeexdsp1.symbols	1970-01-01 01:00:00.000000000 +0100
+++ speexdsp-1.2.1/debian/libspeexdsp1.symbols	2024-02-28 12:27:53.000000000 +0100
@@ -0,0 +1,58 @@
+libspeexdsp.so.1 libspeexdsp1 #MINVER#
+ jitter_buffer_ctl@Base 1.2.1
+ jitter_buffer_destroy@Base 1.2.1
+ jitter_buffer_get@Base 1.2.1
+ jitter_buffer_get_another@Base 1.2.1
+ jitter_buffer_get_pointer_timestamp@Base 1.2.1
+ jitter_buffer_init@Base 1.2.1
+ jitter_buffer_put@Base 1.2.1
+ jitter_buffer_remaining_span@Base 1.2.1
+ jitter_buffer_reset@Base 1.2.1
+ jitter_buffer_tick@Base 1.2.1
+ jitter_buffer_update_delay@Base 1.2.1
+ speex_buffer_destroy@Base 1.2.1
+ speex_buffer_get_available@Base 1.2.1
+ speex_buffer_init@Base 1.2.1
+ speex_buffer_read@Base 1.2.1
+ speex_buffer_resize@Base 1.2.1
+ speex_buffer_write@Base 1.2.1
+ speex_buffer_writezeros@Base 1.2.1
+ speex_decorrelate@Base 1.2.1
+ speex_decorrelate_destroy@Base 1.2.1
+ speex_decorrelate_new@Base 1.2.1
+ speex_echo_cancel@Base 1.2.1
+ speex_echo_cancellation@Base 1.2.1
+ speex_echo_capture@Base 1.2.1
+ speex_echo_ctl@Base 1.2.1
+ speex_echo_playback@Base 1.2.1
+ speex_echo_state_destroy@Base 1.2.1
+ speex_echo_state_init@Base 1.2.1
+ speex_echo_state_init_mc@Base 1.2.1
+ speex_echo_state_reset@Base 1.2.1
+ speex_preprocess@Base 1.2.1
+ speex_preprocess_estimate_update@Base 1.2.1
+ speex_preprocess_run@Base 1.2.1
+ speex_preprocess_state_destroy@Base 1.2.1
+ speex_preprocess_state_init@Base 1.2.1
+ speex_resampler_destroy@Base 1.2.1
+ speex_resampler_get_input_latency@Base 1.2.1
+ speex_resampler_get_input_stride@Base 1.2.1
+ speex_resampler_get_output_latency@Base 1.2.1
+ speex_resampler_get_output_stride@Base 1.2.1
+ speex_resampler_get_quality@Base 1.2.1
+ speex_resampler_get_rate@Base 1.2.1
+ speex_resampler_get_ratio@Base 1.2.1
+ speex_resampler_init@Base 1.2.1
+ speex_resampler_init_frac@Base 1.2.1
+ speex_resampler_process_float@Base 1.2.1
+ speex_resampler_process_int@Base 1.2.1
+ speex_resampler_process_interleaved_float@Base 1.2.1
+ speex_resampler_process_interleaved_int@Base 1.2.1
+ speex_resampler_reset_mem@Base 1.2.1
+ speex_resampler_set_input_stride@Base 1.2.1
+ speex_resampler_set_output_stride@Base 1.2.1
+ speex_resampler_set_quality@Base 1.2.1
+ speex_resampler_set_rate@Base 1.2.1
+ speex_resampler_set_rate_frac@Base 1.2.1
+ speex_resampler_skip_zeros@Base 1.2.1
+ speex_resampler_strerror@Base 1.2.1
diff -Nru speexdsp-1.2.1/debian/rules speexdsp-1.2.1/debian/rules
--- speexdsp-1.2.1/debian/rules	2022-04-02 03:52:40.000000000 +0200
+++ speexdsp-1.2.1/debian/rules	2024-02-28 12:27:53.000000000 +0100
@@ -2,6 +2,7 @@
 # -*- makefile -*-
 # Uncomment this to turn on verbose mode.
 # export DH_VERBOSE=1
+export DPKG_GENSYMBOLS_CHECK_LEVEL = 4
 
 # see FEATURE AREAS in dpkg-buildflags(1)
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all

Reply to: