Support: build-compare build-mkbaselibs
Support: rpmlint-mini rpmlint-tizen
+
+%global aarch64 aarch64 arm64 armv8
+
+%ifarch ${aarch64}
+%define _arch aarch64
+%endif
+
FileProvides: /usr/sbin/groupadd pwdutils
Prefer: util-linux
Prefer: nfc-manager
#| 1 | 1 | wayland but X compatibility
#| 0 | 0 | no X and no wayland
-%if "%_repository" == "ia32-wayland" || "%_repository" == "x86_64-wayland" || "%_repository" == "wayland" || "%_repository" == "standard"
+%ifarch %arm armv7l %{aarch64}
+Substitute: mesa-devel pkgconfig(glesv2)
+Substitute: pkgconfig(egl)
+%endif
+
+%if "%_repository" == "ia32-wayland" || "%_repository" == "x86_64-wayland" || "%_repository" == "arm-wayland"|| "%_repository" == "arm"|| "%_repository" == "arm64" || "%_repository" == "arm64-wayland" || "%_repository" == "wayland" || "%_repository" == "standard"
# mesa
Substitute: pkgconfig(gles20) pkgconfig(egl) pkgconfig(glesv2)
-Substitute: pkgconfig(gles11) pkgconfig(egl) pkgconfig(glesv1_cm)
+Substitute: pkgconfig(gles11) pkgconfig(egl) pkgconfig(glesv1) pkgconfig(gl)
%define _with_wayland 1
Macros:
%_with_wayland 1
:Macros
%endif
-%if "%_repository" == "ia32-x11" || "%_repository" == "x86_64-x11" || "%_repository" == "x11"
+%if "%_repository" == "ia32-x11" || "%_repository" == "x86_64-x11" || "%_repository" == "arm-x11" || "%_repository" == "arm64-x11" || "%_repository" == "x11"
# mesa
Substitute: pkgconfig(gles20) pkgconfig(egl) pkgconfig(glesv2) pkgconfig(gl)
Substitute: pkgconfig(gles11) pkgconfig(egl) pkgconfig(glesv1_cm) pkgconfig(gl)
:Macros
%endif
-%if "%_repository" == "ia32-xwayland" || "%_repository" == "x86_64-xwayland" || "%_repository" == "xwayland"
+%if "%_repository" == "ia32-xwayland" || "%_repository" == "x86_64-xwayland" || "%_repository" == "arm-xwayland" || "%_repository" == "arm64-xwayland" || "%_repository" == "xwayland"
# mesa
Substitute: pkgconfig(gles20) pkgconfig(egl) pkgconfig(glesv2) pkgconfig(gl)
Substitute: pkgconfig(gles11) pkgconfig(egl) pkgconfig(glesv1_cm) pkgconfig(gl)
:Macros
%endif
+%if "%_repository" == "emulator"
+Prefer: emulator-yagl
+Prefer: -mesa
+%else
+Prefer: mesa
+Prefer: -emulator-yagl
+%end
+
+Prefer: libpci-devel
+
%define _with_pulseaudio_samsung_policy 1
%define _with_tizen 1
%define _with_mesa 1
Target: armv7l-tizen-linux
%endif
+%ifarch aarch64
+Target: aarch64-tizen-linux
+%endif
+
%ifarch %arm armv7l
Hostarch: x86_64
# cross build support for the build hosts
-Preinstall: qemu-linux-user
-Keep: qemu-linux-user
+Preinstall: qemu-linux-user-cross-arm
+Keep: qemu-linux-user-cross-arm
%endif
%ifarch armv7hl
Runscripts: qemu-accel-armv7el
Preinstall: util-linux libmount libblkid libuuid
%endif
+%ifarch aarch64
+Preinstall: qemu-accel-aarch64-cross-arm
+Runscripts: qemu-accel-aarch64-cross-arm
+Preinstall: util-linux libmount libblkid libuuid
+%endif
-ExportFilter: ^qemu-linux-user.*\.x86_64\.rpm$ . armv7el armv7l armv7hl
+%ifarch aarch64
+Substitute: cross-aarch64-binutils binutils
+Substitute: cross-aarch64-gcc48-icecream-backend gcc
+Preinstall: setup filesystem
+Preinstall: qemu-accel-aarch64-cross-arm
+Runscripts: qemu-accel-aarch64-cross-arm setup filesystem
+
+Preinstall: rpm rpm-build pam db4
+Preinstall: libncurses libmpc libmpfr libgmp cloog-isl
+Preinstall: python
+
+
+#hack to start build without proper binfmt
+Preinstall: !bbb-cross-arm
+Ignore: bbb-cross-arm
+Preinstall: bash
+
+
+#provides until we can build libs correctly
+#FileProvides: libc.so.6 glibc
+#FileProvides: libc.so.6(GLIBC_2.4) glibc
+#FileProvides: libc.so.6(GLIBC_2.6) glibc
+#FileProvides: libc.so.6(GLIBC_2.7) glibc
+#FileProvides: libc.so.6(GLIBC_2.8) glibc
+#FileProvides: libc.so.6(GLIBC_2.11) glibc
+#FileProvides: libc.so.6(GLIBC_2.15) glibc
+#FileProvides: libc.so.6(GLIBC_2.17) glibc
+#FileProvides: ld-linux.so.3 glibc
+#FileProvides: ld-linux.so.3(GLIBC_2.4) glibc
+#FileProvides: ld-linux-aarch64.so.1(GLIBC_2.17)(64bit) glibc
+#FileProvides: ld-linux-aarch64.so.1()(64bit) glibc
+#FileProvides: libdl.so.2 glibc
+#FileProvides: libdl.so.2(GLIBC_2.4) glibc
+#FileProvides: libcrypt.so.1 glibc
+#FileProvides: libcrypt.so.1(GLIBC_2.4) glibc
+#FileProvides: libm.so.6 glibc
+#FileProvides: libm.so.6(GLIBC_2.4) glibc
+#FileProvides: libpthread.so.0 glibc
+#FileProvides: libpthread.so.0(GLIBC_2.4) glibc
+#FileProvides: libacl.so.1 acl
+#FileProvides: liblua.so.5.1 liblua
+#FileProvides: liblzma.so.5 xz
+#FileProvides: libpopt.so.0 popt
+#FileProvides: libelf.so.1(ELFUTILS_1.0) libelf
+#FileProvides: libnsl.so.1 glibc
+#FileProvides: libnsl.so.1(GLIBC_2.4) glibc
+#FileProvides: libutil.so.1 glibc
+#FileProvides: libutil.so.1(GLIBC_2.4) glibc
+#FileProvides: libpopt.so.0(LIBPOPT_0) popt
+#FileProvides: libacl.so.1(ACL_1.0) acl
+#FileProvides: libz.so.1(ZLIB_1.2.3.3) zlib
+#FileProvides: libmagic.so.1 libmagic
+#FileProvides: libgmp.so.10 libgmp
+#FileProvides: libmpc.so.3 libmpc
+#FileProvides: libmpfr.so.4 libmpfr
+#FileProvides: libnspr4.so nspr
+#FileProvides: libplc4.so nspr
+#FileProvides: libplds4.so nspr
+#FileProvides: libsqlite3.so.0 sqlite
+#FileProvides: libattr.so.1 attr
+#FileProvides: libattr.so.1(ATTR_1.0) attr
+#FileProvides: libsmack.so.1 smack
+#FileProvides: libsmack.so.1(LIBSMACK_1.0) smack
+#FileProvides: libxml2.so.2 libxml2
+#FileProvides: libxml2.so.2(LIBXML2_2.4.30) libxml2
+#FileProvides: libxml2.so.2(LIBXML2_2.5.0) libxml2
+#FileProvides: libxml2.so.2(LIBXML2_2.6.0) libxml2
+#FileProvides: librpm.so.3()(64bit) rpm
+#FileProvides: librpmio.so.3()(64bit) rpm
+%endif
+
+ExportFilter: ^qemu-linux-user.*\.x86_64\.rpm$ . armv7l armv7hl aarch64
ExportFilter: ^qemu-accel-armv7hl.*\.x86_64\.rpm$ . armv7hl
ExportFilter: ^qemu-accel-armv7l.*\.x86_64\.rpm$ . armv7l
-ExportFilter: ^qemu-accel-armv7el.*\.x86_64\.rpm$ . armv7el
+ExportFilter: ^qemu-accel-aarch64.*\.x86_64\.rpm$ . aarch64
+ExportFilter: \.armv7l\.rpm$ armv7l
+ExportFilter: \.aarch64\.rpm$ aarch64
ExportFilter: \.x86_64\.rpm$ x86_64
VMinstall: perl libmount libblkid libext2fs libuuid grep libpcre util-linux
+%ifarch aarch64
+Support: cross-aarch64-binutils cross-aarch64-gcc48-icecream-backend
+%endif
Required: binutils gcc glibc rpm-build libtool
-Support: glibc-locale
Support: perl
Support: hostname
Support: cpio findutils
Optflags: armv7l -O2 -g2 -feliminate-unused-debug-types -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=32 -Wformat -Wformat-security -fmessage-length=0 -march=armv7-a -mtune=cortex-a8 -mlittle-endian -mfpu=vfpv3 -mfloat-abi=softfp -D__SOFTFP__
+Optflags: aarch64 -O2 -g2 -feliminate-unused-debug-types -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector -Wformat -Wformat-security -fmessage-length=0
+
Macros:
%profile common
%vendor tizen
%_vendor tizen
+