# FAILURE prints text in a red colour
FAILURE="echo -en \\033[1;31m"
+# It seems that when compiling bash-4.0, using
+# "make -j 1" is causing problems...
+if [ "x${MAKEJOBS}" == "x1" ]; then
+ HVMAKE="make"
+else
+ HVMAKE="make -j ${MAKEJOBS}"
+fi
+
# Extracting the version number from a complete package name.
-# Arg. #1: Complete package name with version (ex: gcc-3.4.4 will output 3.4.4)
+# Arg. #1: Complete package name with version (ex: firefox-3.5.5.source will output 3.5.5)
get_pkg_ver()
{
# Checking for correct number of arguments
return 1
fi
- echo ${1} | sed "s!^.*-\(.*\)!\1!g"
+ echo ${1} | sed "s!.*-\(\([0-9]\.\)*\).*!\1!g" | sed 's!\.$!!g'
}
# Extracting the base version number from a complete package name.
{
local PACKAGE=${1}
- local DIRNAME=$(dirname $(tar -tf ${LFS_PKG_DIR}/${PACKAGE}.tar.bz2 | head -n1))
-
- if [ "x${DIRNAME}" == "x." ]; then
- DIRNAME=$(basename $(tar -tf ${LFS_PKG_DIR}/${PACKAGE}.tar.bz2 | head -n1))
- fi
+ local DIRNAME=$(tar -tf ${LFS_PKG_DIR}/${PACKAGE}.tar.bz2 | head -n1 | awk -F \/ '{print $1}')
echo ${DIRNAME}
}
if [ $# -eq 2 ]; then
TARGET_DIR=${2}
else
- TARGET_DIR=$(static_decompressed_dirname ${PACKAGE})
+ TARGET_DIR=${PACKAGE}
fi
# Checking if we can find at least one patch.
return ${EXIT_FAILURE}
fi
- local DECOMPRESSED_DIRNAME=$(static_decompressed_dirname ${PACKAGE})
-
- if [ -d ${TOPDIR}/${DECOMPRESSED_DIRNAME} ]; then
+ if [ -d ${TOPDIR}/${PACKAGE} ]; then
# Removing old source directory (if any)
- rm -v -rf ${TOPDIR}/${DECOMPRESSED_DIRNAME} || exit 1
+ rm -v -rf ${TOPDIR}/${PACKAGE} || exit 1
fi
# Decompressing package
ipkg()
{
# Checking for correct number of arguments
- if [ $# -ne 2 ]; then
+ if [ $# -lt 2 ]; then
echo
echo "${FUNCNAME}(): Wrong number of arguments"
echo " command was: \"${FUNCNAME}() $*\""
exit ${EXIT_FAILURE}
fi
- static_ipkg ${1} ${2} ${1}
+ local PACKAGE=${1}
+ shift
+ local CUSTOM_SCRIPT=${1}
+ shift
+ local CONFIGURE_OPTS=${*}
+
+ static_ipkg ${PACKAGE} ${CUSTOM_SCRIPT} ${PACKAGE} ${CONFIGURE_OPTS}
}
# Installation of a package conforming to GNU autotools.
exit ${EXIT_FAILURE}
fi
- PACKAGE_LOG=${LFS_LOG_DIR}/${PACKAGE_NAME}.log
+ PACKAGE_LOG=${LFS_LOG_DIR}/${LABEL}.log
# Checking if package was previously successfully installed
if grep "^${LABEL} successfully installed" ${LFS_LOG_FILE} \
decompress_package ${PACKAGE_NAME} 1>> ${PACKAGE_LOG} 2>&1
eval_retval2
- # Get the name of the decompressed directory
local DECOMPRESSED_DIRNAME=$(static_decompressed_dirname ${PACKAGE_NAME})
+ # Rename the decompressed package as per the package name if necessary
+ if [ "x${DECOMPRESSED_DIRNAME}" != "x${PACKAGE_NAME}" ]; then
+ mv ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ${LFS_TMP}/${PACKAGE_NAME} || exit 1
+ fi
+
# Displaying package source size in log file
- echo " Source size:" $(du -h -s ${LFS_TMP}/${DECOMPRESSED_DIRNAME} | awk '{ print $1 }') 1>> ${LFS_LOG_FILE}
+ echo " Source size:" $(du -h -s ${LFS_TMP}/${PACKAGE_NAME} | awk '{ print $1 }') 1>> ${LFS_LOG_FILE}
# Removing old build directory (if any)
if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
eval_retval2
# Displaying package build size in log file
- BUILD_SIZE=$(du -h -s -c ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ${LFS_TMP}/${PACKAGE_NAME}-build | grep total | awk '{ print $1 }')
+ BUILD_SIZE=$(du -h -s -c ${LFS_TMP}/${PACKAGE_NAME} ${LFS_TMP}/${PACKAGE_NAME}-build | grep total | awk '{ print $1 }')
echo " Build size : ${BUILD_SIZE}" 1>> ${LFS_LOG_FILE}
# Some scripts need to preserve the source or build directory. They can
# do so by renaming them.
- if [ -d ${LFS_TMP}/${DECOMPRESSED_DIRNAME} ]; then
+ if [ -d ${LFS_TMP}/${PACKAGE_NAME} ]; then
# Removing source directory
- rm -v -rf ${LFS_TMP}/${DECOMPRESSED_DIRNAME} 1>> ${PACKAGE_LOG} 2>&1
+ rm -v -rf ${LFS_TMP}/${PACKAGE_NAME} 1>> ${PACKAGE_LOG} 2>&1
eval_retval2
fi
if [ -d ${LFS_TMP}/${PACKAGE_NAME}-build ]; then
# Display the action name, run a command, log its output and display it's
# status. Write to install log file when successfully completed so it
# won't be called again after a successfull installation.
-# First argument: label (string)
-# Second argument: script name
+# First argument: Message to display during action
+# Second argument: script name (will be label)
run_script_log()
{
- LABEL=${1}
+ MSGSTRING=${1}
SCRIPT=${2}
+ LABEL=${SCRIPT}
# Checking for correct number of arguments
if [ $# -lt 2 ]; then
fi
# Displaying script name
- echo -n "[ ] ${LABEL}"
+ echo -n "[ ] ${MSGSTRING}"
echo "------------------------" 1>> ${LFS_LOG_FILE}
echo "Running " ${LABEL} 1>> ${LFS_LOG_FILE}
echo 1>> ${LFS_LOG_FILE}
GNU_URL="http://ftp.gnu.org/pub/gnu"
TETEX_URL="http://www.tug.org/ftp/tex-archive/systems/unix/teTeX"
-WGETCMD="wget --directory-prefix=${LFS_PKG_DIR} --timeout=5 --tries=3 -o ${WGET_LOG_FILE}"
+WGETCMD="wget --directory-prefix=${LFS_PKG_DIR} --timeout=5 --tries=3 -nc -c -o ${WGET_LOG_FILE}"
LFS_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-lfs.html
BLFS_PATCHES_LIST=${LFS_PKG_DIR}/patches-list-blfs.html
CLAMAV="clamav-0.93.3"
COREUTILS="coreutils-6.10"
CPIO="cpio-2.9"
-CUPS="cups-1.1.23"
+CUPS="cups-1.3.11"
CURL="curl-7.15.3"
CVS_PACKAGE="cvs-1.11.18"
ESOUND="esound-0.2.37"
EXPAT="expat-2.0.0"
-LIBFAAD2="faad2-2.6.1"
-LIBFAAC="faac-1.26"
+LIBFAAD2="faad2-2.7"
+LIBFAAC="faac-1.28"
FCRON="fcron-3.0.0"
FETCHMAIL="fetchmail-6.3.12"
-FFMPEG="ffmpeg-0.5"
+FFMPEG="ffmpeg-svn-20539"
FILE_PKG="file-4.26"
FINDUTILS="findutils-4.2.32"
-FIREFOX="firefox-3.5.1"
+FIREFOX="firefox-3.5.5.source"
FLAC="flac-1.2.1"
FLEX="flex-2.5.33"
FONTCONFIG="fontconfig-2.4.2"
KBD="kbd-1.12"
KERBEROS5="krb5-1.4.1"
-KERNEL="linux-2.6.31"
+KERNEL="linux-2.6.31.6"
KVM="kvm-84"
LAME="lame-3.97"
LIBPCAP="libpcap-0.9.4"
LIBTOOL="libtool-2.2.6a"
LIBSIGCPP="libsigc++-2.0.17"
-LIBOGG="libogg-1.1.3"
-LIBVORBIS="libvorbis-1.2.0"
-VORBIS_TOOLS="vorbis-tools-1.1.1"
+LIBOGG="libogg-1.1.4"
+LIBVORBIS="libvorbis-1.2.3"
+VORBIS_TOOLS="vorbis-tools-1.2.0"
LIBID3TAG="libid3tag-0.15.1b"
LIBMAD="libmad-0.15.1b"
LIBJPEG="libjpeg-6b"
LIBXKLAVIER="libxklavier-2.91"
LIBOIL="liboil-0.3.15"
LIBSAMPLERATE="libsamplerate-0.1.2"
+LIBTHEORA="libtheora-1.0"
LIBSPF2="libspf2-1.2.5"
LIBNOTIFY="libnotify-0.4.4"
LTSP_UTILS="ltsp-utils-0.25-0"
PYGOBJECT="pygobject-2.16.1"
PYGTK="pygtk-2.14.1"
-QT="qt-x11-free-3.3.5"
-
READLINE="readline-5.2"
REISERFSPROGS="reiserfsprogs-3.6.20"
RHYTHMBOX="rhythmbox-0.10.1"
SPAMASSASSIN="Mail-SpamAssassin-3.2.3"
SPEEX="speex-1.2rc1"
SPLINT="splint-3.1.1"
+SPLIX="splix-2.0.0"
SQLITE="sqlite-3.6.16"
SQUIRRELMAIL="squirrelmail-1.5.1"
STRACE="strace-4.5.15"
XFREE86="XFree86-4.6.0"
XMLTOMAN="xmltoman-0.4"
-XVIDCORE="xvidcore-1.1.0"
+XVIDCORE="xvidcore-1.2.2"
ZIP="zip-2.32"
ZLIB="zlib-1.2.3"
source ../functions
source ../packages-list
-# Applying patches (if any)
-apply_patches ${1} &&
+PACKAGE=${1}
-# Get the name of the decompressed directory
-SOURCE_DIR=$(static_decompressed_dirname ${1})
+# Applying patches (if any)
+apply_patches ${PACKAGE} &&
FIREFOX_BUILD_DIR="${1}-build"
+FIREFOX_PKG_VERSION="firefox-$(get_pkg_ver ${PACKAGE})"
-cd ${LFS_TMP}/${SOURCE_DIR} &&
+cd ${LFS_TMP}/${PACKAGE} &&
cat > .mozconfig << "EOF"
# This file contains the options used in the Firefox build.
# Remove old links
rm -f /usr/lib/mozilla &&
rm -f /usr/lib/firefox &&
-rm -f /usr/lib/${1}/plugins/libjavaplugin_oji.so &&
+rm -f /usr/lib/${FIREFOX_PKG_VERSION}/plugins/libjavaplugin_oji.so &&
-ln -v -sf ${1} /usr/lib/mozilla &&
-ln -v -sf ${1} /usr/lib/firefox &&
+ln -v -sf ${FIREFOX_PKG_VERSION} /usr/lib/mozilla &&
+ln -v -sf ${FIREFOX_PKG_VERSION} /usr/lib/firefox &&
# To use the installed Java plugin.
-ln -v -s ${JAVA_HOME}/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/${1}/plugins &&
+ln -v -s ${JAVA_HOME}/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/${FIREFOX_PKG_VERSION}/plugins &&
# Addition to /etc/ld.so.conf
# This is necessary for shared library libmozjs.so (needed by gxine)
-string_add "/usr/lib/${1}" /etc/ld.so.conf &&
+string_add "/usr/lib/${FIREFOX_PKG_VERSION}" /etc/ld.so.conf &&
ldconfig
--- /dev/null
+#!/bin/sh
+# First argument of this script is the package name.
+# Remaining arguments are additional configure options.
+
+# Reading system configuration informations, functions and package versions.
+source ../sysinfos
+source ../functions
+source ../packages-list
+
+PACKAGE=${1}
+shift
+CONFIGURE_OPTS=${*}
+
+# Reading system configuration informations, functions and package versions.
+source ../sysinfos
+source ../functions
+source ../packages-list
+
+# Applying patches (if any)
+apply_patches ${PACKAGE} &&
+
+cd ${LFS_TMP}/${PACKAGE} &&
+make DISABLE_JBIG=1 &&
+make install &&
+ldconfig
+
+# Return last error
+exit $?
fpkg ${DVDRWTOOLS} "http://fy.chalmers.se/~appro/linux/DVD+RW/tools"
fpkg_mis ${CUPS} "${CUPS}-source" "http://ftp.easysw.com/pub/cups/$(get_pkg_ver ${CUPS})"
+fpkg_sf ${SPLIX}
fpkg_mis ${ESPGS} "${ESPGS}-source" "http://ftp.easysw.com/pub/ghostscript/$(get_pkg_ver ${ESPGS})"
fpkg_sf ${GHOSTSCRIPT_FONTS_STD} "ghostscript"
fpkg ${LIBOGG} "http://downloads.xiph.org/releases/ogg"
fpkg ${LIBVORBIS} "http://downloads.xiph.org/releases/vorbis"
+fpkg ${LIBTHEORA} "http://downloads.xiph.org/releases/theora"
+
fpkg_hv ${FLAC}
-fpkg ${FFMPEG} "http://ffmpeg.org/releases"
+fpkg_hv ${FFMPEG}
fpkg ${XVIDCORE} "http://downloads.xvid.org/downloads"
# Audio utilities
fpkg_hv ${LIBA52}
fpkg_hv ${LIBID3TAG}
fpkg ${LIBMAD} "ftp://ftp.mars.org/pub/mpeg"
-fpkg_hv ${LIBFAAC}
-fpkg_hv ${LIBFAAD2}
+fpkg_sf ${LIBFAAC}
+fpkg ${LIBFAAD2} "http://downloads.sourceforge.net/faac"
fpkg_sf ${GRIP}
fpkg_sf ${CDRDAO}
fpkg_hv ${PORTAUDIO}
-##fpkg_sf ${WXGTK} "wxwindows"
-#fpkg_hv ${AUDACITY}
fpkg_hv ${SWEEP}
fpkg ${SYLPHEED} "http://sylpheed.good-day.net/sylpheed/v$(get_pkg_ver_base ${SYLPHEED})"
-fpkg ${QT} "http://ftp.silug.org/mirrors/ftp.trolltech.com/qt/source"
-
-fpkg_hv ${OPERA}
-fpkg_hv ${OPERA_LANG_FR}
-fpkg_hv ${AGG}
-fpkg ${GNASH} "http://ftp.gnu.org/pub/gnu/gnash/$(get_pkg_ver ${GNASH})"
fpkg ${SQLITE} "http://www.sqlite.org"
fpkg_hv ${NSS}
-# Il faut simplement renommer firefox-3.0.1-source.tar.bz2 en firefox-3.0.1.tar.bz2
-fpkg_hv ${FIREFOX}
+fpkg ${FIREFOX} "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/$(get_pkg_ver ${FIREFOX})/source"
fpkg_hv ${JAVA}
+fpkg_hv ${AGG}
+fpkg ${GNASH} "http://ftp.gnu.org/pub/gnu/gnash/$(get_pkg_ver ${GNASH})"
fpkg ${DBUS} "http://dbus.freedesktop.org/releases/dbus"
fpkg ${DBUS_GLIB} "http://dbus.freedesktop.org/releases/dbus-glib"
ipkg_ac ${INTLTOOL}
ipkg_ac ${GSL}
ipkg ${CUPS} cis-cups
+ipkg ${SPLIX} cis-splix # Drivers Samsung pour CUPS
ipkg ${ESPGS} cis-espgs
if [ "x${INST_TYPE}" = "xworkstation" -o "x${INST_TYPE}" = "xltsp-server" ]; then
ipkg_ac_nb ${LIBFAAC}
ipkg_ac_nb ${LIBFAAD2}
+ ipkg_ac ${LIBTHEORA}
+ ipkg ${XVIDCORE} cis-xvidcore
# Audio libraries
ipkg_ac_nb ${AUDIOFILE}
# Audio applications
ipkg_ac_nb ${GRIP} "--disable-id3"
ipkg_ac_nb ${CDRDAO}
- ######ipkg_ac ${WXGTK} "--enable-unicode"
- #####ipkg ${AUDACITY} cis-audacity # Depends on portaudio and wxgtk
ipkg_ac ${SWEEP} "--enable-pulseaudio"
ipkg_ac ${EASYTAG}
+
+ ipkg_ac_nb ${FFMPEG} "--enable-shared --enable-pthreads --enable-gpl --enable-nonfree --disable-ffplay \
+ --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora \
+ --enable-libvorbis --enable-libxvid"
fi
ipkg_ac ${SYLPHEED} "--enable-ssl --enable-ldap"
-
- ipkg ${QT} cis-qt
- ipkg ${OPERA} cis-opera
-
ipkg ${NSS} cis-nss
ipkg ${FIREFOX} cis-firefox
ipkg ${JAVA} cis-java
ipkg ${AGG} cis-agg
ipkg ${GNASH} cis-gnash
-
- ipkg_ac_nb ${FFMPEG} "--enable-shared --enable-pthreads --enable-swscaler --enable-liba52 \
- --enable-gpl --disable-ffplay --enable-libfaac --enable-libfaad \
- --enable-libmp3lame"
- ipkg ${XVIDCORE} cis-xvidcore
fi
ipkg ${DBUS} cis-dbus
init_log_file
-ipkg ${GNOME_DOC_UTILS} cis-gnome
+ipkg_gnome ${LIBGNOMECUPS}
+ipkg_gnome ${EVINCE}
exit $?