From patchwork Wed Dec 29 04:42:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stafford Horne X-Patchwork-Id: 49369 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 5DBA23858427 for ; Wed, 29 Dec 2021 04:50:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5DBA23858427 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1640753445; bh=NwG0pWcMpXAmkNaPq2QcH/QvENkYCh50uD4a5ty7rM8=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=fdpT/eTVgyclis7L1tYZlJHpmGwY6DROyXmDECnWfkKgMV88clv/FcBxL8vy6v2ss hR2wkmJnfCoWwKsMRiDa59EEi+aXroVTzZtBptrY9o/JUM7jFE9Y4vJDQGGdk7RKmt /gP/RALdqvSLtHII8sDNulatK0s8htCfBujA8bLk= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com [IPv6:2607:f8b0:4864:20::436]) by sourceware.org (Postfix) with ESMTPS id 16C73385800B for ; Wed, 29 Dec 2021 04:43:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 16C73385800B Received: by mail-pf1-x436.google.com with SMTP id m1so17783149pfk.8 for ; Tue, 28 Dec 2021 20:43:32 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=NwG0pWcMpXAmkNaPq2QcH/QvENkYCh50uD4a5ty7rM8=; b=ke8GcNGTM4TmQqEhdRFlQuIMeQm23PZvjRs1zj6x07RhTP5Qm3R1yxKNPV5/HUX6UH pDjBDvBLeWpSxgSIPC1eIoykXVQGIbkCqR1UMK7vQnsp2JyVZfwwk9ah2/uq2ooQbCe+ ei4H5/e9Yw5iYEpfjtQZh5FK5YiOfR+8dJbo5D/w2LmNX3e9FuxcMUkuDblovyLAuuVh YTAhFlekSxoXwuLcoBbKM5uh7Q04jJ0XbLrgqtPZHuUS09XiDKPmvYcI0aMeztD/n7vl o3sz4jlxfisgCEidMi5ib6CWMQHvnJnuhkyWah4AB8xbDsFXocKm5oIyUPUF3oH3vdLE nBJw== X-Gm-Message-State: AOAM530e1ki/ZSqG4aY0TPLcLB/ku75RA+QuLr/7QfioroFB22B8/SyH 6avt6KaKM6ZHHWUCmgj56tnBQLWxv4Y= X-Google-Smtp-Source: ABdhPJzKAxDFNCYSgSjVEmNsqYbcBlB67wupJUo91/DeXzA3jVdD02gZ+U/pDRu37qRKdJyqHIxheA== X-Received: by 2002:a05:6a00:1405:b0:4bb:6dfb:848 with SMTP id l5-20020a056a00140500b004bb6dfb0848mr25019321pfu.40.1640753010898; Tue, 28 Dec 2021 20:43:30 -0800 (PST) Received: from localhost ([2409:10:24a0:4700:e8ad:216a:2a9d:6d0c]) by smtp.gmail.com with ESMTPSA id k8sm11165425pfc.177.2021.12.28.20.43.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Dec 2021 20:43:30 -0800 (PST) To: GLIBC patches Subject: [PATCH v4 11/13] or1k: Build Infrastructure Date: Wed, 29 Dec 2021 13:42:49 +0900 Message-Id: <20211229044251.2203653-12-shorne@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211229044251.2203653-1-shorne@gmail.com> References: <20211229044251.2203653-1-shorne@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-10.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Stafford Horne via Libc-alpha From: Stafford Horne Reply-To: Stafford Horne Cc: Openrisc Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" Here we define the minumum linux kernel version at 5.4.0, as that is the long term support version where 32-bit architectures start to support 64-bit time API's. The OpenRISC kernel had some bugs up until version 5.8 which caused issues with glibc fork/clone, they have been backported to 5.4 but not previous versions. Reviewed-by: Adhemerval Zanella --- sysdeps/or1k/Implies | 3 ++ sysdeps/or1k/Makefile | 7 +++++ sysdeps/or1k/nofpu/Implies | 1 + sysdeps/or1k/preconfigure | 34 +++++++++++++++++++++ sysdeps/unix/sysv/linux/or1k/Implies | 3 ++ sysdeps/unix/sysv/linux/or1k/Makefile | 8 +++++ sysdeps/unix/sysv/linux/or1k/configure | 4 +++ sysdeps/unix/sysv/linux/or1k/configure.ac | 4 +++ sysdeps/unix/sysv/linux/or1k/shlib-versions | 2 ++ 9 files changed, 66 insertions(+) create mode 100644 sysdeps/or1k/Implies create mode 100644 sysdeps/or1k/Makefile create mode 100644 sysdeps/or1k/nofpu/Implies create mode 100644 sysdeps/or1k/preconfigure create mode 100644 sysdeps/unix/sysv/linux/or1k/Implies create mode 100644 sysdeps/unix/sysv/linux/or1k/Makefile create mode 100644 sysdeps/unix/sysv/linux/or1k/configure create mode 100644 sysdeps/unix/sysv/linux/or1k/configure.ac create mode 100644 sysdeps/unix/sysv/linux/or1k/shlib-versions diff --git a/sysdeps/or1k/Implies b/sysdeps/or1k/Implies new file mode 100644 index 0000000000..387a0ca052 --- /dev/null +++ b/sysdeps/or1k/Implies @@ -0,0 +1,3 @@ +wordsize-32 +ieee754/dbl-64 +ieee754/flt-32 diff --git a/sysdeps/or1k/Makefile b/sysdeps/or1k/Makefile new file mode 100644 index 0000000000..0241a0587e --- /dev/null +++ b/sysdeps/or1k/Makefile @@ -0,0 +1,7 @@ +ASFLAGS-.os += -fPIC + +ifeq ($(subdir),elf) +# Extra shared linker files to link only into dl-allobjs.so. +sysdep-rtld-routines += dl-start +endif + diff --git a/sysdeps/or1k/nofpu/Implies b/sysdeps/or1k/nofpu/Implies new file mode 100644 index 0000000000..abcbadb25f --- /dev/null +++ b/sysdeps/or1k/nofpu/Implies @@ -0,0 +1 @@ +ieee754/soft-fp diff --git a/sysdeps/or1k/preconfigure b/sysdeps/or1k/preconfigure new file mode 100644 index 0000000000..d1b1fb1843 --- /dev/null +++ b/sysdeps/or1k/preconfigure @@ -0,0 +1,34 @@ +# +# This is free and unencumbered software released into the public domain. +# +# Anyone is free to copy, modify, publish, use, compile, sell, or +# distribute this software, either in source code form or as a compiled +# binary, for any purpose, commercial or non-commercial, and by any +# means. +# +# In jurisdictions that recognize copyright laws, the author or authors +# of this software dedicate any and all copyright interest in the +# software to the public domain. We make this dedication for the benefit +# of the public at large and to the detriment of our heirs and +# successors. We intend this dedication to be an overt act of +# relinquishment in perpetuity of all present and future rights to this +# software under copyright law. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# + +case "$machine" in +or1k*) + base_machine=or1k + machine=or1k + + with_fp_cond="defined __or1k_hard_float__" + ;; +esac + diff --git a/sysdeps/unix/sysv/linux/or1k/Implies b/sysdeps/unix/sysv/linux/or1k/Implies new file mode 100644 index 0000000000..f39f16c04a --- /dev/null +++ b/sysdeps/unix/sysv/linux/or1k/Implies @@ -0,0 +1,3 @@ +or1k/nptl +unix/sysv/linux/generic/wordsize-32 +unix/sysv/linux/generic diff --git a/sysdeps/unix/sysv/linux/or1k/Makefile b/sysdeps/unix/sysv/linux/or1k/Makefile new file mode 100644 index 0000000000..e06bad5150 --- /dev/null +++ b/sysdeps/unix/sysv/linux/or1k/Makefile @@ -0,0 +1,8 @@ +ifeq ($(subdir),misc) +sysdep_routines += or1k_clone +endif + +ifeq ($(subdir),stdlib) +gen-as-const-headers += ucontext_i.sym +endif + diff --git a/sysdeps/unix/sysv/linux/or1k/configure b/sysdeps/unix/sysv/linux/or1k/configure new file mode 100644 index 0000000000..5225dfea5b --- /dev/null +++ b/sysdeps/unix/sysv/linux/or1k/configure @@ -0,0 +1,4 @@ +# This file is generated from configure.ac by Autoconf. DO NOT EDIT! + # Local configure fragment for sysdeps/unix/sysv/linux/or1k. + +arch_minimum_kernel=5.4.0 diff --git a/sysdeps/unix/sysv/linux/or1k/configure.ac b/sysdeps/unix/sysv/linux/or1k/configure.ac new file mode 100644 index 0000000000..6274c4fb02 --- /dev/null +++ b/sysdeps/unix/sysv/linux/or1k/configure.ac @@ -0,0 +1,4 @@ +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/unix/sysv/linux/or1k. + +arch_minimum_kernel=5.4.0 diff --git a/sysdeps/unix/sysv/linux/or1k/shlib-versions b/sysdeps/unix/sysv/linux/or1k/shlib-versions new file mode 100644 index 0000000000..159653b5c4 --- /dev/null +++ b/sysdeps/unix/sysv/linux/or1k/shlib-versions @@ -0,0 +1,2 @@ +DEFAULT GLIBC_2.35 +ld=ld-linux-or1k.so.1