diff options
author | biao716.wang <biao716.wang@samsung.com> | 2023-08-02 14:49:26 +0900 |
---|---|---|
committer | biao716.wang <biao716.wang@samsung.com> | 2023-08-02 15:20:01 +0900 |
commit | 7196b65d86c0cf921f7830e7131df5fd3a6def20 (patch) | |
tree | 4c047eb4fa56ea3bbcf704301a5752ee290f7aae | |
parent | a2321ff65bc65d8eddce880f2acd2a536443bf9a (diff) | |
download | build-7196b65d86c0cf921f7830e7131df5fd3a6def20.tar.gz build-7196b65d86c0cf921f7830e7131df5fd3a6def20.tar.bz2 build-7196b65d86c0cf921f7830e7131df5fd3a6def20.zip |
support build with openSUSE15.x distro
Change-Id: I268a8e0b8c2ef20e08a8e357b5b2cd03616d61a2
Signed-off-by: biao716.wang <biao716.wang@samsung.com>
-rwxr-xr-x | configs/sl15.0.conf | 857 | ||||
-rwxr-xr-x | configs/sl15.1.conf | 948 | ||||
-rwxr-xr-x | configs/sl15.2.conf | 988 | ||||
-rwxr-xr-x | configs/sl15.3.conf | 2118 | ||||
-rwxr-xr-x | configs/sl15.4.conf | 1785 | ||||
-rwxr-xr-x | configs/sl15.5.conf | 2384 | ||||
-rwxr-xr-x | configs/sle15.0.conf | 884 | ||||
-rwxr-xr-x | configs/sle15.1.conf | 884 | ||||
-rwxr-xr-x | configs/sle15.2.conf | 890 | ||||
-rwxr-xr-x | configs/sle15.3.conf | 890 | ||||
-rwxr-xr-x | configs/sle15.4.conf | 1633 | ||||
-rwxr-xr-x | configs/sle15.5.conf | 1811 |
12 files changed, 16072 insertions, 0 deletions
diff --git a/configs/sl15.0.conf b/configs/sl15.0.conf new file mode 100755 index 0000000..9968c58 --- /dev/null +++ b/configs/sl15.0.conf @@ -0,0 +1,857 @@ + +Release: lp150.<CI_CNT>.<B_CNT> +%define gcc_version 7 + +# Help with the switch to the gcc7 provided libs +Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7 +Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7 + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE + +# switch to kiwi v8 +Prefer: python3-kiwi +Prefer: kiwi-boot-require + +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat +#FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /bin/logger util-linux-systemd +FileProvides: /bin/csh tcsh +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/python python-base + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep liblua5_3-5 +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +Prefer: cdrkit-cdrtools-compat genisoimage +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: net-tools-deprecated + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl build-mkbaselibs +Support: brp-check-suse post-build-checks rpmlint-Factory + +%ifarch ia64 +Support: libunwind libunwind-devel +Preinstall: libunwind +%endif + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-openSUSE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs + +# curl +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs +# curl: -full and -mini packages don't mingle well +Prefer: -libcurl4-mini -libcurl-mini-devel +Conflict: libcurl4-mini:curl +Conflict: libcurl-mini-devel:libcurl4 + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +Prefer: -suse-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: apache2:apache2-prefork +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslog-service syslogd +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt +Prefer: yast2-packagemanager-devel:yast2-packagemanager +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: notification-daemon +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: yast2-theme-openSUSE enlightenment-theme-upstream +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: rhino:xmlbeans-mini +Prefer: rpcbind eclipse-source +Prefer: mx4j:log4j-mini +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: dummy-release +Prefer: libGLw1 +# Help GNOME:Factory over librest-0_7-0 vs librest0 choice +Prefer: librest-0_7-0 +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 -ruby2.2-rubygem-listen-3_0 -ruby2.2-rubygem-fast_gettext-1_1 -ruby2.2-rubygem-nokogiri-1_6 -ruby2.3-rubygem-nokogiri-1_6 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils python2-pep8 +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: pam-modules:resmgr +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: alsa:dialog,pciutils +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: gtk2:libpng,libtiff +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: gnome-pilot:gnome-panel +Ignore: gnome-panel:control-center2 +Ignore: gnome-menus:kdebase3 +Ignore: gnome-main-menu:rug +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: polkit:ConsoleKit +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: gawk:info +Ignore: grep:info +Ignore: groff:info +Ignore: m4:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: gettext-tools:info +Ignore: gettext-runtime:info +Ignore: libgcrypt-devel:info +Ignore: binutils:info +Ignore: gzip:info +Ignore: make:info +Ignore: bison:info +Ignore: flex:info +Ignore: help2man:info +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo + +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: gnome-libs:libgnomeui +Ignore: nautilus:gnome-themes +Ignore: gnome-panel:gnome-themes +Ignore: gnome-panel:tomboy +Ignore: NetworkManager:NetworkManager-client +Ignore: libbeagle:beagle +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: hal:pm-utils +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: pulseaudio:kernel +Ignore: transmission-common:transmission-ui +Ignore: mutter-moblin:moblin-branding +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit + +%ifarch ppc64le +#Constraint: hostlabel PPC64LE_HOST +Constraint: hardware:cpu:flag power8 +%endif + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# RUBY STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.2 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby22() rubygem(ruby:2.2.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby22() %{expand:%%{rubygemsx%*}} + +%rubyruby22() ruby2.2 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby22() %{expand:%%{rubyx%*}} + +%rubydevelruby22() ruby2.2-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby22() %{expand:%%{rubydevelx%*}} + +%_with_ruby22 1 + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.3 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby23() rubygem(ruby:2.3.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby23() %{expand:%%{rubygemsx%*}} + +%rubyruby23() ruby2.3 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby23() %{expand:%%{rubyx%*}} + +%rubydevelruby23() ruby2.3-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby23() %{expand:%%{rubydevelx%*}} + +%_with_ruby23 1 + +:Macros + +%define _with_ruby22 1 +%define _with_ruby23 1 + +%define rb_default_ruby ruby22 +%define rb_default_ruby_suffix ruby2.2 +%define rb_default_ruby_abi ruby:2.2.0 + +%define rb_build_ruby_abis ruby:2.2.0 ruby:2.3.0 +%define rb_build_versions ruby22 ruby23 +Macros: +%rb_default_ruby ruby22 +%rb_default_ruby_suffix ruby2.2 +%rb_default_ruby_abi ruby:2.2.0 + +%rb_build_ruby_abis ruby:2.2.0 ruby:2.3.0 +%rb_build_versions ruby22 ruby23 +:Macros + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa + +# END RUBY STUFF + +# PYTHON STUFF +# defined in tpython-rpm-macros + +Macros: +%have_python2 1 +%have_python3 1 +%python_module() %{expand: %{?have_python2:python2-%{**}} %{?have_python3:python3-%{**}} %{?have_pypy3:pypy3-%{**}}} +:Macros + +# END PYTHON STUFF + +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +# until the builds of the packages are fixed... +Substitute: yast2-theme-SLED +Substitute: yast2-theme-SLE + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables + +%define suse_version 1500 +%define is_opensuse 1 + +RepoURL: https://download.opensuse.org/distribution/leap/15.0/repo/oss +RegistryURL: https://registry.opensuse.org + +Macros: +%suse_version 1500 +%is_opensuse 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sl15.1.conf b/configs/sl15.1.conf new file mode 100755 index 0000000..9919403 --- /dev/null +++ b/configs/sl15.1.conf @@ -0,0 +1,948 @@ + +Release: lp151.<CI_CNT>.<B_CNT> +%define gcc_version 7 + +# Help with the switch to the gcc7 provided libs +Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7 +Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7 + +Prefer: kiwi-filesystem-requires +Prefer: kiwi-image-docker-requires +Prefer: kiwi-image-iso-requires +Prefer: kiwi-image-vmx-requires + +# Migration to product builder +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed +Substitute: system-packages:kiwi-product product-builder + +Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE + +# switch to kiwi v8 +Prefer: python3-kiwi + +# LUA namespace migration - slowly moving to the new names (keep ports in mind!) +# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future +Prefer: lua53 lua51 lua52 lua +Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5 +Prefer: lua53-devel lua51-devel lua52-devel +Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Preinstall: liblua5_3-5 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/python2 python2-base +FileProvides: /usr/bin/python3 python3-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: net-tools-deprecated + +# we only have a 64bit kernel +ExportFilter: ^kernel-obs-build.*\.x86_64\.rpm$ . i586 + +ExportFilter: \.x86_64\.rpm$ x86_64 +ExportFilter: \.ia64\.rpm$ ia64 +ExportFilter: \.s390x\.rpm$ s390x +ExportFilter: \.ppc64\.rpm$ ppc64 +ExportFilter: \.ppc64le\.rpm$ ppc64le +ExportFilter: \.ppc\.rpm$ ppc +ExportFilter: -ia32-.*\.rpm$ +ExportFilter: -32bit-.*\.sparc64\.rpm$ +ExportFilter: -64bit-.*\.sparcv9\.rpm$ +ExportFilter: -64bit-.*\.aarch64_ilp32\.rpm$ +ExportFilter: \.armv7l\.rpm$ armv7l +ExportFilter: \.armv7hl\.rpm$ armv7l +ExportFilter: ^glibc(?:-devel)?-32bit-.*\.sparc64\.rpm$ sparc64 +ExportFilter: ^glibc(?:-devel)?-64bit-.*\.sparcv9\.rpm$ sparcv9 +ExportFilter: ^acroread.*\.i586.rpm$ . x86_64 +ExportFilter: ^avmailgate.*\.i586.rpm$ . x86_64 +ExportFilter: ^avmailgate.*\.ppc.rpm$ . ppc64 +ExportFilter: ^avmailgate.*\.s390.rpm$ . s390x +ExportFilter: ^flash-player.*\.i586.rpm$ . x86_64 +ExportFilter: ^novell-messenger-client.*\.i586.rpm$ . x86_64 +ExportFilter: ^openCryptoki-32bit.*\.s390.rpm$ . s390x + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse +Support: post-build-checks rpmlint-Factory +# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost) +Support: hostname + +Support: build-compare + +%ifarch ia64 +Support: libunwind libunwind-devel +Preinstall: libunwind +%endif + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-openSUSE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# man uses cron to update the DB normally, but we don't care for that in the build system +Ignore: man:cron + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini +# And also for python3-kiwi +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -suse-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix + +# go exists in mutliple versions by now - we prefer the 'unversioned package' - current default is 1.9 +Prefer: go go1.9 + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 -nodejs6 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# Have choice for vtk-java/vtk-tcl needed by vtk-devel +Prefer: vtk-java vtk-tcl + +# wine comes in various flavors by now, we pick the unflavored ones +Prefer: wine-32bit wine-devel-32bit wine-devel + +# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package +Prefer: ruby2.5-rubygem-tilt +Prefer: ruby2.5-rubygem-mail +Prefer: ruby2.5-rubygem-addressable +Prefer: ruby2.5-rubygem-thor + +# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place) +Prefer: python2-msgpack python3-msgpack + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + + +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: rhino:xmlbeans-mini +Prefer: mx4j:log4j-mini + + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 +Prefer: geronimo-servlet-2_4-api +Prefer: openmpi-config +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi -libhdf5_hl100-mvapich2 -libhdf5-101-mvapich2 -libhdf5-101-openmpi +Prefer: -hdf5-1_8-devel +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +Prefer: -python-configparser2 + +# ffmpeg-3 and ffmpeg-4 handling +Prefer: libvpx-devel +Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel +Prefer: -ffmpeg2-devel +Substitute: ffmpeg2-devel ffmpeg-2-libavcodec-devel +Prefer: -ffmpeg3-devel +Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel +Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel + +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# explicitly prefer openssl version openssl package is used, for openssl(cli) +Prefer: openssl-1_1 + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +Prefer: libmysqlclient-devel + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit + +%ifarch ppc64le +#Constraint: hostlabel PPC64LE_HOST +Constraint: hardware:cpu:flag power8 +%endif + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# + + +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + +%_with_ruby25 1 + +### Things to define default ruby stuff for the distro + +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 + +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 +:Macros + +%define _with_ruby25 1 + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +# END RUST STUFF + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless +# Fall back to Java 10, if there was no java 11 option +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fall back to Java 9, if there was no java 10 option +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to java 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# And then fall back to java 7 bootstrap if needed +Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + + +#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +# 13.3 does not exist ! +%define suse_version 1500 +%define is_opensuse 1 +%define sle_version 150100 + +RepoURL: https://download.opensuse.org/distribution/leap/15.1/repo/oss +RegistryURL: https://registry.opensuse.org + +Macros: +%suse_version 1500 +%is_opensuse 1 +%sle_version 150100 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%ul_version 0 +%do_profiling 1 +%opensuse_bs 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sl15.2.conf b/configs/sl15.2.conf new file mode 100755 index 0000000..35bccd3 --- /dev/null +++ b/configs/sl15.2.conf @@ -0,0 +1,988 @@ + +Release: <CI_CNT>.<B_CNT> spec:lp152.<CI_CNT>.<B_CNT> +%define gcc_version 7 + +# Help with the switch to the gcc7 provided libs +Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7 +Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7 + +# Help with the switch to the gcc9 provided libs: +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +Substitute: kiwi-setup:image python3-kiwi createrepo_c +Substitute: kiwi-image:tbz python3-kiwi +Substitute: kiwi-image:docker python3-kiwi kiwi-image-docker-requires + +Prefer: kiwi-filesystem-requires +Prefer: kiwi-image-docker-requires +Prefer: kiwi-image-iso-requires +Prefer: kiwi-image-vmx-requires + +# Migration to product builder +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed +Substitute: system-packages:kiwi-product product-builder + +# allow builds using docker tool +Substitute: build-packages:docker !systemd-mini !libsystemd0-mini !libudev-mini1 !udev-mini openSUSE-release-ftp containment-rpm-docker +Substitute: build-packages:kiwi !systemd-mini !libsystemd0-mini !libudev-mini1 !udev-mini openSUSE-release-ftp + +# To build ISO images +Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini +Substitute: kiwi python3-kiwi + +Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE + +# switch to kiwi v8 +Prefer: python3-kiwi + +# LUA namespace migration - slowly moving to the new names (keep ports in mind!) +# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future +Prefer: lua53 lua51 lua52 lua +Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5 +Prefer: lua53-devel lua51-devel lua52-devel +Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +# ghc-bootstrap should not provide it to start with - but it does. so let's kick it +Prefer: libffi7 + +Preinstall: liblua5_3-5 + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 and Leap 15.2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/python2 python2-base +FileProvides: /usr/bin/python3 python3-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/host bind-utils + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libncurses6 pam +Preinstall: libgcc_s1 +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: net-tools-deprecated + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse +Support: post-build-checks rpmlint-Factory +# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost) +Support: hostname + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-openSUSE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs +Ignore: ghc-bootstrap:this-is-only-for-build-envs +Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs +Ignore: cmake-mini:this-is-only-for-build-envs + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# man uses cron to update the DB normally, but we don't care for that in the build system +Ignore: man:cron + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini +# And also for python3-kiwi +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 +# Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini + +Prefer: -suse-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore +# SP1 is prefer go1.12 +Prefer: go go1.12 + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# There is python3-prompt_toolkit and also python3-prompt_toolkit1 for compat. Use the unversioned one by default +Prefer: python3-prompt_toolkit + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +# SLE has no nodejs preference, let's use nodejs10 +Prefer: -nodejs4 -nodejs6 -nodejs9 nodejs10 +Prefer: npm10 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel +Prefer: vtk-java vtk-tcl python3-vtk + +# wine comes in various flavors by now, we pick the unflavored ones +Prefer: wine-32bit wine-devel-32bit wine-devel + +# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package +Prefer: ruby2.5-rubygem-tilt +Prefer: ruby2.5-rubygem-mail +Prefer: ruby2.5-rubygem-addressable +Prefer: ruby2.5-rubygem-thor + +# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place) +Prefer: python2-msgpack python3-msgpack + +# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one +Prefer: python3-Django + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + + +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: rhino:xmlbeans-mini +Prefer: mx4j:log4j-mini + + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 +Prefer: geronimo-servlet-2_4-api +Prefer: openmpi-config +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3 +Prefer: -hdf5-1_8-devel +Prefer: -libvtk1-openmpi libvtk1-openmpi2 +Prefer: fftw3-devel ImageMagick-config-7-SUSE +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +Prefer: -python-configparser2 + +# ffmpeg-3 and ffmpeg-4 handling +Prefer: libvpx-devel +Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel +Prefer: -ffmpeg2-devel +Substitute: ffmpeg2-devel ffmpeg-2-libavcodec-devel +Prefer: -ffmpeg3-devel +Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel +Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel + +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# explicitly prefer openssl version openssl package is used, for openssl(cli) +Prefer: openssl-1_1 + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi -libnetcdf13-openmpi2 libnetcdf11 netcdf-devel netcdf-devel-data +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +Prefer: libmysqlclient-devel + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +# Not true anymore peri-i +#Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# + + +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + +%_with_ruby25 1 + +### Things to define default ruby stuff for the distro + +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 + +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 +:Macros + +%define _with_ruby25 1 + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +# END RUST STUFF + +# samba-libs requires samba-libs-python +Prefer: samba-libs-python3 + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless +# Fall back to Java 10, if there was no java 11 option +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fall back to Java 9, if there was no java 10 option +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to java 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# And then fall back to java 7 bootstrap if needed +Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +# until the builds of the packages are fixed... +Substitute: yast2-theme-SLED +Substitute: yast2-theme-SLE + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +# 13.3 does not exist ! +%define suse_version 1500 +%define is_opensuse 1 +%define sle_version 150200 + +RepoURL: https://download.opensuse.org/distribution/leap/15.2/repo/oss +RegistryURL: https://registry.opensuse.org + +Macros: +%suse_version 1500 +%is_opensuse 1 +%sle_version 150200 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%ul_version 0 +%do_profiling 1 +%opensuse_bs 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 9 + +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have latest versions built from GCC 7 sources +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libobjc4 7 +# The following shlibs have latest versions built from GCC 8 sources +%product_libs_gcc_ver_libgo13 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 + +%product_libs_gcc_ver_libgfortran5 9 +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libubsan1 9 + +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sl15.3.conf b/configs/sl15.3.conf new file mode 100755 index 0000000..dad7bb8 --- /dev/null +++ b/configs/sl15.3.conf @@ -0,0 +1,2118 @@ +%define gcc_version 7 + +# new cycle handling +BuildFlags: genmetaalgo:1 + +Constraint: linux:version:min 3.0.0 +%ifarch ppc ppc64 ppc64le +Constraint: hardware:cpu:flag power8 +%endif + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c +Substitute: kiwi python3-kiwi +Substitute: system-packages:mock mock createrepo_c +Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper +Prefer: -python2-kiwi + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/msgfmt gettext-runtime +FileProvides: /usr/bin/python3 python3-base +# Recommended by Adrian Schroeter: +# causes a cycle :( +# FileProvides: /sbin/mkinitrd dracut + + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMinstall: iproute2 libmnl0 + +ExportFilter: \.x86_64\.rpm$ x86_64 +ExportFilter: \.ia64\.rpm$ ia64 +ExportFilter: \.s390x\.rpm$ s390x +ExportFilter: \.ppc64\.rpm$ ppc64 +ExportFilter: \.ppc64le\.rpm$ ppc64le +ExportFilter: \.ppc\.rpm$ ppc +ExportFilter: -ia32-.*\.rpm$ +ExportFilter: -32bit-.*\.sparc64\.rpm$ +ExportFilter: -64bit-.*\.sparcv9\.rpm$ +ExportFilter: \.armv7l\.rpm$ armv7l +ExportFilter: \.armv7hl\.rpm$ armv7l +ExportFilter: \.aarch64_ilp32\.rpm$ aarch64_ilp32 +ExportFilter: ^glibc(?:-devel)?-32bit-.*\.sparc64\.rpm$ sparc64 +ExportFilter: ^glibc(?:-devel)?-64bit-.*\.sparcv9\.rpm$ sparcv9 +ExportFilter: ^acroread.*\.i586.rpm$ . x86_64 +ExportFilter: ^avmailgate.*\.i586.rpm$ . x86_64 +ExportFilter: ^avmailgate.*\.ppc.rpm$ . ppc64 +ExportFilter: ^avmailgate.*\.s390.rpm$ . s390x +ExportFilter: ^flash-player.*\.i586.rpm$ . x86_64 +ExportFilter: ^novell-messenger-client.*\.i586.rpm$ . x86_64 +ExportFilter: ^openCryptoki-32bit.*\.s390.rpm$ . s390x +ExportFilter: ^kernel-obs-build.*\.s390.rpm$ +ExportFilter: ^kernel-obs-build.*\.ppc.rpm$ +ExportFilter: ^kernel-obs-build.*\.i586.rpm$ +ExportFilter: ^kernel-obs-build.*\.x86_64.rpm$ . i586 +ExportFilter: ^kernel-obs-build.*\.s390x.rpm$ . s390 +ExportFilter: ^kernel-obs-build.*\.ppc64.rpm$ . ppc +%ifarch x86_64 +ExportFilter: ^qemu-seabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-vgabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-sgabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-ipxe.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x +%endif + +Required: rpm-build +Required: gcc-PIE + +# needed for su's default config - perhaps we should use a simplified form? +Support: pam-modules + +# the basic stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse post-build-checks rpmlint-Factory +Support: hostname +Support: brp-extract-appdata +Support: brp-extract-translations +Support: rpmlint-Factory-strict + +%ifarch ia64 +Support: libunwind libunwind-devel +Preinstall: libunwind +%endif +Prefer: -openSUSE-build-key + +Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel + +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini +Conflict: python3-kiwi:krb5-mini +Conflict: python3-kiwi:gettext-tools-mini + +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -openSUSE-build-key +Prefer: postfix + +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +Prefer: go +Prefer: python2-pep8 python3-pep8 +Prefer: perl +Prefer: python3-pycups python-pycups +Prefer: apache2:apache2-prefork +Prefer: syslogd +Prefer: star-rmt +Prefer: notification-daemon +Prefer: dummy-release +Prefer: -nodejs4 +Prefer: libpulse0-32bit +Prefer: netcdf-devel +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +Prefer: fftw3-devel +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +Prefer: kactivities5 +Prefer: oxygen5-icon-theme +Prefer: npm6 +Prefer: kernel-default-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +Prefer: mozilla-nss-certs +Prefer: phonon-backend-gstreamer +Prefer: dracut +Prefer: kmod-compat +Prefer: oxygen5-cursors +Prefer: -perl-App-cpanminus +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +Prefer: ghostscript-devel +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +# FATE#325522 +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fallback, but we should try to not use this but java-8.... +# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150000 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms +%maintenance_vendor SUSE LLC <https://www.suse.com/> +%maintenance_distribution SUSE Linux Enterprise 15 + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +Macros: +%_without_obs_scm_testsuite 0 +:Macros + +Prefer: SLES_SAP-installation-release-DVD +Prefer: systemd-presets-branding-SLE +Prefer: python3-msgpack + +%ifarch s390 +Ignore: python2-numpy-devel:openblas-devel +Ignore: python3-numpy-devel:openblas-devel +%endif + +Prefer: -openssl-1_0_0 + +### from SUSE:SLE-15:Update +Buildflags: useccache:ceph + +Prefer: ImageMagick-config-7-upstream + +# disabled in GA by mistake, enabling it here +Support: build-compare + +Prefer: chrony-pool-suse + +Prefer: pciutils-ids + +Prefer: -libcurl4-mini + +Macros: +%shim_enforce_ms_signature 1 +:Macros + +Macros: + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 10 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +# The following shlibs have the latest version built from GCC 9 sources +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libgo14 9 + +%product_libs_gcc_ver_libobjc4 10 + +# Override SUSE:SLE-15:Update +%product_libs_gcc_ver_libgfortran5 10 +%product_libs_gcc_ver_libubsan1 10 + +:Macros + +Prefer: -alsa-devel-32bit +Prefer: -atk-devel-32bit +Prefer: -atkmm1_6-devel-32bit +Prefer: -at-spi2-core-devel-32bit +Prefer: -at-spi-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -augeas-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -cairo-devel-32bit +Prefer: -cairomm1_0-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -cppunit-devel-32bit +Prefer: -cyrus-sasl-devel-32bit +Prefer: -dbus-1-devel-32bit +Prefer: -dbus-1-glib-devel-32bit +Prefer: -device-mapper-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -flac-devel-32bit +Prefer: -fontconfig-devel-32bit +Prefer: -freetype2-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -glu-devel-32bit +Prefer: -gstreamer-devel-32bit +Prefer: -gstreamer-plugins-base-devel-32bit +Prefer: -gtk2-devel-32bit +Prefer: -gtk3-devel-32bit +Prefer: -hunspell-devel-32bit +Prefer: -ImageMagick-devel-32bit +Prefer: -libart_lgpl-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -libbasicobjects-devel-32bit +Prefer: -libblkid-devel-32bit +Prefer: -libbz2-devel-32bit +Prefer: -libcelt-devel-32bit +Prefer: -libcollection-devel-32bit +Prefer: -libcom_err-devel-32bit +Prefer: -libdhash-devel-32bit +Prefer: -libdmx-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -libelf-devel-32bit +Prefer: -libexif-devel-32bit +Prefer: -libexpat-devel-32bit +Prefer: -libext2fs-devel-32bit +Prefer: -libfontenc-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libgck-devel-32bit +Prefer: -libgcr-devel-32bit +Prefer: -libglvnd-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libgphoto2-devel-32bit +Prefer: -libHX-devel-32bit +Prefer: -libICE-devel-32bit +Prefer: -libicu-devel-32bit +Prefer: -libini_config-devel-32bit +Prefer: -libjack-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -liblbxutil-devel-32bit +Prefer: -liblcms2-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libmount-devel-32bit +Prefer: -libnettle-devel-32bit +Prefer: -libnl3-devel-32bit +Prefer: -libnotify-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libqt5-qtconnectivity-devel-32bit +Prefer: -libqt5-qtdeclarative-devel-32bit +Prefer: -libqt5-qtlocation-devel-32bit +Prefer: -libqt5-qtmultimedia-devel-32bit +Prefer: -libqt5-qtserialport-devel-32bit +Prefer: -libqt5-qtsvg-devel-32bit +Prefer: -libqt5-qttools-devel-32bit +Prefer: -libqt5-qtwayland-devel-32bit +Prefer: -libqt5-qtwebchannel-devel-32bit +Prefer: -libqt5-qtwebsockets-devel-32bit +Prefer: -libqt5-qtx11extras-devel-32bit +Prefer: -libqt5-qtxmlpatterns-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libraw1394-devel-32bit +Prefer: -libref_array-devel-32bit +Prefer: -libSDL2-devel-32bit +Prefer: -libSDL-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSM-devel-32bit +Prefer: -libsoup-devel-32bit +Prefer: -libtasn1-devel-32bit +Prefer: -libtiff-devel-32bit +Prefer: -libusb-1_0-devel-32bit +Prefer: -libuuid-devel-32bit +Prefer: -libv4l-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libvdpau-devel-32bit +Prefer: -libverto-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -libvorbis-devel-32bit +Prefer: -libwayland-egl-devel-32bit +Prefer: -libwebp-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libXau-devel-32bit +Prefer: -libXaw3d-devel-32bit +Prefer: -libXaw-devel-32bit +Prefer: -libxcb-devel-32bit +Prefer: -libXcomposite-devel-32bit +Prefer: -libXcursor-devel-32bit +Prefer: -libXdamage-devel-32bit +Prefer: -libXdmcp-devel-32bit +Prefer: -libXext-devel-32bit +Prefer: -libXfixes-devel-32bit +Prefer: -libXfont2-devel-32bit +Prefer: -libXfontcache-devel-32bit +Prefer: -libXfont-devel-32bit +Prefer: -libXft-devel-32bit +Prefer: -libXi-devel-32bit +Prefer: -libXinerama-devel-32bit +Prefer: -libxkbcommon-devel-32bit +Prefer: -libxkbcommon-x11-devel-32bit +Prefer: -libxkbfile-devel-32bit +Prefer: -libxml2-devel-32bit +Prefer: -libXmu-devel-32bit +Prefer: -libXp-devel-32bit +Prefer: -libXpm-devel-32bit +Prefer: -libXprintUtil-devel-32bit +Prefer: -libXrandr-devel-32bit +Prefer: -libXrender-devel-32bit +Prefer: -libXres-devel-32bit +Prefer: -libxslt-devel-32bit +Prefer: -libXss-devel-32bit +Prefer: -libXt-devel-32bit +Prefer: -libXtst-devel-32bit +Prefer: -libXv-devel-32bit +Prefer: -libXvMC-devel-32bit +Prefer: -libXxf86dga-devel-32bit +Prefer: -libXxf86misc-devel-32bit +Prefer: -libXxf86vm-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGLESv2_CM-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -ncurses-devel-32bit +Prefer: -NetworkManager-devel-32bit +Prefer: -openal-soft-devel-32bit +Prefer: -openjpeg-devel-32bit +Prefer: -pango-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -tslib-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -wayland-devel-32bit +Prefer: -xcb-util-devel-32bit +Prefer: -xcb-util-image-devel-32bit +Prefer: -xcb-util-keysyms-devel-32bit +Prefer: -xcb-util-renderutil-devel-32bit +Prefer: -xcb-util-wm-devel-32bit +Prefer: -xz-devel-32bit +Prefer: -zlib-devel-32bit +Prefer: -zvbi-devel-32bit + +Prefer: libboost_thread1_66_0 +Prefer: libboost_system1_66_0 +Prefer: libboost_regex1_66_0 +Prefer: libboost_filesystem1_66_0 +Prefer: libboost_iostreams1_66_0 +Prefer: libboost_date_time1_66_0 + +Prefer: -libsmartcols-devel-32bit +Prefer: -krb5-devel-32bit + +### from SUSE:SLE-15-SP1:GA +Patterntype: rpm-md ymp +%define sle_version 150100 + +Macros: +%sle_version 150100 +:Macros + +FileProvides: /usr/bin/host bind-utils + +Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c + +Prefer: libyui-ncurses9 +Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9 +Prefer: samba-libs-python3 +Ignore: !pciutils:pciutils-ids +Prefer: kernel-default +Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua) +Prefer: python2-configparser +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream + +Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless +Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless +Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless + +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless + +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless + +%ifarch x86_64 +ExportFilter: ^qemu-seabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-vgabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-sgabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x +ExportFilter: ^qemu-ipxe.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x +%endif + +Prefer: go1.12 + +### from SUSE:SLE-15-SP1:Update +Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins +Prefer: python-pytest4 python2-pytest4 python3-pytest4 +Prefer: python3-pycryptodome + +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + + +### from SUSE:SLE-15-SP2:GA + +Patterntype: rpm-md ymp + +%define sle_version 150200 + +Prefer: enchant-2-backend-hunspell + +Macros: +%sle_version 150200 +%current_milestone GMC + +%product_libs_gcc_ver 9 +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +:Macros + +Prefer: libyui11 +Prefer: libyui-ncurses11 +Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11 +Substitute: libyui libyui11 +Substitute: libyui-ncurses libyui-ncurses11 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11 +Substitute: libyui-qt libyui-qt11 +Substitute: libyui-qt-graph libyui-qt-graph11 +Substitute: libyui-qt-pkg libyui-qt-pkg11 + +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 +Substitute: infiniband-diags-devel rdma-core-devel +Prefer: python3-pycryptodome +Prefer: libvala-0_46-devel +Preinstall: libgcrypt20 libgpg-error0 + +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +Prefer: rpm + +Preinstall: libzstd1 + +Prefer: libudisks2-0-devel + +%ifarch aarch64 ppc64le s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP2-aarch64.*\.rpm$ . ppc64le s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP2-ppc64le.*\.rpm$ . aarch64 s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP2-s390x.*\.rpm$ . aarch64 ppc64le x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP2-x86_64.*\.rpm$ . aarch64 ppc64le s390x +%endif + +Ignore: cmake-mini:this-is-only-for-build-envs +Prefer: cmake-mini +Prefer: ocaml-compiler-libs-devel +Prefer: python2-contextlib2 +Prefer: chrony-pool-suse + +%ifarch i586 +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +Substitute: azuremetadata python3-azuremetadata + +Prefer: python3-pytest +Prefer: python2-pytest + +Prefer: PackageKit-backend-zypp +Prefer: python2-subprocess32 + +### from SUSE:SLE-15-SP2:Update +Prefer: python2-pycrypto +Prefer: libgnutls-devel +Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel +Prefer: bluez-devel +Prefer: libpq5 +Prefer: gdk-pixbuf-devel + + +### from SUSE:SLE-15-SP3:GA +Patterntype: rpm-md ymp + +Macros: +%product_libs_gcc_ver 9 +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +:Macros + +Prefer: enchant-2-backend-hunspell + +# COMMON BEGIN common part +%define sle_version 150300 +Macros: +%sle_version 150300 +:Macros + +# Prefer over libyui11* from SP2-GA +Prefer: libyui15 +Prefer: libyui-ncurses15 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15 +Substitute: libyui libyui15 +Substitute: libyui-ncurses libyui-ncurses15 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15 +Substitute: libyui-qt libyui-qt15 +Substitute: libyui-qt-graph libyui-qt-graph15 +Substitute: libyui-qt-pkg libyui-qt-pkg15 +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15 +Substitute: libyui-qt-rest-api libyui-qt-rest-api15 + +# copy tftpboot-installation files across all archs +%ifarch aarch64 ppc64le s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP3-aarch64.*\.rpm$ . ppc64le s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP3-ppc64le.*\.rpm$ . aarch64 s390x x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP3-s390x.*\.rpm$ . aarch64 ppc64le x86_64 +ExportFilter: ^tftpboot-installation-SLE-15-SP3-x86_64.*\.rpm$ . aarch64 ppc64le s390x +%endif + +# required after SR#225674 / jsc#SLE-12712 +Prefer: gmmlib-devel + +# required after SR#225669 +Preinstall: libcrypt1 + +# required for latest Mesa +Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel + +# required after SR#226419 +Prefer: typelib-1_0-Gst-1_0 + +# required for latest Mesa +Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel + +# not sure why we need those +Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel + +# required after MU#16450 (gnutls) +Prefer: libgnutls-devel + +# required after SR#228340 +Prefer: systemd-sysvinit + +# required after SR#227910 (alsa) and SR#228076 (pulseaudio) +Prefer: alsa-devel libpulse-devel + +# required after SR#227917 (kernel-firmware) +Prefer: kernel-firmware + +# required after SR#229310 +Prefer: systemd-default-settings-branding-SLE + +Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit +Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit + +# required after SR#230365 and SR#230366 +Prefer: plymouth-branding-SLE + +# required after SR#228415 +Ignore: !pango-devel:cairo-devel + +# required after SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# needed after SR#236147 +Prefer: -mpg123-devel-32bit + +# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756) +Prefer: -coreutils-single + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires + +# COMMON END common part + +# KEEP BEGIN from older +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 +Substitute: infiniband-diags-devel rdma-core-devel +Prefer: python3-pycryptodome +Prefer: libvala-0_46-devel +Preinstall: libgcrypt20 libgpg-error0 +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +Prefer: rpm +Preinstall: libzstd1 +Prefer: libudisks2-0-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: cmake-mini:this-is-only-for-build-envs +Prefer: cmake-mini +Prefer: ocaml-compiler-libs-devel +Prefer: python2-contextlib2 +Prefer: chrony-pool-suse + +%ifarch i586 +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +Substitute: azuremetadata python3-azuremetadata +Prefer: python3-pytest +Prefer: python2-pytest +Prefer: PackageKit-backend-zypp +Prefer: python2-subprocess32 +# KEEP END from older + +### from openSUSE:Backports:SLE-15-SP3 +Release: bp153.<CI_CNT>.<B_CNT> + +Patterntype: rpm-md ymp +RepoType: rpm-md:rsyncable splitdebug:_debug + +# whenever something (rpmlint-mini!) wants rpmlint we also install +# our extra policy check +#Substitute: rpmlint rpmlint rpmlint-backports rpmlint-backports-data + +# rpmlint-backports-data is only available for SLE architectures +%ifarch x86_64 ppc64le s390x aarch64 +Support: rpmlint-backports +%endif +Support: brp-check-suse + +# Enable ccache for chromium tensorflow{2} +BuildFlags: useccache:chromium + +BuildFlags: useccache:tensorflow:hpc +BuildFlags: useccache:tensorflow:hpc-openmpi2 +BuildFlags: useccache:tensorflow:lite +BuildFlags: useccache:tensorflow:standard + +BuildFlags: useccache:tensorflow2:hpc +BuildFlags: useccache:tensorflow2:hpc-openmpi2 +BuildFlags: useccache:tensorflow2:lite +BuildFlags: useccache:tensorflow2:standard + +FileProvides: /usr/bin/python2 python2-base +FileProvides: /sbin/pidof sysvinit-tools + +Prefer: rpm -rpm-ndb +# bsc#1182698 +Preinstall: rpm-config-SUSE + +# prefer coreutils over coreutils-single +Prefer: coreutils + +# Help with the switch to the gcc7 provided libs +Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7 +Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7 + +# Help with the switch to the gcc9 provided libs: +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +# Imagemagick now has 2 configs +Prefer: ImageMagick-config-7-SUSE + +# man uses cron to update the DB normally, but we don't care for that in the build system +Ignore: man:cron + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs +Ignore: ghc-bootstrap:this-is-only-for-build-envs +Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs +Ignore: cmake-mini:this-is-only-for-build-envs + +# Cmake exists as a -mini flavor, which is not linked against curl. +Prefer: cmake-mini + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +# SLE has no nodejs preference, let's use nodejs10 +Prefer: -nodejs4 -nodejs6 -nodejs9 nodejs10 +Prefer: npm10 + +# Fix build of python-inspektor +Prefer: python2-configparser + +# Fix build for packages depending on rust since old version rust-std (1.24.1) +# instead of current version in SLE (rust-std-static 1.31.1) was used for builds +Substitute: rust-std rust-std-static + +# For 32bit stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs + +# Directly copied from Leap +Prefer: openmpi-config +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 libnetcdf11 netcdf-devel netcdf-devel-data -libnetcdf13-openmpi -libnetcdf13-openmpi2 +Prefer: -libnetcdf15-openmpi -libnetcdf15-openmpi2 +Prefer: libnetcdf18 +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi1 -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-openmpi1 -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5-103-openmpi4 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3 -libhdf5_cpp103-openmpi4 +Prefer: -hdf5-1_8-devel +Prefer: -libvtk1-openmpi libvtk1-openmpi2 + + +# do not prefer php7-test +Prefer: -php7-test + +# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore +# for go version greater than 1.13, let's not to prefer older ones +# go1.15 is the default by patchinfo.18422 +Prefer: go -go1.12 -go1.13 -go1.14 -go1.16 + +# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel +Prefer: vtk-java vtk-tcl python3-vtk + +# have choice for mingw32-unistd-pthread-devel needed by mingw32-headers: mingw32-headers-dummy-pthread mingw32-winpthreads-devel +Prefer: -mingw64-headers-dummy-pthread -mingw32-headers-dummy-pthread + +# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package +Prefer: ruby2.5-rubygem-tilt +Prefer: ruby2.5-rubygem-mail +Prefer: ruby2.5-rubygem-addressable +Prefer: ruby2.5-rubygem-thor +Prefer: ruby2.5-rubygem-tzinfo + +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 + +# have choice for rubygem(ruby:2.5.0:fast_gettext) < 3.0 needed by yast2-ruby-bindings: ruby2.5-rubygem-fast_gettext ruby2.5-rubygem-fast_gettext-1.1 +Prefer: -ruby2.5-rubygem-fast_gettext-1.1 +# have choice for rubygem(ruby:2.5.0:sass-rails) >= 5.0.1: ruby2.5-rubygem-sass-rails ruby2.5-rubygem-sass-rails-5.1 +Prefer: -ruby2.5-rubygem-sass-rails-5.1 + +# we have python3 and python39 +Prefer: -python39 + +# have choice: python2-setuptools python2-setuptools-test python2-setuptools-wheel +Prefer: python2-setuptools +Prefer: python3-setuptools + +# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place) +Prefer: python2-msgpack python3-msgpack + +Prefer: python2-pycryptodome + +# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one +Prefer: python3-Django + +# multiple pytest version so prefers the unversioned one +Prefer: python3-pytest python3-pytest4 python3-pytest5 +Prefer: python2-pytest python2-pytest4 python2-pytest5 + +Prefer: python2-subprocess32 + +# Enchant has multiple backends to chose from, make a decision for OBS +Prefer: enchant-1-backends +Prefer: enchant-2-backend-hunspell + +# OpenSceneGraph exists as 'latest' and a 3.4 compat package. If nothing is specified, we want latest +Prefer: libOpenSceneGraph-devel libOpenThreads-devel + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis + +Prefer: rhino:xmlbeans-mini +Prefer: k9s:go1.14 + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +# hwdata vs pciutils-ids +Prefer: -pciutils-ids +Prefer: hwdata + +# have choice for tensorflow: tensorflow tensorflow2 tensorflow2_2_1_0-gnu-hpc tensorflow2_2_1_0-gnu-mvapich2-hpc tensorflow2_2_1_0-gnu-openmpi2-hpc +Prefer: tensorflow2 + +# have choice for systemd-default-settings-branding needed by systemd: +# systemd-default-settings-branding-SLE systemd-default-settings-branding-openSUSE systemd-default-settings-branding-upstream +Prefer: systemd-default-settings-branding-SLE + +# Do not prefer 32bit devel +Prefer: -ImageMagick-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5OpenGLExtensions-devel-static-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -alsa-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -libSDL2_image-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libva-gl-devel-32bit +Prefer: -libdbusmenu-qt5-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libpolkit-qt5-1-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -papi-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -libOSMesa-devel-32bit +Prefer: -libSDL_ttf-devel-32bit +Prefer: -libSDL2_ttf-devel-32bit +Prefer: -libSDL_mixer-devel-32bit +Prefer: -libSDL2_mixer-devel-32bit +Prefer: -libSDL_image-devel-32bit +Prefer: -libSDL_net-devel-32bit +Prefer: -libSDL2_net-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSDL2_gfx-devel-32bit +Prefer: -muparser-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit +Prefer: -libbotan-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -zvbi-devel-32bit +Prefer: -libcmocka-devel-32bit +Prefer: -libstatgrab-devel-32bit +Prefer: -libqt5-qtnetworkauth-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -libqt5-qtscxml-devel-32bit +Prefer: -phonon4qt5-devel-32bit +Prefer: -libQt5WebKit5-devel-32bit +Prefer: -libQt5WebKitWidgets-devel-32bit +Prefer: -libsmartcols-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libopenssl-1_0_0-devel-32bit + +# wine comes in various flavors by now, we pick the unflavored ones +Prefer: wine-32bit wine-devel-32bit wine-devel + +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 + +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +Prefer: libmysqlclient-devel + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +# have choice for PackageKit-backend needed by PackageKit: PackageKit-backend-dnf PackageKit-backend-zypp +Prefer: PackageKit-backend-zypp + +# We have multiple versions of ffmpeg available, the preferred one is ffmpeg4 from Backports instead of ffmpeg3 from SLE +# Prefer: ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libavdevice-devel +# Prefer: -ffmpeg-private-devel -libavcodec-devel -libavformat-devel -libavutil-devel -libswscale-devel -libavdevice-devel -libavfilter-devel +# ffmpeg-3 and ffmpeg-4 handling in 15.2 +Prefer: libvpx-devel +Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel +Prefer: -ffmpeg3-devel +Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel +Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel + +# have choice for libffi +Prefer: libffi7 + +# We have opencv and opencv3 - as usual, the unversioned one should win +Prefer: opencv-devel + +# LUA namespace migration - slowly moving to the new names (keep ports in mind!) +# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future +Prefer: lua53 lua51 lua52 lua +Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5 +Prefer: lua53-devel lua51-devel lua52-devel +Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Prefer: moonjit-devel + +# Prefer over libyui11* from SP2-GA +Prefer: libyui15 +Prefer: libyui-ncurses15 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15 +Substitute: libyui libyui15 +Substitute: libyui-ncurses libyui-ncurses15 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15 +Substitute: libyui-qt libyui-qt15 +Substitute: libyui-qt-graph libyui-qt-graph15 +Substitute: libyui-qt-pkg libyui-qt-pkg15 +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15 +Substitute: libyui-qt-rest-api libyui-qt-rest-api15 + +# SLE product and SLE-Module-Development-Tools-OBS module providing different versions +Prefer: libgnome-desktop-3-18 +Prefer: libgnomekbd8 +Prefer: typelib-1_0-Gspell-1 + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver + +Preinstall: liblua5_3-5 + +# http://bugzilla.opensuse.org/show_bug.cgi?id=1159191 +Substitute: lua51-luajit-devel moonjit-devel + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless +# Prefer java 8 than java 9 or 10 +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# Fall back to Java 10, if there was no java 11 option +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fall back to Java 9, if there was no java 10 option +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# And then fall back to java 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# And then fall back to java 7 bootstrap if needed +# Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless +Substitute: java2-devel-packages java-devel + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +# FFMPEG conflict with FFMPEG-5, prefer ffmpeg version from SLE +Prefer: ffmpeg + +# Conflict with postgresql13-devel-mini +Prefer: libpq5 + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# required after IBS SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# required to workaround libwayland-egl-devel/libwaylang-egl1 issue between Mesa(SUSE:SLE-15:Update) and wayland(SUSE:SLE-15-SP2:GA) +Substitute: libwayland-egl-devel wayland-devel + +# xerces-j2-xml-apis/resolver has been obsoleted but in SP0 +Substitute: xerces-j2-xml-apis xml-commons-apis +Substitute: xerces-j2-xml-resolver xml-commons-resolver + +# ECO-3147 added a new package which opened several installation choices +Prefer: -libboost_atomic_legacy -libboost_container_legacy -libboost_context_legacy -libboost_coroutine_legacy -libboost_system_legacy -libboost_thread_legacy -libboost_date_time_legacy +Prefer: -libboost_fiber_legacy -libboost_filesystem_legacy -libboost_graph_legacy -libboost_iostreams_legacy -libboost_locale_legacy -libboost_log_legacy -libboost_math_legacy +Prefer: -libboost_program_options_legacy -libboost_random_legacy -libboost_regex_legacy -libboost_serialization_legacy -libboost_signals_legacy -libboost_stacktrace_legacy +Prefer: -libboost_test_legacy -libboost_timer_legacy -libboost_type_erasure_legacy -libboost_wave_legacy + +# svrcore has been merged to 389-ds +Substitute: svrcore-devel 389-ds-devel + +# SLE has no nodejs preference, let's use newer nodejs version +# https://progress.opensuse.org/issues/63169 +Prefer: -nodejs8 -nodejs10 -nodejs12 +Prefer: -nodejs8-devel -nodejs10-devel -nodejs12-devel +Prefer: -npm8 -npm10 -npm12 + +# openSUSE -> SLE magic so many environments can work +Substitute: desktop-data-openSUSE-extra desktop-data-SLE-extra +Substitute: desktop-data-openSUSE desktop-data-SLE +Substitute: openSUSE-release sles-release +Substitute: wallpaper-branding-openSUSE wallpaper-branding-SLE + + +%define is_opensuse 1 +%define is_backports 1 +# I doubt this should set to 1 - maxlin +# %define _with_mono 1 + +Macros: +%is_opensuse 1 +%is_backports 1 +%opensuse_bs 1 +# I doubt this should set to 1 - maxlin +# %_with_mono 1 +:Macros + +#BuildFlags +### from openSUSE:Leap:15.3 + +Release: <CI_CNT>.<B_CNT> spec:lp153.<CI_CNT>.<B_CNT> + +# uncomment before RC phase to get aaa_base-malloccheck etc. +# make sure to rebuild patterns-base and skelcd-openSUSE +# %define _with_betatest 1 +# Macros: +# %_with_betatest 1 +# :Macros + +# +# product building setup +# +#Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed + +# debug tools for local osc debugging +Substitute: obs:cli_debug_packages gdb vim strace less rzsz + +# +# vendor related +# + +# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3 +# not sure this would work as my expectation - maxlin +Support: !rpmlint-Factory-strict + +# temporary for bootstrap +# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict + +Support: !rpmlint-backports +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse +Support: post-build-checks rpmlint-Factory + +# bsc#1182698 +Preinstall: rpm-config-SUSE + +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini +Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini +Substitute: kiwi python3-kiwi + +### required change for opensuse-leap-dnf-image +# Workaround obs-build substitution error by requesting both for either unsatisfied provides +Substitute: kiwi-packagemanager:dnf dnf microdnf +Substitute: kiwi-packagemanager:microdnf microdnf dnf +# For microdnf glib2 stuff +Prefer: libgio-2_0-0:dbus-1 + +### Branding related preferences +Prefer: distribution-logos-openSUSE-Leap +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: lxde-common:lxde-common-branding-openSUSE +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: wallpaper-branding-openSUSE +# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +# Prefer: xfce4-settings:xfce4-settings-branding-upstream +# Prefer: xfdesktop:xfdesktop-branding-upstream +# Prefer: libxfce4ui:libxfce4ui-branding-upstream +# Prefer: libexo-1-0:libexo-1-0-branding-upstream +# Prefer: libgarcon-1-0:libgarcon-branding-upstream +# Prefer: libgarcon-data:libgarcon-branding-upstream +# Prefer: exo-data:exo-branding-upstream +Prefer: exo-data:exo-branding-openSUSE +Prefer: libexo-1-0:libexo-1-0-branding-openSUSE +Prefer: libgarcon-1-0:libgarcon-branding-openSUSE +Prefer: libgarcon-data:libgarcon-branding-openSUSE +Prefer: libxfce4ui:libxfce4ui-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE +Prefer: xfce4-settings:xfce4-settings-branding-openSUSE +Prefer: xfdesktop:xfdesktop-branding-openSUSE +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE +Prefer: gnome-menus:gnome-menus-branding-openSUSE + +Prefer: openSUSE-build-key +Prefer: -suse-build-key +Prefer: openSUSE-release:openSUSE-release-mini +Prefer: -sles-release -gio-branding-SLE +Prefer: openSUSE-EULAs + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# There are multiple PK backends available. Favor the openSUSE own zypp backend +Prefer: PackageKit-backend-zypp + +# Revert SLE change +Ignore: !pciutils:pciutils-ids + +# Prefer hwdata than pciutils-ids +Prefer: -pciutils-ids +Prefer: hwdata + +# Obsoleted by gnome-tweaks +Prefer: -gnome-tweak-tool +Prefer: -desktop-data-SLE + +# 32bit devel package +Prefer: -libgnutls-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -bluez-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit + +# Prefer over libyui11* from SP2-GA +Prefer: libyui15 +Prefer: libyui-ncurses15 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15 +Substitute: libyui libyui15 +Substitute: libyui-ncurses libyui-ncurses15 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15 +Substitute: libyui-qt libyui-qt15 +Substitute: libyui-qt-graph libyui-qt-graph15 +Substitute: libyui-qt-pkg libyui-qt-pkg15 +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15 +Substitute: libyui-qt-rest-api libyui-qt-rest-api15 + +# required after IBS SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider +Prefer: kubernetes1.18-kubeadm + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# Undo SLE specific preference +Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP +Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE +Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE +Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE + +# Undo these Substitles from Backports +Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-openSUSE desktop-data-openSUSE +Substitute: openSUSE-release openSUSE-release +Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE + +# Reverse these Substitles from Backports +Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-SLE desktop-data-openSUSE +Substitute: sles-release openSUSE-release +Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE + +# Prefer coreutils over coreutils-single +Prefer: -coreutils-single + + +%define suse_version 1500 +%define sle_version 150300 +%define is_opensuse 1 + +Macros: +%suse_version 1500 +%sle_version 150300 +%is_opensuse 1 +%is_backports 0 + +%sles_version 0 +%_vendor suse +:Macros + +RepoURL: https://download.opensuse.org/distribution/leap/15.3/repo/oss +RegistryURL: https://registry.opensuse.org + diff --git a/configs/sl15.4.conf b/configs/sl15.4.conf new file mode 100755 index 0000000..402673a --- /dev/null +++ b/configs/sl15.4.conf @@ -0,0 +1,1785 @@ +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed + +# debug tools for local osc debugging +Substitute: obs:cli_debug_packages gdb vim strace less rzsz + +# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3 +# not sure this would work as my expectation - maxlin +Support: !rpmlint-Factory-strict + +# temporary for bootstrap +# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict + +Support: !rpmlint-backports +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse +Support: post-build-checks rpmlint-Factory + +# bsc#1182698 +Preinstall: rpm-config-SUSE + +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini +Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !postgresql13-devel-mini +Substitute: kiwi python3-kiwi + +### required change for opensuse-leap-dnf-image +# Workaround obs-build substitution error by requesting both for either unsatisfied provides +Substitute: kiwi-packagemanager:dnf dnf microdnf +Substitute: kiwi-packagemanager:microdnf microdnf dnf +# For microdnf glib2 stuff +Prefer: libgio-2_0-0:dbus-1 + +### Branding related preferences +Prefer: distribution-logos-openSUSE-Leap +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: lxde-common:lxde-common-branding-openSUSE +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: wallpaper-branding-openSUSE +# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +# Prefer: xfce4-settings:xfce4-settings-branding-upstream +# Prefer: xfdesktop:xfdesktop-branding-upstream +# Prefer: libxfce4ui:libxfce4ui-branding-upstream +# Prefer: libexo-1-0:libexo-1-0-branding-upstream +# Prefer: libgarcon-1-0:libgarcon-branding-upstream +# Prefer: libgarcon-data:libgarcon-branding-upstream +# Prefer: exo-data:exo-branding-upstream +Prefer: exo-data:exo-branding-openSUSE +Prefer: libexo-1-0:libexo-1-0-branding-openSUSE +Prefer: libgarcon-1-0:libgarcon-branding-openSUSE +Prefer: libgarcon-data:libgarcon-branding-openSUSE +Prefer: libxfce4ui:libxfce4ui-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE +Prefer: xfce4-settings:xfce4-settings-branding-openSUSE +Prefer: xfdesktop:xfdesktop-branding-openSUSE +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE +Prefer: gnome-menus:gnome-menus-branding-openSUSE + +Prefer: openSUSE-build-key +Prefer: -suse-build-key +Prefer: openSUSE-release:openSUSE-release-mini +Prefer: -sles-release -gio-branding-SLE +Prefer: openSUSE-EULAs + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# There are multiple PK backends available. Favor the openSUSE own zypp backend +Prefer: PackageKit-backend-zypp + +# Revert SLE change +Ignore: !pciutils:pciutils-ids + +# Prefer hwdata than pciutils-ids +Prefer: -pciutils-ids +Prefer: hwdata + +# Obsoleted by gnome-tweaks +Prefer: -gnome-tweak-tool +Prefer: -desktop-data-SLE + +# 32bit devel package +Prefer: -libgnutls-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -bluez-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit + +# required after IBS SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider +Prefer: kubernetes1.18-kubeadm + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# Undo SLE specific preference +Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP +Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE +Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE +Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE + +# Undo these Substitles from Backports +Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-openSUSE desktop-data-openSUSE +Substitute: openSUSE-release openSUSE-release +Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE + +# Reverse these Substitles from Backports +Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-SLE desktop-data-openSUSE +Substitute: sles-release openSUSE-release +Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE + +# Prefer coreutils over coreutils-single +Prefer: -coreutils-single + + +%define suse_version 1500 +%define sle_version 150400 +%define is_opensuse 1 + + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c +Substitute: kiwi python3-kiwi +Substitute: system-packages:mock mock createrepo_c +Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar + +Prefer: -python2-kiwi + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/msgfmt gettext-runtime +FileProvides: /usr/bin/python3 python3-base +FileProvides: /sbin/mkinitrd dracut + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMinstall: iproute2 libmnl0 + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: pam-modules +Support: hostname +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs + +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini +Conflict: python3-kiwi:krb5-mini +Conflict: python3-kiwi:gettext-tools-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +Macros: +%suse_version 1500 +%sle_version 150000 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +# END RUST STUFF + +Prefer: systemd-presets-branding-SLE + +# the old python-msgpack-python should be dropped, but salt +# is still requires the old name +Prefer: python3-msgpack + +%ifarch s390 +Ignore: python2-numpy-devel:openblas-devel +Ignore: python3-numpy-devel:openblas-devel +%endif + +Prefer: -openssl-1_0_0 + +Buildflags: useccache:ceph + +Support: python-rpm-macros + +Prefer: ImageMagick-config-7-upstream + +Prefer: chrony-pool-suse + +Prefer: pciutils-ids + +Prefer: -libcurl4-mini +Prefer: cmake3-full + +Macros: +# define which gcc package builds the system libraries +%product_libs_gcc_ver 11 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +# The following shlibs have the latest version built from GCC 9 sources +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libgo14 9 +# The following shlibs have the latest version built from GCC 10 sources +%product_libs_gcc_ver_libgphobos1 10 +%product_libs_gcc_ver_libgdruntime1 10 +%product_libs_gcc_ver_libgo16 10 + +:Macros + +# After the build 20200723 update .pc files are also in 32bit packages causing have-choice +Prefer: -alsa-devel-32bit +Prefer: -atk-devel-32bit +Prefer: -atkmm1_6-devel-32bit +Prefer: -at-spi2-core-devel-32bit +Prefer: -at-spi-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -augeas-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -cairo-devel-32bit +Prefer: -cairomm1_0-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -cppunit-devel-32bit +Prefer: -cyrus-sasl-devel-32bit +Prefer: -dbus-1-devel-32bit +Prefer: -dbus-1-glib-devel-32bit +Prefer: -device-mapper-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -flac-devel-32bit +Prefer: -fontconfig-devel-32bit +Prefer: -freetype2-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -glu-devel-32bit +Prefer: -gstreamer-devel-32bit +Prefer: -gstreamer-plugins-base-devel-32bit +Prefer: -gtk2-devel-32bit +Prefer: -gtk3-devel-32bit +Prefer: -hunspell-devel-32bit +Prefer: -ImageMagick-devel-32bit +Prefer: -libart_lgpl-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -libbasicobjects-devel-32bit +Prefer: -libblkid-devel-32bit +Prefer: -libbz2-devel-32bit +Prefer: -libcelt-devel-32bit +Prefer: -libcollection-devel-32bit +Prefer: -libcom_err-devel-32bit +Prefer: -libcurl-devel-32bit +Prefer: -libdhash-devel-32bit +Prefer: -libdmx-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -libelf-devel-32bit +Prefer: -libexif-devel-32bit +Prefer: -libexpat-devel-32bit +Prefer: -libext2fs-devel-32bit +Prefer: -libfontenc-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libgck-devel-32bit +Prefer: -libgcr-devel-32bit +Prefer: -libglvnd-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libgphoto2-devel-32bit +Prefer: -libHX-devel-32bit +Prefer: -libICE-devel-32bit +Prefer: -libicu-devel-32bit +Prefer: -libini_config-devel-32bit +Prefer: -libjack-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -liblbxutil-devel-32bit +Prefer: -liblcms2-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libmount-devel-32bit +Prefer: -libnettle-devel-32bit +Prefer: -libnl3-devel-32bit +Prefer: -libnotify-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libqt5-qtconnectivity-devel-32bit +Prefer: -libqt5-qtdeclarative-devel-32bit +Prefer: -libqt5-qtlocation-devel-32bit +Prefer: -libqt5-qtmultimedia-devel-32bit +Prefer: -libqt5-qtserialport-devel-32bit +Prefer: -libqt5-qtsvg-devel-32bit +Prefer: -libqt5-qttools-devel-32bit +Prefer: -libqt5-qtwayland-devel-32bit +Prefer: -libqt5-qtwebchannel-devel-32bit +Prefer: -libqt5-qtwebsockets-devel-32bit +Prefer: -libqt5-qtx11extras-devel-32bit +Prefer: -libqt5-qtxmlpatterns-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libraw1394-devel-32bit +Prefer: -libref_array-devel-32bit +Prefer: -libSDL2-devel-32bit +Prefer: -libSDL-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSM-devel-32bit +Prefer: -libsoup-devel-32bit +Prefer: -libtasn1-devel-32bit +Prefer: -libtiff-devel-32bit +Prefer: -libusb-1_0-devel-32bit +Prefer: -libuuid-devel-32bit +Prefer: -libv4l-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libvdpau-devel-32bit +Prefer: -libverto-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -libvorbis-devel-32bit +Prefer: -libwayland-egl-devel-32bit +Prefer: -libwebp-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libXau-devel-32bit +Prefer: -libXaw3d-devel-32bit +Prefer: -libXaw-devel-32bit +Prefer: -libxcb-devel-32bit +Prefer: -libXcomposite-devel-32bit +Prefer: -libXcursor-devel-32bit +Prefer: -libXdamage-devel-32bit +Prefer: -libXdmcp-devel-32bit +Prefer: -libXext-devel-32bit +Prefer: -libXfixes-devel-32bit +Prefer: -libXfont2-devel-32bit +Prefer: -libXfontcache-devel-32bit +Prefer: -libXfont-devel-32bit +Prefer: -libXft-devel-32bit +Prefer: -libXi-devel-32bit +Prefer: -libXinerama-devel-32bit +Prefer: -libxkbcommon-devel-32bit +Prefer: -libxkbcommon-x11-devel-32bit +Prefer: -libxkbfile-devel-32bit +Prefer: -libxml2-devel-32bit +Prefer: -libXmu-devel-32bit +Prefer: -libXp-devel-32bit +Prefer: -libXpm-devel-32bit +Prefer: -libXprintUtil-devel-32bit +Prefer: -libXrandr-devel-32bit +Prefer: -libXrender-devel-32bit +Prefer: -libXres-devel-32bit +Prefer: -libxslt-devel-32bit +Prefer: -libXss-devel-32bit +Prefer: -libXt-devel-32bit +Prefer: -libXtst-devel-32bit +Prefer: -libXv-devel-32bit +Prefer: -libXvMC-devel-32bit +Prefer: -libXxf86dga-devel-32bit +Prefer: -libXxf86misc-devel-32bit +Prefer: -libXxf86vm-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGLESv2_CM-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -ncurses-devel-32bit +Prefer: -NetworkManager-devel-32bit +Prefer: -openal-soft-devel-32bit +Prefer: -openjpeg-devel-32bit +Prefer: -pango-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -tslib-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -wayland-devel-32bit +Prefer: -xcb-util-devel-32bit +Prefer: -xcb-util-image-devel-32bit +Prefer: -xcb-util-keysyms-devel-32bit +Prefer: -xcb-util-renderutil-devel-32bit +Prefer: -xcb-util-wm-devel-32bit +Prefer: -xz-devel-32bit +Prefer: -zlib-devel-32bit +Prefer: -zvbi-devel-32bit + +Prefer: libboost_thread1_66_0 +Prefer: libboost_system1_66_0 +Prefer: libboost_regex1_66_0 +Prefer: libboost_filesystem1_66_0 +Prefer: libboost_iostreams1_66_0 +Prefer: libboost_date_time1_66_0 + +Prefer: -libsmartcols-devel-32bit +Prefer: -krb5-devel-32bit +Prefer: -lzo-devel-32bit +Prefer: -liboping-devel-32bit +Prefer: -unixODBC-devel-32bit +Prefer: -libcmocka-devel-32bit + +# ro added 20220207 requested by dmueller +Prefer: -samba-devel-32bit +Prefer: -libqt5-qtscript-devel-32bit + +FileProvides: /usr/bin/host bind-utils + +Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c + +Prefer: libyui-ncurses9 +Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9 +Prefer: samba-libs-python3 +Ignore: !pciutils:pciutils-ids +Prefer: kernel-default +Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua) +Prefer: python2-configparser +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream + +######### JAVA +# FATE#326347 +# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config: +Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless +Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless +Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless + +# Now we set the prefered Java version, but need fallbacks for some packages: +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless + +# It might be better to 'de-prefer' the "old" ones, and omit the line above +# according to Adrian. This needs some testing. +# Unfortuantely this will bite us when packages require an old java + +# 8 before 10 on advice of fstrba +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# don't use that - fstrba +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# 15:GA has Prefer:go which will set the default to th eunverisoned go. +# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this. +# go1.12 is taken from 15:Update +Prefer: go1.12 + + +# avoid the SP0 slurm 18.8 variants in SP1 +Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins + +# prefer one of the python-pytests. Marcus 20200512 +Prefer: python-pytest4 python2-pytest4 python3-pytest4 + +# have conflict ebtween python3-pycrypto and python3-pycryptodome +Prefer: python3-pycryptodome + +# prefer go1.14 (over go1.13). Gustavo 20200514 +# this breaks caasp Marcus 20200515 +#Prefer: go1.14 + + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +Prefer: enchant-2-backend-hunspell + +Macros: +%sle_version 150200 + +######### gcc9 +# define which gcc package builds the system libraries +%product_libs_gcc_ver 9 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +######### end of gcc9 + +:Macros + +# Prefer over libyui9* from SP1-GA +Prefer: libyui11 +Prefer: libyui-ncurses11 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11 +Substitute: libyui libyui11 +Substitute: libyui-ncurses libyui-ncurses11 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11 +Substitute: libyui-qt libyui-qt11 +Substitute: libyui-qt-graph libyui-qt-graph11 +Substitute: libyui-qt-pkg libyui-qt-pkg11 + +# Help with the switch to the gcc9 provided libs: (bsc#1154695) +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +# Needed after SR#203451 and SR#204957 +Substitute: infiniband-diags-devel rdma-core-devel + +# Needed after SR#205137 +Prefer: python3-pycryptodome +# Needed after GNOME 3.34 rebase +Prefer: libvala-0_46-devel + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +# required by u-boot (SR#205959) in order to build the full multiboot set plus eventual additional packages: +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +# use rpm by default to build, instead of rpm-ndb +Prefer: rpm + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui +Prefer: libudisks2-0-devel +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: cmake-mini:this-is-only-for-build-envs + +# Cmake exists as a -mini flavor, which is not linked against curl. +Prefer: cmake-mini + +# needed due to SR#213548 +Prefer: ocaml-compiler-libs-devel + +# required after SR#214781 +Prefer: python2-contextlib2 + +# Required after SR#215195 +Prefer: chrony-pool-suse + +%ifarch i586 +# required after MU#13672 / SR#208944 (slurm_18_08) +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +# required after MU#14605 / SR#215186 (python3-azuremetadata) +Substitute: azuremetadata python3-azuremetadata + +# required after changes form the weekend of April 26 +Prefer: python3-pytest +Prefer: python2-pytest + +# required after CTLG for PackageKit, which introduced dnf +Prefer: PackageKit-backend-zypp + +# required after SR#214474 +Prefer: python2-subprocess32 + +### from SUSE:SLE-15-SP2:Update +%define _repository snapshot-SP4 +# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220117 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko +Prefer: python2-pycrypto + +# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit +Prefer: libgnutls-devel + +# qt5 prefers (32bit mess) +Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel + +# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess) +Prefer: bluez-devel + +# conflict with postgresql13-devel-mini ? +Prefer: libpq5 + +Prefer: gdk-pixbuf-devel + +# copy grub2-arm64-efi to all archs (bsc#1186565) +%ifarch aarch64 ppc64le s390x x86_64 +ExportFilter: ^grub2-arm64-efi-.*\.rpm$ . ppc64le s390x x86_64 +%endif + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + + +# for thunderbird (nodejs >= 10 ... has 3 options) + +Prefer: nodejs14 + +# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt, +# use this prefer change Marcus 20220201 +Prefer: -cmake3-full +Prefer: cmake-full + +### from SUSE:SLE-15-SP3:GA +%define _repository standard + +Macros: + +### from SUSE:SLE-15-SP3:GA + +%_repository standard +:Macros +# COMMON BEGIN common part +%define sle_version 150300 +Macros: +%sle_version 150300 +:Macros + +# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2) +Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8 +Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9 +Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11 + +# Revert substitutions from SP2 +Substitute: libyui libyui +Substitute: libyui-ncurses libyui-ncurses +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg +Substitute: libyui-qt libyui-qt +Substitute: libyui-qt-graph libyui-qt-graph +Substitute: libyui-qt-pkg libyui-qt-pkg +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api +Substitute: libyui-qt-rest-api libyui-qt-rest-api +# required after SR#225674 / jsc#SLE-12712 +Prefer: gmmlib-devel + +# required after SR#225669 +Preinstall: libcrypt1 + +# required for latest Mesa +Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel + +# required after SR#226419 +Prefer: typelib-1_0-Gst-1_0 + +# required for latest Mesa +Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel + +# not sure why we need those +Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel + +# required after MU#16450 (gnutls) +Prefer: libgnutls-devel + +# required after SR#228340 +Prefer: systemd-sysvinit + +# required after SR#227910 (alsa) and SR#228076 (pulseaudio) +Prefer: alsa-devel libpulse-devel + +# required after SR#227917 (kernel-firmware) +Prefer: kernel-firmware + +# required after SR#229310 +Prefer: systemd-default-settings-branding-SLE + +Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit +Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit + +# required after SR#230365 and SR#230366 +Prefer: plymouth-branding-SLE + +# required after SR#228415 +Ignore: !pango-devel:cairo-devel + +# required after SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# needed after SR#236147 +Prefer: -mpg123-devel-32bit + +# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756) +Prefer: -coreutils-single + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +# COMMON END common part + +# due to libreoffice +Prefer: -sane-backends-devel-32bit + +Prefer: -libX11-devel-32bit + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +# needed for MU#18655 +Prefer: -python3-vsts + +# due to MU#19157 +Prefer: -libboost_regex_legacy +# From Fabian Vogt on 20210913 ... patterns-base-fips temporary +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +# after secondary icu version release Marcus 20211214 + +Prefer: libicu-devel + + +# gboiko, 20220202 fixing the following unresolvable: +# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs +Prefer: samba-client-libs samba-devel + +# BEGIN RUST STUFF +Prefer: cargo1.58 cargo1.57 + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%define rust_tier1_arches x86_64 aarch64 + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%rust_tier1_arches x86_64 aarch64 +:Macros + +# END RUST STUFF +Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel +Prefer: -keyutils-devel-32bit -gtk4-devel-32bit + +# needed due to SR#249037 +Prefer: -libgcrypt-devel-32bit + +# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version +# needed due to SR#249799 +Prefer: php8:php8-cli + +# needed after php7 update (SR#255237) +Prefer: php7:php7-cli + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# needed due to libxml2 (SR#255607) +Prefer: -python3-libxml2-python +Substitute: python3-libxml2-python python3-libxml2 + +# required after SR#249636 +Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel + +# required after luajit SR#255872 +Prefer: -lua51-luajit-devel + +# required after zstd SR#256594 +Prefer: -libzstd-devel-32bit + +# required due to libsoup2 SR#256752 +Prefer: -libsoup2-devel-32bit + +Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc + +# required due to systemd SR#258723 +Prefer: -libfdisk-devel-32bit + +# required after libpcap SR#249500 +# required due to umockdev SR#259947 +Prefer: -libpcap-devel-32bit + +# must be removed after fix for bsc#1193711 is merged +# can also be removed in case bsc#1194749 is fully fixed +Support: python-rpm-macros + +# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin +Prefer: -SUSEConnect +Prefer: -zypper-migration-plugin + +# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng +Substitute: SUSEConnect suseconnect-ng +Substitute: zypper-migration-plugin suseconnect-ng + +# Fix fot Qt stack update +Prefer: -libqt5-qtremoteobjects-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit +# from Factory: +# pipewire has a jack compatible implementation - but for now we prefer the real jack +Prefer: -pipewire-libjack-0_3-devel libjack0 + +# required due to libyui SR#263810 +Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15 + +# required due to samba SR#262961 +Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel + +# required due to liburing2 SR#263841 +Prefer: -liburing2-devel + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# required for systemd SR#263844 +Substitute: libudev-devel systemd-devel +Substitute: libudev-mini-devel systemd-mini-devel +Prefer: -libudev-mini-devel +Prefer: -libudev-devel +Prefer: -libudev-devel-32bit + +# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin +# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore. +FileProvides: /usr/bin/ruby ruby2.5 + +%define skip_python2 1 +%define _without_python2 1 + +Macros: +## PYTHON MACROS BEGIN +# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions, +# making it the "default" in many cases --> keep the primary python3 provider at the end. +%pythons %{?!skip_python3:python3} +%add_python() %{expand:%%define pythons %1 %pythons} + +%_without_python2 1 +:Macros + +Prefer: -python -python-base + +# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688) +Substitute: txt2tags python3-txt2tags + +# required due to bash SR#265536 +FileProvides: /bin/bash bash +FileProvides: /bin/sh bash-sh busybox-sh +Prefer: bash-sh +Preinstall: bash bash-sh +Prefer: -busybox +# required for openblas (SR#269449) +Prefer: -openblas-devel +Substitute: openblas-devel libopenblas_pthreads-devel + diff --git a/configs/sl15.5.conf b/configs/sl15.5.conf new file mode 100755 index 0000000..076609a --- /dev/null +++ b/configs/sl15.5.conf @@ -0,0 +1,2384 @@ +%define gcc_version 7 + +RepoURL: https://download.opensuse.org/distribution/leap/15.5/repo/oss/ +RegistryURL: https://registry.opensuse.org + +# new cycle handling +BuildFlags: genmetaalgo:1 + +Constraint: linux:version:min 3.0.0 +%ifarch ppc ppc64 ppc64le +Constraint: hardware:cpu:flag power8 +%endif +%ifarch armv7l armv7hl +%if "0%{?_obs_feature_exclude_cpu_constraints}" +Constraint: hardware:cpu:flag exclude=true EL0 +%endif +%endif + +# play safe, introduced 2022/10/05 +BuildFlags: kvm-max-cpu-compat-power8 + +Patterntype: rpm-md ymp + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c +Substitute: kiwi python3-kiwi +Substitute: system-packages:mock mock createrepo_c +Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper +Prefer: -python2-kiwi + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/msgfmt gettext-runtime +FileProvides: /usr/bin/python3 python3-base +# Recommended by Adrian Schroeter: +# causes a cycle :( +# FileProvides: /sbin/mkinitrd dracut + + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMinstall: iproute2 libmnl0 + +Required: rpm-build +Required: gcc-PIE + +# needed for su's default config - perhaps we should use a simplified form? +Support: pam-modules + +# the basic stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse post-build-checks rpmlint-Factory +Support: hostname +Support: brp-extract-appdata +Support: brp-extract-translations +Support: rpmlint-Factory-strict + +%ifarch ia64 +Support: libunwind libunwind-devel +Preinstall: libunwind +%endif +Prefer: -openSUSE-build-key + +Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini +Conflict: python3-kiwi:krb5-mini +Conflict: python3-kiwi:gettext-tools-mini + +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -openSUSE-build-key +Prefer: postfix + +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +Prefer: go +Prefer: python2-pep8 python3-pep8 +Prefer: perl +Prefer: python3-pycups python-pycups +Prefer: apache2:apache2-prefork +Prefer: syslogd +Prefer: star-rmt +Prefer: notification-daemon +Prefer: dummy-release +Prefer: -nodejs4 +Prefer: libpulse0-32bit +Prefer: netcdf-devel +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +Prefer: fftw3-devel +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +Prefer: kactivities5 +Prefer: oxygen5-icon-theme +Prefer: npm6 +Prefer: kernel-default-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +Prefer: mozilla-nss-certs +Prefer: phonon-backend-gstreamer +Prefer: dracut +Prefer: kmod-compat +Prefer: oxygen5-cursors +Prefer: -perl-App-cpanminus +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +Prefer: ghostscript-devel +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +# FATE#325522 +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fallback, but we should try to not use this but java-8.... +# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150000 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms +%maintenance_vendor SUSE LLC <https://www.suse.com/> +%maintenance_distribution SUSE Linux Enterprise 15 + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +Macros: +%_without_obs_scm_testsuite 0 +:Macros + +Prefer: SLES_SAP-installation-release-DVD +Prefer: systemd-presets-branding-SLE +Prefer: python3-msgpack + +%ifarch s390 +Ignore: python2-numpy-devel:openblas-devel +Ignore: python3-numpy-devel:openblas-devel +%endif + +Prefer: -openssl-1_0_0 + + +### from SUSE:SLE-15:Update +%define _repository pool-leap-15.5 + +Buildflags: useccache:ceph +Support: python-rpm-macros +Prefer: ImageMagick-config-7-upstream +# disabled in GA by mistake, enabling it here +Support: build-compare +Prefer: chrony-pool-suse +Prefer: pciutils-ids +Prefer: -libcurl4-mini + +Macros: +%shim_enforce_ms_signature 1 +:Macros + +Macros: + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 11 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +# The following shlibs have the latest version built from GCC 9 sources +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libgo14 9 +# The following shlibs have the latest version built from GCC 10 sources +%product_libs_gcc_ver_libgphobos1 10 +%product_libs_gcc_ver_libgdruntime1 10 +%product_libs_gcc_ver_libgo16 10 + +:Macros + +Prefer: -alsa-devel-32bit +Prefer: -atk-devel-32bit +Prefer: -atkmm1_6-devel-32bit +Prefer: -at-spi2-core-devel-32bit +Prefer: -at-spi-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -augeas-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -cairo-devel-32bit +Prefer: -cairomm1_0-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -cppunit-devel-32bit +Prefer: -cyrus-sasl-devel-32bit +Prefer: -dbus-1-devel-32bit +Prefer: -dbus-1-glib-devel-32bit +Prefer: -device-mapper-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -flac-devel-32bit +Prefer: -fontconfig-devel-32bit +Prefer: -freetype2-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -glu-devel-32bit +Prefer: -gstreamer-devel-32bit +Prefer: -gstreamer-plugins-base-devel-32bit +Prefer: -gtk2-devel-32bit +Prefer: -gtk3-devel-32bit +Prefer: -hunspell-devel-32bit +Prefer: -ImageMagick-devel-32bit +Prefer: -libart_lgpl-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -libbasicobjects-devel-32bit +Prefer: -libblkid-devel-32bit +Prefer: -libbz2-devel-32bit +Prefer: -libcelt-devel-32bit +Prefer: -libcollection-devel-32bit +Prefer: -libcom_err-devel-32bit +Prefer: -libcurl-devel-32bit +Prefer: -libdhash-devel-32bit +Prefer: -libdmx-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -libelf-devel-32bit +Prefer: -libexif-devel-32bit +Prefer: -libexpat-devel-32bit +Prefer: -libext2fs-devel-32bit +Prefer: -libfontenc-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libgck-devel-32bit +Prefer: -libgcr-devel-32bit +Prefer: -libglvnd-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libgphoto2-devel-32bit +Prefer: -libHX-devel-32bit +Prefer: -libICE-devel-32bit +Prefer: -libicu-devel-32bit +Prefer: -libini_config-devel-32bit +Prefer: -libjack-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -liblbxutil-devel-32bit +Prefer: -liblcms2-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libmount-devel-32bit +Prefer: -libnettle-devel-32bit +Prefer: -libnl3-devel-32bit +Prefer: -libnotify-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libqt5-qtconnectivity-devel-32bit +Prefer: -libqt5-qtdeclarative-devel-32bit +Prefer: -libqt5-qtlocation-devel-32bit +Prefer: -libqt5-qtmultimedia-devel-32bit +Prefer: -libqt5-qtserialport-devel-32bit +Prefer: -libqt5-qtsvg-devel-32bit +Prefer: -libqt5-qttools-devel-32bit +Prefer: -libqt5-qtwayland-devel-32bit +Prefer: -libqt5-qtwebchannel-devel-32bit +Prefer: -libqt5-qtwebsockets-devel-32bit +Prefer: -libqt5-qtx11extras-devel-32bit +Prefer: -libqt5-qtxmlpatterns-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libraw1394-devel-32bit +Prefer: -libref_array-devel-32bit +Prefer: -libSDL2-devel-32bit +Prefer: -libSDL-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSM-devel-32bit +Prefer: -libsoup-devel-32bit +Prefer: -libtasn1-devel-32bit +Prefer: -libtiff-devel-32bit +Prefer: -libusb-1_0-devel-32bit +Prefer: -libuuid-devel-32bit +Prefer: -libv4l-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libvdpau-devel-32bit +Prefer: -libverto-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -libvorbis-devel-32bit +Prefer: -libwayland-egl-devel-32bit +Prefer: -libwebp-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libXau-devel-32bit +Prefer: -libXaw3d-devel-32bit +Prefer: -libXaw-devel-32bit +Prefer: -libxcb-devel-32bit +Prefer: -libXcomposite-devel-32bit +Prefer: -libXcursor-devel-32bit +Prefer: -libXdamage-devel-32bit +Prefer: -libXdmcp-devel-32bit +Prefer: -libXext-devel-32bit +Prefer: -libXfixes-devel-32bit +Prefer: -libXfont2-devel-32bit +Prefer: -libXfontcache-devel-32bit +Prefer: -libXfont-devel-32bit +Prefer: -libXft-devel-32bit +Prefer: -libXi-devel-32bit +Prefer: -libXinerama-devel-32bit +Prefer: -libxkbcommon-devel-32bit +Prefer: -libxkbcommon-x11-devel-32bit +Prefer: -libxkbfile-devel-32bit +Prefer: -libxml2-devel-32bit +Prefer: -libXmu-devel-32bit +Prefer: -libXp-devel-32bit +Prefer: -libXpm-devel-32bit +Prefer: -libXprintUtil-devel-32bit +Prefer: -libXrandr-devel-32bit +Prefer: -libXrender-devel-32bit +Prefer: -libXres-devel-32bit +Prefer: -libxslt-devel-32bit +Prefer: -libXss-devel-32bit +Prefer: -libXt-devel-32bit +Prefer: -libXtst-devel-32bit +Prefer: -libXv-devel-32bit +Prefer: -libXvMC-devel-32bit +Prefer: -libXxf86dga-devel-32bit +Prefer: -libXxf86misc-devel-32bit +Prefer: -libXxf86vm-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGLESv2_CM-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -ncurses-devel-32bit +Prefer: -NetworkManager-devel-32bit +Prefer: -openal-soft-devel-32bit +Prefer: -openjpeg-devel-32bit +Prefer: -pango-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -tslib-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -wayland-devel-32bit +Prefer: -xcb-util-devel-32bit +Prefer: -xcb-util-image-devel-32bit +Prefer: -xcb-util-keysyms-devel-32bit +Prefer: -xcb-util-renderutil-devel-32bit +Prefer: -xcb-util-wm-devel-32bit +Prefer: -xz-devel-32bit +Prefer: -zlib-devel-32bit +Prefer: -zvbi-devel-32bit + +Prefer: libboost_thread1_66_0 +Prefer: libboost_system1_66_0 +Prefer: libboost_regex1_66_0 +Prefer: libboost_filesystem1_66_0 +Prefer: libboost_iostreams1_66_0 +Prefer: libboost_date_time1_66_0 + +Prefer: -libsmartcols-devel-32bit +Prefer: -krb5-devel-32bit + +# ro added 20210708 requested by dmueller +Prefer: -lzo-devel-32bit +Prefer: -liboping-devel-32bit +Prefer: -unixODBC-devel-32bit +Prefer: -libcmocka-devel-32bit + +# ro added 20220207 requested by dmueller +Prefer: -samba-devel-32bit +Prefer: -libqt5-qtscript-devel-32bit + +# mstrigl added 20220726 requested by dmueller +Prefer: -vulkan-devel-32bit + +# darix added 20220906 requested by favogt +Prefer: libasan6 + +# ro added 20220510 requested by jgonzalez +Macros: +%susemanager_container_images_path registry.suse.com/suse/manager/4.3 +:Macros + +# ro added 20220917 requested by meissner +Prefer: libubsan1 + +# mstrigl added 20220929 requested by meissner +Prefer: go1.18 + +Patterntype: rpm-md ymp + +%define sle_version 150100 + +Macros: +%sle_version 150100 +:Macros + +FileProvides: /usr/bin/host bind-utils + +Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c + +Prefer: libyui-ncurses9 +Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9 +Prefer: samba-libs-python3 +Ignore: !pciutils:pciutils-ids +Prefer: kernel-default +Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua) +Prefer: python2-configparser +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream + +Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless +Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless +Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless + +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless + +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless + +Prefer: go1.12 + + +### from SUSE:SLE-15-SP1:Update +%define _repository pool-leap-15.5 + +Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins +Prefer: python-pytest4 python2-pytest4 python3-pytest4 +Prefer: python3-pycryptodome + +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +%define sle_version 150200 + +Prefer: enchant-2-backend-hunspell + +Macros: +%sle_version 150200 +%current_milestone GMC + +%product_libs_gcc_ver 9 +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +:Macros + +Prefer: libyui11 +Prefer: libyui-ncurses11 +Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11 +Substitute: libyui libyui11 +Substitute: libyui-ncurses libyui-ncurses11 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11 +Substitute: libyui-qt libyui-qt11 +Substitute: libyui-qt-graph libyui-qt-graph11 +Substitute: libyui-qt-pkg libyui-qt-pkg11 + +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 +Substitute: infiniband-diags-devel rdma-core-devel +Prefer: python3-pycryptodome +Prefer: libvala-0_46-devel +Preinstall: libgcrypt20 libgpg-error0 + +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +Prefer: rpm + +Preinstall: libzstd1 + +Prefer: libudisks2-0-devel + +Ignore: cmake-mini:this-is-only-for-build-envs +Prefer: cmake-mini +Prefer: ocaml-compiler-libs-devel +Prefer: python2-contextlib2 +Prefer: chrony-pool-suse + +%ifarch i586 +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +Substitute: azuremetadata python3-azuremetadata + +Prefer: python3-pytest +Prefer: python2-pytest + +Prefer: PackageKit-backend-zypp +Prefer: python2-subprocess32 + + +### from SUSE:SLE-15-SP2:Update +%define _repository pool-leap-15.5 +# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko +Prefer: python2-pycrypto + +# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit +Prefer: libgnutls-devel + +# qt5 prefers (32bit mess) +Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel + +# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess) +Prefer: bluez-devel + +# conflict with postgresql13-devel-mini ? +Prefer: libpq5 + +Prefer: gdk-pixbuf-devel + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + + +# for thunderbird (nodejs >= 10 ... has 3 options) + +Prefer: nodejs14 + + +Patterntype: rpm-md ymp +# COMMON BEGIN common part +%define sle_version 150300 +Macros: +%sle_version 150300 +:Macros + +# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2) +Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8 +Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9 +Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11 + +# Revert substitutions from SP2 +Substitute: libyui libyui +Substitute: libyui-ncurses libyui-ncurses +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg +Substitute: libyui-qt libyui-qt +Substitute: libyui-qt-graph libyui-qt-graph +Substitute: libyui-qt-pkg libyui-qt-pkg +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api +Substitute: libyui-qt-rest-api libyui-qt-rest-api + +# required after SR#225674 / jsc#SLE-12712 +Prefer: gmmlib-devel + +# required after SR#225669 +Preinstall: libcrypt1 + +# required for latest Mesa +Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel + +# required after SR#226419 +Prefer: typelib-1_0-Gst-1_0 + +# required for latest Mesa +Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel + +# not sure why we need those +Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel + +# required after MU#16450 (gnutls) +Prefer: libgnutls-devel + +# required after SR#228340 +Prefer: systemd-sysvinit + +# required after SR#227910 (alsa) and SR#228076 (pulseaudio) +Prefer: alsa-devel libpulse-devel + +# required after SR#227917 (kernel-firmware) +Prefer: kernel-firmware + +# required after SR#229310 +Prefer: systemd-default-settings-branding-SLE + +Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit +Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit + +# required after SR#230365 and SR#230366 +Prefer: plymouth-branding-SLE + +# required after SR#228415 +Ignore: !pango-devel:cairo-devel + +# required after SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# needed after SR#236147 +Prefer: -mpg123-devel-32bit + +# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756) +Prefer: -coreutils-single + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +# COMMON END common part + +# due to libreoffice +Prefer: -sane-backends-devel-32bit + +Prefer: -libX11-devel-32bit + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +# needed for MU#18655 +Prefer: -python3-vsts + +# due to MU#19157 +Prefer: -libboost_regex_legacy + +# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220117 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + + +# From Fabian Vogt on 20210913 ... patterns-base-fips temporary +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +# after secondary icu version release Marcus 20211214 + +Prefer: libicu-devel + + +# gboiko, 20220202 fixing the following unresolvable: +# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs +Prefer: samba-client-libs samba-devel + +# BEGIN RUST STUFF +Prefer: cargo1.58 cargo1.57 + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%define rust_tier1_arches x86_64 aarch64 + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%rust_tier1_arches x86_64 aarch64 +:Macros + +# END RUST STUFF + +# COMMON BEGIN common part +%define sle_version 150400 +Macros: +%sle_version 150400 +:Macros + +# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel +Prefer: -keyutils-devel-32bit -gtk4-devel-32bit + +# needed due to SR#249037 +Prefer: -libgcrypt-devel-32bit + +# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version +# needed due to SR#249799 +Prefer: php8:php8-cli + +# needed after php7 update (SR#255237) +Prefer: php7:php7-cli + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# needed due to libxml2 (SR#255607) +Prefer: -python3-libxml2-python +Substitute: python3-libxml2-python python3-libxml2 + +# required after SR#249636 +Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel + +# required after luajit SR#255872 +Prefer: -lua51-luajit-devel + +# required after zstd SR#256594 +Prefer: -libzstd-devel-32bit + +# required due to libsoup2 SR#256752 +Prefer: -libsoup2-devel-32bit + +Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc + +# required due to systemd SR#258723 +Prefer: -libfdisk-devel-32bit + +# required after libpcap SR#249500 +# required due to umockdev SR#259947 +Prefer: -libpcap-devel-32bit + +# must be removed after fix for bsc#1193711 is merged +# can also be removed in case bsc#1194749 is fully fixed +Support: python-rpm-macros + +# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin +Prefer: -SUSEConnect +Prefer: -zypper-migration-plugin + +# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng +Substitute: SUSEConnect suseconnect-ng +Substitute: zypper-migration-plugin suseconnect-ng + +# Fix fot Qt stack update +Prefer: -libqt5-qtremoteobjects-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit + +# from Factory: +# pipewire has a jack compatible implementation - but for now we prefer the real jack +Prefer: -pipewire-libjack-0_3-devel libjack0 + +# required due to libyui SR#263810 +Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15 + +# required due to samba SR#262961 +Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel + +# required due to liburing2 SR#263841 +Prefer: -liburing2-devel + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# required for systemd SR#263844 +Substitute: libudev-devel systemd-devel +Substitute: libudev-mini-devel systemd-mini-devel +Prefer: -libudev-mini-devel +Prefer: -libudev-devel +Prefer: -libudev-devel-32bit + +# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin +# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore. +FileProvides: /usr/bin/ruby ruby2.5 + +%define skip_python2 1 +%define _without_python2 1 + +Macros: +## PYTHON MACROS BEGIN +# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions, +# making it the "default" in many cases --> keep the primary python3 provider at the end. +%pythons %{?!skip_python3:python3} +%add_python() %{expand:%%define pythons %1 %pythons} + +%_without_python2 1 +:Macros + +Prefer: -python -python-base + +# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688) +Substitute: txt2tags python3-txt2tags + +# required due to bash SR#265536 +FileProvides: /bin/bash bash +FileProvides: /bin/sh bash-sh busybox-sh +Prefer: bash-sh +Preinstall: bash bash-sh +Prefer: -busybox + +# required for openblas (SR#269449) +Prefer: -openblas-devel +Substitute: openblas-devel libopenblas_pthreads-devel + +### from SUSE:SLE-15-SP4:Update +%define _repository pool-leap-15.5 +Prefer: -python3-cairo + +#request by meissner 2022-09-08 +Prefer: libdebuginfod1-dummy + +#request by dmueller 2022-10-11 +FileProvides: /usr/sbin/nologin util-linux +FileProvides: /usr/bin/perl perl + +Patterntype: rpm-md ymp + +# COMMON BEGIN common part +%define sle_version 150500 +Macros: +%sle_version 150500 +:Macros + +# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +Prefer: -libasan6-gcc10 + +# required for libvirt 8.7 (bsc#1203512) +FileProvides: /usr/bin/lzop lzop + +# Update of pacemaker and rename of libraries in SR#279289 +Prefer: -libpacemaker-devel +Prefer: -libpacemaker3 +# Update of cluster-glue and rename of libraries in SR#279338 +Prefer: -libglue2 + +# fix build dependency for resource-agents, as IBS prefers the literal match (bsc#1203744) +Substitute: libglue-devel cluster-glue-devel + +# resolve choice for split in libpolkit0 (bsc#1191781) +Prefer: -libpolkit0 + +Release: bp155.<CI_CNT>.<B_CNT> + +Patterntype: rpm-md ymp + +# whenever something (rpmlint-mini!) wants rpmlint we also install +# our extra policy check +#Substitute: rpmlint rpmlint rpmlint-backports rpmlint-backports-data + +# rpmlint-backports-data is only available for SLE architectures +%ifarch x86_64 ppc64le s390x aarch64 +Support: rpmlint-backports +%endif +Support: brp-check-suse + +# Enable ccache for chromium tensorflow{2} +BuildFlags: useccache:chromium +BuildFlags: useccache:nodejs-electron +BuildFlags: useccache:ghc + +BuildFlags: useccache:tensorflow:hpc +BuildFlags: useccache:tensorflow:hpc-openmpi2 +BuildFlags: useccache:tensorflow:lite +BuildFlags: useccache:tensorflow:standard + +BuildFlags: useccache:tensorflow2:hpc +BuildFlags: useccache:tensorflow2:hpc-openmpi2 +BuildFlags: useccache:tensorflow2:lite +BuildFlags: useccache:tensorflow2:standard + +# FileProvides: /usr/bin/python2 python2-base +FileProvides: /sbin/pidof sysvinit-tools + +Prefer: rpm -rpm-ndb +# bsc#1182698 +Preinstall: rpm-config-SUSE + +# need this until snpashot resync, maxlin 2022-03-18 +# Preinstall: !bash-sh + +# prefer coreutils over coreutils-single +Prefer: coreutils + +# Help with the switch to the gcc7 provided libs +# Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7 +# Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7 + +Prefer: yast2-schema-default + +FileProvides: /usr/bin/pkexec pkexec + +# Help with the switch to the gcc9 provided libs: +# Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +# Imagemagick now has 2 configs +Prefer: ImageMagick-config-7-SUSE + +# man uses cron to update the DB normally, but we don't care for that in the build system +Ignore: man:cron + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs +Ignore: ghc-bootstrap:this-is-only-for-build-envs +Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs +Ignore: cmake-mini:this-is-only-for-build-envs + +# Cmake exists as a -mini flavor, which is not linked against curl. +Prefer: cmake-mini + +# We have multiple nodejs versions in the repo - prefer version -default (from meta package) +Prefer: nodejs-default nodejs-devel-default npm-default + +# Fix build of python-inspektor +Prefer: python2-configparser + +# Fix build for packages depending on rust since old version rust-std (1.24.1) +# instead of current version in SLE (rust-std-static 1.31.1) was used for builds +Substitute: rust-std rust +Substitute: rust-std-static rust + +# multiple rust and cargo does exist +Prefer: -cargo1.53 -cargo1.54 -cargo1.55 -cargo1.56 + +# libmariadb naming obosletes libmysqld naming but libmysqld binaries has still appeared +Substitute: libmysqld-devel libmariadbd-devel + +# requested by Stefan Weiberg on 2022/09/28 - copy from IBS +# fix build dependency for resource-agents, as IBS prefers the literal match (bsc#1203744) +Substitute: libglue-devel cluster-glue-devel + +Prefer: libasan6 + +# have choice for golang(API) = 1.18: go1.18 go1.18-openssl +Prefer: -go1.18-openssl + +# have choice for perl(Term::ReadLine::Gnu): perl-Term-ReadLine-Gnu perl-TermReadLine-Gnu +Prefer: perl-Term-ReadLine-Gnu + +# required for openblas (SR#269449) +Prefer: -openblas-devel +Substitute: openblas-devel libopenblas_pthreads-devel + +# For 32bit stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs + +# until this can be fixed in rpm - maxlin +Support: python-rpm-macros + +# Directly copied from Leap +Prefer: openmpi-config +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 libnetcdf11 netcdf-devel netcdf-devel-data -libnetcdf13-openmpi -libnetcdf13-openmpi2 +Prefer: -libnetcdf15-openmpi -libnetcdf15-openmpi2 +Prefer: libnetcdf18 +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi1 -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-openmpi1 -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5-103-openmpi4 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3 -libhdf5_cpp103-openmpi4 +Prefer: -hdf5-1_8-devel +Prefer: -libvtk1-openmpi libvtk1-openmpi2 + +# PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version +%define php_pref php7 +Prefer: %{php_pref} +Prefer: %{php_pref}-cli +Prefer: %{php_pref}-devel +Prefer: %{php_pref}-pear +Prefer: %{php_pref}-tokenizer +Prefer: apache2-mod_%{php_pref} +Prefer: php7:php7-cli +Prefer: php8:php8-cli + +# do not prefer php7-test +Prefer: -php7-test + +# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore +# for go version greater than 1.13, let's not to prefer older ones +# go1.15 is the default by patchinfo.18422 +Prefer: go -go1.12 -go1.13 -go1.14 -go1.15 -go1.16 + +# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel +Prefer: vtk-java vtk-tcl python3-vtk + +# have choice for mingw32-unistd-pthread-devel needed by mingw32-headers: mingw32-headers-dummy-pthread mingw32-winpthreads-devel +Prefer: -mingw64-headers-dummy-pthread -mingw32-headers-dummy-pthread + +# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package +Prefer: ruby2.5-rubygem-tilt +Prefer: ruby2.5-rubygem-mail +Prefer: ruby2.5-rubygem-addressable +Prefer: ruby2.5-rubygem-thor +Prefer: ruby2.5-rubygem-tzinfo + +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rb-fsevent +Prefer: -ruby2.5-rubygem-bcrypt_pbkdf + +# have choice for rubygem(ruby:2.5.0:fast_gettext) < 3.0 needed by yast2-ruby-bindings: ruby2.5-rubygem-fast_gettext ruby2.5-rubygem-fast_gettext-1.1 +Prefer: -ruby2.5-rubygem-fast_gettext-1.1 +# have choice for rubygem(ruby:2.5.0:sass-rails) >= 5.0.1: ruby2.5-rubygem-sass-rails ruby2.5-rubygem-sass-rails-5.1 +Prefer: -ruby2.5-rubygem-sass-rails-5.1 + +# we have python3 and python39 +Prefer: python3 -python39 -python -python-base + +# have choice: python2-setuptools python2-setuptools-test python2-setuptools-wheel +Prefer: python2-setuptools +Prefer: python3-setuptools + +# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place) +Prefer: python2-msgpack python3-msgpack + +Prefer: python2-pycryptodome + +# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one +Prefer: python3-Django + +# python3-prompt_toolkit vs python3-prompt_toolkit1 +Prefer: python3-prompt_toolkit + +# multiple pytest version so prefers the unversioned one +Prefer: python3-pytest python3-pytest4 python3-pytest5 +Prefer: python2-pytest python2-pytest4 python2-pytest5 + +Prefer: python2-subprocess32 + +Prefer: python2-libxml2 +Prefer: python3-libxml2 + +# Enchant has multiple backends to chose from, make a decision for OBS +Prefer: enchant-1-backends +Prefer: enchant-2-backend-hunspell + +# pipewire has a jack compatible implementation - but for now we prefer the real jack otherwise some apps fails to build eg. octave +Prefer: -pipewire-libjack-0_3-devel libjack0 + +# have choice for html2text +Prefer: -python3-html2text + +# have choice for python-wxWidgets >= 2.8 needed by grass: python-wxWidgets-3_0 python3-wxPython +Prefer: python3-wxPython + +# OpenSceneGraph exists as 'latest' and a 3.4 compat package. If nothing is specified, we want latest +Prefer: libOpenSceneGraph-devel libOpenThreads-devel + +# once libmusicbrainz updated to ver. 5 then switch it to libmusicbrainz-devel +Prefer: libmusicbrainz5-devel + + +# have choice for pkgconfig(msgpack): msgpack-c-devel msgpack-devel +Prefer: -msgpack-devel + +# have chouce for python3-sip python3-sip4 +Prefer: python3-sip +Prefer: -python3-sip4 + +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis + +Prefer: rhino:xmlbeans-mini +Prefer: k9s:go1.14 + +Prefer: libuna-mini-devel libuna1-mini + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +# hwdata vs pciutils-ids +Prefer: -pciutils-ids +Prefer: hwdata + +# have choice for tensorflow: tensorflow tensorflow2 tensorflow2_2_1_0-gnu-hpc tensorflow2_2_1_0-gnu-mvapich2-hpc tensorflow2_2_1_0-gnu-openmpi2-hpc +Prefer: tensorflow2 + +# have choice for pkgconfig(libhs): hyperscan-devel vectorscan-devel. hyperscan is for x86 only, prefer that where possible (for now). +Prefer: hyperscan-devel + +# have choice for (gnome-session or budgie-desktop) needed by gnome-shell: budgie-desktop gnome-session +Prefer: -budgie-desktop + +# have choice for systemd-default-settings-branding needed by systemd: +# systemd-default-settings-branding-SLE systemd-default-settings-branding-openSUSE systemd-default-settings-branding-upstream +Prefer: systemd-default-settings-branding-SLE + +# have choice for typelib(GWeather) needed by gnome-shell: typelib-1_0-GWeather-3_0 typelib-1_0-GWeather-4_0 +Prefer: typelib-1_0-GWeather-3_0 + +# Do not prefer 32bit devel +Prefer: -ImageMagick-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5OpenGLExtensions-devel-static-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -alsa-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -libSDL2_image-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libva-gl-devel-32bit +Prefer: -libdbusmenu-qt5-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libpolkit-qt5-1-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -papi-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -libOSMesa-devel-32bit +Prefer: -libSDL_ttf-devel-32bit +Prefer: -libSDL2_ttf-devel-32bit +Prefer: -libSDL_mixer-devel-32bit +Prefer: -libSDL2_mixer-devel-32bit +Prefer: -libSDL_image-devel-32bit +Prefer: -libSDL_net-devel-32bit +Prefer: -libSDL2_net-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSDL2_gfx-devel-32bit +Prefer: -muparser-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit +Prefer: -libbotan-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -zvbi-devel-32bit +Prefer: -libcmocka-devel-32bit +Prefer: -libstatgrab-devel-32bit +Prefer: -libqt5-qtnetworkauth-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -libqt5-qtscxml-devel-32bit +Prefer: -phonon4qt5-devel-32bit +Prefer: -libQt5WebKit5-devel-32bit +Prefer: -libQt5WebKitWidgets-devel-32bit +Prefer: -libsmartcols-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libopenssl-1_0_0-devel-32bit +Prefer: -libgcrypt-devel-32bit +Prefer: -keyutils-devel-32bit +Prefer: -gtk4-devel-32bit +Prefer: -ocl-icd-devel-32bit +Prefer: -libGLw-devel-32bit +Prefer: -libzstd-devel-32bit +Prefer: -libsoup2-devel-32bit +Prefer: -libpcap-devel-32bit +Prefer: -libqt5-qtremoteobjects-devel-32bit +Prefer: -libqt5-qtsensors-devel-32bit +Prefer: -libudev-devel-32bit +#have choice for librpm.so.8 needed by libsnmp30-32bit: rpm-32bit rpm-ndb-32bit, have choice for librpmio.so.8 needed by libsnmp30-32bit: rpm-32bit rpm-ndb-32bit, have choice for libnssckbi.so needed by mozilla-nss-32bit: mozilla-nss-certs-32bit p11-kit-nss-trust-32bit +Prefer: -rpm-ndb-32bit +Prefer: -p11-kit-nss-trust-32bit + +# wine comes in various flavors by now, we pick the unflavored ones +Prefer: wine-32bit wine-devel-32bit wine-devel + +Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6 +Prefer: -ruby2.4-rubygem-mime-types-1 +Prefer: -ruby2.5-rubygem-rspec-2_14 +Prefer: -ruby2.5-rubygem-mime-types-1 + +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +Prefer: libmysqlclient-devel + +# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt +Prefer: perl-Math-BigInt + +# have choice for pkgconfig(catch2): Catch2-2-devel Catch2-devel +Prefer: -Catch2-2-devel + +Prefer: subunit-filters -python2-python-subunit + +# have choice for PackageKit-backend needed by PackageKit: PackageKit-backend-dnf PackageKit-backend-zypp +Prefer: PackageKit-backend-zypp + +# We have multiple versions of ffmpeg available, the preferred one is ffmpeg4 from Backports instead of ffmpeg3 from SLE +# Prefer: ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libavdevice-devel +# Prefer: -ffmpeg-private-devel -libavcodec-devel -libavformat-devel -libavutil-devel -libswscale-devel -libavdevice-devel -libavfilter-devel +# ffmpeg-3 and ffmpeg-4 handling in 15.2 +Prefer: libvpx-devel +Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel +Prefer: -ffmpeg3-devel +Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel +Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel + +# have choice for libffi +Prefer: libffi7 + +# We have opencv and opencv3 - as usual, the unversioned one should win +Prefer: opencv-devel + +# llvm exists in multiple versions +Prefer: libclang13 libc++1 libc++abi1 libc++-devel libc++abi-devel + +# have choice for pkgconfig(smbclient): libsmbclient-devel samba-devel +Prefer: samba-devel +# it doesn't work well enough +Substitute: libsmbclient-devel samba-devel +Substitute: libwbclient-devel samba-devel + +# LUA namespace migration - slowly moving to the new names (keep ports in mind!) +# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future +Prefer: lua53 lua51 lua52 lua +Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5 +Prefer: lua53-devel lua51-devel lua52-devel +Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +# required for systemd SR#263844 +Substitute: libudev-devel systemd-devel +Substitute: libudev-mini-devel systemd-mini-devel +Prefer: -libudev-mini-devel + +# SLE product and SLE-Module-Development-Tools-OBS module providing different versions +Prefer: libgnome-desktop-3-18 +Prefer: libgnomekbd8 +Prefer: typelib-1_0-Gspell-1 + +# python-cairo vs python-pycairo +Prefer: python3-pycairo python2-pycairo +Prefer: python3-pycairo-devel python2-pycairo-devel +Prefer: python-pycairo-common-devel + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver + +Preinstall: liblua5_3-5 + +# required after luajit SR#255872 +Prefer: luajit-devel +#Prefer: -lua51-luajit-devel +Substitute: lua51-luajit-devel luajit-devel + +# needed due to libxml2 (SR#255607) +Prefer: -python3-libxml2-python -python2-libxml-python +Substitute: python2-libxml2-python python2-libxml2 +Substitute: python3-libxml2-python python3-libxml2 + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless +# Prefer java 8 than java 9 or 10 +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc +# Fall back to Java 10, if there was no java 11 option +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fall back to Java 9, if there was no java 10 option +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# And then fall back to java 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# And then fall back to java 7 bootstrap if needed +# Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless +Substitute: java2-devel-packages java-devel + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +# have choice for perl(Perl::Critic::Freenode): perl-Perl-Critic-Community perl-Perl-Critic-Freenode +Prefer: -perl-Perl-Critic-Freenode + +# FFMPEG conflict with FFMPEG-5, prefer ffmpeg version from SLE +Prefer: ffmpeg + +# libglfw3 over libglfw3-wayland +Prefer: libglfw3 + +# have choice for texlive-genmisc texlive-random +# have choice for texlive-genmisc texlive-nth +Prefer: -texlive-genmisc + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# required after IBS SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# Conflict with postgresql13-devel-mini +# Prefer: libpq5 + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Ignore: postgresql14-devel-mini:this-is-only-for-build-envs +Prefer: -postgresql13-devel-mini -postgresql12-devel-mini +Prefer: postgresql14-devel-mini + +# required due to liburing2 SR#263841 +Prefer: liburing2-devel -liburing-devel + +# unversioned postgresql +Prefer: postgresql postgresql-server postgresql-devel postgresql-server-devel + +# required to workaround libwayland-egl-devel/libwaylang-egl1 issue between Mesa(SUSE:SLE-15:Update) and wayland(SUSE:SLE-15-SP2:GA) +Substitute: libwayland-egl-devel wayland-devel + +# xerces-j2-xml-apis/resolver has been obsoleted but in SP0 +Substitute: xerces-j2-xml-apis xml-commons-apis +Substitute: xerces-j2-xml-resolver xml-commons-resolver + +# have choice for python3-Sphinx >= 1.0.1: python3-Sphinx python3-Sphinx_4_2_0 +Prefer: python3-Sphinx + +# have choice for systemd-container needed by libvirt-daemon-driver-qemu: systemd-container systemd-mini-container +Prefer: systemd-mini-container + +# ECO-3147 added a new package which opened several installation choices +Prefer: -libboost_atomic_legacy -libboost_container_legacy -libboost_context_legacy -libboost_coroutine_legacy -libboost_system_legacy -libboost_thread_legacy -libboost_date_time_legacy +Prefer: -libboost_fiber_legacy -libboost_filesystem_legacy -libboost_graph_legacy -libboost_iostreams_legacy -libboost_locale_legacy -libboost_log_legacy -libboost_math_legacy +Prefer: -libboost_program_options_legacy -libboost_random_legacy -libboost_regex_legacy -libboost_serialization_legacy -libboost_signals_legacy -libboost_stacktrace_legacy +Prefer: -libboost_test_legacy -libboost_timer_legacy -libboost_type_erasure_legacy -libboost_wave_legacy + +# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688) +Substitute: txt2tags python3-txt2tags + +# svrcore has been merged to 389-ds +Substitute: svrcore-devel 389-ds-devel + +# qhull-devel (SLE) and qhull_r-devel +Substitute: qhull-devel qhull_r-devel + +# openSUSE -> SLE magic so many environments can work +Substitute: desktop-data-openSUSE-extra desktop-data-SLE-extra +Substitute: desktop-data-openSUSE desktop-data-SLE +Substitute: openSUSE-release sles-release +Substitute: wallpaper-branding-openSUSE wallpaper-branding-SLE + + +%ifarch s390x +Substitute: glibc-devel-32bit +Substitute: glibc-32bit +Substitute: glibc-devel-static-32bit +Substitute: gcc-32bit +Substitute: gcc-ada-32bit +Substitute: gcc-c++-32bit +%endif + + +%define skip_python2 1 +%define _without_python2 1 + +Macros: +## PYTHON MACROS BEGIN +# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions, +# making it the "default" in many cases --> keep the primary python3 provider at the end. +%pythons %{?!skip_python3:python3} +%add_python() %{expand:%%define pythons %1 %pythons} + +# requested by Scott +%python_module_iter(a:) %{expand:%%define python %{-a*}} ( %python-%args ) %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}%%{?python_module_iter_%1}} +# pseudo-undefine for obs: reset for the next expansion within the next call of python_module +%python_module_iter_STOP %global python %%%%python +%python_module() %{?!python_module_lua:%{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}}%{?python_module_lua:%python_module_lua %{**}} + +%skip_python2 1 +%_without_python2 1 +:Macros + + +# END PYTHON STUFF + +%define is_opensuse 1 +%define is_backports 1 +# I doubt this should set to 1 - maxlin +# %define _with_mono 1 + +Macros: +%is_opensuse 1 +%is_backports 1 +%opensuse_bs 1 +# define which llvm package builds the system libraries +%product_libs_llvm_ver 15 +:Macros + +### from openSUSE:Leap:15.5 +%define _repository standard + +Macros: +%distribution openSUSE:Leap:15.5 +:Macros + + +Release: <CI_CNT>.<B_CNT> spec:lp155.<CI_CNT>.<B_CNT> + +# uncomment before RC phase to get aaa_base-malloccheck etc. +# make sure to rebuild patterns-base and skelcd-openSUSE +%define _with_betatest 1 +Macros: +%_with_betatest 1 +:Macros + +# +# product building setup +# +#Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE +Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed + +# debug tools for local osc debugging +Substitute: obs:cli_debug_packages gdb vim strace less rzsz + +# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3 +# not sure this would work as my expectation - maxlin +Support: !rpmlint-Factory-strict + +# temporary for bootstrap +# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict + +Support: !rpmlint-backports +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse +Support: post-build-checks rpmlint-Factory + +# bsc#1182698 +Preinstall: rpm-config-SUSE + +FileProvides: /usr/bin/pkexec pkexec + +# comment out lines below for docker images +# Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini +# Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini +# Substitute: kiwi python3-kiwi + +Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !postgresql13-devel-mini + +### required change for opensuse-leap-dnf-image +# Workaround obs-build substitution error by requesting both for either unsatisfied provides +Substitute: kiwi-packagemanager:dnf dnf microdnf +Substitute: kiwi-packagemanager:microdnf microdnf dnf +# For microdnf glib2 stuff +Prefer: libgio-2_0-0:dbus-1 + +Prefer: libasan6 + +Prefer: -SLES_BCL-release -SLES_SAP-release -SLE_HPC-release -SLE_RT-release -SUSE-Manager-Proxy-release -SUSE-Manager-Retail-Branch-Server-release -SUSE-Manager-Server-release -sled-release -unified-installer-release + +### Branding related preferences +Prefer: distribution-logos-openSUSE-Leap +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: lxde-common:lxde-common-branding-openSUSE +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager:NetworkManager-branding-openSUSE +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: wallpaper-branding-openSUSE +# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +# Prefer: xfce4-settings:xfce4-settings-branding-upstream +# Prefer: xfdesktop:xfdesktop-branding-upstream +# Prefer: libxfce4ui:libxfce4ui-branding-upstream +# Prefer: libexo-1-0:libexo-1-0-branding-upstream +# Prefer: libgarcon-1-0:libgarcon-branding-upstream +# Prefer: libgarcon-data:libgarcon-branding-upstream +# Prefer: exo-data:exo-branding-upstream +Prefer: exo-data:exo-branding-openSUSE +Prefer: libexo-1-0:libexo-1-0-branding-openSUSE +Prefer: libgarcon-1-0:libgarcon-branding-openSUSE +Prefer: libgarcon-data:libgarcon-branding-openSUSE +Prefer: libxfce4ui:libxfce4ui-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE +Prefer: xfce4-settings:xfce4-settings-branding-openSUSE +Prefer: xfdesktop:xfdesktop-branding-openSUSE +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE +Prefer: gnome-menus:gnome-menus-branding-openSUSE + +Prefer: openSUSE-build-key +Prefer: -suse-build-key +Prefer: openSUSE-release:openSUSE-release-mini +Prefer: -sles-release -gio-branding-SLE +Prefer: openSUSE-EULAs + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# There are multiple PK backends available. Favor the openSUSE own zypp backend +Prefer: PackageKit-backend-zypp + +# Revert SLE change +Ignore: !pciutils:pciutils-ids + +# Prefer hwdata than pciutils-ids +Prefer: -pciutils-ids +Prefer: hwdata + +# Obsoleted by gnome-tweaks +Prefer: -gnome-tweak-tool +Prefer: -desktop-data-SLE + +# 32bit devel package +Prefer: -libgnutls-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -bluez-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit + +# required after IBS SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider +Prefer: kubernetes1.18-kubeadm + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# Undo SLE specific preference +Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP +Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE +Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE +Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE + +# bsc#1204657 +Prefer: distribution-logos-openSUSE-icons -systemd-icon-branding-openSUSE +Substitute: systemd-icon-branding-openSUSE distribution-logos-openSUSE-icons + +# Undo these Substitles from Backports +Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-openSUSE desktop-data-openSUSE +Substitute: openSUSE-release openSUSE-release +Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE + +# Reverse these Substitles from Backports +Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra +Substitute: desktop-data-SLE desktop-data-openSUSE +Substitute: sles-release openSUSE-release +Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE + +# Prefer coreutils over coreutils-single +Prefer: -coreutils-single + + +%define suse_version 1500 +%define sle_version 150500 +%define is_opensuse 1 + +Macros: +%suse_version 1500 +%sle_version 150500 +%is_opensuse 1 +%is_backports 0 + +# define which llvm package builds the system libraries +%product_libs_llvm_ver 15 + +%sles_version 0 +%_vendor suse +:Macros + + +Macros: +%_obs_cpu_flag_exclude yes + diff --git a/configs/sle15.0.conf b/configs/sle15.0.conf new file mode 100755 index 0000000..5f844dd --- /dev/null +++ b/configs/sle15.0.conf @@ -0,0 +1,884 @@ + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +Prefer: cdrkit-cdrtools-compat genisoimage +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: iproute2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini + +#Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +%define is_susecaasp 1 +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150000 +%is_susecaasp 1 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sle15.1.conf b/configs/sle15.1.conf new file mode 100755 index 0000000..5f844dd --- /dev/null +++ b/configs/sle15.1.conf @@ -0,0 +1,884 @@ + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +Prefer: cdrkit-cdrtools-compat genisoimage +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: iproute2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini + +#Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +%define is_susecaasp 1 +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150000 +%is_susecaasp 1 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sle15.2.conf b/configs/sle15.2.conf new file mode 100755 index 0000000..e749da7 --- /dev/null +++ b/configs/sle15.2.conf @@ -0,0 +1,890 @@ + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +Prefer: cdrkit-cdrtools-compat genisoimage +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: iproute2 + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini + +#Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150200 + +%define is_susecaasp 1 +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150200 +%is_susecaasp 1 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sle15.3.conf b/configs/sle15.3.conf new file mode 100755 index 0000000..2bd74e3 --- /dev/null +++ b/configs/sle15.3.conf @@ -0,0 +1,890 @@ + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +Prefer: cdrkit-cdrtools-compat genisoimage +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMInstall: iproute2 + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: perl +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: kiwi:curl-mini +Conflict: kiwi:libudev-mini1 +Conflict: kiwi:systemd-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini + +#Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150300 + +%define is_susecaasp 1 +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150300 +%is_susecaasp 1 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + diff --git a/configs/sle15.4.conf b/configs/sle15.4.conf new file mode 100755 index 0000000..f302a52 --- /dev/null +++ b/configs/sle15.4.conf @@ -0,0 +1,1633 @@ + +%define gcc_version 7 + +Substitute: kiwi python3-kiwi + +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c +Substitute: kiwi python3-kiwi +Substitute: system-packages:mock mock createrepo_c +Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar + +Prefer: -python2-kiwi + +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +Prefer: rpm +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/msgfmt gettext-runtime +FileProvides: /usr/bin/python3 python3-base +FileProvides: /sbin/mkinitrd dracut + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMinstall: iproute2 libmnl0 + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# the basic stuff +Support: pam-modules +Support: hostname +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs + +Support: brp-check-suse post-build-checks rpmlint-Factory + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini +Conflict: python3-kiwi:krb5-mini +Conflict: python3-kiwi:gettext-tools-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +Macros: +%suse_version 1500 +%sle_version 150000 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +# END RUST STUFF + +Prefer: systemd-presets-branding-SLE + +# the old python-msgpack-python should be dropped, but salt +# is still requires the old name +Prefer: python3-msgpack + +%ifarch s390 +Ignore: python2-numpy-devel:openblas-devel +Ignore: python3-numpy-devel:openblas-devel +%endif + +Prefer: -openssl-1_0_0 + +Buildflags: useccache:ceph + +Support: python-rpm-macros + +Prefer: ImageMagick-config-7-upstream + +Prefer: chrony-pool-suse + +Prefer: pciutils-ids + +Prefer: -libcurl4-mini +Prefer: cmake3-full + +Macros: +# define which gcc package builds the system libraries +%product_libs_gcc_ver 11 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +# The following shlibs have the latest version built from GCC 9 sources +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libgo14 9 +# The following shlibs have the latest version built from GCC 10 sources +%product_libs_gcc_ver_libgphobos1 10 +%product_libs_gcc_ver_libgdruntime1 10 +%product_libs_gcc_ver_libgo16 10 + +:Macros + +# After the build 20200723 update .pc files are also in 32bit packages causing have-choice +Prefer: -alsa-devel-32bit +Prefer: -atk-devel-32bit +Prefer: -atkmm1_6-devel-32bit +Prefer: -at-spi2-core-devel-32bit +Prefer: -at-spi-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -augeas-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -cairo-devel-32bit +Prefer: -cairomm1_0-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -cppunit-devel-32bit +Prefer: -cyrus-sasl-devel-32bit +Prefer: -dbus-1-devel-32bit +Prefer: -dbus-1-glib-devel-32bit +Prefer: -device-mapper-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -flac-devel-32bit +Prefer: -fontconfig-devel-32bit +Prefer: -freetype2-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -glu-devel-32bit +Prefer: -gstreamer-devel-32bit +Prefer: -gstreamer-plugins-base-devel-32bit +Prefer: -gtk2-devel-32bit +Prefer: -gtk3-devel-32bit +Prefer: -hunspell-devel-32bit +Prefer: -ImageMagick-devel-32bit +Prefer: -libart_lgpl-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -libbasicobjects-devel-32bit +Prefer: -libblkid-devel-32bit +Prefer: -libbz2-devel-32bit +Prefer: -libcelt-devel-32bit +Prefer: -libcollection-devel-32bit +Prefer: -libcom_err-devel-32bit +Prefer: -libcurl-devel-32bit +Prefer: -libdhash-devel-32bit +Prefer: -libdmx-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -libelf-devel-32bit +Prefer: -libexif-devel-32bit +Prefer: -libexpat-devel-32bit +Prefer: -libext2fs-devel-32bit +Prefer: -libfontenc-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libgck-devel-32bit +Prefer: -libgcr-devel-32bit +Prefer: -libglvnd-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libgphoto2-devel-32bit +Prefer: -libHX-devel-32bit +Prefer: -libICE-devel-32bit +Prefer: -libicu-devel-32bit +Prefer: -libini_config-devel-32bit +Prefer: -libjack-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -liblbxutil-devel-32bit +Prefer: -liblcms2-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libmount-devel-32bit +Prefer: -libnettle-devel-32bit +Prefer: -libnl3-devel-32bit +Prefer: -libnotify-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libqt5-qtconnectivity-devel-32bit +Prefer: -libqt5-qtdeclarative-devel-32bit +Prefer: -libqt5-qtlocation-devel-32bit +Prefer: -libqt5-qtmultimedia-devel-32bit +Prefer: -libqt5-qtserialport-devel-32bit +Prefer: -libqt5-qtsvg-devel-32bit +Prefer: -libqt5-qttools-devel-32bit +Prefer: -libqt5-qtwayland-devel-32bit +Prefer: -libqt5-qtwebchannel-devel-32bit +Prefer: -libqt5-qtwebsockets-devel-32bit +Prefer: -libqt5-qtx11extras-devel-32bit +Prefer: -libqt5-qtxmlpatterns-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libraw1394-devel-32bit +Prefer: -libref_array-devel-32bit +Prefer: -libSDL2-devel-32bit +Prefer: -libSDL-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSM-devel-32bit +Prefer: -libsoup-devel-32bit +Prefer: -libtasn1-devel-32bit +Prefer: -libtiff-devel-32bit +Prefer: -libusb-1_0-devel-32bit +Prefer: -libuuid-devel-32bit +Prefer: -libv4l-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libvdpau-devel-32bit +Prefer: -libverto-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -libvorbis-devel-32bit +Prefer: -libwayland-egl-devel-32bit +Prefer: -libwebp-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libXau-devel-32bit +Prefer: -libXaw3d-devel-32bit +Prefer: -libXaw-devel-32bit +Prefer: -libxcb-devel-32bit +Prefer: -libXcomposite-devel-32bit +Prefer: -libXcursor-devel-32bit +Prefer: -libXdamage-devel-32bit +Prefer: -libXdmcp-devel-32bit +Prefer: -libXext-devel-32bit +Prefer: -libXfixes-devel-32bit +Prefer: -libXfont2-devel-32bit +Prefer: -libXfontcache-devel-32bit +Prefer: -libXfont-devel-32bit +Prefer: -libXft-devel-32bit +Prefer: -libXi-devel-32bit +Prefer: -libXinerama-devel-32bit +Prefer: -libxkbcommon-devel-32bit +Prefer: -libxkbcommon-x11-devel-32bit +Prefer: -libxkbfile-devel-32bit +Prefer: -libxml2-devel-32bit +Prefer: -libXmu-devel-32bit +Prefer: -libXp-devel-32bit +Prefer: -libXpm-devel-32bit +Prefer: -libXprintUtil-devel-32bit +Prefer: -libXrandr-devel-32bit +Prefer: -libXrender-devel-32bit +Prefer: -libXres-devel-32bit +Prefer: -libxslt-devel-32bit +Prefer: -libXss-devel-32bit +Prefer: -libXt-devel-32bit +Prefer: -libXtst-devel-32bit +Prefer: -libXv-devel-32bit +Prefer: -libXvMC-devel-32bit +Prefer: -libXxf86dga-devel-32bit +Prefer: -libXxf86misc-devel-32bit +Prefer: -libXxf86vm-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGLESv2_CM-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -ncurses-devel-32bit +Prefer: -NetworkManager-devel-32bit +Prefer: -openal-soft-devel-32bit +Prefer: -openjpeg-devel-32bit +Prefer: -pango-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -tslib-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -wayland-devel-32bit +Prefer: -xcb-util-devel-32bit +Prefer: -xcb-util-image-devel-32bit +Prefer: -xcb-util-keysyms-devel-32bit +Prefer: -xcb-util-renderutil-devel-32bit +Prefer: -xcb-util-wm-devel-32bit +Prefer: -xz-devel-32bit +Prefer: -zlib-devel-32bit +Prefer: -zvbi-devel-32bit + +Prefer: libboost_thread1_66_0 +Prefer: libboost_system1_66_0 +Prefer: libboost_regex1_66_0 +Prefer: libboost_filesystem1_66_0 +Prefer: libboost_iostreams1_66_0 +Prefer: libboost_date_time1_66_0 + +Prefer: -libsmartcols-devel-32bit +Prefer: -krb5-devel-32bit +Prefer: -lzo-devel-32bit +Prefer: -liboping-devel-32bit +Prefer: -unixODBC-devel-32bit +Prefer: -libcmocka-devel-32bit + +# ro added 20220207 requested by dmueller +Prefer: -samba-devel-32bit +Prefer: -libqt5-qtscript-devel-32bit + +FileProvides: /usr/bin/host bind-utils + +Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c + +Prefer: libyui-ncurses9 +Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9 +Prefer: samba-libs-python3 +Ignore: !pciutils:pciutils-ids +Prefer: kernel-default +Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua) +Prefer: python2-configparser +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream + +######### JAVA +# FATE#326347 +# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config: +Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless +Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless +Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless + +# Now we set the prefered Java version, but need fallbacks for some packages: +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless + +# It might be better to 'de-prefer' the "old" ones, and omit the line above +# according to Adrian. This needs some testing. +# Unfortuantely this will bite us when packages require an old java + +# 8 before 10 on advice of fstrba +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# don't use that - fstrba +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +# 15:GA has Prefer:go which will set the default to th eunverisoned go. +# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this. +# go1.12 is taken from 15:Update +Prefer: go1.12 + + +# avoid the SP0 slurm 18.8 variants in SP1 +Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins + +# prefer one of the python-pytests. Marcus 20200512 +Prefer: python-pytest4 python2-pytest4 python3-pytest4 + +# have conflict ebtween python3-pycrypto and python3-pycryptodome +Prefer: python3-pycryptodome + +# prefer go1.14 (over go1.13). Gustavo 20200514 +# this breaks caasp Marcus 20200515 +#Prefer: go1.14 + + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +Prefer: enchant-2-backend-hunspell + +Macros: +%sle_version 150200 + +######### gcc9 +# define which gcc package builds the system libraries +%product_libs_gcc_ver 9 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +######### end of gcc9 + +:Macros + +# Prefer over libyui9* from SP1-GA +Prefer: libyui11 +Prefer: libyui-ncurses11 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11 +Substitute: libyui libyui11 +Substitute: libyui-ncurses libyui-ncurses11 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11 +Substitute: libyui-qt libyui-qt11 +Substitute: libyui-qt-graph libyui-qt-graph11 +Substitute: libyui-qt-pkg libyui-qt-pkg11 + +# Help with the switch to the gcc9 provided libs: (bsc#1154695) +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +# Needed after SR#203451 and SR#204957 +Substitute: infiniband-diags-devel rdma-core-devel + +# Needed after SR#205137 +Prefer: python3-pycryptodome +# Needed after GNOME 3.34 rebase +Prefer: libvala-0_46-devel + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +# required by u-boot (SR#205959) in order to build the full multiboot set plus eventual additional packages: +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +# use rpm by default to build, instead of rpm-ndb +Prefer: rpm + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui +Prefer: libudisks2-0-devel +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: cmake-mini:this-is-only-for-build-envs + +# Cmake exists as a -mini flavor, which is not linked against curl. +Prefer: cmake-mini + +# needed due to SR#213548 +Prefer: ocaml-compiler-libs-devel + +# required after SR#214781 +Prefer: python2-contextlib2 + +# Required after SR#215195 +Prefer: chrony-pool-suse + +%ifarch i586 +# required after MU#13672 / SR#208944 (slurm_18_08) +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +# required after MU#14605 / SR#215186 (python3-azuremetadata) +Substitute: azuremetadata python3-azuremetadata + +# required after changes form the weekend of April 26 +Prefer: python3-pytest +Prefer: python2-pytest + +# required after CTLG for PackageKit, which introduced dnf +Prefer: PackageKit-backend-zypp + +# required after SR#214474 +Prefer: python2-subprocess32 + +### from SUSE:SLE-15-SP2:Update +%define _repository snapshot-SP4 +# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220117 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko +Prefer: python2-pycrypto + +# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit +Prefer: libgnutls-devel + +# qt5 prefers (32bit mess) +Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel + +# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess) +Prefer: bluez-devel + +# conflict with postgresql13-devel-mini ? +Prefer: libpq5 + +Prefer: gdk-pixbuf-devel + +# copy grub2-arm64-efi to all archs (bsc#1186565) +%ifarch aarch64 ppc64le s390x x86_64 +ExportFilter: ^grub2-arm64-efi-.*\.rpm$ . ppc64le s390x x86_64 +%endif + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + + +# for thunderbird (nodejs >= 10 ... has 3 options) + +Prefer: nodejs14 + +# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt, +# use this prefer change Marcus 20220201 +Prefer: -cmake3-full +Prefer: cmake-full + +### from SUSE:SLE-15-SP3:GA +%define _repository standard + +Macros: + +### from SUSE:SLE-15-SP3:GA + +%_repository standard +:Macros +# COMMON BEGIN common part +%define sle_version 150300 +Macros: +%sle_version 150300 +:Macros + +# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2) +Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8 +Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9 +Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11 + +# Revert substitutions from SP2 +Substitute: libyui libyui +Substitute: libyui-ncurses libyui-ncurses +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg +Substitute: libyui-qt libyui-qt +Substitute: libyui-qt-graph libyui-qt-graph +Substitute: libyui-qt-pkg libyui-qt-pkg +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api +Substitute: libyui-qt-rest-api libyui-qt-rest-api +# required after SR#225674 / jsc#SLE-12712 +Prefer: gmmlib-devel + +# required after SR#225669 +Preinstall: libcrypt1 + +# required for latest Mesa +Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel + +# required after SR#226419 +Prefer: typelib-1_0-Gst-1_0 + +# required for latest Mesa +Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel + +# not sure why we need those +Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel + +# required after MU#16450 (gnutls) +Prefer: libgnutls-devel + +# required after SR#228340 +Prefer: systemd-sysvinit + +# required after SR#227910 (alsa) and SR#228076 (pulseaudio) +Prefer: alsa-devel libpulse-devel + +# required after SR#227917 (kernel-firmware) +Prefer: kernel-firmware + +# required after SR#229310 +Prefer: systemd-default-settings-branding-SLE + +Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit +Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit + +# required after SR#230365 and SR#230366 +Prefer: plymouth-branding-SLE + +# required after SR#228415 +Ignore: !pango-devel:cairo-devel + +# required after SR#228071 +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +# needed after SR#236147 +Prefer: -mpg123-devel-32bit + +# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756) +Prefer: -coreutils-single + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +# COMMON END common part + +# due to libreoffice +Prefer: -sane-backends-devel-32bit + +Prefer: -libX11-devel-32bit + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +# needed for MU#18655 +Prefer: -python3-vsts + +# due to MU#19157 +Prefer: -libboost_regex_legacy +# From Fabian Vogt on 20210913 ... patterns-base-fips temporary +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +# after secondary icu version release Marcus 20211214 + +Prefer: libicu-devel + + +# gboiko, 20220202 fixing the following unresolvable: +# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs +Prefer: samba-client-libs samba-devel + +# BEGIN RUST STUFF +Prefer: cargo1.58 cargo1.57 + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%define rust_tier1_arches x86_64 aarch64 + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%rust_tier1_arches x86_64 aarch64 +:Macros + +# END RUST STUFF +Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel +Prefer: -keyutils-devel-32bit -gtk4-devel-32bit + +# needed due to SR#249037 +Prefer: -libgcrypt-devel-32bit + +# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version +# needed due to SR#249799 +Prefer: php8:php8-cli + +# needed after php7 update (SR#255237) +Prefer: php7:php7-cli + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# needed due to libxml2 (SR#255607) +Prefer: -python3-libxml2-python +Substitute: python3-libxml2-python python3-libxml2 + +# required after SR#249636 +Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel + +# required after luajit SR#255872 +Prefer: -lua51-luajit-devel + +# required after zstd SR#256594 +Prefer: -libzstd-devel-32bit + +# required due to libsoup2 SR#256752 +Prefer: -libsoup2-devel-32bit + +Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc + +# required due to systemd SR#258723 +Prefer: -libfdisk-devel-32bit + +# required after libpcap SR#249500 +# required due to umockdev SR#259947 +Prefer: -libpcap-devel-32bit + +# must be removed after fix for bsc#1193711 is merged +# can also be removed in case bsc#1194749 is fully fixed +Support: python-rpm-macros + +# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin +Prefer: -SUSEConnect +Prefer: -zypper-migration-plugin + +# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng +Substitute: SUSEConnect suseconnect-ng +Substitute: zypper-migration-plugin suseconnect-ng + +# Fix fot Qt stack update +Prefer: -libqt5-qtremoteobjects-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit +# from Factory: +# pipewire has a jack compatible implementation - but for now we prefer the real jack +Prefer: -pipewire-libjack-0_3-devel libjack0 + +# required due to libyui SR#263810 +Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15 + +# required due to samba SR#262961 +Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel + +# required due to liburing2 SR#263841 +Prefer: -liburing2-devel + +# required due to php-composer2 SR#263267 +Prefer: -php7 + +# required for systemd SR#263844 +Substitute: libudev-devel systemd-devel +Substitute: libudev-mini-devel systemd-mini-devel +Prefer: -libudev-mini-devel +Prefer: -libudev-devel +Prefer: -libudev-devel-32bit + +# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin +# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore. +FileProvides: /usr/bin/ruby ruby2.5 + +%define skip_python2 1 +%define _without_python2 1 + +Macros: +## PYTHON MACROS BEGIN +# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions, +# making it the "default" in many cases --> keep the primary python3 provider at the end. +%pythons %{?!skip_python3:python3} +%add_python() %{expand:%%define pythons %1 %pythons} + +%_without_python2 1 +:Macros + +Prefer: -python -python-base + +# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688) +Substitute: txt2tags python3-txt2tags + +# required due to bash SR#265536 +FileProvides: /bin/bash bash +FileProvides: /bin/sh bash-sh busybox-sh +Prefer: bash-sh +Preinstall: bash bash-sh +Prefer: -busybox +# required for openblas (SR#269449) +Prefer: -openblas-devel +Substitute: openblas-devel libopenblas_pthreads-devel + diff --git a/configs/sle15.5.conf b/configs/sle15.5.conf new file mode 100755 index 0000000..02b3d6f --- /dev/null +++ b/configs/sle15.5.conf @@ -0,0 +1,1811 @@ +### from SUSE:SLE-15:GA + +%define gcc_version 7 + +# new cycle handling +BuildFlags: genmetaalgo:1 + +Constraint: linux:version:min 3.0.0 +%ifarch aarch64 ppc64le %ix86 x86_64 s390 s390x ppc64le +Constraint: sandbox secure +%endif +%ifarch ppc ppc64 ppc64le +Constraint: hardware:cpu:flag power8 +%endif + +# play safe, introduced 2022/10/05 +BuildFlags: kvm-max-cpu-compat-power8 + +# create conflicts for packages installed into the target image +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini +Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c +Substitute: kiwi python3-kiwi +Substitute: system-packages:mock mock createrepo_c +Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar +Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 +Substitute: system-packages:kiwi-product product-builder +Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper +Prefer: -python2-kiwi + +# s390 hacks +%ifarch s390 +Substitute: valgrind +Substitute: valgrind-devel +Substitute: pkgconfig(valgrind) +%endif +%ifarch s390 s390x +Substitute: libunwind-devel +Substitute: pkgconfig(libunwind) +%endif + +%ifarch s390 s390x +Ignore: libsensors4-devel +%endif + +%define _without_mono 1 +Macros: +%_without_mono 1 +:Macros + +# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future +Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel +Prefer: -liblua5_3 -liblua5_1 -liblua5_2 + +FileProvides: /bin/csh tcsh +FileProvides: /bin/logger util-linux-systemd +FileProvides: /sbin/netconfig sysconfig-netconfig +FileProvides: /sbin/setcap libcap-progs +FileProvides: /usr/bin/csh tcsh +FileProvides: /usr/bin/docbook2man docbook-utils +FileProvides: /usr/bin/eu-nm elfutils +FileProvides: /usr/bin/fipscheck fipscheck +FileProvides: /usr/bin/killall psmisc +FileProvides: /usr/bin/mimencode metamail +FileProvides: /usr/bin/mkisofs mkisofs +FileProvides: /usr/bin/pkg-config pkg-config +FileProvides: /usr/bin/python python-base +FileProvides: /usr/bin/setfacl acl +FileProvides: /usr/bin/sg_inq sg3_utils +FileProvides: /usr/bin/tput ncurses-utils +FileProvides: /usr/bin/xmllint libxml2-tools +FileProvides: /usr/bin/Xvfb xorg-x11-server +FileProvides: /usr/sbin/groupadd shadow +FileProvides: /usr/sbin/lockdev lockdev +FileProvides: /usr/sbin/useradd shadow +FileProvides: /usr/sbin/usermod shadow +FileProvides: /usr/bin/msgfmt gettext-runtime +FileProvides: /usr/bin/python3 python3-base +# Recommended by Adrian Schroeter: +# causes a cycle :( +# FileProvides: /sbin/mkinitrd dracut + + +Preinstall: aaa_base attr bash coreutils diffutils +Preinstall: filesystem fillup glibc grep +Preinstall: libbz2-1 libgcc_s1 libncurses6 pam +Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1 +Preinstall: liblzma5 libcap2 libacl1 libattr1 +Preinstall: libpopt0 libelf1 liblua5_3-5 +Preinstall: libpcre1 + +Runscripts: aaa_base + +Prefer: libdb-4_8-devel +VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1 +VMinstall: kernel-obs-build +VMinstall: iproute2 libmnl0 + +Required: rpm-build +# Build all packages with -pie enabled +Required: gcc-PIE + +# needed for su's default config - perhaps we should use a simplified form? +Support: pam-modules + +# the basic stuff +Support: perl build-mkbaselibs +Prefer: build-mkbaselibs +Support: brp-check-suse post-build-checks rpmlint-Factory +# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost) +Support: hostname +# remove build-compare support to disable "same result" package dropping +# (coolo) removed to get fresh build times Support: build-compare +# Extracting appdata.xml from desktop files +Support: brp-extract-appdata +# Translations +Support: brp-extract-translations +# enforce valid license +Support: rpmlint-Factory-strict + +# testing deltas (only for O:F for now!) +#Support: build-mkdrpms deltarpm + +%ifarch ia64 +Support: libunwind libunwind-devel +Preinstall: libunwind +%endif +Prefer: -openSUSE-build-key + +# SLES_SAP-installation-release is a strange package, which provides +# sles-release, and this solves a 'have choice' from SLES_SAP-release +# investigation if the package can be handled differently is ongoing +Prefer: -SLES_SAP-installation-release + +# rescue-server should use the SLES installation-images for now +Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP + +### Branding related preferences +Prefer: awesome:awesome-branding-upstream +Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE +Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream +Prefer: enlightenment-theme-upstream +Prefer: exo-data:exo-branding-upstream +Prefer: fcitx:fcitx-branding-openSUSE +Prefer: gdm:gdm-branding-upstream +Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse +Prefer: glib2:glib2-branding-upstream +Prefer: gnome-panel:gnome-panel-branding-upstream +Prefer: gnome-session:gconf2-branding-openSUSE +Prefer: gnome-session:gnome-session-branding-openSUSE +Prefer: icewm-theme-branding +Prefer: kde4-kdm:kde4-kdm-branding-upstream +Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream +Prefer: kdelibs4-branding:kdelibs4-branding-upstream +Prefer: kdelibs4:kdelibs4-branding-upstream +Prefer: kdm:kdm-branding-upstream +Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream +Prefer: libexo-1-0:libexo-1-0-branding-upstream +Prefer: libgarcon-1-0:libgarcon-branding-upstream +Prefer: libgarcon-data:libgarcon-branding-upstream +Prefer: libgio-2_0-0:gio-branding-upstream +Prefer: libglib-2_0-0:glib2-branding-upstream +Prefer: libpurple-branding-upstream +Prefer: libreoffice:libreoffice-branding-upstream +Prefer: libsocialweb:libsocialweb-branding-upstream +Prefer: libxfce4ui:libxfce4ui-branding-upstream +Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream +Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream +Prefer: NetworkManager-branding-upstream +Prefer: PackageKit:PackageKit-branding-upstream +Prefer: plasma5-desktop:plasma5-desktop-branding-upstream +Prefer: plasma5-workspace:plasma5-workspace-branding-upstream +Prefer: sddm:sddm-branding-upstream +Prefer: systemd-presets-branding-SLE +Prefer: wallpaper-branding-openSUSE +Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream +Prefer: xfce4-settings:xfce4-settings-branding-upstream +Prefer: xfdesktop:xfdesktop-branding-upstream +Prefer: yast2-branding-openSUSE +Prefer: yast2-qt:yast2-qt-branding-openSUSE +Prefer: yast2-theme-openSUSE + +# Build cycle handling - prefer -mini packages were possible, break deps as needed + +Conflict: krb5-devel:krb5-mini +Conflict: krb5:krb5-mini-devel + +# for images repo we rely purely on substitute: build-packages:kiwi +%if "%_repository" != "images" +Prefer: gettext-tools-mini gettext-runtime-mini +Prefer: ghostscript-mini +Prefer: krb5-mini-devel:krb5-mini +Prefer: krb5-mini krb5-mini-devel +Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo +Prefer: libunbound-devel-mini +Prefer: log4j-mini +Prefer: systemd-mini-devel:systemd-mini +Prefer: systemd-mini systemd-mini-devel libsystemd0-mini +Prefer: udev-mini libcom_err2-mini libext2fs2-mini +Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: erlang-rebar-obs:this-is-only-for-build-envs +Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs +Ignore: jdk-bootstrap:this-is-only-for-build-envs +Ignore: libsystemd0-mini:this-is-only-for-build-envs +Ignore: libudev-mini1:this-is-only-for-build-envs +Ignore: libunbound-devel-mini:this-is-only-for-build-envs +Ignore: systemd-mini:this-is-only-for-build-envs +Ignore: udev-mini:this-is-only-for-build-envs +Ignore: curl-mini:this-is-only-for-build-envs +Ignore: libcurl-mini-devel:this-is-only-for-build-envs +Ignore: libcurl4-mini:this-is-only-for-build-envs +%endif + +# Ring0 packages should not pull in 'info' - making the base VM smaller +Ignore: binutils:info +Ignore: bison:info +Ignore: coreutils:info +Ignore: cpio:info +Ignore: diffutils:info +Ignore: findutils:info +Ignore: flex:info +Ignore: gawk:info +Ignore: gettext-runtime:info +Ignore: gettext-tools:info +Ignore: grep:info +Ignore: groff:info +Ignore: gzip:info +Ignore: help2man:info +Ignore: libgcrypt-devel:info +Ignore: m4:info +Ignore: make:info +Ignore: sed:info +Ignore: tar:info +Ignore: util-linux:info +Ignore: which:info + +# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system +Ignore: Mesa:Mesa-dri +Ignore: Mesa:Mesa-gallium + +# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems +Conflict: python3-kiwi:curl-mini +Conflict: python3-kiwi:libudev-mini1 +Conflict: python3-kiwi:systemd-mini +Conflict: python3-kiwi:krb5-mini +Conflict: python3-kiwi:gettext-tools-mini + +# udev: -full and -mini packages don't mingle well +Prefer: libudev1:udev +Conflict: libudev1:udev-mini +Conflict: udev:libudev-mini1 + +# systemd: -full and -mini packages don't mingle well +Conflict: systemd:libsystemd0-mini +Conflict: systemd-mini-devel:systemd + +# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl +Prefer: cmake:libcurl4-mini +Prefer: curl libcurl-devel libcurl4 + +Prefer: -openSUSE-build-key +# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) +Prefer: postfix +# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal) + +# prefer the PHP5 variants over PHP7 +Prefer: php5-ctype +Prefer: php5-devel +Prefer: php5-dom +Prefer: php5-ftp +Prefer: php5-gd +Prefer: php5-gettext +Prefer: php5-mbstring +Prefer: php5-pear +Prefer: php5-pear-Archive_Tar +Prefer: php5-pear-Horde +Prefer: php5 php5-json +Prefer: php5-tokenizer +Prefer: php5-zip + +# go exists in mutliple versions by now - we prefer the 'unversioned package' +Prefer: go + +# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one' +Prefer: python2-pep8 python3-pep8 + +# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl +Prefer: perl + +# Assist migration to python-pycups (python3-cups is going to be removed) +Prefer: python3-pycups python-pycups + +# Apache requires a MPM - we pick prefork +Prefer: apache2:apache2-prefork + +# for symbol syslog (syslogd is best as it has the least dependencies) +Prefer: syslogd + +# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt +Prefer: star-rmt + +# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; +Prefer: notification-daemon + +# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW) +Prefer: dummy-release + +# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version +Prefer: -nodejs4 + +# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' +Prefer: libpulse0-32bit + +# do not used openmpi variant to build against netcdf +Prefer: netcdf-devel + +# Below list still needs to be reviewed + +Prefer: xorg-x11-Xvnc:icewm +Prefer: cracklib-dict-small +Prefer: libstdc++6 libgcc_s1 libquadmath0 +Prefer: libstdc++6-32bit libstdc++6-64bit +Prefer: libstdc++6-x86 +Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit +%ifarch s390x +Prefer: -libstdc++41 +%endif +Prefer: syslog-service +Prefer: poppler-tools +Prefer: libjpeg8-devel libjpeg-turbo +Prefer: microcode_ctl:kernel-default +Prefer: gnu-jaf yast2-control-center-qt +Prefer: vim-normal myspell-american wine +Prefer: amarok:amarok-xine +Prefer: kdenetwork3-vnc:tightvnc +Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api +Prefer: -dbus-1-nox11 +Prefer: -servletapi3 -servletapi4 -servletapi5 +Prefer: icewm-lite +Prefer: yast2-ncurses-pkg +Prefer: monodevelop: mono-addins +Prefer: texlive-xmltex texlive-tools texlive-jadetex +Prefer: libesd-devel:esound +Prefer: libesd0:esound-daemon +Prefer: package-lists-openSUSE-KDE-cd: esound-daemon +Prefer: librest-0_7-0 + +Prefer: rhino:xmlbeans-mini +Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail +Prefer: mx4j:log4j-mini + +Prefer: rpcbind eclipse-source +Prefer: libcdio_cdda0 libcdio_paranoia0 +Prefer: boo tog-pegasus +Prefer: sysvinit(network) wicked-service +Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd +Prefer: kdebase4-openSUSE:kdebase4-workspace +Prefer: ant:xerces-j2 +Prefer: dhcp-client:dhcp +Prefer: libGLw1 +# provides typelib(St) +Prefer: -cinnamon +Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es +Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el +Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl +Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da +Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb +Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar +Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr +Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el +Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs +Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu +Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv +Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar +Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr +Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el +Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs +Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu +Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv +Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar +Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr +Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el +Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru +Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da +Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv +Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar +Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++ +Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g +Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links +Prefer: -python-setuptools +Prefer: -kdenetwork3-InstantMessenger +Prefer: -icc-profiles +Prefer: vala +# in doubt, take xerces +Prefer: -crimson +# in doubt, take higher versions +Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4 +Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3 +Prefer: -rubygem-json_pure-1_5 +Prefer: geronimo-servlet-2_4-api +Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi +# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_... +Prefer: fftw3-devel +# prefer the small systemd for building +Prefer: star +Prefer: xmlgraphics-commons:apache-commons-io +# the -32bit stuff provides things it shouldn't (hopefully temporary) +Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit +Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit +Prefer: postgresql postgresql-server postgresql-devel +Prefer: -unzip-rcc +Prefer: -primus -primus-32bit +Prefer: -staging-build-key +Prefer: -sssd-wbclient +Prefer: -clutter-gst-devel +Prefer: -opencv-qt5-devel +# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg +Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel +Prefer: -ffmpeg2-devel -python-configparser2 +# as long as kactivities4 exists and is provided +Prefer: kactivities5 +# oxygen5-icon-theme osboletes oxygen-icon-theme +Prefer: oxygen5-icon-theme +Prefer: npm6 + +# kernel bug (coolo) +Prefer: kernel-default-devel + +# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel +# Prefer: libmariadb-devel +Prefer: libmysqlclient-devel + +Prefer: wxWidgets-3_0-devel +Prefer: libopenssl-devel + +Prefer: -NX -xaw3dd -db43 +Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis +Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit +Prefer: libffi-devel +Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0 +Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit +Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit +Prefer: libgcc_s1-x86 libgcj_bc1 +Prefer: libgomp1 libgomp1-32bit libgomp1-64bit +Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit +Prefer: libobjc4 libgfortran3 libquadmath0 +Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini +Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel +Prefer: -seamonkey +Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2 +Prefer: libopenal0-soft openal-soft -lsb-buildenv +Prefer: -libevent +Prefer: gnu-crypto libusb-compat-devel +Prefer: libusb-0_1-4 +Prefer: libreoffice:xerces-j2 +Prefer: k3b:libdvdread4 +Prefer: glibc-devel +Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 +Prefer: NetworkManager:dhcp-client +Prefer: kdebase3-SuSE:kdebase3 +Prefer: pcre-tools +Prefer: libpopt0 makeinfo +Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2 +Prefer: libgnome-keyring-devel +Prefer: gnome-keyring-32bit +Prefer: linux-glibc-devel +Prefer: squid sysvinit +Prefer: libpng16-compat-devel +Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0 +Prefer: python3-docutils +Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client +#needed because new xml-commons package +Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis +Prefer: xmlgraphics-fop:xerces-j2 +Prefer: cogl-devel +Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage +Prefer: libpsm2-compat +# choice p11-kit-nss-trust +Prefer: mozilla-nss-certs +# amarok dependency resolution +Prefer: phonon-backend-gstreamer +# replacing mkinitrd +Prefer: dracut +# replacing module-init-tools +Prefer: kmod-compat +# Temporary +Prefer: oxygen5-cursors +# Temporary +Prefer: -perl-App-cpanminus +# libmediaart is prepared for a larger update; for now favor mediaart-1.0 +Prefer: -typelib-1_0-MediaArt-2_0 +Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0 +Prefer: -python-atspi +Prefer: gettext-its-gtk3 gtk3-schema +# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory +Prefer: ghostscript-devel +# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it +Prefer: libotf-devel + +Ignore: installation-images-openSUSE:cracklib-dict-full +Ignore: systemd-sysvinit:systemd +Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome +Ignore: cracklib:cracklib-dict +Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev +Ignore: sysvinit:mingetty +Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel +Ignore: libgcj43,libstdc++43-devel +Ignore: libgcj44,libstdc++44-devel +Ignore: libgcj45,libstdc++45-devel +Ignore: libgcj46,libstdc++46-devel +Ignore: libgcj47,libstdc++47-devel +Ignore: librtas:util-linux +Ignore: pwdutils:openslp +Ignore: rpm:suse-build-key,build-key +Ignore: cloud-init:cloud-init-config +# python-pyudev requires libudev1 in normal situations +Ignore: python-pyudev:libudev1 +Ignore: python-SPARQLWrapper:python-rdflib +Ignore: python3-SPARQLWrapper:python3-rdflib +Ignore: bind-utils:bind-libs +Ignore: portmap:syslogd +Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng +Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video +Ignore: apache2:logrotate +Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis +Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper +Ignore: kdelibs3-devel:libvorbis-devel +Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb +Ignore: kdebase3-SuSE:release-notes +Ignore: jack:alsa,libsndfile +Ignore: libxml2-devel:readline-devel +Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration +Ignore: libgda:file_alteration +Ignore: gnutls:lzo,libopencdk +Ignore: gnutls-devel:lzo-devel,libopencdk-devel +Ignore: pango:cairo,glitz,libpixman,libpng +Ignore: pango-devel:cairo-devel +Ignore: cairo-devel:libpixman-devel +Ignore: libgnomeprint:libgnomecups +Ignore: libgnomeprintui:libgnomecups +Ignore: orbit2-devel:indent +Ignore: qt3:libmng +Ignore: qt-sql:qt_database_plugin +Ignore: libgnomecanvas-devel:glib-devel +Ignore: libgnomeui:gnome-icon-theme,shared-mime-info +Ignore: scrollkeeper:docbook_4 +Ignore: gnome-desktop:libgnomesu,startup-notification +Ignore: python-devel:python-tk +Ignore: libgtk-3-0:adwaita-icon-theme +Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg +Ignore: samba-libs:krb5 +Ignore: libbonoboui:gnome-desktop +Ignore: libxfce4ui-1-0:exo-tools +Ignore: docbook_4:iso_ent,xmlcharent +Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification +Ignore: docbook-xsl-stylesheets:xmlcharent +Ignore: liby2util-devel:libstdc++-devel,openssl-devel +Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2 +Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils +Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel +Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel +Ignore: yast2-devtools:libxslt +Ignore: yast2-iscsi-lio-server:lio-utils +Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation +Ignore: yast2-bootloader:bootloader-theme +Ignore: yast2-packager:yast2-x11,libyui_pkg +Ignore: autoyast2:yast2-schema +# not during build +Ignore: yui_backend +Ignore: yast2-x11:sax2-libsax-perl +Ignore: yast2-network:yast2-inetd +Ignore: openslp-devel:openssl-devel +Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed +Ignore: texlive-bin:ghostscript-x11 +Ignore: texlive-bin-omega:ghostscript-x11 +Ignore: yast2-country:yast2-trans-stats +Ignore: tpb:tpctl-kmp +Ignore: tpctl:tpctl-kmp +Ignore: zaptel:zaptel-kmp +Ignore: mkinitrd:pciutils +Ignore: pciutils:pciutils-ids +Ignore: postfix:iproute2 +Ignore: aaa_base:systemd +Ignore: gpm:systemd +Ignore: openssh:systemd +Ignore: cronie:systemd +Ignore: systemd:kbd +Ignore: systemd:kmod +Ignore: systemd:systemd-presets-branding +Ignore: systemd:dbus-1 +Ignore: systemd:pam-config +Ignore: systemd:udev +Ignore: pesign:systemd +Ignore: logrotate:cron +Ignore: texlive-filesystem:cron +Ignore: xinit:xterm +Ignore: xdm:xterm +Ignore: gnome-control-center:gnome-themes-accessibility + + +Ignore: man:groff-full +Ignore: git-core:rsync +Ignore: apache2:systemd +Ignore: icewm-lite:icewm +Ignore: cluster-glue:sudo +Ignore: libgcc:glibc-32bit +Ignore: libgcc41:glibc-32bit +Ignore: libgcc42:glibc-32bit +Ignore: libgcc43:glibc-32bit +Ignore: libgcc44:glibc-32bit +Ignore: libgcc45:glibc-32bit +Ignore: libgcc46:glibc-32bit +Ignore: libgcc47:glibc-32bit +Ignore: libstdc++:glibc-32bit +Ignore: libstdc41++:glibc-32bit +Ignore: libstdc42++:glibc-32bit +Ignore: libstdc43++:glibc-32bit +Ignore: libstdc44++:glibc-32bit +Ignore: libstdc45++:glibc-32bit +Ignore: libstdc46++:glibc-32bit +Ignore: libstdc47++:glibc-32bit +Ignore: ncurses-32bit + +Ignore: susehelp:susehelp_lang,suse_help_viewer +Ignore: mailx:smtp_daemon +Ignore: cron:smtp_daemon +Ignore: hotplug:syslog +Ignore: pcmcia:syslog +Ignore: openct:syslog +Ignore: postfix:sysvinit(syslog) +Ignore: cups:sysvinit(syslog) +Ignore: jython:servlet +Ignore: ispell:ispell_dictionary,ispell_english_dictionary +Ignore: aspell:aspel_dictionary,aspell_dictionary +Ignore: smartlink-softmodem:kernel,kernel-nongpl +Ignore: libreoffice-de:myspell-german-dictionary +Ignore: libreoffice:libreoffice-i18n +Ignore: libreoffice:libreoffice-icon-themes +Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any +Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl +Ignore: perl-Log-Log4perl:rrdtool + +Ignore: simias:mono(log4net) +Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php + +Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver +Ignore: xdg-menu:desktop-data +Ignore: nessus-libraries:nessus-core +Ignore: evolution:yelp +Ignore: e17:e17-branding e17:e17-theme + +Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp) +Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp) + +Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4) +Ignore: libcdio:libcddb.so.2 + +Ignore: coreutils:coreutils-lang +Ignore: cpio:cpio-lang +Ignore: glib2:glib2-lang +Ignore: gtk2:gtk2-lang +Ignore: gtk:gtk-lang +Ignore: atk:atk-lang +Ignore: MozillaThunderbird:pinentry-dialog +Ignore: seamonkey:pinentry-dialog +Ignore: pinentry:pinentry-dialog +Ignore: gpg2:gpg2-lang +Ignore: util-linux:util-linux-lang +Ignore: suseRegister:distribution-release +Ignore: compiz:compiz-decorator +Ignore: icecream:gcc-c++ +Ignore: no +Ignore: package +Ignore: provides +Ignore: j9vm/libjvm.so()(64bit) +Ignore: kdepim3:suse_help_viewer +Ignore: kdebase3-SuSE:kdebase3-SuSE-branding +Ignore: kio_sysinfo:kdebase3-SuSE-branding +Ignore: gnome-menus:gnome-menus-branding +Ignore: epiphany:epiphany-branding +Ignore: gnome-control-center:gnome-control-center-branding +Ignore: phonon:phonon-backend +Ignore: openwbem-devel +Ignore: MozillaFirefox:MozillaFirefox-branding +Ignore: yast2:yast2-branding +Ignore: plymouth:plymouth-branding +Ignore: plymouth:suspend +Ignore: yast2-qt:yast2-branding +Ignore: yast2-theme-SLE:yast2-branding +Ignore: yast2-registration:yast2-registration-branding +Ignore: compiz:compiz-branding +Ignore: texlive:perl-Tk texlive-bin:perl-Tk +Ignore: xfce4-desktop:xfce4-desktop-branding +Ignore: xfce4-panel:xfce4-panel-branding +Ignore: xfce4-session:xfce4-session-branding +Ignore: kdebase4-runtime:kdebase4-runtime-branding +Ignore: kwin:kdebase4-workspace-branding +Ignore: transmission-common:transmission-ui +Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd +Ignore: mkinitrd:sbin_init samba-client:cifs-utils +Ignore: opensc:pinentry +Ignore: gpg2:pinentry +Ignore: NetworkManager:dhcp +Ignore: NetworkManager:iproute2 +# sysconfig requires it at runtime, not buildtime +Ignore: sysconfig:dbus-1 +Ignore: sysconfig:procps +Ignore: sysconfig:iproute2 +Ignore: sysconfig-network:iproute2 +Ignore: sysconfig:tunctl +Ignore: sysconfig:sysvinit(network) +# no build dependencies +Ignore: libksuseinstall1:yast2-packager +Ignore: libksuseinstall1:zypper +Ignore: syslog-service:logrotate +Ignore: libglue-devel:cluster-glue +Ignore: libqca2:gpg2 +Ignore: NetworkManager:wpa_supplicant +Ignore: NetworkManager:dhcp-client +Ignore: openSUSE-release:product_flavor(openSUSE) +Ignore: libgio-2_0-0:dbus-1-x11 +Ignore: weather-wallpaper:inkscape +Ignore: libgamin-1-0:gamin-server +Ignore: libfam0-gamin:gamin-server +Ignore: python3:python3-pip +Ignore: avahi:sysvinit(network) +Ignore: cluster-glue:sysvinit(network) +Ignore: dracut:systemd-sysvinit +# actually a workaround for installation-images requiring +# gettext-runtime-mini and getting conflict because systat +# requires gettext (which is only provided by !-mini) +Ignore: saptune:sysstat + +Macros: +# RUBY - UNVERSIONED STUFF +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in the +# prjconf aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}} +%rubygemsSTOP() %nil +%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*} +%rubygemsxxSTOP(a:) %{-a*}) %* + +%rubySTOP() %nil +%rubyxSTOP() %* + +%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}} + +%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}} + +%rubydevelSTOP() %nil +%rubydevelxSTOP() %* +# + +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +# if you change any macros here you have to update the copy in +# ruby2.5 aswell. +# +# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +# +%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} +%rubygemsxruby25() %{expand:%%{rubygemsx%*}} + +%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} +%rubyxruby25() %{expand:%%{rubyx%*}} + +%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} +%rubydevelxruby25() %{expand:%%{rubydevelx%*}} + + +### Things to define default ruby stuff for the distro +%rb_default_ruby ruby25 +%rb_default_ruby_suffix ruby2.5 +%rb_default_ruby_abi ruby:2.5.0 +:Macros + +Macros: +%rb_build_ruby_abis ruby:2.5.0 +%rb_build_versions ruby25 + +%_with_ruby25 1 +:Macros + +%define rb_default_ruby ruby25 +%define rb_default_ruby_suffix ruby2.5 +%define rb_default_ruby_abi ruby:2.5.0 + +%define rb_build_ruby_abis ruby:2.5.0 +%define rb_build_versions ruby25 + +%define _with_ruby25 1 + +Prefer: -ruby-stdlib +Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm +Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus +Prefer: %{rb_default_ruby_suffix}-rubygem-yard +Prefer: %{rb_default_ruby_suffix}-rubygem-rspec +Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake +Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah +Prefer: %{rb_default_ruby_suffix}-rubygem-inifile +Prefer: %{rb_default_ruby_suffix}-rubygem-bundler +Prefer: %{rb_default_ruby_suffix}-rubygem-sass +Prefer: %{rb_default_ruby_suffix}-rubygem-cfa +Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types + +# END RUBY STUFF + +# PYTHON STUFF + +Macros: +%pythons %{?!skip_python2:python2} %{?!skip_python3:python3} + +# This method for generating python_modules gets too deep to expand at about 5 python flavors. +# It is replaced by a Lua macro in macros.lua +# However, OBS has a much higher expansion depth, so this works fine. +%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}} +%python_module_iter_STOP stop +%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}} + +%add_python() %{expand:%%define pythons %pythons %1} +:Macros + +# END PYTHON STUFF + +# FATE#325522 +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +# Fallback, but we should try to not use this but java-8.... +# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# Prefer java 8 if java 9 was no option +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +# And then fall back to jaba 7 if needed +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless +Substitute: java2-devel-packages java-devel + +%ifarch x86_64 ppc64 s390x sparc64 +Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit +%else + %ifarch ppc sparc sparcv9 +Substitute: glibc-devel-32bit glibc-devel-64bit + %else +Substitute: glibc-devel-32bit + %endif +%endif + +%ifarch %ix86 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen +%endif +%ifarch ia64 +Substitute: kernel-binary-packages kernel-default kernel-debug +%endif +%ifarch x86_64 +Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen +%endif +%ifarch ppc +Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3 +%endif +%ifarch ppc64 +Substitute: kernel-binary-packages kernel-default kernel-ppc64 +%endif +%ifarch s390 +Substitute: kernel-binary-packages kernel-s390 +%endif +%ifarch s390x +Substitute: kernel-binary-packages kernel-default +%endif + +Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches +# no longer needed according to Richard Biener +# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector +Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390 -fmessage-length=0 -grecord-gcc-switches +Optflags: s390x -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches +Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches +Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches +Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches +# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) +Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc +Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc + +%ifarch sparcv9 +Target: sparcv9 +%endif +%ifarch armv6l armv6hl +Target: armv6hl-suse-linux +%endif +%ifarch armv7l armv7hl +Target: armv7hl-suse-linux +%endif + + +#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables +#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables +# added on request of Security team: +Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection + +%define suse_version 1500 +%define sle_version 150000 + +%define is_susesap 1 + +Macros: +%suse_version 1500 +%sle_version 150000 +%is_susesap 1 + +%insserv_prereq insserv sed +%fillup_prereq fillup coreutils grep diffutils +%suseconfig_fonts_prereq perl aaa_base +%install_info_prereq info +%kernel_module_package_buildreq kmod-compat kernel-syms +%kernel_module_package_buildreqs kmod-compat kernel-syms +%maintenance_vendor SUSE LLC <https://www.suse.com/> +%maintenance_distribution SUSE Linux Enterprise 15 + +%sles_version 0 +%do_profiling 1 +%_vendor suse + +# Reproducible builds +%source_date_epoch_from_changelog Y + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 7 +# The following shlibs have latest versions built from GCC 6 sources +%product_libs_gcc_ver_libasan3 6 +%product_libs_gcc_ver_libgo9 6 +%product_libs_gcc_ver_libgfortran3 6 +# reminded by richi 2017 4/3 +%product_libs_gcc_ver_libgcj_bc1 6 +# The following shlibs have been introduced with GCC 7 +%product_libs_gcc_ver_libmpxwrappers2 7 +%product_libs_gcc_ver_libmpx2 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libgfortran4 7 +%gcc_version 7 + +%ext_info .gz +%ext_man .gz + +%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} + +%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \ +%{nil} +:Macros + +# BEGIN RUST STUFF + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x +:Macros + +# END RUST STUFF + +# SLE-15 HACK BEGIN +# KEEP SUBVERSION AND JAVA OUT OF RING 1 +Macros: +%_without_obs_scm_testsuite 0 +:Macros + +# LOCAL SLES SETTINGS +Prefer: SLES_SAP-installation-release-DVD +Prefer: systemd-presets-branding-SLE + +# the old python-msgpack-python should be dropped, but salt +# is still requires the old name +Prefer: python3-msgpack + +%ifarch s390 +Ignore: python2-numpy-devel:openblas-devel +Ignore: python3-numpy-devel:openblas-devel +%endif +# SLE-15 HACK END + +# added 20191023 ro +Prefer: -openssl-1_0_0 +# end 20191023 ro + +Buildflags: useccache:ceph + +# define a prefix for all package builds in SLE 15 GA to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220316 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +# Marcus 20211214 +# Matej dropped requires python-rpm-macris from python3-base +#Substitute: python3-base python3-base python-rpm-macros +#Substitute: python3-devel python3-devel python-rpm-macros +#Substitute: python-devel python-devel python-rpm-macros +# this should pull it in all builds (it has no dependencies, so should be fine): +Support: python-rpm-macros + +# Rudi 20190425 +# needed for last ImageMagick update +Prefer: ImageMagick-config-7-upstream + +# disabled in GA by mistake, enabling it here +Support: build-compare + +# Marcus 20200510 +# needed for chrony ECO which has multiple choices +Prefer: chrony-pool-suse + +# also provided by hwdata, so prefer the actual package. Marcus 20200513 +Prefer: pciutils-ids + +# we released clamav with libcurl4 requires, which is pulled in everywhere. +# this avoids a cmake -> libcurl4-mini <-> libcurl4 conflict. +# Marcus 20201216 +Prefer: -libcurl4-mini +# prefer one cmake +Prefer: cmake3-full + +# to avoid secure boot failures, referenced in "shim" build -Marcus 20191021 +Macros: +%shim_enforce_ms_signature 1 +:Macros + +Macros: + +# define which gcc package builds the system libraries +%product_libs_gcc_ver 11 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +# The following shlibs have the latest version built from GCC 9 sources +%product_libs_gcc_ver_libasan5 9 +%product_libs_gcc_ver_libgo14 9 +# The following shlibs have the latest version built from GCC 10 sources +%product_libs_gcc_ver_libgphobos1 10 +%product_libs_gcc_ver_libgdruntime1 10 +%product_libs_gcc_ver_libgo16 10 + +:Macros + +# RUDI amend for python3 package changed to multbuild 20210201 +%if "%_project" != "SUSE:SLE-15:Update" +BuildFlags: excludebuild:python3-base +BuildFlags: excludebuild:python3-doc +%endif + +# After the build 20200723 update .pc files are also in 32bit packages causing have-choice +Prefer: -alsa-devel-32bit +Prefer: -atk-devel-32bit +Prefer: -atkmm1_6-devel-32bit +Prefer: -at-spi2-core-devel-32bit +Prefer: -at-spi-devel-32bit +Prefer: -audit-devel-32bit +Prefer: -augeas-devel-32bit +Prefer: -bluez-devel-32bit +Prefer: -cairo-devel-32bit +Prefer: -cairomm1_0-devel-32bit +Prefer: -cairomm-devel-32bit +Prefer: -cppunit-devel-32bit +Prefer: -cyrus-sasl-devel-32bit +Prefer: -dbus-1-devel-32bit +Prefer: -dbus-1-glib-devel-32bit +Prefer: -device-mapper-devel-32bit +Prefer: -dirac-devel-32bit +Prefer: -flac-devel-32bit +Prefer: -fontconfig-devel-32bit +Prefer: -freetype2-devel-32bit +Prefer: -gdk-pixbuf-devel-32bit +Prefer: -glu-devel-32bit +Prefer: -gstreamer-devel-32bit +Prefer: -gstreamer-plugins-base-devel-32bit +Prefer: -gtk2-devel-32bit +Prefer: -gtk3-devel-32bit +Prefer: -hunspell-devel-32bit +Prefer: -ImageMagick-devel-32bit +Prefer: -libart_lgpl-devel-32bit +Prefer: -libavc1394-devel-32bit +Prefer: -libbasicobjects-devel-32bit +Prefer: -libblkid-devel-32bit +Prefer: -libbz2-devel-32bit +Prefer: -libcelt-devel-32bit +Prefer: -libcollection-devel-32bit +Prefer: -libcom_err-devel-32bit +Prefer: -libcurl-devel-32bit +Prefer: -libdhash-devel-32bit +Prefer: -libdmx-devel-32bit +Prefer: -libdrm-devel-32bit +Prefer: -libelf-devel-32bit +Prefer: -libexif-devel-32bit +Prefer: -libexpat-devel-32bit +Prefer: -libext2fs-devel-32bit +Prefer: -libfontenc-devel-32bit +Prefer: -libgbm-devel-32bit +Prefer: -libgck-devel-32bit +Prefer: -libgcr-devel-32bit +Prefer: -libglvnd-devel-32bit +Prefer: -libgnutls-devel-32bit +Prefer: -libgphoto2-devel-32bit +Prefer: -libHX-devel-32bit +Prefer: -libICE-devel-32bit +Prefer: -libicu-devel-32bit +Prefer: -libini_config-devel-32bit +Prefer: -libjack-devel-32bit +Prefer: -libkms-devel-32bit +Prefer: -liblbxutil-devel-32bit +Prefer: -liblcms2-devel-32bit +Prefer: -libMagick++-devel-32bit +Prefer: -libmount-devel-32bit +Prefer: -libnettle-devel-32bit +Prefer: -libnl3-devel-32bit +Prefer: -libnotify-devel-32bit +Prefer: -libpackagekit-glib2-devel-32bit +Prefer: -libpulse-devel-32bit +Prefer: -libQt5Concurrent-devel-32bit +Prefer: -libQt5Core-devel-32bit +Prefer: -libQt5DBus-devel-32bit +Prefer: -libQt5Gui-devel-32bit +Prefer: -libQt5Network-devel-32bit +Prefer: -libQt5OpenGL-devel-32bit +Prefer: -libQt5PrintSupport-devel-32bit +Prefer: -libqt5-qtconnectivity-devel-32bit +Prefer: -libqt5-qtdeclarative-devel-32bit +Prefer: -libqt5-qtlocation-devel-32bit +Prefer: -libqt5-qtmultimedia-devel-32bit +Prefer: -libqt5-qtserialport-devel-32bit +Prefer: -libqt5-qtsvg-devel-32bit +Prefer: -libqt5-qttools-devel-32bit +Prefer: -libqt5-qtwayland-devel-32bit +Prefer: -libqt5-qtwebchannel-devel-32bit +Prefer: -libqt5-qtwebsockets-devel-32bit +Prefer: -libqt5-qtx11extras-devel-32bit +Prefer: -libqt5-qtxmlpatterns-devel-32bit +Prefer: -libQt5Sql-devel-32bit +Prefer: -libQt5Test-devel-32bit +Prefer: -libQt5Widgets-devel-32bit +Prefer: -libQt5Xml-devel-32bit +Prefer: -libraw1394-devel-32bit +Prefer: -libref_array-devel-32bit +Prefer: -libSDL2-devel-32bit +Prefer: -libSDL-devel-32bit +Prefer: -libSDL_gfx-devel-32bit +Prefer: -libSM-devel-32bit +Prefer: -libsoup-devel-32bit +Prefer: -libtasn1-devel-32bit +Prefer: -libtiff-devel-32bit +Prefer: -libusb-1_0-devel-32bit +Prefer: -libuuid-devel-32bit +Prefer: -libv4l-devel-32bit +Prefer: -libva-devel-32bit +Prefer: -libvdpau-devel-32bit +Prefer: -libverto-devel-32bit +Prefer: -libvirt-devel-32bit +Prefer: -libvorbis-devel-32bit +Prefer: -libwayland-egl-devel-32bit +Prefer: -libwebp-devel-32bit +Prefer: -libX11-devel-32bit +Prefer: -libXau-devel-32bit +Prefer: -libXaw3d-devel-32bit +Prefer: -libXaw-devel-32bit +Prefer: -libxcb-devel-32bit +Prefer: -libXcomposite-devel-32bit +Prefer: -libXcursor-devel-32bit +Prefer: -libXdamage-devel-32bit +Prefer: -libXdmcp-devel-32bit +Prefer: -libXext-devel-32bit +Prefer: -libXfixes-devel-32bit +Prefer: -libXfont2-devel-32bit +Prefer: -libXfontcache-devel-32bit +Prefer: -libXfont-devel-32bit +Prefer: -libXft-devel-32bit +Prefer: -libXi-devel-32bit +Prefer: -libXinerama-devel-32bit +Prefer: -libxkbcommon-devel-32bit +Prefer: -libxkbcommon-x11-devel-32bit +Prefer: -libxkbfile-devel-32bit +Prefer: -libxml2-devel-32bit +Prefer: -libXmu-devel-32bit +Prefer: -libXp-devel-32bit +Prefer: -libXpm-devel-32bit +Prefer: -libXprintUtil-devel-32bit +Prefer: -libXrandr-devel-32bit +Prefer: -libXrender-devel-32bit +Prefer: -libXres-devel-32bit +Prefer: -libxslt-devel-32bit +Prefer: -libXss-devel-32bit +Prefer: -libXt-devel-32bit +Prefer: -libXtst-devel-32bit +Prefer: -libXv-devel-32bit +Prefer: -libXvMC-devel-32bit +Prefer: -libXxf86dga-devel-32bit +Prefer: -libXxf86misc-devel-32bit +Prefer: -libXxf86vm-devel-32bit +Prefer: -Mesa-libEGL-devel-32bit +Prefer: -Mesa-libGL-devel-32bit +Prefer: -Mesa-libGLESv1_CM-devel-32bit +Prefer: -Mesa-libGLESv2_CM-devel-32bit +Prefer: -Mesa-libGLESv2-devel-32bit +Prefer: -mpg123-devel-32bit +Prefer: -ncurses-devel-32bit +Prefer: -NetworkManager-devel-32bit +Prefer: -openal-soft-devel-32bit +Prefer: -openjpeg-devel-32bit +Prefer: -pango-devel-32bit +Prefer: -pciutils-devel-32bit +Prefer: -sane-backends-devel-32bit +Prefer: -tslib-devel-32bit +Prefer: -typelib-1_0-Gst-1_0-32bit +Prefer: -wayland-devel-32bit +Prefer: -xcb-util-devel-32bit +Prefer: -xcb-util-image-devel-32bit +Prefer: -xcb-util-keysyms-devel-32bit +Prefer: -xcb-util-renderutil-devel-32bit +Prefer: -xcb-util-wm-devel-32bit +Prefer: -xz-devel-32bit +Prefer: -zlib-devel-32bit +Prefer: -zvbi-devel-32bit + +# ECO-3147 added a new package which opened several installation choices +# gboiko 20210503 added more regarding the ECO above +Prefer: libboost_thread1_66_0 +Prefer: libboost_system1_66_0 +Prefer: libboost_regex1_66_0 +Prefer: libboost_filesystem1_66_0 +Prefer: libboost_iostreams1_66_0 +Prefer: libboost_date_time1_66_0 + +# gboiko 20210503 workaround for build issues on x86_64 +Prefer: -libsmartcols-devel-32bit +Prefer: -krb5-devel-32bit + +# ro added 20210708 requested by dmueller +Prefer: -lzo-devel-32bit +Prefer: -liboping-devel-32bit +Prefer: -unixODBC-devel-32bit +Prefer: -libcmocka-devel-32bit + +# ro added 20220207 requested by dmueller +Prefer: -samba-devel-32bit +Prefer: -libqt5-qtscript-devel-32bit +# darix added 20220708 requested by meissner +Prefer: -vulkan-devel-32bit + +# darix added 20220906 requested by favogt +Prefer: libasan6 + +# ro added 20220510 requested by jgonzalez +Macros: +%susemanager_container_images_path registry.suse.com/suse/manager/4.3 +:Macros + +# ro added 20220917 requested by meissner +Prefer: libubsan1 + +# mstrigl added 20220929 requested by meissner +Prefer: go1.18 + +### from SUSE:SLE-15-SP1:GA +%define sle_version 150100 + +Macros: +%sle_version 150100 +:Macros + +# needed by kiwi-templates-SLES15-JeOS:OpenStack-Cloud +FileProvides: /usr/bin/host bind-utils + +Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c + +# (coolo) Prefer over libyui-ncurses8 from GA (both providing yast2-ncurses) +Prefer: libyui-ncurses9 + +# (coolo) Additional prefers for installation-images +Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9 + +# (coolo) samba-libs requires 'samba-libs-python' +Prefer: samba-libs-python3 + +# (fcrozat) needed to undo this change from SLE15 SP0 to allow latest installation-images to build +Ignore: !pciutils:pciutils-ids + +# (fcrozat) needed to build properly multipath-tools and its dependencies +Prefer: kernel-default +Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua) + +# (fcrozat) prevent choice on python-configparser +Prefer: python2-configparser + +# (fcrozat) ensure gio-branding-upstream isn't used (bsc#1132329) +Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream + +######### JAVA +# FATE#326347 +# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config: +Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless +Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless +Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless + +# Now we set the prefered Java version, but need fallbacks for some packages: +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless + +# It might be better to 'de-prefer' the "old" ones, and omit the line above +# according to Adrian. This needs some testing. +# Unfortuantely this will bite us when packages require an old java + +# 8 before 10 on advice of fstrba +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless +Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless +# don't use that - fstrba +Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless + +######### end of JAVA + +# 15:GA has Prefer:go which will set the default to th eunverisoned go. +# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this. +# go1.12 is taken from 15:Update +Prefer: go1.12 + + +### from SUSE:SLE-15-SP1:Update +%define _repository snapshot-SP5 +# define a prefix for all package builds in SLE 15 SP1 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220316 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + + +# avoid the SP0 slurm 18.8 variants in SP1 +Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins + +# prefer one of the python-pytests. Marcus 20200512 +Prefer: python-pytest4 python2-pytest4 python3-pytest4 + +# have conflict ebtween python3-pycrypto and python3-pycryptodome +Prefer: python3-pycryptodome + +# prefer go1.14 (over go1.13). Gustavo 20200514 +# this breaks caasp Marcus 20200515 +#Prefer: go1.14 + + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +### from SUSE:SLE-15-SP2:GA +%define sle_version 150200 +%define current_milestone GMC + +#needed for latest gspell +Prefer: enchant-2-backend-hunspell + +Macros: +%sle_version 150200 +%current_milestone GMC + +######### gcc9 +# define which gcc package builds the system libraries +%product_libs_gcc_ver 9 +# The following shlibs have the latest version built from GCC 7 sources +%product_libs_gcc_ver_libgfortran4 7 +%product_libs_gcc_ver_libasan4 7 +%product_libs_gcc_ver_libubsan0 7 +%product_libs_gcc_ver_libcilkrts5 7 +%product_libs_gcc_ver_libgo11 7 +%product_libs_gcc_ver_libobjc4 7 +# The following shlibs have the latest version built from GCC 8 +%product_libs_gcc_ver_libmpx2 8 +%product_libs_gcc_ver_libmpxwrappers2 8 +%product_libs_gcc_ver_libgo13 8 +######### end of gcc9 + +:Macros + +# Prefer over libyui9* from SP1-GA +Prefer: libyui11 +Prefer: libyui-ncurses11 +# Additional prefers for installation-images +Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11 +Substitute: libyui libyui11 +Substitute: libyui-ncurses libyui-ncurses11 +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11 +Substitute: libyui-qt libyui-qt11 +Substitute: libyui-qt-graph libyui-qt-graph11 +Substitute: libyui-qt-pkg libyui-qt-pkg11 + +# Help with the switch to the gcc9 provided libs: (bsc#1154695) +Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5 + +Substitute: infiniband-diags-devel rdma-core-devel + +Prefer: python3-pycryptodome + +# Needed after GNOME 3.34 rebase +Prefer: libvala-0_46-devel + +# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552]) +Preinstall: libgcrypt20 libgpg-error0 + +# Needed for maven (jsc#SLE-8786) +Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm +Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel +Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap +Prefer: xml-commons-apis xml-commons-resolver +Prefer: log4j12-mini +Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap +Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap +Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap +Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap +Prefer: bsh2 +Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap +Prefer: apache-commons-net +Prefer: gradle groovy-lib eclipse-swt gpars + +%ifarch %arm ppc riscv64 aarch64 +Macros: +%prjconf_multibuild_selection patch +:Macros +%endif + +# Default to Java 11 +Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc +%ifarch s390x +Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless +%endif +Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc +Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc +Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc +Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless + +# use rpm by default to build, instead of rpm-ndb +Prefer: rpm + +# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668]) +Preinstall: libzstd1 + +# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui +Prefer: libudisks2-0-devel + +# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation +Ignore: cmake-mini:this-is-only-for-build-envs + +# Cmake exists as a -mini flavor, which is not linked against curl. +Prefer: cmake-mini + +Prefer: ocaml-compiler-libs-devel + +Prefer: python2-contextlib2 + +Prefer: chrony-pool-suse + +%ifarch i586 +Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node +%endif + +Substitute: azuremetadata python3-azuremetadata + +# required after changes form the weekend of April 26 +Prefer: python3-pytest +Prefer: python2-pytest + +# required after CTLG for PackageKit, which introduced dnf +Prefer: PackageKit-backend-zypp + +Prefer: python2-subprocess32 + +### from SUSE:SLE-15-SP2:Update +%define _repository snapshot-SP5 +# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220117 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko +Prefer: python2-pycrypto + +# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit +Prefer: libgnutls-devel + +# qt5 prefers (32bit mess) +Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel + +# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess) +Prefer: bluez-devel + +# conflict with postgresql13-devel-mini ? +Prefer: libpq5 + +Prefer: gdk-pixbuf-devel + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips + + +# for thunderbird (nodejs >= 10 ... has 3 options) + +Prefer: nodejs14 + +# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt, +# use this prefer change Marcus 20220201 +Prefer: -cmake3-full +Prefer: cmake-full + +### from SUSE:SLE-15-SP3:GA + +# COMMON BEGIN common part +%define sle_version 150300 +Macros: +%sle_version 150300 +:Macros + +# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2) +Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8 +Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9 +Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11 + +# Revert substitutions from SP2 +Substitute: libyui libyui +Substitute: libyui-ncurses libyui-ncurses +Substitute: libyui-ncurses-pkg libyui-ncurses-pkg +Substitute: libyui-qt libyui-qt +Substitute: libyui-qt-graph libyui-qt-graph +Substitute: libyui-qt-pkg libyui-qt-pkg +Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api +Substitute: libyui-qt-rest-api libyui-qt-rest-api + +Prefer: gmmlib-devel + +Preinstall: libcrypt1 + +# required for latest Mesa +Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel + +Prefer: typelib-1_0-Gst-1_0 + +# required for latest Mesa +Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel + +# not sure why we need those +Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel + +# required after MU#16450 (gnutls) +Prefer: libgnutls-devel + +Prefer: systemd-sysvinit + +Prefer: alsa-devel libpulse-devel + +Prefer: kernel-firmware + +Prefer: systemd-default-settings-branding-SLE + +Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit +Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit + +Prefer: plymouth-branding-SLE + +Ignore: !pango-devel:cairo-devel + +Substitute: kmod-compat kmod +# replacing module-init-tools +Prefer: -kmod-compat + +# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190) +Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit +Substitute: postfix-lmdb postfix + +# jsc#SLE-17030 +Ignore: postgresql12-devel-mini:this-is-only-for-build-envs +Ignore: postgresql13-devel-mini:this-is-only-for-build-envs +Prefer: postgresql13-devel-mini postgresql12-devel-mini + +Prefer: -mpg123-devel-32bit + +Prefer: -coreutils-single + +# From Fabian Vogt on 2021023 +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini +# COMMON END common part + +# due to libreoffice +Prefer: -sane-backends-devel-32bit + +Prefer: -libX11-devel-32bit + +# needed for latest Kiwi (sr#238860) +Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires +Conflict: python3-kiwi:libsystemd0-mini + +# needed for MU#18655 +Prefer: -python3-vsts + +# due to MU#19157 +Prefer: -libboost_regex_legacy +### from SUSE:SLE-15-SP3:Update +%define _repository snapshot-SP5 + +Macros: + +### from SUSE:SLE-15-SP3:Update + +%_repository snapshot-SP5 +:Macros + +# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +# Marcus Meissner 20220117 +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + + +# From Fabian Vogt on 20210913 ... patterns-base-fips temporary +Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container + +# after secondary icu version release Marcus 20211214 + +Prefer: libicu-devel + + +# gboiko, 20220202 fixing the following unresolvable: +# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs +Prefer: samba-client-libs samba-devel + +# BEGIN RUST STUFF +Prefer: cargo1.58 cargo1.57 + +# Define the architectures in which Rust (and Rust crates) are available +# NOTE: Keep this in sync with rust-srpm-macros! +%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%define rust_tier1_arches x86_64 aarch64 + +Macros: +%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x +%rust_tier1_arches x86_64 aarch64 +:Macros + +# END RUST STUFF + +### from SUSE:SLE-15-SP4:GA + +# COMMON BEGIN common part +%define sle_version 150400 +Macros: +%sle_version 150400 +:Macros + +# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages +# with identical version but lower release version than in a preceding codestream +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel +Prefer: -keyutils-devel-32bit -gtk4-devel-32bit + +Prefer: -libgcrypt-devel-32bit + +# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version +Prefer: php8:php8-cli + +Prefer: php7:php7-cli + +Prefer: -php7 + +Prefer: -python3-libxml2-python +Substitute: python3-libxml2-python python3-libxml2 + +Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel + +Prefer: -lua51-luajit-devel + +Prefer: -libzstd-devel-32bit + +Prefer: -libsoup2-devel-32bit + +Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc + +Prefer: -libfdisk-devel-32bit + +Prefer: -libpcap-devel-32bit + +# must be removed after fix for bsc#1193711 is merged +# can also be removed in case bsc#1194749 is fully fixed +Support: python-rpm-macros + +# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin +Prefer: -SUSEConnect +Prefer: -zypper-migration-plugin + +# OBS is preferring literal matches over provides, therefore substituting with suseconnect-ng +Substitute: SUSEConnect suseconnect-ng +Substitute: zypper-migration-plugin suseconnect-ng + +# Fix fot Qt stack update +Prefer: -libqt5-qtremoteobjects-devel-32bit +Prefer: -libqt5-qtspeech-devel-32bit +Prefer: -xcb-util-cursor-devel-32bit + +# from Factory: +# pipewire has a jack compatible implementation - but for now we prefer the real jack +Prefer: -pipewire-libjack-0_3-devel libjack0 + +Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15 + +Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel + +Prefer: -liburing-devel + +Prefer: -php7 + +Substitute: libudev-devel systemd-devel +Substitute: libudev-mini-devel systemd-mini-devel +Prefer: -libudev-mini-devel +Prefer: -libudev-devel +Prefer: -libudev-devel-32bit + +# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin +# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore. +FileProvides: /usr/bin/ruby ruby2.5 + +%define skip_python2 1 +%define _without_python2 1 + +Macros: +## PYTHON MACROS BEGIN +# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions, +# making it the "default" in many cases --> keep the primary python3 provider at the end. +%pythons %{?!skip_python3:python3} +%add_python() %{expand:%%define pythons %1 %pythons} + +%_without_python2 1 +:Macros + +Prefer: -python -python-base + +Substitute: txt2tags python3-txt2tags + +FileProvides: /bin/bash bash +FileProvides: /bin/sh bash-sh busybox-sh +Prefer: bash-sh +Preinstall: bash bash-sh +Prefer: -busybox + +Prefer: -openblas-devel +Substitute: openblas-devel libopenblas_pthreads-devel +### from SUSE:SLE-15-SP4:Update +%define _repository snapshot-SP5 +Prefer: -python3-cairo + +Prefer: libdebuginfod1-dummy + +FileProvides: /usr/sbin/nologin util-linux +FileProvides: /usr/bin/perl perl + + +### from SUSE:SLE-15-SP5:GA +Macros: +%product_libs_llvm_ver 15 +:Macros + +# COMMON BEGIN common part +%define sle_version 150500 +Macros: +%sle_version 150500 +:Macros + +Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT> + +Prefer: -libasan6-gcc10 + +FileProvides: /usr/bin/lzop lzop + +Prefer: -libpacemaker-devel +Prefer: -libpacemaker3 +Prefer: -libglue2 +Substitute: libglue-devel cluster-glue-devel + +Prefer: -libpolkit0 +Prefer: -rdma-core-devel-32bit + |