Accepting request 1124792 from home:uncomfyhalomacro

I want to add hare to devel:tools:compiler. See sr#1124791.

OBS-URL: https://build.opensuse.org/request/show/1124792
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/hare?expand=0&rev=1
This commit is contained in:
Martin Pluskal 2023-11-10 08:52:22 +00:00 committed by Git OBS Bridge
commit ac5f9f98bd
10 changed files with 430 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

17
_service Normal file
View File

@ -0,0 +1,17 @@
<services>
<service mode="manual" name="obs_scm">
<param name="url">https://git.sr.ht/~sircmpwn/hare</param>
<param name="scm">git</param>
<param name="revision">master</param>
<param name="versionrewrite-pattern">(.*)</param>
<param name="versionrewrite-replacement">\1</param>
<param name="changesgenerate">enable</param>
<param name="changesauthor">socvirnyl.estela@gmail.com</param>
</service>
<service mode="manual" name="tar" />
<service mode="manual" name="recompress">
<param name="file">*.tar</param>
<param name="compression">zst</param>
</service>
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://git.sr.ht/~sircmpwn/hare</param>
<param name="changesrevision">3d06f9d20ff097d7c3a273c7059c8ca6ed4fe6db</param></service></servicedata>

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e89941e089f273190c7649984ab497651d522bfa0ec606f8b318a57a43b8b372
size 3129868

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7f8f90563cb3869316cbf87261bd02affe0e7f31feca6a24306c088df2b44570
size 607493

2
hare-rpmlintrc Normal file
View File

@ -0,0 +1,2 @@
addFilter("files-duplicate")
addFilter("zero-length")

249
hare.changes Normal file
View File

@ -0,0 +1,249 @@
-------------------------------------------------------------------
Fri Nov 10 06:52:24 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
- adopt new config.mk
-------------------------------------------------------------------
Fri Nov 10 04:15:57 UTC 2023 - socvirnyl.estela@gmail.com
- Update to version 1699559089.3d06f9d2:
* speed up crypto::argon2 a bit
* cmd/hare: Improve 'Command not found' error message in get_version
* crypto: use test::skip
* test: implement skip function
* test: disallow expectabort outside @test
* Move string comparison logic to sort::cmp::strs()
* all: style fix
* all: fix test failure memory leaks
* time::chrono: drop unused leapsecs parameter
* cmd/parsechk: initial commit
-------------------------------------------------------------------
Sun Aug 20 15:06:19 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Remove no-exec-stack.patch. Seems it's already in the latest commits
-------------------------------------------------------------------
Sun Aug 20 14:56:03 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Add no-exec-stack.patch
-------------------------------------------------------------------
Sun Aug 20 14:48:25 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Update to version 0+3206:
* crypto::ed25519: change api to take slices
* drop hare release
* pass -z noexecstack to ld
* Remove unused imports
* rt: remove syscallsarch+*.ha
* s/error/errors/ module name
* net::dns: remove obsolete reference in docs
* net::dns: fix off-by-one in encode_raw
* rt: add IPPROTO_ICMPV6
* strings: rename runes() to torunes()
* io: make io::writeall take const []u8
* MAINTAINERS: Add Conrad Hoffmann
* net::dns: support for basic DNSSEC RR types
* net::dns: support for OPT records (EDNS, RFC 6891)
* rt: fix off-by-one haredocs for AF_* and IPPROTO_*
* memio: truncate on reset()
* os::exec: fix TOCTOU
* os::exec+freebsd: only open() regular files
* rt+freebsd: add fstat, AT_EMPTY_PATH, S_IF*
* net::dns: enforce actual label size restriction
* net::dns: write label terminator in encode_labels
* path: fix capitalization of docstring
* malloc: improve wording in a comment
* cmd/haretype, cmd/ioctlgen: update for memio
* net::dns: add TSIG records and decoding
* net::dns: implement encoding of TXT records
* net::dns: add constants for DNS dynamic updates
* net::dns: retry over TCP on truncated response
* hare::*: remove unary +
* Stop using unary +
* test: reset environment before first test is run
* format::ini: fix and test error line numbering
* mime: fix compilation on +libc
* Don't rely on loose pointer assignability semantics
* strio,bufio: merge memstream implementation into memio
* hare::lex: add static assertion for bmap length
* hare::*: remove implicit const flag from functions
* Remove slices:: and strings::cap
* Use cap builtin
* hare::parse: allow return and yield in more places
* regex: Document when the caller must free the return value
* hare::parse: fix abort in name_list
* hare::parse: improve struct/union/enum comments
* hare::parse+test: add and use roundtrip_reparse
* net/uri: Always prefix path with a slash when there's a host
* math::checked: initial commit
* os::exec: only open() regular files
* bufio: elaborate on docs for scantok and scanline
* hkdf: add extract and expand functions
-------------------------------------------------------------------
Sun Aug 13 13:26:57 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Replace obsoleted `disabled` option with `manual`
-------------------------------------------------------------------
Sat Jul 22 01:51:57 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Update to 0+3157:
* hare::ast: add README
* math::complex: add README
* hare::unparse: add README
* hare::unparse: add newline between imports and decls
* strconv: append ".0" when float is representable as integer
* strconv: remove zch variable
* strconv: improve error messages
* strconv: recognize - and + in stou*
* types::c: add nulstr
* Correctly convert strconv::base::DEC -> 10
* net::dns: fix opcode bitmask
* hare::parse::identstr: only parse full ident
-------------------------------------------------------------------
Thu Jun 22 12:51:08 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Update to 0+3145:
Alexey Yerin (3):
net: correct references of net::unix::prepfiles -> allocfiles
os::exec: fill utime and stime
+libc: include empty .init_array section
Armin Preiml (5):
mime: move test entries into a +test file
io::teestream: implement writer
add crypto::chachapoly
crypto: refactor authenc to use crypto::chachapoly
base64: avoid infite loop in decoder
Autumn! (3):
io: move fd-related functions into one file
all: rename 'flags' types to 'flag'
getopt: add subcommand context to errors
Bor Grošelj Simić (3):
rt: update abort for non-constant assert changes in harec
unify fixed and non-fixed abort paths
rt: mark platform_abort as @noreturn
Byron Torres (6):
time::date: new: use virtual interface
time::date: simplify observers
time::date: parse: fix scanners
time::date: add %e; update POSIX layout
time::chrono: fix $TZ causing TZ_LOCAL double-free
time::date: avoid tz() in tests, TZDB dependency
Carlos Une (1):
math::complex::tan: test huge arguments
Conrad Hoffmann (2):
net::dns: add support for PTR records
net::dns: add support for SSHFP records
Dmitry Matveyev (1):
unix::hosts: refactor into more general interface
Drew DeVault (2):
haredoc: set LESS to FRX if unset
docs/maintainers.md: document some maintainer bits
Ember Sawady (17):
Improve test runner
rt: fix platform_abort
rt/abort*.ha: add missing comma in reasons
rt+freebsd: _start: don't touch first arg
rt: update for @noreturn abort
fs+freebsd::readlink: return wrongtype on EINVAL
Improve +libc argv/argc/envp initialization
io+freebsd::fd_copy: return errors::unsupported
Get rid of rt/+test/ztos.ha
Rewrite malloc
linux/*: fix fully-qualified identifiers
hare::parse::want: unlex token on failure
hare::parse::ident: disallow empty identifier
os: add setenv and unsetenv
rt: make errno constants have type rt::errno
io+linux::fd_copy: simplify
Fix chachapoly compilation
Noah Altunian (1):
haredoc: update man page wording to be more clear
Pinghao Wu (1):
crypto::argon2: fix zeroing of h0
Sebastian (21):
os: use libc exit when linking with libc
os: move status type to separate file
hare::ast: add error_assert_expr
rt: implement shutdown
net: implement shutdown
types::c: add strings test
math::random: add assertions that n != 0
all: reorder tagged union fields to put error last
os::exec: split kill into kill and sig
ascii: allocate new string in strupper+strlower
ascii: consistent capitalization in docs
os::exec+freebsd: use unix::signal::signame
rt: fix typo
types::c: add limits
net: remove slices dependency
contributors.sh: read Co-authored-by
contributors.sh: use git ls-tree instead of find
unix::signal: replace signal type with sig enum
types::c: add tostrn and tostrn_unsafe
temp: require mode param for "file" and "named"
regex: add replacen and rawreplacen
Tom Lebreux (1):
bufio: allow borrowedread up to last byte
Vlad-Stefan Harbuz (1):
regex: improve README examples
illiliti (1):
crypto::salsa20: add hsalsa20
-------------------------------------------------------------------
Sun May 28 03:28:04 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Remove checks for now.
-------------------------------------------------------------------
Sat May 27 13:12:29 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Update to 0+3076:
* cmd/haredoc: close read end of pipe later
* time::chrono: use daydate, daytime; improve docs
* time: improve function parameter names
* time::date: rename datetime type to date
* time: rename datetime module in READMEs, docs
* cmd/haretype: fix compilation
* cmd/ioctlgen: fix compilation
* crypto/aes/*.s: use correct per-function sections
* net::unix: replace memcpy with slice assignment
-------------------------------------------------------------------
Mon Mar 20 12:02:54 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Configure LDFLAGS inside config.mk explicitly.
-------------------------------------------------------------------
Mon Mar 20 02:06:13 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Configure CFLAGS inside config.mk.
-------------------------------------------------------------------
Fri Mar 17 12:13:44 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Cleanup specfile
-------------------------------------------------------------------
Wed Mar 1 00:40:34 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
- Initial spec for hare 0+git2848

4
hare.obsinfo Normal file
View File

@ -0,0 +1,4 @@
name: hare
version: 1699559089.3d06f9d2
mtime: 1699559089
commit: 3d06f9d20ff097d7c3a273c7059c8ca6ed4fe6db

124
hare.spec Normal file
View File

@ -0,0 +1,124 @@
#
# spec file for package hare
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: hare
Release: 0
Version: 1699559089.3d06f9d2
Summary: Hare system programming language
License: GPL-3.0-only
URL: https://harelang.org
Source0: %{name}-%{version}.tar.zst
BuildRequires: gcc
BuildRequires: harec
BuildRequires: make
BuildRequires: qbe
BuildRequires: binutils
BuildRequires: scdoc
BuildRequires: zstd
Requires: harec
Requires: qbe
%description
Hare is a systems programming language designed
to be simple, stable, and robust. Hare uses a
static type system, manual memory management,
and a minimal runtime. It is well-suited to
writing operating systems, system tools, compilers,
networking software, and other low-level, high
performance tasks
%prep
%setup -q
rm config.example.mk
cat > config.mk <<-SH
## Install configuration
PREFIX = %{_prefix}
BINDIR = %{_bindir}
MANDIR = %{_mandir}
SRCDIR = %{_libdir}
STDLIB = %{_libdir}/%{name}/stdlib
## Build configuration
# variables used during the build
PLATFORM = linux
ARCH = %{_arch}
HAREFLAGS =
HARECFLAGS =
QBEFLAGS =
ASFLAGS =
LDLINKFLAGS =
# commands used by the build script
HAREC = harec
HAREFLAGS =
QBE = qbe
AS = as
LD = ld
AR = ar
SCDOC = scdoc
# build locations
HARECACHE = .cache
BINOUT = .bin
# variables that will be embedded in the binary with the -D definitions
HAREPATH = %{_libdir}/%{name}/stdlib:%{_libdir}/%{name}/third-party
VERSION = %{version}
# Cross-compiler toolchains
AARCH64_AS=as
AARCH64_AR=ar
AARCH64_CC=cc
AARCH64_LD=ld
RISCV64_AS=as
RISCV64_AR=ar
RISCV64_CC=cc
RISCV64_LD=ld
X86_64_AS=as
X86_64_AR=ar
X86_64_CC=cc
X86_64_LD=ld
SH
%build
export CFLAGS="%optflags"
make %{?_smp_mflags}
%install
export CFLAGS="%optflags"
make DESTDIR="%{buildroot}" install
#%%check
#export CFLAGS="%%optflags"
#make %%{?_smp_mflags} check
%files
%license COPYING
%doc README.md
%{_bindir}/%{name}
%{_bindir}/%{name}doc
%{_mandir}/*
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/*
%changelog