svn commit: r456402 - in head/lang/ocaml: . files

Jan Beich jbeich at FreeBSD.org
Fri Dec 15 18:05:31 UTC 2017


Alexey Dokuchaev <danfe at FreeBSD.org> writes:

> On Fri, Dec 15, 2017 at 06:33:22PM +0100, Jan Beich wrote:
>
>> Alexey Dokuchaev <danfe at FreeBSD.org> writes:
>> > On Fri, Dec 15, 2017 at 03:31:08PM +0000, Alexey Dokuchaev wrote:
>> >
>> >> New Revision: 456402
>> >> URL: https://svnweb.freebsd.org/changeset/ports/456402
>> > ...
>> > I don't know why as(1), as /usr/bin/as typically, is not installed on
>> > ref11-aarch64.freebsd.org.  If that is by design, how assembler is called
>> > on FreeBSD/aarch64?  If it's not installed by default on aarch64, may
>> > I ask clusteradm@ (CC'ed) to install `devel/binutils' on ref11-aarch64 so
>> > I can proceed with porting `lang/ocaml' there?
>> 
>> FreeBSD aarch64 uses integrated assembler from Clang. If asm files are
>> compatible you can s/${AS} ${ASFLAGS}/${CC} -Wa,${ASFLAGS:ts,}/
>> However, I'm surprised you're testing in a dirty environment instead of:
>> 
>>   # -x (native-xtools) before FreeBSD 12.0 requires /usr/src to match jail
>>   $ svn checkout https://svn.freebsd.org/base/releng/11.1 /usr/src
>>   $ poudriere jail -cxj 111aarch64 -a arm64.aarch64 -v 11.1-RELEASE
>>   $ poudriere bulk -Ctj 111aarch64 lang/ocaml
>> 
>> or
>> 
>>   $ poudriere jail -cxj head-aarch64 -a arm64.aarch64 -v head -m svn+https
>>   $ poudriere bulk -Ctj head-aarch64 lang/ocaml
>
> Doesn't poudriere require root?

poudriere itself - yes, ports building - no (see BUILD_AS_NON_ROOT).

> I don't have my own aarch64 hardware;

Neither do I. poudriere can also be used interactively e.g.,

  $ poudriere testport -ij 111aarch64 lang/ocaml.

if you want to investigate more and don't have a ready fix yet.

> all I can use is ref*-aarch64.freebsd.org, and only as an unprivileged user.

poudriere can use qemu-user (at least on i386 and amd64) to emulate
aarch64, armv6, armv7, mips, mips64. However, emulation is slow thus
native-xtools are used to speed up the build via statically-linked host
binaries[1] for target architecture under /nxb-bin prepended in PATH.

EuroBSDCon 2014 had some presentations about this by sbruno and bapt:
https://www.youtube.com/watch?v=2J9Lz3pgnbA
https://www.youtube.com/watch?v=JfZIoyQhly4

--
[1] currently only those built as part of base e.g., sh, tar, cc, ld.


More information about the svn-ports-all mailing list