-Amélioré fonctions de download des packages
[hvlinux.git] / stage4 / packages-update
index 7d6bf3c..65b82de 100755 (executable)
@@ -1,29 +1,16 @@
 #!/bin/bash
 
-LFS_STAGE="stage4"
 USE_LFS_PATCHES=1
 USE_BLFS_PATCHES=1
 USE_HV_PATCHES=1
 
-# Reading system configuration informations, functions and package versions.
-source ../sysinfos
-source ../functions
-source ../functions-update
-source ../packages-list
+source ../functions/main
 
-# Execute a return statement instead of exit, to be able to continue with
-# downloading other packages
-export RCMD_NO_EXIT=1
-
-update_packages_init
-
-if [ ${#} -eq 1 -a "x${1}" = "xtest" ]; then
-    export TEST_INTEGRITY=1
-fi
+update_packages_init ${*}
 
 lpkg     3 ${PYTHON}
 
-XORG_MODULES_LIST="${XORG_APP} ${XORG_DATA} ${XORG_DRIVER} ${XORG_FONT} ${XORG_LIB} ${XORG_PROTO} ${XORG_UTIL}"
+XORG_MODULES_LIST="${XORG_APP} ${XORG_DRIVER} ${XORG_FONT} ${XORG_LIB} ${XORG_PROTO} ${XORG_UTIL}"
 
 for module in ${XORG_MODULES_LIST}; do
     MOD_NAME=$(get_pkg_name ${module})
@@ -33,12 +20,19 @@ for module in ${XORG_MODULES_LIST}; do
     fpkg -d ${DEST_DIR} -e md5 ${module} ${BLFS_XORG_URL}
 
     if [ "${MOD_NAME}" = "driver" ]; then
-        # Remove unwanted drivers
-        for ext in wget md5; do
-            sed -i -e '/.*xf86-video-vmware.*/d' ${LFS_PKG_DIR}/${MOD_NAME}/${module}.${ext}
-            sed -i -e '/.*xf86-video-newport.*/d' ${LFS_PKG_DIR}/${MOD_NAME}/${module}.${ext}
-            sed -i -e '/.*xf86-video-xgixp.*/d' ${LFS_PKG_DIR}/${MOD_NAME}/${module}.${ext}
-        done
+       if [ -n "${XORG_VIDEO_DRIVER}" ]; then
+           # Install only specific driver
+            for ext in wget md5; do
+                sed -i -e "/xf86-video-${XORG_VIDEO_DRIVER}/!d" ${LFS_PKG_DIR}/${MOD_NAME}/${module}.${ext}
+            done
+       else
+            # Remove unwanted drivers
+            for ext in wget md5; do
+                for excldrv in vmware newport xgixp geode; do
+                    sed -i -e "/.*xf86-video-${excldrv}.*/d" ${LFS_PKG_DIR}/${MOD_NAME}/${module}.${ext}
+                done
+            done
+        fi
     fi
     if [ "${MOD_NAME}" = "app" ]; then
         # Remove unneeded apps
@@ -49,53 +43,64 @@ for module in ${XORG_MODULES_LIST}; do
     fi
 
     SUBMODS="$(grep -v '^#' ${LFS_PKG_DIR}/${MOD_NAME}/${module}.wget | sed 's!\.tar\.bz2$!!')"
-    
+
     for submod in ${SUBMODS}; do
-        fpkg_xorg ${submod} ${MOD_NAME}
+        fpkg -m xorg -s ${MOD_NAME} ${submod}
     done
 
     pushd ${DEST_DIR} >> ${LFS_LOG_FILE}
-    md5sum -c ${LFS_PKG_DIR}/${MOD_NAME}/${module}.md5 >> ${LFS_LOG_FILE}
-    if [ $? -ne 0 ]; then
-        echo "  md5sum error for ${module}"
+    # The "driver" md5 file maybe empty if the nouveau driver was selected
+    if cat ${LFS_PKG_DIR}/${MOD_NAME}/${module}.md5 | grep "[0-9]" 1> /dev/null 2>&1; then
+        md5sum -c ${LFS_PKG_DIR}/${MOD_NAME}/${module}.md5 >> ${LFS_LOG_FILE}
+        if [ $? -ne 0 ]; then
+            echo "  md5sum error for ${module}"
+        fi
     fi
     popd >> ${LFS_LOG_FILE}
 done
 
-fpkg_xorg  ${LIBXAU} lib
-fpkg_xorg  ${LIBXDMCP} lib
-fpkg_sf    ${LESSTIF}
-fpkg_xorg  ${XBITMAPS} data
-fpkg       ${LIBPTHREAD_STUBS} "http://xcb.freedesktop.org/dist"
-fpkg       ${LIBDRM}           "http://dri.freedesktop.org/libdrm"
-fpkg -s "$(get_pkg_ver ${MESALIB})" ${MESALIB} ftp://ftp.freedesktop.org/pub/mesa
-fpkg_xorg  ${XCURSOR_THEMES} data
-fpkg       ${XKEYBOARD_CONFIG} "http://xlibs.freedesktop.org/xkbdesc"
-fpkg_xorg  ${LUIT} app
-fpkg       ${PIXMAN} "http://cairographics.org/releases"
-fpkg       ${LIBFFI} "ftp://sourceware.org/pub/libffi"
-fpkg       ${DBUS} "http://dbus.freedesktop.org/releases/dbus"
-fpkg_gnome ${GLIB}
-fpkg_gnome ${GOBJECT_INSTROSPECTION}
-fpkg       ${DBUS_GLIB} "http://dbus.freedesktop.org/releases/dbus-glib"
-fpkg       ${EGGDBUS} "http://hal.freedesktop.org/releases"
-fpkg       ${POLKIT} "http://hal.freedesktop.org/releases"
-fpkg       ${CONSOLEKIT} "http://www.freedesktop.org/software/ConsoleKit/dist"
-fpkg       ${POLICYKIT} "http://hal.freedesktop.org/releases"
-fpkg       ${HAL} "http://hal.freedesktop.org/releases"
-fpkg       ${HAL_INFO} "http://hal.freedesktop.org/releases"
-
-fpkg_xorg  ${XORG_SERVER} xserver
-fpkg_xorg  ${XDM} app
-
-fpkg -e tgz ${XTERM} "ftp://invisible-island.net/xterm"
-
-fpkg       ${T1LIB} "http://www.ibiblio.org/pub/Linux/libs/graphics"
-
-fpkg_sf    ${TK} tcl
-                                                                 
-fpkg_gnu   ${EMACS}                                                                                                                                                                                                                     
-fpkg       ${WINDOWMAKER}       "http://windowmaker.info/pub/source/release"
-fpkg       ${WINDOWMAKER_EXTRA} "http://windowmaker.info/pub/source/release"
+fpkg -m xorg -s lib ${LIBXAU}
+fpkg -m xorg -s lib ${LIBXDMCP}
+fpkg -m sf ${LESSTIF}
+fpkg -m xorg -s data ${XBITMAPS}
+
+fpkg -m fd -o "dist" -s "xcb" ${LIBPTHREAD_STUBS}
+fpkg -m fd -o "dist" -s "xcb" ${XCB_PROTO}
+fpkg -m fd -o "dist" -s "xcb" ${XCB_UTIL}
+fpkg -m gnu ${GPERF}
+
+fpkg -m hv ${LIBDRM}
+fpkg -e "tar.gz" ${TALLOC} "http://samba.org/ftp/talloc"
+fpkg -s "$(get_pkg_ver ${MESALIB})" ${MESALIB} \
+    ftp://ftp.freedesktop.org/pub/mesa
+fpkg -m xorg -s data ${XCURSOR_THEMES}
+fpkg -m fd -o "xlibs" -s "xkbdesc" ${XKEYBOARD_CONFIG}
+
+fpkg -m xorg -s app ${LUIT}
+fpkg -e "tar.gz" ${PIXMAN} ${CAIRO_URL}
+fpkg -e "tar.gz" ${LIBFFI} "ftp://sourceware.org/pub/libffi"
+
+fpkg -m fd -o "releases/dbus" ${DBUS}
+fpkg -m gnome ${GLIB}
+fpkg -m gnome ${GOBJECT_INSTROSPECTION}
+fpkg -m fd -o "dbus" ${DBUS_GLIB}
+fpkg -m fd -o "hal" ${EGGDBUS}
+fpkg -m fd -o "hal" ${POLKIT}
+fpkg ${CONSOLEKIT} "http://www.freedesktop.org/software/ConsoleKit/dist"
+fpkg -m fd -o "hal" ${POLICYKIT}
+fpkg -m fd ${HAL}
+fpkg -m fd -o "hal" ${HAL_INFO}
+
+fpkg -m hv ${XORG_VIDEO_NOUVEAU}
+fpkg -m xorg -s xserver ${XORG_SERVER}
+fpkg -m xorg -s app ${XDM}
+
+fpkg -e "tgz" ${XTERM} "ftp://invisible-island.net/xterm"
+fpkg -e "tar.gz" ${T1LIB} "http://www.ibiblio.org/pub/Linux/libs/graphics"
+
+fpkg -m sf -s "tcl" ${TK}
+fpkg -m gnu ${EMACS}
+fpkg ${WINDOWMAKER} ${WMAKER_URL}
+fpkg -e "tar.gz" ${WINDOWMAKER_EXTRA} ${WMAKER_URL}
 
 exit $?