From owner-freebsd-arm@freebsd.org Wed Mar 17 11:37:49 2021 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4B5205AADFC for ; Wed, 17 Mar 2021 11:37:49 +0000 (UTC) (envelope-from freebsd@markdixon.name) Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4F0p6z5BFhz3NpR for ; Wed, 17 Mar 2021 11:37:47 +0000 (UTC) (envelope-from freebsd@markdixon.name) Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id DA0755C00F7 for ; Wed, 17 Mar 2021 07:37:46 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Wed, 17 Mar 2021 07:37:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=markdixon.name; h=from:to:subject:date:message-id:mime-version:content-type; s= fm1; bh=buKVsYfgeSEq6WnGOFgo+LUlY7pn2MaoMlnnCCi7xNs=; b=Lzxt6zDN WOqGZkW+S8h+DYSFoVTFQ6RZT6KOjJKVgsjdxEVM0AoglolrazIR3eNeUgVVPDcb HZzu2LG69kVlNkgq4b75/CGhXvKi0UGzNpdGIqHiwvQJHPhRZ3p/wN3FUwGWto/I y1K6XLVmH9eoZ39AbI2lyE2bhCooUIsjThIVWkD+QmFxcZwcXaAUXPV7xvYoAu/L RclALsXTu1lt+OReA8Jxo+AK3RaDxF+kEQa4FLJPkHBVDg75iHvim4bEcjSTSnPB dpSsqSoD3oCO8Lf1ENdDssk3MW0LdXTTO1yprVJJI16hdogXyDX73yRnXRCe0YvI ozjXB68nEDRs7w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; bh=buKVsYfgeSEq6WnGOFgo+LUlY7pn2 MaoMlnnCCi7xNs=; b=vytSxB9Dqju83YYXY2juQjvjcNajYqGEJxiRqhdoDLN5Z /TeVJkliwApEVIup35L31oc3eFqeKZGyQb2aY1z4MfYu54MkOQZti5W0nUAZfsup EkSBkrmLtmw+Ic7weipfAKl9PISATe8usYz0++23d/RmQ4LT0YPVWoZ/R5Jbz4Xh +ZQQjMUNH6imLipWhzKWGtLWQ5HPSFpauKlCzPxw5hgkMHz/rNA8j2Fc+vrn0/8I fGg47XRfT/xEizE3NyxmqlAVzL3lOszLZjvbqU3wXr0X+6QplK0M7/0j3R6O1kyD p2rcI8yrPIBEy4qZ9fpCuJyLGL/AX23o8R7hxw2NA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudefgedgfeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkgggtsehgtderredttd ejnecuhfhrohhmpeforghrkhcuffhigihonhcuoehfrhgvvggsshgusehmrghrkhguihig ohhnrdhnrghmvgeqnecuggftrfgrthhtvghrnhepkefhveeigfefledvgfejheejudejke fhiefggfehieevvdelvdejvdeufeeileegnecukfhppeekuddrudekjedrudeihedruddu geenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehfrh gvvggsshgusehmrghrkhguihigohhnrdhnrghmvg X-ME-Proxy: Received: from markspc.localnet (114.165.187.81.in-addr.arpa [81.187.165.114]) by mail.messagingengine.com (Postfix) with ESMTPA id 76DBA24005A for ; Wed, 17 Mar 2021 07:37:46 -0400 (EDT) From: Mark Dixon To: freebsd-arm@freebsd.org Subject: security/bitwarden_rs on aarch64 Date: Wed, 17 Mar 2021 11:37:41 +0000 Message-ID: <10583814.HWECOB6VNT@markspc> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart2000574.bo3hB1aSCY"; micalg="pgp-sha256"; protocol="application/pgp-signature" X-Rspamd-Queue-Id: 4F0p6z5BFhz3NpR X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=markdixon.name header.s=fm1 header.b=Lzxt6zDN; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=vytSxB9D; dmarc=pass (policy=none) header.from=markdixon.name; spf=pass (mx1.freebsd.org: domain of freebsd@markdixon.name designates 66.111.4.28 as permitted sender) smtp.mailfrom=freebsd@markdixon.name X-Spamd-Result: default: False [-5.70 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; RWL_MAILSPIKE_GOOD(0.00)[66.111.4.28:from]; R_SPF_ALLOW(-0.20)[+ip4:66.111.4.28]; TO_DN_NONE(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; DKIM_TRACE(0.00)[markdixon.name:+,messagingengine.com:+]; DMARC_POLICY_ALLOW(-0.50)[markdixon.name,none]; NEURAL_HAM_SHORT(-1.00)[-0.997]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; RBL_DBL_DONT_QUERY_IPS(0.00)[66.111.4.28:from]; ASN(0.00)[asn:11403, ipnet:66.111.4.0/24, country:US]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_IN_DNSWL_LOW(-0.10)[66.111.4.28:from]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[markdixon.name:s=fm1,messagingengine.com:s=fm2]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arm@freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; SPAMHAUS_ZRD(0.00)[66.111.4.28:from:127.0.2.255]; MID_RHS_NOT_FQDN(0.50)[]; MAILMAN_DEST(0.00)[freebsd-arm] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Porting FreeBSD to ARM processors List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Mar 2021 11:37:49 -0000 --nextPart2000574.bo3hB1aSCY Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="utf-8"; protected-headers="v1" From: Mark Dixon To: freebsd-arm@freebsd.org Subject: security/bitwarden_rs on aarch64 Date: Wed, 17 Mar 2021 11:37:41 +0000 Message-ID: <10583814.HWECOB6VNT@markspc> Hi I've got my hands on a Helios64 board and I'm playing around with it running FreeBSD 13 to see what it can run, and I've run into something I do not understand. I've been trying to compile security/bitwarden_rs to see if I can use it to host my password manager and I've hit an issue: The build, out of the box fails with: error: /usr/ports/security/bitwarden_rs/work/target/release/deps/ libmigrations_macros-2f2155501ff102fe.so: Undefined symbol "__addtf3" --> /usr/ports/security/bitwarden_rs/work/bitwarden_rs-1.19.0/cargo-crates/ diesel_migrations-1.4.0/src/lib.rs:82:1 | 82 | extern crate migrations_macros; I'm no rust developer, but that looks a lot like a linker error. A quick google suggest that symbol is from libgcc and relates to soft float emulation which I guess we shouldn't need on aarch64 but I guess if that's what it wants I go with it. Sure enough that .so depends on libgcc: /usr/ports/security/bitwarden_rs/work/target/release/deps/ libmigrations_macros-2f2155501ff102fe.so: libpq.so.5 => /usr/local/lib/libpq.so.5 (0x406d0000) libmysqlclient.so.20 => /usr/local/lib/mysql/libmysqlclient.so.20 (0x41c00000) libthr.so.3 => /lib/libthr.so.3 (0x40749000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x407a5000) /lib/libgcc_so.1 though - I didn't think FreeBSD ships GCC anymore, although I've been out of the FreeBSD loop for a while. Okay, let's look in /usr/src/lib/libgcc_s, seems like it's just some sort of gcc thunking library. Let's try adding __subtf3 to Symbols.map and see what happens. Surprisingly, after adding __subtf3, __multf3, __divtf3 and __addtf3; (and installing libgcc_s) the bitwarden_rs build now compiles just fine, and seems to run - although I haven't actually done much with it yet. I'm not sure what is going on here because I'm really at the limits of my knowledge. It seems unlikely, but not impossible, that these symbols are just missing from Symbols.map in the base system. How should I proceed to fix this 'properly'? Mark --nextPart2000574.bo3hB1aSCY Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE/drf00LTSF2nWdhGmWPbrJHrcdQFAmBR6gUACgkQmWPbrJHr cdQcgRAAxfutkx9ECxInehVNgM8d+vDn9NZ46XQy8GTd9TWjPeY8tubUw4VxUtAm fPVpXpiyFY05jRwaOS8UgYyXcd38I6lGcDc8RD01zfj0Ptxgff7FLhujjq6yk2Ee 1D0Z/8vMQQlh+EqwCRyL/hnEZa/rZFAQkY/9Fq2y1jq+qn/lRt9GCUn1amFDRMAm VcJBPOGPy0Q3MkiBdwMcTu/wufhvp0sX7oqj2WJ1mGECsZWClAefyICIXuzuMFtP nsD6gmKUbV+K5GgQjI9xDzxZpBaA6id8PiJziNYtyuCC5aPMTAudXNdCJDj/dm+/ Dn+YAlf4VRpnr6ojUXFfc/w61psoqNAA/VwJE2256VjSlzBmCSPRhPzXBCJehFxg xK0vUy++6sV181AMFmzozcDJOWyvGZWrofqhtggWkQbQ+64RXvYzOwRSHkjglj4Y PRbwp8D5yV1EnmIH8c2gRIKGTabnMJXyEwqja5/nEiEyeOJuqRAGWj7WYbYq5FKD 6JVFvF07djXamn2mvSMYieGl0aWo6l8QmWpgsTniRU/13W59305e69MBQF/NOpe6 HONZIBqae+yJT6rEs8rrwLQfdzjNoAkkd2jz7NdBh1CbQgtXFKkjNMefc45Ujx71 c6v4LzHe5N2tpJ+6lQN9VAo9PtL7Ylu3oOESWRkqpgeWBtSIbPg= =au74 -----END PGP SIGNATURE----- --nextPart2000574.bo3hB1aSCY--