diff --git a/add-risc-v-and-loongarch-support.patch b/add-risc-v-and-loongarch-support.patch deleted file mode 100644 index dfeadff3a79669dc1f3d726bba737ae91299c8bf..0000000000000000000000000000000000000000 --- a/add-risc-v-and-loongarch-support.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/src/util/build_config.h b/src/util/build_config.h -index 717b4e3..438777e 100644 ---- a/src/util/build_config.h -+++ b/src/util/build_config.h -@@ -164,6 +164,21 @@ - #define ARCH_CPU_32_BITS 1 - #define ARCH_CPU_BIG_ENDIAN 1 - #endif -+#elif defined(__loongarch32) -+#define ARCH_CPU_LOONG_FAMILY 1 -+#define ARCH_CPU_LOONG32 1 -+#define ARCH_CPU_32_BITS 1 -+#define ARCH_CPU_LITTLE_ENDIAN 1 -+#elif defined(__loongarch64) -+#define ARCH_CPU_LOONG_FAMILY 1 -+#define ARCH_CPU_LOONG64 1 -+#define ARCH_CPU_64_BITS 1 -+#define ARCH_CPU_LITTLE_ENDIAN 1 -+#elif defined(__riscv) && (__riscv_xlen == 64) -+#define ARCH_CPU_RISCV_FAMILY 1 -+#define ARCH_CPU_RISCV64 1 -+#define ARCH_CPU_64_BITS 1 -+#define ARCH_CPU_LITTLE_ENDIAN 1 - #else - #error Please add support for your architecture in build_config.h - #endif diff --git a/add_safe_compilation_options.patch b/add_safe_compilation_options.patch index 0d1e02313854c6ab79db5ba91df45eff751df0c7..2296aa6b43dbff2a187c9bec9e307c85fba7c5a5 100644 --- a/add_safe_compilation_options.patch +++ b/add_safe_compilation_options.patch @@ -1,18 +1,23 @@ -From: "xuchogyu" -Date: Tue, 7 Mar 2023 09:52:37 +0800 +From 573389cdbfb2ad912998030605d041f5702af434 Mon Sep 17 00:00:00 2001 +From: misaka00251 +Date: Wed, 17 Apr 2024 14:57:09 +0800 Subject: [PATCH] Add safe compilation option -fPIE for GN ---- -diff -Nur a/build/gen.py b/build/gen.py ---- a/build/gen.py 2022-11-25 10:58:41.000000000 +0800 -+++ b/build/gen.py 2023-03-06 09:49:35.648580670 +0800 -@@ -371,7 +371,8 @@ - '-Wall', - '-Wextra', - '-Wno-unused-parameter', + +diff --git a/build/gen.py b/build/gen.py +index 8ce5f8e..c2637c5 100755 +--- a/build/gen.py ++++ b/build/gen.py +@@ -446,7 +446,8 @@ def WriteGNNinja(path, platform, host, options, args_list): + '-Wextra-semi', + '-Wundef', + - '-std=c++17' + '-std=c++17', + '-fPIE' ]) - if platform.is_linux() or platform.is_mingw() or platform.is_msys(): + # flags not supported by gcc/g++. +-- +2.44.0 + diff --git a/gn-0153d369-no-O3.patch b/gn-0153d369-no-O3.patch new file mode 100644 index 0000000000000000000000000000000000000000..13a482040a4fc67e78209f21e124ec65b2545ae7 --- /dev/null +++ b/gn-0153d369-no-O3.patch @@ -0,0 +1,14 @@ +diff -Naur gn-0153d369bbccc908f4da4993b1ba82728055926a-original/build/gen.py gn-0153d369bbccc908f4da4993b1ba82728055926a/build/gen.py +--- gn-0153d369bbccc908f4da4993b1ba82728055926a-original/build/gen.py 2021-09-27 14:58:14.000000000 -0400 ++++ gn-0153d369bbccc908f4da4993b1ba82728055926a/build/gen.py 2021-09-27 15:59:42.330405195 -0400 +@@ -344,10 +344,8 @@ + cflags.extend(['-O0', '-g']) + else: + cflags.append('-DNDEBUG') +- cflags.append('-O3') + if options.no_strip: + cflags.append('-g') +- ldflags.append('-O3') + # Use -fdata-sections and -ffunction-sections to place each function + # or data item into its own section so --gc-sections can eliminate any + # unused functions and data items. diff --git a/gn-5e19d2fb166fbd4f6f32147fbb2f497091a54ad8.tar.gz b/gn-5e19d2fb166fbd4f6f32147fbb2f497091a54ad8.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..92b9b36166a5079ae78cda1ab39113df0ed27687 Binary files /dev/null and b/gn-5e19d2fb166fbd4f6f32147fbb2f497091a54ad8.tar.gz differ diff --git a/gn-always-python3.patch b/gn-always-python3.patch deleted file mode 100644 index 990bc4833fe542efca0ac9e9b756a3821d6c329c..0000000000000000000000000000000000000000 --- a/gn-always-python3.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur a/src/gn/exec_process_unittest.cc b/src/gn/exec_process_unittest.cc ---- a/src/gn/exec_process_unittest.cc 2022-11-25 10:58:41.000000000 +0800 -+++ b/src/gn/exec_process_unittest.cc 2022-11-26 14:55:45.715627292 +0800 -@@ -33,7 +33,7 @@ - args.push_back(L"-c"); - args.push_back(base::UTF8ToUTF16(command)); - #else -- args.push_back("python"); -+ args.push_back("python3"); - args.push_back("-c"); - args.push_back(command); - #endif diff --git a/gn-e1ac69b17da0c6d4f5e34e686690ff70c6a43e6f.tar.gz b/gn-e1ac69b17da0c6d4f5e34e686690ff70c6a43e6f.tar.gz deleted file mode 100644 index b6fabd4f7ff0122489aa15ffbc49421e97a9d726..0000000000000000000000000000000000000000 Binary files a/gn-e1ac69b17da0c6d4f5e34e686690ff70c6a43e6f.tar.gz and /dev/null differ diff --git a/gn.spec b/gn.spec index 401ba713be93737ba20710ef945c9280f1037810..912918776480540b95d86c6ab160894b6e6ce0a2 100644 --- a/gn.spec +++ b/gn.spec @@ -1,16 +1,17 @@ -%global commit e1ac69b17da0c6d4f5e34e686690ff70c6a43e6f +%global commit 5e19d2fb166fbd4f6f32147fbb2f497091a54ad8 Name: gn -Version: 1.0.0 -Release: 5 +Version: 20221220 +Release: 1 Summary: Meta-build system that generates build files for Ninja License: BSD-3-Clause URL: https://gn.googlesource.com/gn -Source0: %{url}/+archive/gn-%{commit}.tar.gz +Source0: %{url}/+archive/%{commit}.tar.gz#/gn-%{commit}.tar.gz Source1: last_commit_position.h -Patch0000: gn-always-python3.patch -Patch0001: add_safe_compilation_options.patch -Patch1000: add-risc-v-and-loongarch-support.patch +# Don't overriding optimization flags +Patch0: gn-0153d369-no-O3.patch +# Add safe compilation option -fPIE for GN +Patch1: add_safe_compilation_options.patch BuildRequires: python3-devel ninja-build gcc-c++ clang emacs-common help2man @@ -21,6 +22,8 @@ Requires: emacs-filesystem >= %{_emacs_version} Provides: emacs-gn = %{version}-%{release} Provides: bundled(icu) = 60 +Obsoletes: gn <= 1.0.0-5 + %description GN is a meta-build system that generates build files for Ninja. @@ -45,7 +48,9 @@ cp -vp misc/vim/README.md README-vim.md %build AR='gcc-ar'; export AR %set_build_flags +# Treating warnings as errors is too strict for downstream builds. %{__python3} build/gen.py \ + --allow-warnings \ --no-last-commit-position \ --no-strip \ --no-static-libstdc++ @@ -104,6 +109,10 @@ rm -rf %{buildroot}%{_datadir}/vim/vimfiles/__pycache__ %changelog +* Wed Apr 17 2024 misaka00251 - 20221220-1 +- Use date instead of numbers, since the version is not clear enough +- Upgrade to 20221220 + * Fri Dec 22 2023 misaka00251 - 1.0.0-5 - Enable debuginfo for riscv64 diff --git a/last_commit_position.h b/last_commit_position.h index a85cecdcbae49d31d9eb2e695f6e809eb3456c1d..1eb41dec94301171ad31d76b77d72c4d9bb14e73 100644 --- a/last_commit_position.h +++ b/last_commit_position.h @@ -3,7 +3,7 @@ #ifndef OUT_LAST_COMMIT_POSITION_H_ #define OUT_LAST_COMMIT_POSITION_H_ -#define LAST_COMMIT_POSITION_NUM 2064 -#define LAST_COMMIT_POSITION "2064 (cc28efe62ef0)" +#define LAST_COMMIT_POSITION_NUM 2077 +#define LAST_COMMIT_POSITION "2077 (5e19d2fb166f)" #endif // OUT_LAST_COMMIT_POSITION_H_