瀏覽代碼

Evil hack to workaround build problems under Debian (at least 3.1) (and derived platforms) where a Debian install-info(8) exists which is both API and functionally incompatible to the de-facto standardized install-info(8) command from GNU Texinfo. ATTENTION: THIS SHOULD BE REPLACED ASAP WITH A MORE GENERIC BUILD COMMAND OVERRIDE SOLUTION! This solution was just hacked in as a cruel workaround in order to already get OpenPKG 2.1 running out-of-the-box under Debian 3.1-PRE because it is the preferred bleeding-edge platform of one of our beloved project stakeholders ;-) So, for god's sake...

Ralf S. Engelschall 21 年之前
父節點
當前提交
93ff9c3654
共有 3 個文件被更改,包括 23 次插入1 次删除
  1. 1 0
      openpkg/HISTORY
  2. 21 0
      openpkg/openpkg.spec
  3. 1 1
      openpkg/rpmmacros

+ 1 - 0
openpkg/HISTORY

@@ -2,6 +2,7 @@
 2004
 ====
 
+20040602 add evil hack to workaround Debian 3.1 install-info(8) conflicts
 20040602 remove unused code from run-command processor
 20040602 prevent gcc 2.95 from optimizing RPM DB's sha1.c and run into a virtual memory exhaustion situation
 20040601 fixate path to GnuPG, because RPM 4.2 passes argument directly to execve(2)

+ 21 - 0
openpkg/openpkg.spec

@@ -1867,6 +1867,27 @@ Provides:     openpkg = 2.0.3-2.0.3
         ) | %{l_prefix}/lib/openpkg/rpmtool msg -b -t warn
     fi
 
+    #   FIXME: Evil hack to workaround build problems under Debian
+    #   (at least 3.1) (and similar platforms) where a Debian
+    #   install-info(8) exists which is both API and functionally
+    #   incompatible to the de-facto standardized install-info(8)
+    #   command from GNU Texinfo. ATTENTION: THIS SHOULD BE REPLACED
+    #   ASAP WITH A MORE GENERIC BUILD COMMAND OVERRIDE SOLUTION!
+    case "`cat %{l_prefix}/etc/openpkg/platform`" in
+        *-*-debian* )
+            if [ ! -d %{l_prefix}/lib/openpkg/override ]; then
+                mkdir %{l_prefix}/lib/openpkg/override >/dev/null 2>&1 || true
+            fi
+            if [ ! -f %{l_prefix}/lib/openpkg/override/install-info ]; then
+                ( echo "#!/bin/sh"
+                  echo "echo 'OpenPKG: NOTICE: install-info(8) command execution overridden'"
+                  echo "exit 0"
+                ) >%{l_prefix}/lib/openpkg/override/install-info
+                chmod 775 %{l_prefix}/lib/openpkg/override/install-info
+            fi
+            ;;
+    esac
+
 %preun
     [ ".$1" != .0 ] && exit 0
 

+ 1 - 1
openpkg/rpmmacros

@@ -358,7 +358,7 @@ Provides: %{name}::%{1} = %(echo '%{expand:%%{%{1}}}' | sed -e 's;%%;%%%%;g' -e
 %l_fetch_backup_9        ftp://ftp.openpkg.org/sources/DST/%{name}/
 
 #   sane build environment setup
-%l_build_path            %{l_prefix}/bin:%{l_prefix}/sbin:@l_build_path@
+%l_build_path            %(if [ -d %{l_prefix}/lib/openpkg/override ]; then echo "%{l_prefix}/lib/openpkg/override:"; fi)%{l_prefix}/bin:%{l_prefix}/sbin:@l_build_path@
 %l_build_ldlp            %{l_prefix}/lib:@l_build_ldlp@
 %l_build_ulim            @l_build_ulim@
 %l_build_shell_cmd       %{l_prefix}/lib/openpkg/bash