From 3fb13cf968ef5335a9d22601dfdcddd7189207a8 Mon Sep 17 00:00:00 2001 From: gobo72 Date: Sun, 19 Aug 2012 11:57:51 +0000 Subject: [PATCH] =?utf8?q?-Passage=20=C3=A0=20udev-182=20et=20=C3=A0=20/de?= =?utf8?q?v=20int=C3=A9gr=C3=A9=20au=20kernel.=20-Ajout=20mount=20/run=20-?= =?utf8?q?Remplacement=20de=20module-init-tools=20par=20kmod=20-=C3=89limi?= =?utf8?q?nation=20de=20Python=20au=20stage=203=20(install=C3=A9=20au=20st?= =?utf8?q?age=202=20et=20r=C3=A9-install=C3=A9=20au=20stage=204):=20=C3=A0?= =?utf8?q?=20tester=20-=C3=89limination=20de=20Orbit2=20et=20libIDL:=20?= =?utf8?q?=C3=A0=20tester=20-Ajout=20de=20"set=20+h"=20=C3=A0=20bash=20pou?= =?utf8?q?r=20ne=20pas=20qu'il=20se=20rappelle=20du=20chemin=20d'acc=C3=A8?= =?utf8?q?s=20=20des=20commandes=20durant=20l'installation,=20car=20par=20?= =?utf8?q?exaemple=20quand=20on=20installe=20=20coreutils,=20on=20d=C3=A9p?= =?utf8?q?lace=20la=20commande=20"mv".?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- TODO | 2 -- config/amd64/config-linux-3.4.7 | 46 +++++++++++++++++++++++--- config/dependencies | 7 ++-- config/packages-list | 58 ++++++++++++++++----------------- config/urls | 1 + functions/main | 4 +++ stage0/hv-install-2 | 5 ++- stage0/packages-update | 6 ++-- stage0/pkg/{cloog-ppl => cloog} | 4 +-- stage0/pkg/eglibc | 6 ++++ stage0/pkg/gcc | 1 + stage1/bootscripts/mountkernfs | 7 ++-- stage1/bootscripts/udev | 16 ++++----- stage1/create-config-files | 1 + stage1/create-directories | 2 +- stage1/create-symlinks | 10 +++--- stage1/hv-install-2 | 8 ++--- stage1/packages-update | 6 ++-- stage1/pkg/{cloog-ppl => cloog} | 0 stage1/pkg/coreutils | 11 ------- stage1/pkg/kmod | 27 +++++++++++++++ stage1/pkg/module-init-tools | 18 ---------- stage1/pkg/udev | 19 ++++++++--- stage2/create-root-password | 6 ++++ stage2/hv-install-1 | 5 +-- stage2/hv-install-2 | 6 ++-- stage2/packages-update | 9 +++-- stage2/pkg/eglibc | 2 +- stage2/pkg/kmod | 27 +++++++++++++++ stage2/pkg/module-init-tools | 36 -------------------- stage2/pkg/udev | 10 +++--- stage3/TODO | 1 - stage3/hv-install-1 | 1 - stage3/packages-update | 3 -- stage4/packages-update | 2 +- stage5/TODO | 3 +- stage5/hv-install-1 | 3 -- stage5/packages-update | 2 -- stage5/pkg/GConf | 8 +++++ 39 files changed, 218 insertions(+), 171 deletions(-) rename stage0/pkg/{cloog-ppl => cloog} (63%) rename stage1/pkg/{cloog-ppl => cloog} (100%) create mode 100644 stage1/pkg/kmod delete mode 100644 stage1/pkg/module-init-tools create mode 100755 stage2/create-root-password create mode 100644 stage2/pkg/kmod delete mode 100644 stage2/pkg/module-init-tools diff --git a/TODO b/TODO index ab0a126..fe2b302 100644 --- a/TODO +++ b/TODO @@ -14,8 +14,6 @@ -Enlever automatiquement les patches antérieures du style: [module]-[version]-[nom_patch]-[version_patch] --install guitartex - -installer modes emacs: php, html, css, etc. -install gdb. diff --git a/config/amd64/config-linux-3.4.7 b/config/amd64/config-linux-3.4.7 index 662cd70..057bf86 100644 --- a/config/amd64/config-linux-3.4.7 +++ b/config/amd64/config-linux-3.4.7 @@ -99,7 +99,19 @@ CONFIG_IKCONFIG=m CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=17 CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -# CONFIG_CGROUPS is not set +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +# CONFIG_CGROUP_FREEZER is not set +# CONFIG_CGROUP_DEVICE is not set +# CONFIG_CPUSETS is not set +# CONFIG_CGROUP_CPUACCT is not set +# CONFIG_RESOURCE_COUNTERS is not set +# CONFIG_CGROUP_PERF is not set +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +# CONFIG_CFS_BANDWIDTH is not set +# CONFIG_RT_GROUP_SCHED is not set +# CONFIG_BLK_CGROUP is not set # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_NAMESPACES=y # CONFIG_UTS_NS is not set @@ -107,7 +119,7 @@ CONFIG_NAMESPACES=y # CONFIG_USER_NS is not set # CONFIG_PID_NS is not set # CONFIG_NET_NS is not set -# CONFIG_SCHED_AUTOGROUP is not set +CONFIG_SCHED_AUTOGROUP=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_RELAY is not set # CONFIG_BLK_DEV_INITRD is not set @@ -692,6 +704,7 @@ CONFIG_LLC=m CONFIG_DNS_RESOLVER=y # CONFIG_BATMAN_ADV is not set # CONFIG_OPENVSWITCH is not set +# CONFIG_NETPRIO_CGROUP is not set CONFIG_BQL=y CONFIG_HAVE_BPF_JIT=y # CONFIG_BPF_JIT is not set @@ -741,7 +754,8 @@ CONFIG_MAC80211_LEDS=y # Generic Driver Options # CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -# CONFIG_DEVTMPFS is not set +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=y @@ -2172,9 +2186,33 @@ CONFIG_RTC_DRV_CMOS=y # # CONFIG_HYPERV is not set # CONFIG_STAGING is not set -# CONFIG_X86_PLATFORM_DEVICES is not set +CONFIG_X86_PLATFORM_DEVICES=y +# CONFIG_ACER_WMI is not set +# CONFIG_ACERHDF is not set +# CONFIG_ASUS_LAPTOP is not set +# CONFIG_DELL_WMI is not set +# CONFIG_DELL_WMI_AIO is not set +# CONFIG_FUJITSU_LAPTOP is not set +# CONFIG_FUJITSU_TABLET is not set +# CONFIG_HP_ACCEL is not set +# CONFIG_HP_WMI is not set +# CONFIG_PANASONIC_LAPTOP is not set +# CONFIG_THINKPAD_ACPI is not set +# CONFIG_SENSORS_HDAPS is not set +# CONFIG_INTEL_MENLOW is not set CONFIG_ACPI_WMI=y +# CONFIG_MSI_WMI is not set +# CONFIG_TOPSTAR_LAPTOP is not set +# CONFIG_ACPI_TOSHIBA is not set +# CONFIG_TOSHIBA_BT_RFKILL is not set +# CONFIG_ACPI_CMPC is not set +# CONFIG_INTEL_IPS is not set +# CONFIG_IBM_RTL is not set +# CONFIG_XO15_EBOOK is not set +# CONFIG_SAMSUNG_LAPTOP is not set CONFIG_MXM_WMI=y +# CONFIG_SAMSUNG_Q10 is not set +# CONFIG_APPLE_GMUX is not set # # Hardware Spinlock drivers diff --git a/config/dependencies b/config/dependencies index 18a7034..7ca0968 100644 --- a/config/dependencies +++ b/config/dependencies @@ -1,4 +1,3 @@ - #!/bin/sh ${INTLTOOL}: ${PERL_MOD_XML_PARSER} @@ -101,9 +100,7 @@ ${LIBTASN1}: ${GUILE}: ${GNUTLS}: ${LIBGCRYPT} ${LIBTASN1} ${GUILE} -${LIBIDL}: ${GLIB} -${ORBIT2}: ${LIBIDL} ${OPENSSL} -${GCONF}: ${ORBIT2} ${POLKIT} ${GTK} ${DBUS_GLIB} +${GCONF}: ${GTK} ${DBUS_GLIB} ${LIBPROXY}: ${GCONF} ${GNOME_KEYRING}: ${GCONF} ${LIBTASN1} ${LIBGCRYPT} @@ -151,3 +148,5 @@ ${FFTW}: # Aucune dépendence ${RUBBERBAND}: ${LIBSNDFILE} ${FFTW} ${VAMP} ${RALENTI}: ${RUBBERBAND} ${LIBSNDFILE} + +${MAN_DB}: ${LIBPIPELINE} diff --git a/config/packages-list b/config/packages-list index 03c7347..71cf75f 100644 --- a/config/packages-list +++ b/config/packages-list @@ -17,8 +17,8 @@ AVRDUDE="avrdude-5.1" ATK="atk-2.4.0" ATKMM="atkmm-2.22.6" AUDIOFILE="audiofile-0.3.2" -AUTOCONF="autoconf-2.68" -AUTOMAKE="automake-1.11.1" +AUTOCONF="autoconf-2.69" +AUTOMAKE="automake-1.12.2" BABL="babl-0.1.6" BASH="bash-4.2" @@ -40,9 +40,9 @@ CDRDAO="cdrdao-1.2.3" CKERMIT="ckermit-8.0.211" CHORDPACK="chordpack-0.8.2" CLAMAV="clamav-0.93.3" -CLOOG_PPL="cloog-ppl-0.15.11" +CLOOG="cloog-0.16.3" COLORDIFF="colordiff-1.0.9" -COREUTILS="coreutils-8.14" +COREUTILS="coreutils-8.16" CPIO="cpio-2.11" CUPS="cups-1.4.8" CUPS_PDF="cups-pdf-2.5.1" @@ -70,10 +70,10 @@ DVDRWTOOLS="dvd+rw-tools-7.1" E2FSPROGS="e2fsprogs-1.42.5" EASYTAG="easytag-2.1.6" -EGLIBC="eglibc-2.13-r13356" -EGLIBC_PORTS="eglibc-ports-2.13-r13356" +EGLIBC="eglibc-2.15-r17386" +EGLIBC_PORTS="eglibc-ports-2.15-r17386" UCLIBC="uClibc-0.9.30.1" -EMACS="emacs-23.3" +EMACS="emacs-24.1" ESOUND="esound-0.2.37" EVINCE="evince-2.32.0" EXPAT="expat-2.0.1" @@ -83,7 +83,7 @@ FETCHMAIL="fetchmail-6.3.12" FFMPEG="ffmpeg-0.10.2" FFTW="fftw-3.3" FIREFOX="firefox-12.0" -FILE_PKG="file-5.09" +FILE_PKG="file-5.11" FINDUTILS="findutils-4.4.2" FIRMWARE_B43_LPPHY="broadcom-wl-4.178.10.4" FLAC="flac-1.2.1" @@ -95,11 +95,11 @@ FRIBIDI="fribidi-0.10.9" FUSE="fuse-2.8.6" B43_FWCUTTER="b43-fwcutter-013" -GAWK="gawk-4.0.0" -GCC="gcc-4.6.2" +GAWK="gawk-4.0.1" +GCC="gcc-4.6.3" # Specify bug-fixing patches manually #GCC_PATCHES="branch_update-1" -GCONF="GConf-2.32.3" +GCONF="GConf-3.2.5" GDB="gdb-6.4" GDBM="gdbm-1.10" GDK_PIXBUF="gdk-pixbuf-2.26.1" @@ -120,7 +120,7 @@ GIT="git-1.7.11.4" GLIB="glib-2.32.1" GLIBMM="glibmm-2.32.0" GLITZ="glitz-0.5.6" -GMP="gmp-5.0.2" +GMP="gmp-5.0.5" GNASH=" gnash-0.8.9" GNOME_KEYRING="gnome-keyring-2.32.1" GNOME_ICON_THEME="gnome-icon-theme-2.30.3" @@ -131,7 +131,7 @@ GNUTLS="gnutls-3.0.7" GOBJECT_INSTROSPECTION="gobject-introspection-1.32.1" GOFFICE="goffice-0.8.17" GPERF="gperf-3.0.4" -GREP="grep-2.10" +GREP="grep-2.12" GRIP="grip-3.4.0" GROFF="groff-1.21" GRUB="grub-1.99" @@ -161,17 +161,17 @@ ICON_NAMING_UTILS="icon-naming-utils-0.8.90" IMAGE_MAGICK="ImageMagick-6.6.8-1" IMLIB2="imlib-1.4.2" INDENT="indent-2.2.10" -INETUTILS="inetutils-1.8" +INETUTILS="inetutils-1.9.1" INKSCAPE="inkscape-0.48.3.1" INTLTOOL="intltool-0.50.0" -IPROUTE2="iproute2-3.1.0" +IPROUTE2="iproute2-3.3.0" IPTABLES="iptables-1.4.14" ISO_CODES="iso-codes-3.23" JACK="jack-audio-connection-kit-0.121.3" JASPER="jasper-1.900.1" -KBD="kbd-1.15.2" +KBD="kbd-1.15.3" KERBEROS5="krb5-1.10" KERNEL="linux-3.4.7" KVM="kvm-84" @@ -200,7 +200,6 @@ LIBGLADE="libglade-2.6.4" LIBGPG_ERROR="libgpg-error-1.10" LIBGSF="libgsf-1.14.19" LIBID3TAG="libid3tag-0.15.1b" -LIBIDL="libIDL-0.8.14" LIBJPEG="libjpeg-8c" LIBMAD="libmad-0.15.1b" LIBMNG="libmng-1.0.10" @@ -209,8 +208,8 @@ LIBOGG="libogg-1.3.0" LIBOIL="liboil-0.3.17" LIBOPENJPEG="openjpeg_v1_4_sources_r697" LIBPCAP="libpcap-1.1.1" -LIBPIPELINE="libpipeline-1.2.0" -LIBPNG="libpng-1.5.5" +LIBPIPELINE="libpipeline-1.2.1" +LIBPNG="libpng-1.5.12" LIBPTHREAD_STUBS="libpthread-stubs-0.3" LIBRSVG="librsvg-2.32.1" LIBSAMPLERATE="libsamplerate-0.1.8" @@ -238,13 +237,13 @@ LUA="lua-5.1.4" LYNX="lynx2.8.7rel.2" MAKE_PACKAGE="make-3.82" -MAN_DB="man-db-2.6.0.2" -MANPAGES="man-pages-3.35" +MAN_DB="man-db-2.6.2" +MANPAGES="man-pages-3.41" MFOUR="m4-1.4.16" MILTER_GREYLIST="milter-greylist-4.0" MILTER_SPF="smf-spf-2.0.1" MOC="moc-2.4.4" -MODULE_INIT_TOOLS="module-init-tools-3.16" +KMOD="kmod-8" MPC="mpc-0.9" MPFR="mpfr-3.1.0" MUTT="mutt-1.5.21" @@ -265,7 +264,6 @@ OPENSP="OpenSP-1.5.2" OPENSSH="openssh-5.9p1" OPENSSL="openssl-1.0.0e" OPENSSL_ROOT_CERTS="BLFS-ca-bundle-3.12.8.0" -ORBIT2="ORBit2-2.14.19" PAM="Linux-PAM-1.1.5" PANGO="pango-1.30.0" @@ -300,11 +298,11 @@ PORTMAP="portmap-6.0" PPL="ppl-0.11.2" PROCMAIL="procmail-3.22" PROCPS="procps-3.2.8" -PSMISC="psmisc-22.13" +PSMISC="psmisc-22.17" PYCAIRO="py2cairo-1.10.0" PYGOBJECT="pygobject-2.28.6" PYGTK="pygtk-2.24.0" -PYTHON="Python-2.7.2" +PYTHON="Python-2.7.3" QT="qt-everywhere-opensource-src-4.7.1" @@ -328,7 +326,7 @@ SGML_DTD3="sgml-dtd-${SGML_DTD3_VER}" SGML_DTD4_VER="4.5" SGML_DTD4="sgml-dtd-${SGML_DTD4_VER}" SGML_SPM="SGMLSpm-1.03ii" -SHADOW="shadow-4.1.4.3" +SHADOW="shadow-4.1.5.1" SHARED_MIME_INFO="shared-mime-info-0.90" SPAMASSASSIN="Mail-SpamAssassin-3.3.1" SPEEX="speex-1.2rc1" @@ -339,7 +337,7 @@ SQUIRRELMAIL="squirrelmail-1.5.1" SSMTP="ssmtp-2.64" STARTUP_NOTIFICATION="startup-notification-0.9" STRACE="strace-4.6" -SUBVERSION="subversion-1.7.2" +SUBVERSION="subversion-1.7.5" SYLPHEED="sylpheed-3.2.0" SUDO="sudo-1.8.2" SYSKLOGD="sysklogd-1.5" @@ -361,7 +359,7 @@ TIFF="tiff-4.0.0" TK="tk8.5.9-src" TRANSMISSION="transmission-2.33" -UDEV="udev-173" +UDEV="udev-182" UML_UTILITIES="uml_utilities_20070815" UNRAR="unrar-3.9.10" UNZIP="unzip-6.0" @@ -381,7 +379,7 @@ WINDOWMAKER="WindowMaker-0.92.0" WINDOWMAKER_EXTRA="WindowMaker-extra-0.1" WIRELESS_TOOLS="wireless_tools.29" WMNOTIFY="wmnotify-1.0.0" -WPA_SUPPLICANT="wpa_supplicant-0.7.3" +WPA_SUPPLICANT="wpa_supplicant-1.0" WV="wv-1.2.9" XORG_VER="7.7-1" @@ -418,4 +416,4 @@ XZ_UTILS="xz-5.0.3" YASM="yasm-1.1.0" ZIP="zip-3.0" -ZLIB="zlib-1.2.5" +ZLIB="zlib-1.2.7" diff --git a/config/urls b/config/urls index f04f802..0f514e7 100644 --- a/config/urls +++ b/config/urls @@ -13,6 +13,7 @@ HV_PATCHES_URL="${HV_BASE_URL}/patches" LFS_PACKAGES_URL="ftp://ftp.osuosl.org/pub/lfs/lfs-packages/conglomeration" CLFS_PKG_SVN_URL="http://cross-lfs.org/files/packages/svn" +CLFS_PKG_COSMO_URL="http://cross-lfs.org/~cosmo/sources" BLFS_XORG_URL="http://anduin.linuxfromscratch.org/files/BLFS/svn/xorg" BLFS_SVN_SRC_URL="http://anduin.linuxfromscratch.org/sources/BLFS/svn" BLFS_PM_URL="${BLFS_SVN_SRC_URL}/perl-modules" diff --git a/functions/main b/functions/main index ec0e911..39c7d29 100644 --- a/functions/main +++ b/functions/main @@ -2,6 +2,10 @@ set -o errtrace # Let shell functions inherit ERR trap. set -o errexit +# Don' t locate and remember (hash) commands as they are looked up for +# execution (don' t remember path): +set +h + hvtrap_setup() { # Setting ERR trap does implicit `set -o errexit'. diff --git a/stage0/hv-install-2 b/stage0/hv-install-2 index 77828c3..fffb79d 100755 --- a/stage0/hv-install-2 +++ b/stage0/hv-install-2 @@ -32,11 +32,10 @@ ipkg ${PPL} "\ --disable-optimization \ --with-libgmp-prefix=/cross-tools \ --with-libgmpxx-prefix=/cross-tools" -ipkg ${CLOOG_PPL} "\ +ipkg ${CLOOG} "\ --enable-shared \ --with-bits=gmp \ - --with-gmp=/cross-tools \ - --with-ppl=/cross-tools" + --with-gmp=/cross-tools" LDFLAGS="" diff --git a/stage0/packages-update b/stage0/packages-update index 861614f..84b5142 100755 --- a/stage0/packages-update +++ b/stage0/packages-update @@ -23,7 +23,7 @@ fpkg -m gnu ${MPFR} fpkg -e "tar.gz" ${MPC} "http://www.multiprecision.org/mpc/download" fpkg -s "$(get_pkg_ver ${PPL})" ${PPL} \ "http://bugseng.com/products/ppl/download/ftp/releases" -fpkg -e "tar.gz" ${CLOOG_PPL} "ftp://gcc.gnu.org/pub/gcc/infrastructure" +fpkg -e "tar.gz" ${CLOOG} "http://www.bastoul.net/cloog/pages/download" fpkg -e "tar.bz2" -m gnu ${BINUTILS} # For GCC, we don't use LFS or BLFS patches because we want to carefully @@ -34,7 +34,7 @@ fpkg -m gnu -s "gcc/${GCC}" ${GCC} USE_LFS_PATCHES=1 USE_BLFS_PATCHES=1 -fpkg ${EGLIBC} ${CLFS_PKG_SVN_URL} -fpkg ${EGLIBC_PORTS} ${CLFS_PKG_SVN_URL} +fpkg ${EGLIBC} ${CLFS_PKG_COSMO_URL} +fpkg ${EGLIBC_PORTS} ${CLFS_PKG_COSMO_URL} exit $? diff --git a/stage0/pkg/cloog-ppl b/stage0/pkg/cloog similarity index 63% rename from stage0/pkg/cloog-ppl rename to stage0/pkg/cloog index 5cec880..eb2de0d 100644 --- a/stage0/pkg/cloog-ppl +++ b/stage0/pkg/cloog @@ -2,7 +2,7 @@ hvconfig_pre() { - # Prevents the configure script from setting LD_LIBRARY_PATH when it finds PPL. - # This will prevent any conflicts with libraries from the host system. + # Prevents the configure script from setting LD_LIBRARY_PATH when it finds + # PPL. This will prevent any conflicts with libraries from the host system. sed -e "/LD_LIBRARY_PATH=/d" -i ${LFS_TMP}/${PACKAGE}/configure } diff --git a/stage0/pkg/eglibc b/stage0/pkg/eglibc index 1c3e032..d86bf1a 100644 --- a/stage0/pkg/eglibc +++ b/stage0/pkg/eglibc @@ -41,6 +41,12 @@ libc_cv_ssp=no EOF } +hvbuild() +{ + ${HVMAKE} + ${HVMAKE} install inst_vardbdir=/tools/var/db +} + hvconfig_post() { unset BUILD_CC diff --git a/stage0/pkg/gcc b/stage0/pkg/gcc index 433e601..24ee1ef 100644 --- a/stage0/pkg/gcc +++ b/stage0/pkg/gcc @@ -37,6 +37,7 @@ hvconfig_pre() --with-gmp=/cross-tools \ --with-ppl=/cross-tools \ --with-cloog=/cross-tools \ + --enable-cloog-backend=isl \ --disable-multilib" if [ "x${HVLABEL}" = "x${GCC}-pass1" ]; then diff --git a/stage1/bootscripts/mountkernfs b/stage1/bootscripts/mountkernfs index 6c377a6..a81cf62 100755 --- a/stage1/bootscripts/mountkernfs +++ b/stage1/bootscripts/mountkernfs @@ -7,11 +7,14 @@ source /etc/rc.d/init.d/functions case "$1" in start) + # /dev is automatically mounted by the kernel + # The "-n: option tells mount not to write to the /etc/mtab # file (because /etc/mtab is a symbolic link to /proc/mounts, # which we are in the process of mounting). - cmd_run_log_box "Mounting /proc file system" mount -n proc - cmd_run_log_box "Mounting /sys file system" mount sys + cmd_run_log_box "Mounting /proc" mount -n /proc + cmd_run_log_box "Mounting /sys" mount /sys + cmd_run_log_box "Mounting /run" mount /run ;; stop) diff --git a/stage1/bootscripts/udev b/stage1/bootscripts/udev index 7c10b0d..34e1ce1 100644 --- a/stage1/bootscripts/udev +++ b/stage1/bootscripts/udev @@ -3,7 +3,7 @@ # udev # Udev cold-plugging script -DAEMON=/sbin/udevd +DAEMON=/lib/udev/udevd DAEMON_DESC=UDEV DAEMON_OPTS="--daemon" @@ -15,17 +15,20 @@ log_script_name "$0 $*" udev_coldplug() { # Unlikely, but we may be faster than the first event - mkdir -p /dev/.udev/queue && + mkdir -p /dev/udev/queue && # Configure all devices - /sbin/udevadm trigger && + /bin/udevadm trigger --action=add --type=subsystems && + /bin/udevadm trigger --action=add --type=devices && # Now wait for udevd to process the uevents we triggered - /sbin/udevadm settle + /bin/udevadm settle } udev_start() { + # Udev handles uevents itself, so we don't need to have + # the kernel call out to any binary in response to them echo "" > /sys/kernel/uevent_helper && # Start the udev daemon to continually watch for, and act on uevents @@ -39,11 +42,6 @@ case "$1" in boot_failure "FAILURE: Unable to create devices without a SysFS filesystem." fi - # Mount a temporary file system over /dev, so that any devices - # made or removed during this boot don't affect the next one. - # The reason we don't write to mtab is because we don't ever - # want /dev to be unavailable (such as by `umount -a'). - cmd_run_log_box "Mounting /dev in tmpfs" mount -n -t tmpfs -o mode=0755 udev /dev cmd_run_log_box "Copying static /dev entries" cp --preserve=all --recursive --remove-destination /lib/udev/devices/* /dev cmd_run_log_box "Setting permissons on /dev/shm" chmod 1777 /dev/shm diff --git a/stage1/create-config-files b/stage1/create-config-files index 8ea1c5b..b196250 100755 --- a/stage1/create-config-files +++ b/stage1/create-config-files @@ -19,6 +19,7 @@ echo "${LFS_PARTITION} / auto defaults,noatime 0 0" >> ${LFS}/e cat >> ${LFS}/etc/fstab << "EOF" proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 +tmpfs /run tmpfs defaults 0 0 devpts /dev/pts devpts gid=4,mode=620 0 0 shm /dev/shm tmpfs defaults 0 0 EOF diff --git a/stage1/create-directories b/stage1/create-directories index af761ca..d70e322 100755 --- a/stage1/create-directories +++ b/stage1/create-directories @@ -3,7 +3,7 @@ source ../functions/main mkdir -pv ${LFS}/{bin,boot,dev,{etc/,}opt,home,lib,mnt} -mkdir -pv ${LFS}/{proc,media,sbin,srv,sys} +mkdir -pv ${LFS}/{proc,media,run,sbin,srv,sys} mkdir -pv ${LFS}/var/{lock,log,mail,run,spool} mkdir -pv ${LFS}/var/{opt,cache,lib/{misc,locate},local} diff --git a/stage1/create-symlinks b/stage1/create-symlinks index 6116775..19fc73a 100755 --- a/stage1/create-symlinks +++ b/stage1/create-symlinks @@ -18,12 +18,14 @@ for link in ${source}/{bash,cat,echo,grep,pwd,sleep,stty}; do fi done +# 'env' symlink is for glib source=/tools/bin target=${LFS}/usr/bin -link=${source}/file -if [ ! -L ${target}/$(basename ${link}) ]; then - ln -sv ${link} ${target} -fi +for link in ${source}/{env,file}; do + if [ ! -L ${target}/$(basename ${link}) ]; then + ln -sv ${link} ${target} + fi +done source=/tools/lib target=${LFS}/usr/lib diff --git a/stage1/hv-install-2 b/stage1/hv-install-2 index aa54568..5c04a99 100755 --- a/stage1/hv-install-2 +++ b/stage1/hv-install-2 @@ -18,11 +18,9 @@ ipkg ${PPL} "\ --disable-optimization \ --with-libgmp-prefix=/tools \ --with-libgmpxx-prefix=/tools" -ipkg ${CLOOG_PPL} "\ +ipkg ${CLOOG} "\ --enable-shared \ - --with-bits=gmp \ - --with-gmp=/tools \ - --with-ppl=/tools" + --with-gmp=/tools" ipkg -m acnb ${ZLIB} ipkg ${BINUTILS} ipkg ${GCC} @@ -66,7 +64,7 @@ PKG_CONFIG=true \ --disable-makeinstall-chown" ipkg ${E2FSPROGS} ipkg -m noac ${SYSVINIT} -ipkg ${MODULE_INIT_TOOLS} +ipkg ${KMOD} ipkg ${UDEV} ipkg -c -m noac ${KERNEL} diff --git a/stage1/packages-update b/stage1/packages-update index a8fcee9..0556f22 100755 --- a/stage1/packages-update +++ b/stage1/packages-update @@ -14,7 +14,7 @@ lpkg 0 ${GMP} lpkg 0 ${MPFR} lpkg 0 ${MPC} lpkg 0 ${PPL} -lpkg 0 ${CLOOG_PPL} +lpkg 0 ${CLOOG} lpkg 0 ${BINUTILS} lpkg 0 ${GCC} lpkg 0 ${NCURSES} @@ -52,8 +52,8 @@ fpkg -s "linux/utils/util-linux/v$(get_pkg_ver2 ${UTIL_LINUX})" \ ${UTIL_LINUX} ${KERNEL_URL} fpkg -m sf ${E2FSPROGS} fpkg ${SYSVINIT} "http://download.savannah.gnu.org/releases/sysvinit" -fpkg -s "linux/utils/kernel/module-init-tools" ${MODULE_INIT_TOOLS} \ - ${KERNEL_URL} +fpkg -e "tar.xz" -s "linux/utils/kernel/kmod" ${KMOD} ${KERNEL_URL} + fpkg -s "linux/utils/kernel/hotplug" ${UDEV} ${KERNEL_URL} exit $? diff --git a/stage1/pkg/cloog-ppl b/stage1/pkg/cloog similarity index 100% rename from stage1/pkg/cloog-ppl rename to stage1/pkg/cloog diff --git a/stage1/pkg/coreutils b/stage1/pkg/coreutils index b653892..c5ce637 100644 --- a/stage1/pkg/coreutils +++ b/stage1/pkg/coreutils @@ -20,16 +20,5 @@ hvconfig_cache() cat > ${LFS_TMP}/${PACKAGE}-build/config.cache << EOF fu_cv_sys_stat_statfs2_bsize=yes gl_cv_func_working_mkstemp=yes -gl_cv_func_fstatat_zero_flag=yes EOF } - -hvbuild_post() -{ - # Create needed symlink for glib: - LINKS="env" - - for link in ${LINKS}; do - ln -svfT /tools/bin/${link} ${LFS}/usr/bin/${link} - done -} diff --git a/stage1/pkg/kmod b/stage1/pkg/kmod new file mode 100644 index 0000000..783d8ce --- /dev/null +++ b/stage1/pkg/kmod @@ -0,0 +1,27 @@ +#!/bin/bash + +hvconfig_pre() +{ + CONFIGURE_OPTS="\ + --prefix=/tools \ + --bindir=/bin \ + --build=${CLFS_HOST} \ + --host=${CLFS_TARGET}" +} + +hvbuild() +{ + make + make DESTDIR=${LFS} install +} + +hvbuild_post() +{ + # Create symbolic links for programs that expect Module-Init-Tools: + ln -svfT kmod ${CLFS}/bin/lsmod + ln -svfT ../bin/kmod ${CLFS}/sbin/depmod + ln -svfT ../bin/kmod ${CLFS}/sbin/insmod + ln -svfT ../bin/kmod ${CLFS}/sbin/modprobe + ln -svfT ../bin/kmod ${CLFS}/sbin/modinfo + ln -svfT ../bin/kmod ${CLFS}/sbin/rmmod +} diff --git a/stage1/pkg/module-init-tools b/stage1/pkg/module-init-tools deleted file mode 100644 index fd571a8..0000000 --- a/stage1/pkg/module-init-tools +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -hvconfig_pre() -{ - CONFIGURE_OPTS="\ - --prefix=/ \ - --bindir=/bin \ - --sbindir=/sbin \ - --mandir=/usr/share/man \ - --build=${CLFS_HOST} \ - --host=${CLFS_TARGET}" -} - -hvbuild() -{ - make DOCBOOKTOMAN="" - make DESTDIR=${LFS} install -} diff --git a/stage1/pkg/udev b/stage1/pkg/udev index 7a485fd..e25646b 100644 --- a/stage1/pkg/udev +++ b/stage1/pkg/udev @@ -2,19 +2,28 @@ hvconfig_pre() { + export LIBS="-lpthread" + export BLKID_CFLAGS="-I/tools/include/blkid" + export BLKID_LIBS="-L/tools/lib64 -lblkid" + export KMOD_CFLAGS="-I/tools/include" + export KMOD_LIBS="-L${CLFS}/lib64 -lkmod" + CONFIGURE_OPTS="\ --prefix=/usr \ --build=${CLFS_HOST} \ --host=${CLFS_TARGET} \ --exec-prefix="" \ + --with-rootprefix=${LFS} --sysconfdir=/etc \ - --libexecdir=/lib/udev \ - --libdir=/usr/lib \ - --disable-extras \ + --libexecdir=/lib \ + --libdir=/usr/lib64 \ --disable-introspection \ - --disable-hwdb \ + --with-usb-ids-path=no \ + --with-pci-ids-path=no \ + --disable-gtk-doc-html \ + --disable-gudev \ --disable-keymap \ - --disable-gudev" + --disable-logging" cd ${LFS_TMP}/${PACKAGE} install -dv ${LFS}/lib/{firmware,udev/devices/{pts,shm}} diff --git a/stage2/create-root-password b/stage2/create-root-password new file mode 100755 index 0000000..525f968 --- /dev/null +++ b/stage2/create-root-password @@ -0,0 +1,6 @@ +#!/bin/bash + +source ../functions/main + +# Set root password +passwd root diff --git a/stage2/hv-install-1 b/stage2/hv-install-1 index 90d2c70..6e576b2 100755 --- a/stage2/hv-install-1 +++ b/stage2/hv-install-1 @@ -12,6 +12,7 @@ ipkg -j -l "${PERL}-pass1" ${PERL} ipkg -c -m noac -l "kernel-headers" -s "kernel-headers" ${KERNEL} ipkg -m noac ${MANPAGES} ipkg ${EGLIBC} + rscr once "Adjusting toolchain" toolchain-adjust rscr mult "Testing toolchain" toolchain-test @@ -25,7 +26,7 @@ ipkg ${MPFR} "--enable-shared --with-gmp=/usr" ipkg ${MPC} CPPFLAGS=-fexceptions \ ipkg ${PPL} "--enable-shared --disable-optimization" -ipkg ${CLOOG_PPL} "--enable-shared --with-gmp --with-ppl" +ipkg ${CLOOG} "--enable-shared" unset CC unset CXX @@ -44,7 +45,7 @@ ipkg ${PKG_CONFIG} ipkg ${NCURSES} ipkg ${UTIL_LINUX} ipkg ${E2FSPROGS} -ipkg ${COREUTILS} +FORCE_UNSAFE_CONFIGURE=1 ipkg ${COREUTILS} ipkg -m noac ${IANA} ipkg ${MFOUR} ipkg ${BISON} diff --git a/stage2/hv-install-2 b/stage2/hv-install-2 index 824ff26..43eb6e4 100755 --- a/stage2/hv-install-2 +++ b/stage2/hv-install-2 @@ -31,7 +31,7 @@ ipkg ${MAN_DB} "\ --with-browser=/usr/bin/lynx \ --with-vgrind=/usr/bin/vgrind \ --with-grap=/usr/bin/grap" -ipkg ${MODULE_INIT_TOOLS} +ipkg ${KMOD} ipkg ${PATCH_PACKAGE} ipkg ${PSMISC} ipkg ${SHADOW} @@ -64,8 +64,8 @@ rscr once "Creating default config files" create-config-files rscr mult "Compressing man pages" compressdoc #rscr mult "Stripping" stripping -# Creating root password -passwd root +echo "Setting root password:" +rscr once "" create-root-password rscr mult "Performing post-install" post-install ldconfig diff --git a/stage2/packages-update b/stage2/packages-update index fa54004..221ab51 100755 --- a/stage2/packages-update +++ b/stage2/packages-update @@ -16,7 +16,7 @@ lpkg 0 ${GMP} lpkg 0 ${MPFR} lpkg 0 ${MPC} lpkg 0 ${PPL} -lpkg 0 ${CLOOG_PPL} +lpkg 0 ${CLOOG} lpkg 0 ${BINUTILS} lpkg 0 ${GCC} lpkg 0 ${NCURSES} @@ -41,7 +41,7 @@ lpkg 1 ${GETTEXT} lpkg 1 ${GREP} lpkg 1 ${GZIP} lpkg 1 ${MAKE_PACKAGE} -lpkg 1 ${MODULE_INIT_TOOLS} +lpkg 1 ${KMOD} lpkg 1 ${PATCH_PACKAGE} lpkg 1 ${SYSVINIT} lpkg 1 ${TAR_PACKAGE} @@ -66,8 +66,7 @@ fpkg -m gnu ${INETUTILS} fpkg -m gnu ${AUTOCONF} fpkg -m gnu ${AUTOMAKE} fpkg -m gnu ${GROFF} -fpkg ${IPROUTE2} \ - "http://devresources.linux-foundation.org/dev/iproute2/download" +fpkg -s "linux/utils/net/iproute2" ${IPROUTE2} ${KERNEL_URL} if [ -n "${WIFI_SUPPORT}" ]; then fpkg -e "tar.gz" ${WIRELESS_TOOLS} \ @@ -80,7 +79,7 @@ if [ -n "${WIFI_SUPPORT}" ]; then fi fi -fpkg -s "linux/utils/kbd" ${KBD} ${KERNEL_URL} +fpkg -e "tar.gz" ${KBD} "http://ftp.altlinux.org/pub/people/legion/kbd" fpkg -e "tar.gz" ${LESS} "http://www.greenwoodsoftware.com/less" fpkg -e "tar.gz" -s "libpipeline" ${LIBPIPELINE} \ "http://download.savannah.gnu.org/releases" diff --git a/stage2/pkg/eglibc b/stage2/pkg/eglibc index 6a3b0b3..d85577e 100644 --- a/stage2/pkg/eglibc +++ b/stage2/pkg/eglibc @@ -24,7 +24,7 @@ hvconfig_pre() # Glibc we have just installed with: LINKER=$(readelf -l $(file /tools/lib/libc-* | cut -f1 -d:) | sed -n 's@.*interpret.*/tools\(.*\)]$@\1@p') sed -i "s|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=${LINKER} -o|" \ - scripts/test-installation.pl + scripts/test-installation.pl unset LINKER cd ${LFS_TMP}/${PACKAGE}-build diff --git a/stage2/pkg/kmod b/stage2/pkg/kmod new file mode 100644 index 0000000..a119581 --- /dev/null +++ b/stage2/pkg/kmod @@ -0,0 +1,27 @@ +#!/bin/bash + +hvconfig_pre() +{ + # --with-zlib, --with-xz: To handle compressed kernel modules. + CONFIGURE_OPTS="\ + --prefix=/usr \ + --bindir=/bin \ + --sysconfdir=/etc \ + --with-rootlibdir=/lib \ + --with-zlib \ + --with-xz" +} + +hvbuild_post() +{ + # Est-ce encore nécessaire avec kmod? + install -dv ${LFS}/etc/modprobe.d + + # Create symbolic links for programs that expect Module-Init-Tools: + ln -svfT kmod /bin/lsmod + ln -svfT ../bin/kmod /sbin/depmod + ln -svfT ../bin/kmod /sbin/insmod + ln -svfT ../bin/kmod /sbin/modprobe + ln -svfT ../bin/kmod /sbin/modinfo + ln -svfT ../bin/kmod /sbin/rmmod +} diff --git a/stage2/pkg/module-init-tools b/stage2/pkg/module-init-tools deleted file mode 100644 index 5a0d77d..0000000 --- a/stage2/pkg/module-init-tools +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -hvconfig_pre() -{ - # To avoid a problem with regenerating the man pages when not needed, - # first rewrite a file that just points to another man page: - echo '.so man5/modprobe.conf.5' > ${LFS_TMP}/${PACKAGE}/modprobe.d.5 - - export DOCBOOKTOMAN=/bin/true - - # --enable-zlib-dynamic: To handle compressed kernel modules. - CONFIGURE_OPTS="\ - --prefix=/usr \ - --bindir=/bin \ - --sbindir=/sbin \ - --sysconfdir=/etc \ - --enable-zlib-dynamic" -} - -hvbuild() -{ - make - - # INSTALL=install - # Normally, make install will not install the binaries if they already - # exist. This option overrides that behavior by calling install instead - # of using the default wrapper script. - make INSTALL=install install -} - -hvbuild_post() -{ - install -dv ${LFS}/etc/modprobe.d - - unset DOCBOOKTOMAN -} diff --git a/stage2/pkg/udev b/stage2/pkg/udev index aa2c177..c1c605d 100644 --- a/stage2/pkg/udev +++ b/stage2/pkg/udev @@ -6,12 +6,10 @@ hvconfig_pre() CONFIGURE_OPTS="\ ${CONFIGURE_OPTS} \ - --sbindir=/sbin \ - --with-rootlibdir=/lib \ - --libexecdir=/lib/udev \ - --docdir=/usr/share/doc/${PACKAGE} \ - --disable-extras \ - --disable-hwdb \ + --exec-prefix="" \ + --libexecdir=/lib \ + --with-usb-ids-path=no \ + --with-pci-ids-path=no \ --disable-keymap \ --disable-introspection" } diff --git a/stage3/TODO b/stage3/TODO index ff47f1b..0867973 100644 --- a/stage3/TODO +++ b/stage3/TODO @@ -22,7 +22,6 @@ BIND server: root.hints must be updated periodically with the "dig" utility (use fcron job). install bitstream vera fonts and update fontconfig conf. file. - ttmkfontdir: Problèmes de compilation avec freetype2. ipkg failure: afficher les 10 dernières lignes du logfile... diff --git a/stage3/hv-install-1 b/stage3/hv-install-1 index e92ede6..416b794 100755 --- a/stage3/hv-install-1 +++ b/stage3/hv-install-1 @@ -86,7 +86,6 @@ ipkg -m noac ${ACK} ipkg -m noac ${COLORDIFF} ipkg ${INTLTOOL} -ipkg ${PYTHON} "--enable-shared" ipkg -m acnb ${GIT} diff --git a/stage3/packages-update b/stage3/packages-update index 933c16e..7687880 100755 --- a/stage3/packages-update +++ b/stage3/packages-update @@ -8,9 +8,6 @@ source ../functions/main update_packages_init ${*} -# These packages were already downloaded for stage2 -lpkg 2 ${PYTHON} - # These packages are only for stage3 fpkg -m gnu ${WHICH} fpkg -s "software/utils/pciutils" ${PCIUTILS} ${KERNEL_URL} diff --git a/stage4/packages-update b/stage4/packages-update index 1ed2848..81394b7 100755 --- a/stage4/packages-update +++ b/stage4/packages-update @@ -8,7 +8,7 @@ source ../functions/main update_packages_init ${*} -lpkg 3 ${PYTHON} +lpkg 2 ${PYTHON} lpkg 2 ${GLIB} XORG_MODULES_LIST="${XORG_APP} ${XORG_DRIVER} ${XORG_FONT} ${XORG_LIB} ${XORG_PROTO}" diff --git a/stage5/TODO b/stage5/TODO index 9799439..ee047f9 100644 --- a/stage5/TODO +++ b/stage5/TODO @@ -1,3 +1,4 @@ - TODO +wxwidgets: ./configure --enable-unicode --disable26 + diff --git a/stage5/hv-install-1 b/stage5/hv-install-1 index 195719a..9076cf7 100755 --- a/stage5/hv-install-1 +++ b/stage5/hv-install-1 @@ -44,9 +44,6 @@ if [ "x${INST_TYPE}" = "xworkstation" -o \ ipkg ${ISO_CODES} ipkg ${LIBXKLAVIER} ipkg ${LIBGLADE} - ipkg ${LIBIDL} - ipkg ${ORBIT2} # Obsoleted package (only one needing libIDL) - # Needed by old gconf... ipkg -m acnb ${GCONF} ipkg ${GNOME_KEYRING} fi diff --git a/stage5/packages-update b/stage5/packages-update index c6f0c69..bcbaf5f 100755 --- a/stage5/packages-update +++ b/stage5/packages-update @@ -48,8 +48,6 @@ fpkg -m gnome ${LIBWNCK} fpkg ${ISO_CODES} "ftp://pkg-isocodes.alioth.debian.org/pub/pkg-isocodes" fpkg -m sf -s "gswitchit" ${LIBXKLAVIER} fpkg -m gnome ${LIBGLADE} -fpkg -m gnome ${LIBIDL} -fpkg -m gnome ${ORBIT2} fpkg -m gnome ${GCONF} fpkg -m gnome ${GNOME_KEYRING} diff --git a/stage5/pkg/GConf b/stage5/pkg/GConf index c0e897d..8e4e022 100644 --- a/stage5/pkg/GConf +++ b/stage5/pkg/GConf @@ -1,5 +1,13 @@ #!/bin/bash +hvconfig_pre() +{ + CONFIGURE_OPTS=" \ + ${CONFIGURE_OPTS} \ + --disable-orbit \ + --disable-static" +} + hvbuild_post() { install -v -m755 -d /etc/gconf/gconf.xml.system -- 2.20.1