From Fedora Project Wiki
Shortcut:
Arch:ARM

We are currently engaged in bootstrap of support for armv7hl ("hardfp") ARM systems in Fedora. The purpose of this page is to track the individual status of packages (and their dependencies) that have been built for Fedora.

Stages

We began bootstrap with "stage1" (cross-compilation), then proceeded to native builds (but without RPM) in "stage2". We are now at "stage3", which consists of native RPM builds, though these might consist of RPMs wherein certain features not essential to bootstrap have been disabled (for example, selinux, audit, and so forth). A certain amount of discretion is required to determine what dependencies are essential and which are not - use IRC for that purpose if necessary. Once a minimal set of "stage3" packages is built, sufficient to run mock builds locally, all of these packages will be rebuild in mock as "stage4". The final bootstrap stage, stage5, will be packages sufficient to run Koji builds. After that, every package will be built again and used as the gold set of initial (alpha/beta) F15 packages.

How to build

Packages should be retrieved in SRPM form from F15 on primary architecture (from Fedora Koji), then their dependencies should be examined. In cases where minimal dependencies exist to build a sane package (albeit perhaps without a "docs" sub-package, etc.) then that package should be built and the status updated here. Packages requiring dependencies should first have those dependencies built. If a package recursively requires itself, it might be necessary to build a locally minimal version of the package to bootstrap itself, then a real RPM. We care about the real RPM/SRPM for armv7hl, and so do not need the interim version of a package if an RPM/SRPM combination is available.

Once an RPM/SRPM combination is available, it should be uploaded somewhere, and an email/IRC announcement made. Even more preferable is to populate the RPMs into /stage3/armv7hl within a branch named armv7hl-YOUR_FAS_USERNAME within the rootfs git repo. Ping jcm (jonmasters) on #fedora-arm IRC and he will pull this (or pull from a URL), then he will install these RPMs into the master armv7hl branch from which others can update their rootfs. Packages are also mirrored onto scotland.proximity.on.ca/fedora-arm/armv7hl and this contains yum repo data pre-installed into the rootfs as well (that can later be used by mock once a base set of packages is available to do so).

Package Status

The following packages (and their dependencies) are known to be required and need working on (status in parenthesis):

  • userspace

FIXME: ADD TO THIS LIST!

The following packages are built in stage1 but are not yet available in stage3 RPMs (therefore require building as real armv7hl RPMs in due course):

  • kernel-headers
  • kernel (not required, build the fake kernel provides package from F13 instead)

The following packages are built in stage2 but are not yet available in stage3 RPMs (therefore require building as real armv7hl RPMs in due course):

  • ccache
  • chkconfig
  • cpio
  • gdb
  • strace
  • tzdata


The following packages need some special loving

  • atlas - needs patches ported its needed by numpy which is needed by pygtk2 needed by emacs
  • liborc - nedeed by gstreamer-plugins-base which is needed by qt, currently is failing the test suite


Big things missing that we need

  • qt
  • java-1.6.0-openjdk
  • ocaml