## START: Set by rpmautospec ## (rpmautospec version 0.7.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %bcond_with luajit Name: xmake Version: 2.9.7 %global __requires_exclude_from ^%{_datadir}/%{name}/scripts/.+\\.ps1$ %global forgeurl https://github.com/xmake-io/xmake %forgemeta Release: %autorelease Summary: A cross-platform build utility based on Lua License: Apache-2.0 URL: https://xmake.io Source: %forgesource Patch0: 0001-pkgconfig-fix-check.patch Patch1: 0001-system-include.patch Patch2: 0001-add-relwithdebinfo-build-mode.patch BuildRequires: pkgconfig(ncurses) BuildRequires: pkgconfig(readline) BuildRequires: pkgconfig(liblz4) BuildRequires: pkgconfig(libxxhash) BuildRequires: pkgconfig(libtbox) BuildRequires: pkgconfig(libsv) %if %{with luajit} BuildRequires: pkgconfig(luajit) %else BuildRequires: pkgconfig(lua) >= 5.4 %endif BuildRequires: bash BuildRequires: sed BuildRequires: make BuildRequires: gcc BuildRequires: gcc-c++ Requires: %{name}-data = %{version}-%{release} %description xmake is a lightweight cross-platform build utility based on Lua. It uses xmake.lua to maintain project builds. Compared with makefile/CMakeLists.txt, the configuration syntax is more concise and intuitive. It is very friendly to novices and can quickly get started in a short time. Let users focus more on actual project development. It can compile the project directly like Make/Ninja, or generate project files like CMake/Meson, and it also has a built-in package management system to help users solve the integrated use of C/C++ dependent libraries. %package data Summary: Common data-files for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description data This package contains common data-files for %{name}. %prep %forgeautosetup -p1 # Cleanup bundled deps rm -rf core/src/{lua,luajit,lua-cjson,lz4,pdcurses,sv,tbox,xxhash}/*/ # Fix shebang since the configure script is not strictly POSIX sh # and relies on bash-specific behavior sed -i '1 s|#!/bin/sh|#!/bin/bash|' %{_configure} %build %configure --external=yes --mode=relwithdebinfo \ %if %{with luajit} --runtime=luajit %else --runtime=lua %endif %make_build %install mkdir -p %{buildroot}%{_mandir}/man1/ install -Dpm0755 build/xmake \ %{buildroot}%{_bindir}/%{name} install -Dpm0755 scripts/xrepo.sh \ %{buildroot}%{_bindir}/xrepo install -Dpm0644 scripts/man/*1 \ %{buildroot}%{_mandir}/man1/ install -Dpm0644 xmake/scripts/completions/register-completions.bash \ %{buildroot}%{bash_completions_dir}/%{name} install -Dpm0644 xmake/scripts/completions/register-completions.fish \ %{buildroot}%{fish_completions_dir}/%{name}.fish install -Dpm0644 xmake/scripts/completions/register-completions.zsh \ %{buildroot}%{zsh_completions_dir}/_%{name} cp -rp xmake \ %{buildroot}%{_datadir}/%{name} %check %{buildroot}%{_bindir}/%{name} --version %{buildroot}%{_bindir}/xrepo --version %files %doc README.md CHANGELOG.md %license LICENSE.md NOTICE.md %{_bindir}/%{name} %{_bindir}/xrepo %{bash_completions_dir}/%{name} %{zsh_completions_dir}/_%{name} %{fish_completions_dir}/%{name}.fish %{_mandir}/man1/*.1* %files data %{_datadir}/%{name} %changelog ## START: Generated by rpmautospec * Thu Dec 19 2024 Packit - 2.9.7-1 - Update to 2.9.7 upstream release - Resolves: rhbz#2333300 * Wed Oct 30 2024 Packit - 2.9.6-1 - Update to 2.9.6 upstream release - Resolves: rhbz#2322849 * Mon Sep 16 2024 Packit - 2.9.5-1 - Update to 2.9.5 upstream release - Resolves: rhbz#2312399 * Sat Aug 03 2024 topazus - 2.9.4-1 - 2.9.4 * Sat Jul 20 2024 Fedora Release Engineering - 2.9.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Tue Jun 25 2024 Packit - 2.9.3-1 - Update to 2.9.3 upstream release - Resolves: rhbz#2294131 * Sat May 25 2024 Packit - 2.9.2-1 - Update to 2.9.2 upstream release - Resolves: rhbz#2283192 * Mon Apr 22 2024 Zephyr Lykos - 2.9.1-1 - Update to 2.9.1 upstream release * Thu Mar 21 2024 Zephyr Lykos - 2.8.9-1 - Update to 2.8.9 * Sun Mar 03 2024 Packit - 2.8.8-1 - [packit] 2.8.8 upstream release - Resolves rhbz#2267549 * Mon Feb 26 2024 topazus - 2.8.7-1 - update to 2.8.7 * Sat Jan 27 2024 Fedora Release Engineering - 2.8.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Tue Dec 26 2023 topazus - 2.8.6-1 - update to 2.8.6 * Sat Nov 18 2023 topazus - 2.8.5-2 - add .packit.yaml file * Sat Nov 18 2023 topazus - 2.8.5-1 - initial import (rhbz#2249796) ## END: Generated by rpmautospec