summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJaka Kranjc2009-01-03 14:21:29 +0100
committerJaka Kranjc2009-01-03 14:22:13 +0100
commit4d6ca170ee2abe1325dad806ddd7ae28a0cc825d (patch)
treea9ecc172880a4b21afa2469fe5a0fc2f711656e4
parent7292d46601b3edea535e783d8f0b77f77a0920e9 (diff)
gpm: UP_TRIGGERS: added due to soname change
-rw-r--r--utils/gpm/HISTORY1
-rwxr-xr-xutils/gpm/UP_TRIGGERS16
2 files changed, 17 insertions, 0 deletions
diff --git a/utils/gpm/HISTORY b/utils/gpm/HISTORY
index 5c3b06cbed..b12d483bbe 100644
--- a/utils/gpm/HISTORY
+++ b/utils/gpm/HISTORY
@@ -1,4 +1,5 @@
2009-01-03 Jaka Kranjc <lynxlynxlynx@sourcemage.org>
+ * UP_TRIGGERS: added due to soname change
* gpm-OPEN_MAX-2.patch: removed, no longer needed
* gpm-OPEN_MAX-1.patch: removed, no longer needed
* PRE_BUILD: removed, no longer needed
diff --git a/utils/gpm/UP_TRIGGERS b/utils/gpm/UP_TRIGGERS
new file mode 100755
index 0000000000..e5472f9039
--- /dev/null
+++ b/utils/gpm/UP_TRIGGERS
@@ -0,0 +1,16 @@
+# add new versions here if the soname changes
+local API_BREAK_VERSIONS="1.20.1 "
+
+if spell_ok $SPELL; then
+ local OLD_SPELL_VERSION=$(installed_version $SPELL)
+ if list_find "$API_BREAK_VERSIONS" $OLD_SPELL_VERSION; then
+ message "This is a possibly incompatible update of $SPELL..."
+ message "Figuring out what spells need to be recast, this may take a while."
+ for each in $(show_up_depends $SPELL 1); do
+ if gaze install $each | xargs readelf -d 2> /dev/null |
+ grep -q "NEEDED.*libgpm.*${OLD_SPELL_VERSION:0:3}"; then
+ up_trigger $each cast_self
+ fi
+ done
+ fi
+fi