File installation-images.spec of Package installation-images

#
# spec file for package installation-images
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# needsrootforbuild
# needsbinariesforbuild


Name:           installation-images
%define with_sles 0
%define with_xen 1
%define with_vnc 1
%define with_vbox 0
%define with_plymouth 1
BuildRequires:  Mesa
BuildRequires:  Mesa-libEGL1
BuildRequires:  aaa_base
BuildRequires:  aaa_base-extras
BuildRequires:  adaptec-firmware
BuildRequires:  alsa
BuildRequires:  alsa-utils
BuildRequires:  audit-libs
BuildRequires:  autoyast2-installation
BuildRequires:  bc
BuildRequires:  bind-libs
BuildRequires:  bind-utils
BuildRequires:  blueprint-cursor-theme
BuildRequires:  btrfsprogs
BuildRequires:  build-key
BuildRequires:  busybox
BuildRequires:  bzip2
BuildRequires:  cairo
BuildRequires:  checkmedia
BuildRequires:  chkrootkit
BuildRequires:  cifs-utils
BuildRequires:  cracklib
BuildRequires:  cracklib-dict-full
BuildRequires:  cron
BuildRequires:  cryptsetup
BuildRequires:  cups-libs
BuildRequires:  curl
BuildRequires:  dd_rescue
BuildRequires:  dejavu-fonts
BuildRequires:  dhcp-server
BuildRequires:  dhcpcd
BuildRequires:  dmapi
BuildRequires:  dmraid
BuildRequires:  dosfstools
BuildRequires:  dump
BuildRequires:  e2fsprogs
BuildRequires:  ed
BuildRequires:  efont-unicode-bitmap-fonts
BuildRequires:  eject
BuildRequires:  espeak
BuildRequires:  ethtool
BuildRequires:  fbiterm
BuildRequires:  finger
BuildRequires:  fonts-config
BuildRequires:  fvwm2
BuildRequires:  gdb
BuildRequires:  glibc-i18ndata
BuildRequires:  gpart
BuildRequires:  gpg2
BuildRequires:  gpm
BuildRequires:  graphviz
BuildRequires:  graphviz-gnome
BuildRequires:  hdparm
BuildRequires:  hex
BuildRequires:  hfsutils
BuildRequires:  icewm-lite
BuildRequires:  icmpinfo
BuildRequires:  initviocons
BuildRequires:  iproute2
BuildRequires:  iputils
BuildRequires:  jfsutils
BuildRequires:  joe
BuildRequires:  kernel-default
BuildRequires:  kernel-firmware
BuildRequires:  kexec-tools
BuildRequires:  krb5-devel
BuildRequires:  libXi6
BuildRequires:  libcares2
BuildRequires:  libexpat1
BuildRequires:  libfuse2
BuildRequires:  libidn
BuildRequires:  libiterm
BuildRequires:  libiw30
BuildRequires:  libjpeg-devel
BuildRequires:  libpcsclite1
BuildRequires:  libpng-devel
BuildRequires:  libreiserfs
BuildRequires:  libreiserfs-devel
BuildRequires:  libzypp
BuildRequires:  limal
BuildRequires:  limal-perl
BuildRequires:  links
BuildRequires:  linuxrc
BuildRequires:  lsscsi
BuildRequires:  lvm2
BuildRequires:  mdadm
BuildRequires:  mingetty
BuildRequires:  mkfontdir
BuildRequires:  mkfontscale
BuildRequires:  module-init-tools
BuildRequires:  mtools
BuildRequires:  multipath-tools
BuildRequires:  nasm
BuildRequires:  ncurses-utils
BuildRequires:  netcat-openbsd
BuildRequires:  netpbm
BuildRequires:  nfs-client
BuildRequires:  nfs-utils
BuildRequires:  ntfs-3g
BuildRequires:  ntfsprogs
BuildRequires:  open-iscsi
BuildRequires:  openct
BuildRequires:  openldap2-client
BuildRequires:  openslp-server
BuildRequires:  openssh
BuildRequires:  pango
BuildRequires:  parted
BuildRequires:  pciutils
BuildRequires:  pciutils-ids
BuildRequires:  pcmciautils
BuildRequires:  pcre-devel
BuildRequires:  pcsc-lite
BuildRequires:  perl-HTML-Parser
BuildRequires:  perl-Switch
BuildRequires:  perl-XML-Bare
BuildRequires:  perl-XML-NamespaceSupport
BuildRequires:  perl-XML-Parser
BuildRequires:  perl-XML-Simple
%if %with_plymouth
BuildRequires:  libkms1
BuildRequires:  plymouth
BuildRequires:  plymouth-branding-openSUSE
BuildRequires:  plymouth-plugin-script
BuildRequires:  plymouth-scripts
%endif
BuildRequires:  polkit
BuildRequires:  popt-devel
BuildRequires:  portmap
BuildRequires:  pothana2000
BuildRequires:  procinfo
BuildRequires:  procps
BuildRequires:  psmisc
BuildRequires:  python
BuildRequires:  recode
BuildRequires:  reiserfs
BuildRequires:  rgb
BuildRequires:  rpcbind
BuildRequires:  rsh
BuildRequires:  rsync
BuildRequires:  sax2-tools
BuildRequires:  sbl
BuildRequires:  screen
BuildRequires:  sdparm
BuildRequires:  setserial
BuildRequires:  setxkbmap
BuildRequires:  sg3_utils
BuildRequires:  smartmontools
BuildRequires:  smp_utils
BuildRequires:  socat
BuildRequires:  sqlite3
BuildRequires:  squashfs
BuildRequires:  strace
BuildRequires:  sysconfig
BuildRequires:  syslogd
BuildRequires:  sysvinit
BuildRequires:  sysvinit-init
BuildRequires:  tcpd-devel
BuildRequires:  telnet
BuildRequires:  telnet-server
BuildRequires:  termcap
BuildRequires:  terminfo
BuildRequires:  unscd
BuildRequires:  usbutils
BuildRequires:  util-linux
BuildRequires:  uuid-runtime
BuildRequires:  valgrind
BuildRequires:  vim
BuildRequires:  wget
BuildRequires:  wireless-tools
BuildRequires:  wpa_supplicant
BuildRequires:  xauth
BuildRequires:  xdm
BuildRequires:  xdpyinfo
BuildRequires:  xfsdump
BuildRequires:  xfsprogs
BuildRequires:  xhost
BuildRequires:  xkbcomp
BuildRequires:  xkeyboard-config
BuildRequires:  xmodmap
BuildRequires:  xntp
BuildRequires:  xorg-x11-fonts
BuildRequires:  xorg-x11-server
BuildRequires:  xrefresh
BuildRequires:  xset
BuildRequires:  xterm
BuildRequires:  xz
BuildRequires:  yast2-add-on
BuildRequires:  yast2-devtools
BuildRequires:  yast2-iscsi-client
BuildRequires:  yast2-kdump
BuildRequires:  yast2-mouse
BuildRequires:  yast2-multipath
BuildRequires:  yast2-ncurses
BuildRequires:  yast2-ncurses-pkg
BuildRequires:  yast2-network
BuildRequires:  yast2-nfs-client
BuildRequires:  yast2-ntp-client
BuildRequires:  yast2-proxy
BuildRequires:  yast2-qt
BuildRequires:  yast2-qt-graph
BuildRequires:  yast2-qt-pkg
BuildRequires:  yast2-runlevel
BuildRequires:  yast2-slp
BuildRequires:  yast2-trans-allpacks
BuildRequires:  yast2-trans-stats
BuildRequires:  yast2-tune
BuildRequires:  yast2-update
BuildRequires:  yast2-users
BuildRequires:  yast2-x11
%if %with_vnc
BuildRequires:  xorg-x11-Xvnc
%endif
# kmps
%ifarch %ix86 x86_64
BuildRequires:  atmel-firmware
BuildRequires:  dos2unix
BuildRequires:  ftp
BuildRequires:  ipw-firmware
BuildRequires:  tftp
%if %with_xen
BuildRequires:  kernel-xen
BuildRequires:  xen-kmp-default
%else
##BuildIgnore: kernel-xen
%endif
%endif
BuildRequires:  ltrace
%ifnarch s390 s390x
BuildRequires:  fbset
BuildRequires:  iprutils
BuildRequires:  kbd
BuildRequires:  libxslt
BuildRequires:  xf86-input-evdev
BuildRequires:  xf86-input-joystick
BuildRequires:  xf86-input-keyboard
BuildRequires:  xf86-input-mouse
BuildRequires:  xf86-input-synaptics
%ifarch %ix86 x86_64
BuildRequires:  xf86-input-vmmouse
BuildRequires:  xf86-video-intel
%endif
BuildRequires:  xf86-input-void
BuildRequires:  xf86-input-wacom
BuildRequires:  xf86-video-ati
BuildRequires:  xf86-video-cirrus
BuildRequires:  xf86-video-fbdev
BuildRequires:  xf86-video-nv
BuildRequires:  xf86-video-r128
BuildRequires:  xf86-video-sis
BuildRequires:  xf86-video-vesa
BuildRequires:  xf86-video-vmware
%if %with_vnc
BuildRequires:  tightvnc
%endif
%endif
%ifarch ppc ppc64
BuildRequires:  kernel-ppc64
BuildRequires:  lilo
BuildRequires:  pdisk
BuildRequires:  powerpc-utils
%endif
%ifarch %ix86 x86_64
BuildRequires:  acpica
BuildRequires:  dhcp-client
BuildRequires:  dmidecode
BuildRequires:  elilo
BuildRequires:  firmwarekit
BuildRequires:  grub
BuildRequires:  grub2
BuildRequires:  grub2-efi
BuildRequires:  libsmbios2
BuildRequires:  libunwind
BuildRequires:  lilo
BuildRequires:  memtest86+
BuildRequires:  syslinux
%if %with_vbox
BuildRequires:  virtualbox-guest-kmp-default
BuildRequires:  virtualbox-guest-x11
%endif
BuildRequires:  yast2-vm
%endif
%ifarch %ix86
BuildRequires:  dos2unix
BuildRequires:  ftp
BuildRequires:  tftp
%endif
%ifarch x86_64
BuildRequires:  efibootmgr
BuildRequires:  glibc-32bit
BuildRequires:  libncurses5-32bit
%endif
%ifarch ia64
BuildRequires:  acpica
BuildRequires:  dmidecode
BuildRequires:  efibootmgr
BuildRequires:  elilo
BuildRequires:  fpswa
BuildRequires:  ia32el
%endif
%ifarch s390 s390x
BuildRequires:  kernel-installation-tapeipl
BuildRequires:  yast2-reipl
%endif
%ifarch s390x
BuildRequires:  glibc-32bit
%endif
%ifarch %ix86 x86_64
BuildRequires:  bootsplash
BuildRequires:  bootsplash-branding-openSUSE
BuildRequires:  gfxboot-branding-openSUSE
BuildRequires:  yast2-qt-branding-openSUSE
%if %with_sles
BuildRequires:  bootsplash-branding-SLED
BuildRequires:  bootsplash-branding-SLES
BuildRequires:  gfxboot-branding-SLED
BuildRequires:  gfxboot-branding-SLES
%endif
%endif
%ifnarch s390 s390x
#BuildRequires:  enic-kmp-default fnic-kmp-default ofed-kmp-default
%endif
%ifarch %ix86 x86_64 ia64
#BuildRequires:  brocade-bfa-kmp-default
%endif
%if %with_sles
BuildRequires:  yast2-theme-SLE
%endif
BuildRequires:  desktop-data-openSUSE
BuildRequires:  dmz-icon-theme-cursors
BuildRequires:  yast2-theme-openSUSE
BuildRequires:  yast2-theme-openSUSE-Oxygen
%ifnarch s390
# BuildRequires:  blocxx-debuginfo boost-debuginfo bzip2-debuginfo curl-debuginfo dbus-1-debuginfo dbus-1-glib-debuginfo e2fsprogs-debuginfo expat-debuginfo fontconfig-debuginfo gcc44-debuginfo glib2-debuginfo glibc-debuginfo hwinfo-debuginfo icu-debuginfo jpeg-debuginfo libidn-debuginfo libpng12-0-debuginfo libqt4-debuginfo libxcrypt-debuginfo libxml2-debuginfo libzypp-debuginfo openssl-debuginfo pcre-debuginfo perl-debuginfo perl-gettext-debuginfo qt3-debuginfo rpm-debuginfo sysfsutils-debuginfo wireless-tools-debuginfo xorg-x11-libICE-debuginfo xorg-x11-libSM-debuginfo xorg-x11-libX11-debuginfo xorg-x11-libXau-debuginfo xorg-x11-libXdmcp-debuginfo xorg-x11-libXext-debuginfo xorg-x11-libXfixes-debuginfo xorg-x11-libXmu-debuginfo xorg-x11-libXrender-debuginfo xorg-x11-libfontenc-debuginfo xorg-x11-libs-debuginfo xorg-x11-libxcb-debuginfo xorg-x11-server-debuginfo yast2-core-debuginfo yast2-hardware-detection-debuginfo yast2-perl-bindings-debuginfo yast2-pkg-bindings-debuginfo yast2-qt-debuginfo yast2-xml-debuginfo zlib-debuginfo
%endif
#
Provides:       y2image
Obsoletes:      y2image
AutoReqProv:    off
ExcludeArch:    %arm
Summary:        Installation Image Files
License:        GPL-2.0+
Group:          Metapackages
Version:        13.54
Release:        0
Source:         installation-images-13.54.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
%define _binary_payload w.ufdio

%description
Installation image files (boot and module disks, root image, and
suse/inst-sys directory).



%package -n     install-initrd
Recommends:     install-initrd-branding
AutoReqProv:    off
Summary:        Create initrd for Installation
Group:          System/Kernel
PreReq:         /bin/ln

%description -n install-initrd
You can create an initrd for installation. Useful, for example, to set
up a UML or XEN environment.



%package -n     install-initrd-branding-openSUSE
Supplements:    packageand(install-initrd:branding-openSUSE)
Provides:       install-initrd-branding
Requires:       install-initrd
Summary:        openSUSE theme for install-initrd
Group:          System/Kernel
PreReq:         /bin/ln

%description -n install-initrd-branding-openSUSE
openSUSE theme for install-initrd package.



%package -n     install-initrd-branding-SLED
Supplements:    packageand(install-initrd:branding-SLED)
Provides:       install-initrd-branding
Requires:       install-initrd
Summary:        SLED theme for install-initrd
Group:          System/Kernel
PreReq:         /bin/ln

%description -n install-initrd-branding-SLED
SLED theme for install-initrd package.



%package -n     install-initrd-branding-SLES
Supplements:    packageand(install-initrd:branding-SLES)
Provides:       install-initrd-branding
Requires:       install-initrd
Summary:        SLES theme for install-initrd
Group:          System/Kernel

%description -n install-initrd-branding-SLES
SLES theme for install-initrd package.



%prep
%setup
rm -f /usr/lib/build/checks/04-check-filelist

%build
unset MALLOC_CHECK_
BUILD_DISTRIBUTION_NAME="%distribution"
export BUILD_DISTRIBUTION_NAME
test ! -z "$BUILD_DISTRIBUTION_NAME"
# build id (for linuxrc to start the correct instsys)
export instsys_build_id=`bin/build_id`
# beta only: warn testers about wrong instsys
export instsys_complain=1
# careful: will make all non-matching initrds fail hard
# export instsys_complain_root=2
# beta only: ignore non-critical errors
# export debug=ignore
%if %with_sles
make
%else
make THEMES=openSUSE
%endif
%ifarch %ix86 x86_64
%if %with_xen
# build xen initrd & kernel
%if %with_sles
image=initrd-xen kernel=kernel-xen MOD_CFG=xen make initrd+modules
%else
image=initrd-xen kernel=kernel-xen MOD_CFG=xen make initrd+modules THEMES=openSUSE
%endif
MOD_CFG=xen make kernel
%endif
%endif
%ifarch ppc ppc64
%if %with_sles
image=initrd-ppc64 kernel=kernel-ppc64 MOD_CFG=ppc64 make initrd+modules+gefrickel
%else
image=initrd-ppc64 kernel=kernel-ppc64 MOD_CFG=ppc64 make initrd+modules+gefrickel THEMES=openSUSE
%endif
%endif

%install
BUILD_DISTRIBUTION_NAME="%distribution"
export BUILD_DISTRIBUTION_NAME
test ! -z "$BUILD_DISTRIBUTION_NAME"
%if %with_sles
make install DESTDIR=%{buildroot}
%else
make install DESTDIR=%{buildroot} THEMES=openSUSE
%endif
# make debuginfo DESTDIR=%{buildroot}
%if %with_sles
make install-initrd DESTDIR=%{buildroot}/usr/lib/install-initrd
%else
make install-initrd DESTDIR=%{buildroot}/usr/lib/install-initrd THEMES=openSUSE
%endif
ln -s openSUSE %{buildroot}/usr/lib/install-initrd/branding
install -d -m 755 %{buildroot}/usr/sbin
install -m 755 etc/mkinstallinitrd %{buildroot}/usr/sbin
%ifarch %ix86
%if %with_xen
# xenpae compat gefrickel (bnc #397065)
for i in %{buildroot}/branding/*/CD1/boot/i386/initrd-xen ; do
  [ -f "$i" ] && ln -s initrd-xen ${i}pae
done
for i in %{buildroot}/CD1/boot/i386/vmlinuz-xen ; do    
  [ -f "$i" ] && ln -s vmlinuz-xen ${i}pae
done
%endif
%endif
# get rid of /usr/lib/rpm/brp-strip-debug 
# strip kills the zImage.chrp-rs6k 
export NO_BRP_STRIP_DEBUG=true
export NO_DEBUGINFO_STRIP_DEBUG=true
# for compatibility
mv %{buildroot}/branding %{buildroot}/SuSE
# file list for install-initrd
echo '%defattr(-,root,root)' >install-initrd.files
( cd %{buildroot}/usr/lib/install-initrd ; find -maxdepth 1 | sed -e '/\.$/d ; /\.\/branding/d ; s#\.#/usr/lib/install-initrd#' ) >>install-initrd.files
echo '%ghost' /usr/lib/install-initrd/branding >>install-initrd.files
echo /usr/sbin/mkinstallinitrd >>install-initrd.files

%post -n install-initrd
/bin/ln -sn openSUSE /usr/lib/install-initrd/branding 2>/dev/null || true

%post -n install-initrd-branding-openSUSE
/bin/ln -snf openSUSE /usr/lib/install-initrd/branding

%post -n install-initrd-branding-SLED
/bin/ln -snf SLED /usr/lib/install-initrd/branding

%post -n install-initrd-branding-SLES
/bin/ln -snf SLES /usr/lib/install-initrd/branding

%clean 
rm -rf %{buildroot}

%files
%defattr(-,root,root)
/CD1
/SuSE
/usr/share

%files -n install-initrd -f install-initrd.files

%files -n install-initrd-branding-openSUSE
%defattr(-,root,root)
%ghost /usr/lib/install-initrd/branding

%files -n install-initrd-branding-SLED
%defattr(-,root,root)
%ghost /usr/lib/install-initrd/branding

%files -n install-initrd-branding-SLES
%defattr(-,root,root)
%ghost /usr/lib/install-initrd/branding

%changelog
openSUSE Build Service is sponsored by