Summary
Description: Unnamed repository; edit this file 'description' to name the repository.
Last Change: Wed 4/10/13 13:00
Recent Commits
>
--git a/Slackware/ati-packager.sh b/Slackware/ati-packager.sh
index b9e6a03..1d5e02c 100755
--- a/Slackware/ati-packager.sh
+++ b/Slackware/ati-packager.sh
@@ -26,7 +26,7 @@ function _init_env
{
[ $(id -u) -gt 0 ] && echo ${MESSAGE[6]} && exit 1;
- BUILD_VER=1.3.4;
+ BUILD_VER=1.3.6;
# ROOT_DIR = directory attuale
ROOT_DIR=$PWD;
@@ -135,7 +135,7 @@ function _check_external_command
if (( $USE_WHICH )); then
which ${DEPS[$i]} &> /dev/null;
else
- grep bin/${DEPS[$i]} ${DIR_PACKAGE}/* &> /dev/null;
+ grep "bin/${DEPS[$i]}\$" ${DIR_PACKAGE}/* &> /dev/null;
fi
if [ $? != 0 ]; then
diff --git a/Slackware/languages/ati-packager.en b/Slackware/languages/ati-packager.en
index 6db2901..024a50b 100644
--- a/Slackware/languages/ati-packager.en
+++ b/Slackware/languages/ati-packager.en
@@ -19,4 +19,9 @@ file not found
must be either blank or --dryrun
Install/Upgrade package/s
must be kill server X
-Refresh module
\ No newline at end of file
+Refresh module
+Found patch:
+I can't apply the patch: program patch not found
+applied
+Found the ati_to_gpl.patch, checking md5sum
+md5sum failed, it not seem the original ati_to_gpl.patch
\ No newline at end of file
diff --git a/Slackware/languages/ati-packager.it b/Slackware/languages/ati-packager.it
index e733df1..25235c5 100644
--- a/Slackware/languages/ati-packager.it
+++ b/Slackware/languages/ati-packager.it
@@ -19,4 +19,9 @@ file non trovato
deve essere o blank o --dryrun
Installazione/Upgrade dei pacchetti
si deve killare il server X
-Ricarico il modulo
\ No newline at end of file
+Ricarico il modulo
+Trovata la patch:
+non posso applicare la patch: programma patch mancante
+la applico
+Trovata la ati_to_gpl.patch, controllo l'md5sum
+L'md5sum è fallito, non sembra essere la ati_to_gpl.patch originale
\ No newline at end of file
diff --git a/Slackware/make_module.sh b/Slackware/make_module.sh
index 54c4aec..2a9c050 100644
--- a/Slackware/make_module.sh
+++ b/Slackware/make_module.sh
@@ -33,11 +33,9 @@ function _make_module
cd common/${MODULE_DIR};
- # Se ci sono, applico le patch (backward compatibility)
- if [ -f ${ROOT_DIR}/${SCRIPT_DIR}/patch_functions.sh ]; then
- source ${ROOT_DIR}/${SCRIPT_DIR}/patch_functions.sh;
- _module_patch;
- fi
+ # Se ci sono, applico le patch
+ source ${ROOT_DIR}/${SCRIPT_DIR}/patch_functions.sh;
+ _module_patch;
# Make modules with ati's script
if ! sh make.sh; then
diff --git a/Slackware/make_x.sh b/Slackware/make_x.sh
index e14c116..3eacf87 100644
--- a/Slackware/make_x.sh
+++ b/Slackware/make_x.sh
@@ -27,9 +27,35 @@ function _make_x
mv ${ROOT_DIR}/arch/${ARCH}/usr/* usr;
+ # Se l'architettura è a 64 bit, allora sposto, se necessario,
+ # anche la directory "${ROOT_DIR}/arch/x86/usr/lib" con le librerie
+ # a 32 bit.
+ # Ci sono due filosofie sulla posizione delle librerie a 32 bit in
+ # una distribuzione Slackware-based:
+ # 1) Le librerie a 64 bit vanno sotto /usr/lib64, mentre quelle a 32 bit
+ # vanno sotto /usr/lib (Slamd64)
+ # 2) Le librerie a 64 bit vanno sotto /usr/lib ed esiste un link
+ # /usr/lib64 che punta a /usr/lib, mentre le librerie a 32 bit vanno sotto
+ # /usr/lib32 (Bluewhite64)
+ if [ ${ARCH} = "x86_64" ]; then
+ if [ ! -h /usr/lib64 ]; then # Se /usr/lib64 non è un link, allora Slamd64
+ if [ -d /usr/lib ]; then # Se sono presenti già librerie a 32 bit
+ mv ${ROOT_DIR}/arch/x86/usr/lib usr; # Sposto le librerie sotto usr/lib
+ LIB_DIR=usr/lib; # Usata nel passaggio 1.1
+ fi
+ else # /usr/lib64 è un link simbolico, quindi Bluewhite64
+ if [ -d /usr/lib32 ]; then # Se sono presenti già librerie a 32 bit
+ mkdir usr/lib32;
+ mv ${ROOT_DIR}/arch/x86/usr/lib/* usr/lib32; # Sposto le librerie sotto usr/lib
+ LIB_DIR=usr/lib32; # Usata nel passaggio 1.1
+ fi
+ fi
+ fi
+
+ # Aggiungo directory nell'elenco delle directory con le librerie $LIB_DIR
case ${ARCH} in
x86_64)
- for lib_dir in usr/X11R6/lib64 usr/X11R6/lib; do
+ for lib_dir in usr/lib64 usr/X11R6/lib64 usr/X11R6/lib; do
if [ -d ${lib_dir}/ ]; then
LIB_DIR="${LIB_DIR} ${lib_dir}";
fi;
@@ -37,16 +63,18 @@ function _make_x
LIB_DIR=${LIB_DIR# }; # Tolgo l'eventuale spazio iniziale
;;
x86)
- LIB_DIR=usr/X11R6/lib;
+ LIB_DIR=usr/lib usr/X11R6/lib;
;;
esac
+ # 1.1)
# Make some symbolik link
for dir in ${LIB_DIR};
do
( cd $dir;
for file in *.so.1.?;
do
+ [ $file = '*.so.1.?' ] && break; # Se vero, allora non esistono file '*.so.1.?'
ln -s $file ${file%.*};
ln -s $file ${file%%.*}.so;
done
@@ -105,11 +133,15 @@ function _make_x
# 6)
# If use xorg >= 7, remove obsolete directory X11R6
+ # I moduli per il server X vanno ora sotto /usr/lib(64)/xorg/modules e non più
+ # sotto /usr/X11R6/lib(64)/modules
if (( $XORG_7 )); then
- for dir in ${LIB_DIR}; # Move X modules in usr/$LIB_DIR/xorg/modules
+ for dir in ${LIB_DIR}; # Move X usr/$LIB_DIR/modules in usr/$LIB_DIR/xorg/modules
do
- mkdir ${dir}/xorg;
- mv ${dir}/modules ${dir}/xorg;
+ if [ -d ${dir}/modules ]; then # Controllo che la directory sia una di quelle che contiene i moduli
+ mkdir ${dir}/xorg;
+ mv ${dir}/modules ${dir}/xorg;
+ fi
done
cp -rp usr/X11R6/* usr/;
rm -rf usr/X11R6;
diff --git a/Slackware/patch_functions.sh b/Slackware/patch_functions.sh
index c6778f3..03e0668 100644
--- a/Slackware/patch_functions.sh
+++ b/Slackware/patch_functions.sh
@@ -1,4 +1,41 @@
+# Applica le patch ai file prima di creare il modulo del kernel
+# Si dà la possibilità all'utente di patchare i file, se esiste
+# un file chiamato /etc/ati/patch/patch-${ATI_DRIVER_VER}-${KNL_VER}
+# allora la funzione esegue:
+# patch < /etc/ati/patch/patch-${ATI_DRIVER_VER}-${KNL_VER}
function _module_patch
{
- sed -i '/if.*\[.*$MODVERSIONS = 0 \]/{s/\($MODVERSIONS\)/"\1"/}' make.sh
+ local KNL_VER=$(uname -r)
+ local DIR_PATCH=/etc/ati/patch
+
+ # Vecchia patch per il file make.sh fornito dalla ATI
+ sed -i '/if.*\[.*$MODVERSIONS = 0 \]/{s/\($MODVERSIONS\)/"\1"/}' make.sh
+
+ # Controllo se l'utente ha delle patch da applicare
+ if [ -d $DIR_PATCH ]; then
+ for file in ${DIR_PATCH}/*; do
+ if [ -f $file ] && [ $file = "${DIR_PATCH}/patch-${ATI_DRIVER_VER}-${KNL_VER}" ]; then
+ _print_with_color '1;33' "${MESSAGE[22]}";
+ echo -e "\t$file";
+ if ! grep 'bin/patch$' ${DIR_PACKAGE}/* &> /dev/null; then
+ _print_with_color '1;31' "${MESSAGE[23]}\n";
+ else
+ _print_with_color '1;32' "${MESSAGE[24]}\n";
+ patch < $file;
+ fi
+ break;
+ fi
+ done
+
+ # Applico la ati_to_gpl.patch, se la trovo e se l'md5sum corrisponde
+ if [ -f ${DIR_PATCH}/ati_to_gpl.patch ]; then
+ _print_with_color '1;33' "${MESSAGE[25]}"
+ if md5sum -c ${ROOT_DIR}/${SCRIPT_DIR}/atg.md5sum; then #&> /dev/null; then
+ _print_with_color '1;32' "${MESSAGE[24]}\n";
+ sh ${DIR_PATCH}/ati_to_gpl.patch;
+ else
+ _print_with_color '1;31' "${MESSAGE[26]}\n";
+ fi
+ fi
+
Copyright © 2013 by Phoronix Media