Initial commit
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
# Exclude bpm archives
|
||||
*.bpm
|
||||
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Github repository
|
||||
REPO="yasm/yasm"
|
||||
|
||||
# Get tag name using Github Rest API
|
||||
TAG_NAME=$(curl -s -L -H "X-GitHub-Api-Version: 2022-11-28" -H "Authorization: token ${GITHUB_API_TOKEN}" https://api.github.com/repos/"$REPO"/releases/latest | jq -r '.tag_name')
|
||||
|
||||
# Trim 'v' character in TAG_NAME variable
|
||||
VERSION=$(echo "$TAG_NAME" | tr -d 'v')
|
||||
|
||||
echo "$VERSION"
|
||||
@@ -0,0 +1,18 @@
|
||||
name: yasm
|
||||
description: Rewrite of NASM under the 'new' BSD License
|
||||
version: 1.3.0
|
||||
revision: 1
|
||||
url: https://github.com/yasm/yasm
|
||||
license: BSD-3-Clause,Artistic-1.0,GPL2-or-later,LGPL2.1-or-later
|
||||
architecture: any
|
||||
type: source
|
||||
depends:
|
||||
- glibc
|
||||
make_depends:
|
||||
- python3
|
||||
- xmlto
|
||||
downloads:
|
||||
- url: https://github.com/yasm/yasm/archive/refs/tags/v${BPM_PKG_VERSION}.tar.gz
|
||||
extract_to: ${BPM_SOURCE}
|
||||
extract_strip_components: 1
|
||||
checksum: f708be0b7b8c59bc1dbe7134153cd2f31faeebaa8eec48676c10f972a1f13df3
|
||||
@@ -0,0 +1,29 @@
|
||||
From 3e74376b5653102a3957f59005969fcdbbe5a89d Mon Sep 17 00:00:00 2001
|
||||
From: Peter Johnson <[email protected]>
|
||||
Date: Fri, 9 Jul 2021 16:02:37 -0500
|
||||
Subject: [PATCH] Do not use AC_HEADER_STDC (#178)
|
||||
|
||||
This fixes compatibility with autotools 2.70+
|
||||
---
|
||||
configure.ac | 6 ------
|
||||
1 file changed, 6 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 01b61097f..2823ecd7d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -101,14 +101,8 @@ AM_WITH_DMALLOC
|
||||
#
|
||||
# Checks for header files.
|
||||
#
|
||||
-AC_HEADER_STDC
|
||||
AC_CHECK_HEADERS([strings.h libgen.h unistd.h direct.h sys/stat.h])
|
||||
|
||||
-# REQUIRE standard C headers
|
||||
-if test "$ac_cv_header_stdc" != yes; then
|
||||
- AC_MSG_ERROR([Standard (ANSI/ISO C89) header files are required.])
|
||||
-fi
|
||||
-
|
||||
#
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
#
|
||||
@@ -0,0 +1,36 @@
|
||||
From 64ef740eb262f329e55eebadf2ce276b146d44e9 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Jansa <[email protected]>
|
||||
Date: Tue, 22 Apr 2025 19:06:24 +0200
|
||||
Subject: [PATCH] bitvect: fix build with gcc-15
|
||||
|
||||
* fixes:
|
||||
libyasm/bitvect.h:86:32: error: cannot use keyword 'false' as enumeration constant
|
||||
86 | typedef enum boolean { false = FALSE, true = TRUE } boolean;
|
||||
| ^~~~~
|
||||
../git/libyasm/bitvect.h:86:32: note: 'false' is a keyword with '-std=c23' onwards
|
||||
|
||||
as suggested in:
|
||||
https://github.com/yasm/yasm/issues/283#issuecomment-2661108816
|
||||
|
||||
Signed-off-by: Martin Jansa <[email protected]>
|
||||
---
|
||||
libyasm/bitvect.h | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libyasm/bitvect.h b/libyasm/bitvect.h
|
||||
index 3aee3a531..a13470ada 100644
|
||||
--- a/libyasm/bitvect.h
|
||||
+++ b/libyasm/bitvect.h
|
||||
@@ -83,7 +83,11 @@ typedef Z_longword *Z_longwordptr;
|
||||
#ifdef MACOS_TRADITIONAL
|
||||
#define boolean Boolean
|
||||
#else
|
||||
- typedef enum boolean { false = FALSE, true = TRUE } boolean;
|
||||
+ #if __STDC_VERSION__ < 202311L
|
||||
+ typedef enum boolean { false = FALSE, true = TRUE } boolean;
|
||||
+ #else
|
||||
+ typedef bool boolean;
|
||||
+ #endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
From 0799f381d513e18f404654047fa1b412084968c8 Mon Sep 17 00:00:00 2001
|
||||
From: kalebskeithley <[email protected]>
|
||||
Date: Sat, 13 May 2023 00:15:02 -0400
|
||||
Subject: [PATCH] Update elf-objfmt.c (#148)
|
||||
|
||||
---
|
||||
modules/objfmts/elf/elf-objfmt.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules/objfmts/elf/elf-objfmt.c b/modules/objfmts/elf/elf-objfmt.c
|
||||
index 0c3a14263..c4360c03d 100644
|
||||
--- a/modules/objfmts/elf/elf-objfmt.c
|
||||
+++ b/modules/objfmts/elf/elf-objfmt.c
|
||||
@@ -1077,6 +1077,10 @@ elf_objfmt_section_switch(yasm_object *object, yasm_valparamhead *valparams,
|
||||
align = 0;
|
||||
data.type = SHT_PROGBITS;
|
||||
data.flags = 0;
|
||||
+ } else if (strcmp(sectname, ".note.gnu.property") == 0) {
|
||||
+ align = 8;
|
||||
+ data.type = SHT_NOTE;
|
||||
+ data.flags = 0;
|
||||
} else {
|
||||
/* Default to code */
|
||||
align = 1;
|
||||
@@ -0,0 +1,49 @@
|
||||
From 61e374f24718975e8175f048e70afaaf0c4771a9 Mon Sep 17 00:00:00 2001
|
||||
From: Ismo Puustinen <[email protected]>
|
||||
Date: Sat, 13 May 2023 07:07:35 +0300
|
||||
Subject: [PATCH] Remove __DATE__ from version strings (#198)
|
||||
|
||||
Having __DATE__ is causing compilation errors when it's defined by Bazel
|
||||
build tool like this: -D__DATE__=redacted
|
||||
---
|
||||
frontends/tasm/tasm.c | 1 -
|
||||
frontends/vsyasm/vsyasm.c | 1 -
|
||||
frontends/yasm/yasm.c | 1 -
|
||||
3 files changed, 3 deletions(-)
|
||||
|
||||
diff --git a/frontends/tasm/tasm.c b/frontends/tasm/tasm.c
|
||||
index 93c11c98f..353f8c582 100644
|
||||
--- a/frontends/tasm/tasm.c
|
||||
+++ b/frontends/tasm/tasm.c
|
||||
@@ -228,7 +228,6 @@ static opt_option options[] =
|
||||
/* version message */
|
||||
/*@observer@*/ static const char *version_msg[] = {
|
||||
PACKAGE_STRING,
|
||||
- "Compiled on " __DATE__ ".",
|
||||
"Copyright (c) 2001-2010 Peter Johnson and other Yasm developers.",
|
||||
"Run yasm --license for licensing overview and summary."
|
||||
};
|
||||
diff --git a/frontends/vsyasm/vsyasm.c b/frontends/vsyasm/vsyasm.c
|
||||
index 892b9b334..b3a5a592b 100644
|
||||
--- a/frontends/vsyasm/vsyasm.c
|
||||
+++ b/frontends/vsyasm/vsyasm.c
|
||||
@@ -220,7 +220,6 @@ static opt_option options[] =
|
||||
/* version message */
|
||||
/*@observer@*/ static const char *version_msg[] = {
|
||||
PACKAGE_STRING,
|
||||
- "Compiled on " __DATE__ ".",
|
||||
"Copyright (c) 2001-2010 Peter Johnson and other Yasm developers.",
|
||||
"Run yasm --license for licensing overview and summary."
|
||||
};
|
||||
diff --git a/frontends/yasm/yasm.c b/frontends/yasm/yasm.c
|
||||
index bc6f379ad..7ac141e69 100644
|
||||
--- a/frontends/yasm/yasm.c
|
||||
+++ b/frontends/yasm/yasm.c
|
||||
@@ -219,7 +219,6 @@ static opt_option options[] =
|
||||
/* version message */
|
||||
/*@observer@*/ static const char *version_msg[] = {
|
||||
PACKAGE_STRING,
|
||||
- "Compiled on " __DATE__ ".",
|
||||
"Copyright (c) 2001-2014 Peter Johnson and other Yasm developers.",
|
||||
"Run yasm --license for licensing overview and summary."
|
||||
};
|
||||
@@ -0,0 +1,39 @@
|
||||
# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package
|
||||
# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE
|
||||
# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT
|
||||
|
||||
# The prepare function is executed in the root of the temp directory
|
||||
# This function is used for putting downloaded files to the correct location or applying patches
|
||||
prepare() {
|
||||
cd "$BPM_SOURCE"
|
||||
patch -p1 -i "$BPM_WORKDIR"/note-gnu-property-support.patch
|
||||
patch -p1 -i "$BPM_WORKDIR"/autotools-2.70.patch
|
||||
patch -p1 -i "$BPM_WORKDIR"/reproducible.patch
|
||||
patch -p1 -i "$BPM_WORKDIR"/gcc-15.patch
|
||||
|
||||
echo "$BPM_PKG_VERSION" > version
|
||||
|
||||
autoreconf -fi
|
||||
}
|
||||
|
||||
# The build function is executed in the source directory
|
||||
# This function is used to compile the source code
|
||||
build() {
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
}
|
||||
|
||||
# The check function is executed in the source directory
|
||||
# This function is used to run tests to verify the package has been compiled correctly
|
||||
check() {
|
||||
make check -j1
|
||||
}
|
||||
|
||||
# The package function is executed in the source directory
|
||||
# This function is used to move the compiled files into the output directory
|
||||
package() {
|
||||
make DESTDIR="$BPM_OUTPUT" install
|
||||
|
||||
# Install package license
|
||||
install -Dm644 "$BPM_SOURCE"/{Artistic.txt,BSD.txt,COPYING,GNU_*} -t "$BPM_OUTPUT"/usr/share/licenses/yasm
|
||||
}
|
||||
Reference in New Issue
Block a user